상세 컨텐츠

본문 제목

[ML] Reinforcement Learning

machine learning

by ~지우~ 2022. 12. 23. 14:50

본문

728x90

Reinforcement Learning

 

학습은 에이전트와 환경 간의 상호작용의 결과로 이루어진다.

 

문으로 연결된 건물의 5개의 방이 있건물 밖에는 큰 방 하나(5호실)가 있다.
1번과 4번 문은 5번 방에서 건물로 통한다. 요원을 아무 방에나 배치하고, 그 방에서 건물 밖으로 내보내려고 한다.

각 문은 양방향이고, 우리 요원이 다른 방에서 들어와서 다른 방으로 나간다. 5호실이 우리의 목표 방이 될 것이다.

 

State

◼ 위 그림에서 각 방(외부 포함)
◼ 그래프에 노드로 표시

 

Action

◼ 에이전트가 한 방에서 다른 방으로 이동하는 것
◼ 그래프에서 방향 링크로 표시

 

Reward

◼ 목표물과 직접 연결된 문은 보상이 100
◼ 대상에 직접 연결되지 않은 다른 문은 보상이 0

 

reward값을 사용한 상태 다이어그램의 행렬 표현은 아래와 같다. (R(보상) 행렬의 "-1"s는 null 값을 나타낸다.)

 

Q (Quality) Matrix

◼ R 행렬에 대한 동반 행렬이다.
 Q 매트릭스는 에이전트가 경험을 통해 학습한 내용에 대한 기억을 나타낸다.
◼ 행: 에이전트의 현재 상태
◼ 열: 다음 상태(노드 간 링크)로 이어지는 가능한 작업
◼ Q(state, action) = R(state, action) + Gamma * Max[Q(next state, all actions)]

 

Q-Learning

◼ 에이전트(프로그램)가 상태에서 상태로 탐색
◼ 각각의 시작부터 끝까지의 탐험은 에피소드라고 불린다.
◼ 각 에피소드는 에이전트가 초기 상태에서 목표 상태로 이동하는 것으로 구성된다.
◼ 에이전트가 목표 상태에 도달하면 프로그램은 다음 에피소드로 이동한다.
◼ 이 알고리즘은 에이전트가 경험을 통해 학습하는 데 사용된다.
◼ 각 에피소드는 하나의 교육 세션에 해당한다. 
◼ 에이전트는 환경을 탐색한다(R 행렬로 표시됨).
◼ 목표 상태에 도달할 때까지 보상을 받는다.
◼ 교육의 목적은 의 '뇌'를 향상시키는 것이다.
◼ 훈련이 많을수록 Q 매트릭스가 더 최적화된다.
◼ Q 매트릭스가 개선된 경우, 탐색하고 같은 방을 왔다 갔다 하는 대신 에이전트는 목표 상태로 가는 가장 빠른 경로를 찾을 수 있다.

 

Task Types

- Continuous tasks
◼ 영원히 계속되는 작업
◼ 에이전트는 최상의 작업을 선택하는 방법과 동시에 환경과 상호 작용하는 방법을 배워야 한다.
◼ 시작점과 종료 상태가 없다.
- Episodic tasks
◼시작점과 끝점이 있다.
◼ 상태(S), 조치(A), 보상(R) 목록과 같은 에피소드를 만든다.

 

Exploitation and Exploration

◼ Exploitation이 이미 알려진 정보를 이용하여 보상을 최대화하고 있다.
◼ Exploration은 환경에 대한 더 많은 정보를 찾는 것이다.

아래의 예시 게임에서, 우리의 로봇 마우스는 많은 양의 작은 치즈(개당 +0.5)를 얻을 수 있다. 하지만 미로의 꼭대기에는 엄청난 양의 치즈(+100)가 있다. 따라서, 우리가 (즉, 가장 가까운 보상에 집중하는) 착취만 한다면, 우리의 로봇 쥐는 절대로 치즈의 큰 액수에 도달하지 못할 것이다. 하지만 로봇 쥐가 약간의 탐험을 한다면, 큰 보상, 즉 큰 치즈를 찾을 수 있다.

728x90

관련글 더보기

댓글 영역