知/job지식

Reinforcement Learning

콰트로로켓단 2024. 5. 21. 09:00
728x90

머신러닝의 3요소 중 하나 

RL(Reinforcement Learning)은 머신 러닝에 3가지 학습 법 중 하나로 인공지능의 학습의 글에서는 Supervised Learning에 대해 이야기를 잠깐 하였는데 이는 입력과 원하는 답(Label)이 존재해야 한다.

개와 고양이, 쿠키와 치와와를 구분을 하기 위해 데이터가 필요하다.

하지만 그런 답을 만들기 어려운 상황이 있다.

예로 차나 로봇이 움직인다고 할 때 팔다리의 위치를 상황에 따라 일일히 라벨하기에는 어렵다.

(길사진에 차가 꺽을 핸들 각도를  라벨링 한 적은 있음) 

 

위와 같은 상황에서 쓸 수 있는 방법으로 상호작용이 가능한 환경에서 상태(input or state)를 얻고 행동(Action)을 정하는 정책(Policy)을 보상(reward)을 최대화하도록 훈련하는 것이다.

 물론 보상을 결정하는 것과 환경을 설정하는 것은 사람의 영역이다.하지만 라벨링의 비싼 비용을 줄일 수 있고, 간단한 게임으로 실험 해볼 수 있는 장점을 가지고 있다. 로봇, 게임, 금융의 분야에서 쓰인다고 한다. 

주요 단어

에이전트(Agent) : 의사 결정자 

  • 체스 두는 컴퓨터

환경(Environment) : Agent가 상호작용 하는 곳

  • 체스 보드

상태(State) : 환경에서 현재 에이전트의 상황

  • 현재 체스 보드 위 말 배치

정책(Policy) : 에이전트가 현재 상태에 따라 다음 행동을 정하는 규칙

  • 체스 보드 상태에 따라 다음 수을 결정하는 규칙

행동(Action) : 상태에 영향을 미치는 에이전트의 선택

  • 체스 한 수 두기

보상(Reward) : 에이전트의 행동의 평가하기 위한 환경이 주는 피드백

  • 좋은 수을 두었을 때 +1 안좋은 수를 두었을 때 -1 

관찰(Observation) : 에이전트가 환경을 통해 감지하는 정보(일부 모델은 state와 동일)

  • 스타크래프트에서 미니맵이 활성화 되어있는 곳만 보는 것하고 맵핵(state)과 차이

가치 함수(Value Function) : 상태 또는 상태-행동 쌍에 대한 미래 보상을 예측하는 함수

  • 현재 체스의 보드에서 승리 가능성을 점수로 예측

 

728x90

' > job지식' 카테고리의 다른 글

Markov property  (0) 2024.05.24
Stochastic process  (0) 2024.05.23
Drop Out(드롭 아웃 및 초간단 구현)  (0) 2024.05.18
Weight initialization  (0) 2024.05.15
Resnet 직관  (0) 2024.05.05