문제

나는 Q Learning과 함께 가구를 집 주위로 옮겨야하는 사람에 대해 약간의 일을해야합니다 (기본적으로). 집이 충분히 작다면, 나는 행동/보상을 나타내는 매트릭스를 가질 수 있지만, 집의 크기가 커질수록 충분하지 않을 것입니다. 대신 그 일반화 기능을 사용해야합니다. 선생님은 내가 하나뿐만 아니라 여러 가지를 사용한다고 제안하므로 비교할 수 있습니다. 너희들은 무엇을 추천합니까?

이 상황에서 사람들은 지원 벡터 머신, 또한 신경망을 사용하고 있다고 들었습니다. 나는 실제로 들판 안에 있지 않아서 말할 수 없습니다. 과거에는 신경망에 대한 경험이 있었지만 SVM은 파악하기가 훨씬 어려워 보입니다. 내가 찾아야 할 다른 방법이 있습니까? 나는 그들 중 Zillion과 같은 것이 있어야한다는 것을 알고 있지만, 나는 시작하기 위해 무언가가 필요하다는 것을 알고 있습니다.

감사

도움이 되었습니까?

해결책

Q- 러닝에서 용어의 새로 고침과 마찬가지로 상태와 행동에 의존하는 Q- 기능을 배우려고합니다.

Q(S,A) = ????

대부분의 클래스에서 가르치는 Q- 러닝의 표준 버전은 각 S와 A에 대해 귀하가 테이블에서 별도의 값을 배우고 최적의 값으로 수렴하기 위해 Bellman 업데이트를 수행하는 방법을 알려줍니다.

이제 테이블 대신 다른 기능 근사기를 사용한다고 가정 해 봅시다. 예를 들어, 선형 함수를 시도해 보겠습니다. (S, A) 페어를 가져 와서 추출 할 수있는 많은 기능을 생각해보십시오. 기능의 한 예는 "벽 옆에있는 Am I"입니다. 다른 하나는 "액션이 물체를 벽 옆에 배치 할 것"입니다.이 특징은 f1 (s, a), f2 (s, a),. ..

이제 Q 기능을 해당 기능의 선형 기능으로 배우십시오.

Q(S,A) = w1 * f1(S,A) + w2*f2(S,A) ... + wN*fN(S,A)

Weights W를 어떻게 배워야합니까? 글쎄, 이것은 숙제이기 때문에, 나는 당신이 그것에 대해 스스로 생각하게 할 것입니다.

그러나 힌트로서, 각 상태에서 가능한 상태와 가능한 조치가 있다고 가정 해 봅시다. K*M 기능을 정의한다고 가정 해 봅시다. 각 기능은 특정 상태에 있고 특정 조치를 취할 것인지 지표입니다. 그래서

Q(S,A) = w11 * (S==1 && A == 1) + w12 * (S == 1 && A == 2) + w21 * (S==2 && A==3) ...

이제 모든 상태/액션 쌍의 경우 하나의 기능 만 1이고 나머지 기능은 0이므로 Q (S, A)는 해당 W와 동일하며 본질적으로 테이블을 학습합니다. 따라서 표준 표 Q- 러닝을 이러한 선형 함수로 학습하는 특별한 사례로 생각할 수 있습니다. 따라서 일반적인 Q- 러닝 알고리즘이 무엇을 해야하는지 생각해보십시오.

바라건대, 당신은 당신이 당신의 공간을 잘 표현할 수 있도록 K*m보다 훨씬 적은 작은 기능을 찾을 수 있기를 바랍니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top