2017-04-25 16 views
0

학습자가 훈련 단계에있을 수 있습니다.이 단계에서는 신기원을위한 Q-table을 업데이트합니다.학습 강화 : Q- 학습을 마친 후 하이퍼 매개 변수 (?)를 무시해야합니까?

이 단계에서 Q- 테이블은 감마 (할인율), 학습률 (알파)로 업데이트되며 임의의 동작 속도로 동작이 선택됩니다.

보상이 안정되고있는 몇 몇 신기원이 끝나면이 "훈련이 완료되었습니다"라고 말하게하십시오. 그런 다음이 매개 변수 (감마, 학습 속도 등)를 무시해야합니까?

는 내 말은, 교육 단계에서이 같은 Q-테이블에서 작업 있어요 :

if rand_float < rar: 
    action = rand.randint(0, num_actions - 1) 
else: 
    action = np.argmax(Q[s_prime_as_index]) 

을하지만 훈련 단계 이후, 난에서 작업을 얻을 수있는 의미, rar을 제거해야합니까 이 Q- 테이블?

action = np.argmax(self.Q[s_prime]) 
+0

사용하는 언어 및 라이브러리는 무엇입니까? 태그를 추가하십시오. – user31264

+0

도서관을 사용하지 않습니다 ... 제가 직접 전체 시스템을 만들었습니다. – user3595632

+0

stats.stackexchange.com 또는 ai.stackexchange.com – user31264

답변

2

값 기능이 수렴되면 (값 변경이 중지됨) 더 이상 Q 값 업데이트를 실행할 필요가 없습니다. 즉, 감마와 알파는 업데이트에만 적용되므로 더 이상 관련이 없습니다.

엡실론 매개 변수는 탐사 정책 (e-greedy)의 일부이며 상담원이 모든 상태를 한도 내에서 무한히 많은 횟수 방문하도록합니다. 이것은 에이전트의 가치 함수가 결국 올바른 값으로 수렴되도록하는 중요한 요소입니다. 그러나 가치 기능이 수렴되었다고 생각하면 무작위로 행동을 취할 필요가 없습니다. 우리의 가치 기능이 최선이라고는 생각하지 않습니다. 우리는 가치 함수가 최적이라고 생각하므로 모든 국가에서 최선의 행동이라고하는 것을 탐욕스럽게 선택하여 최적의 정책을 추출합니다. 엡실론을 0으로 설정할 수 있습니다.

+0

에 대한 질문입니다. 감사합니다, Nick! :) – user3595632

+0

한 가지 더. 훈련 상태에서 새로운 시대마다'rar'를 다시 시작해야합니까? 모든 신기원에서'rar'를 다시 시작하면, 수렴하지 않습니다! .. .... 너무 많은 시간이 걸릴 것 같아 ....? – user3595632

+0

파블로 (Pablo)의 답변 노트에서 "에피소드 (또는 단계) 수와 함께 엡실론 매개 변수 (귀하의 경우에는 rar)를 줄여야합니다." 따라서 모든 에피소드를 다시 초기화하지 말고 계속해서 썩게하십시오. –

1

@Nick Walker가 제공 한 답이 맞지만 여기에는 몇 가지 추가 정보가 있습니다.

당신이 말하는 것은 기술적으로 "탐색 탐사 트레이드 오프"으로 알려진 개념과 밀접하게 관련되어 있습니다. Sutton & Barto book에서 :

에이전트는 이미 보상을 얻기 위해 무엇을 알고 이용해야하지만, 또한 미래에 더 나은 행동 선택을하기 위해 탐구한다. 딜레마는 탐사도 착취도 작업에 실패하지 않고 독점적으로 추구 할 수 없다는 것입니다. 상담원은 다양한 조치를 시도해야하며 점차적으로 가장 좋은 것으로 보이는 을 선호합니다. 탐사 - 개발의 트레이드 오프를 구현하는

한 가지 방법은 당신이 당신의 코드 샘플에서 사용하는 것입니다, 엡실론 욕심 탐사을 사용하고 있습니다. 따라서 결국 상담원이 최적 정책으로 수렴되면 상담원은 현재 지식을 활용하는 상담원 만 선택해야합니다. 즉 rand_float < rar 부분을 잊어 버릴 수 있습니다. 이상적으로 에피소드 (또는 단계)의 수와 함께 엡실론 매개 변수 (귀하의 경우 rar)를 줄여야합니다.학습 속도에 관한 한편

, 그것은 이론적으로이 매개 변수는 Robbins-Monro conditions을 따라야한다는 지적 worths :이 학습 속도가 점근 적으로 감소한다는 것을 의미

enter image description here

. 따라서 알고리즘이 수렴되면 학습 속도 매개 변수를 안전하게 무시할 수 있습니다.

실제로 알고리즘이 수렴 될 때까지 고정 된 엡실론 및 알파 매개 변수를 유지 한 다음 0으로 설정하여 무시합니다 (무시할 수 있음).