強化学習で遊ぶ じゃんけん
強化学習で遊びます。
学習するもの
今回学習させたのは"じゃんけん"です。
エージェント(学習者)は「グー」「チョキ」「パー」のいずれかの手を選択し、「勝ち」「あいこ」「負け」の結果として、それぞれ「1」「0」「-1」の報酬を得ます。
エージェントは手に対して、その手を出したときに得られる報酬の推定値(V(グー)、V(チョキ)、V(パー))を持っていて、この推定値を正しくすることが学習の目標です。
学習の方法
1.エージェントが適当に手xを出す。
2.じゃんけんの結果の報酬 rを得る。
3.V(x) := V(x) + α( r - V(x) ) でV(x)を変更する。(αは学習率)
上の1〜3を何度も繰り返してVを正しい値に近づけていきます。
学習の結果
「グー」しか出さない人をじゃんけんの相手にしました。
つまり、V(グー)=0、V(チョキ)=-1、V(パー)=1が正しいVになります。
Vの初期値を0.0として、上の1〜3を1万回繰り返したところ、
V(グー)=0.0
V(チョキ)=-1.0
V(パー)=1.0
となって、正しい値を学習してくれました。
本日はここまで。
(今回は文章を書くのが大変でした。これで理解してもらえるのでしょうか・・・)
学習するもの
今回学習させたのは"じゃんけん"です。
エージェント(学習者)は「グー」「チョキ」「パー」のいずれかの手を選択し、「勝ち」「あいこ」「負け」の結果として、それぞれ「1」「0」「-1」の報酬を得ます。
エージェントは手に対して、その手を出したときに得られる報酬の推定値(V(グー)、V(チョキ)、V(パー))を持っていて、この推定値を正しくすることが学習の目標です。
学習の方法
1.エージェントが適当に手xを出す。
2.じゃんけんの結果の報酬 rを得る。
3.V(x) := V(x) + α( r - V(x) ) でV(x)を変更する。(αは学習率)
上の1〜3を何度も繰り返してVを正しい値に近づけていきます。
学習の結果
「グー」しか出さない人をじゃんけんの相手にしました。
つまり、V(グー)=0、V(チョキ)=-1、V(パー)=1が正しいVになります。
Vの初期値を0.0として、上の1〜3を1万回繰り返したところ、
V(グー)=0.0
V(チョキ)=-1.0
V(パー)=1.0
となって、正しい値を学習してくれました。
本日はここまで。
(今回は文章を書くのが大変でした。これで理解してもらえるのでしょうか・・・)




