「強化学習(Reinforcement Learning)」とは、機械学習のアルゴリズムの1つで、「報酬(価値)を最大化するような方策」を学習する。
「教師あり学習」や「教師なし学習」のような固定的で明確なデータを元にした学習ではなく、与えられた環境を観測し、連続した一連の試行錯誤の結果として、価値が最大化し報酬が最も多く得られるような行動を自ら学習していく。
行動を選択していくだけではなく、行動によって発生した評価についても自ら更新することで、行動を最適化して精度を高めていくことができる。
強化学習は、「教師あり学習」や「教師なし学習」とは異なり、人間が大量のサンプルデータを用意する必要がなく高精度の機械学習モデルを構築できるため、機械学習技術分野において注目を集めている。
強化学習では、人間によって特定の「環境」と「報酬(価値、利益、目的)」が与えられる。その特定環境の中で行動するものとして「エージェント」が存在する。
エージェントが現在の状態を観測しながらさまざまな行動を実行し、試行錯誤を繰り返すことで、最も報酬が高くなる方策を学習していく。
つまり、強化学習における報酬は、「各行動」に対してではなく「連続した行動の結果」に対して与えられる。強化学習では、環境内での行動の仕方や行動系列の結果としての報酬(広い意味での価値)を最大化するように意思決定の仕方を学習していくことができる。
ブロック崩しゲームの場合、「環境=ブロック崩しゲームの環境(ルール)」「報酬=最終得点」「エージェント=プレイヤー」となる。
上から落ちてきたボールが下に落ちてしまい、何回か繰り返すとゲームオーバーとなり得点が決定される。
最初の段階では、エージェントはバーを意味もなく動かし、0点でゲームオーバーとなる。しかし、試行錯誤を続ける中で、落ちてくるボールにバーを当てて弾き返せば、ゲームオーバーにはならず、得点を増やせることを導き出し、ボールが下に落ちないようにバーを動かすようになる。
さらに、ブロックの間の細い隙間にボールが入ることでボーナスが付き、大量に得点を取得できることが分かると、バーにボールを当てるポイントを調整して弾き返すようになる。
このような試行錯誤を何万回も繰り返すことで、人間を上回る高得点を獲得できるようになる。
強化学習では、上図のように環境の中で自動で試行錯誤により学習していくため、人間が「教師あり学習」のような正解ラベル付きデータセットを用意する必要がない。
実際の機械学習モデル構築において、学習用データセットの準備作業は時間やコストにおいて大きな課題となるため、強化学習が注目される理由となっている。
強化学習において、報酬は「連続した行動の結果」に対して与えられるものであり、結果に至るまでのアクション数は多く、その連続行動の組わせとなると非常に膨大な数となるため、強化学習の最適化には多くの時間を要する。
強化学習アルゴリズムとして、さまざまなアルゴリズムを利用できる。
Q-Learningは、最適な行動の価値を「Q値(状態行動価値)」として、試行錯誤および結果から、このQ値が最大になるような行動を選択していく学習手法。
Sarsaは、実際に行動してみた結果を使用して期待値の見積を置き換える手法。
モンテカルロ法は、何らかの報酬が得られるまで行動をしてみて、その報酬値を把握してから、そこに至るまでの状態と行動に対して報酬値を分配していく手法。
参考元サイト
※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。
2017年12月14日(木)15:00~17:00 大阪市北区 さくらインターネット株式会社様 セミナー会場 にて 【大阪開催】人工知能/機械学習でセンサーデータを解析、故障予測をすることで、数千万円単位のコスト削減に成功した国内大手医療機器製造業様の事例 と題したセミナーが開催されました。 当日は、大規模データの分析・活用、機械学習にご興味をお持ちの企業様が多くご来場くださいまして、お陰...
Analytics News ACCESS RANKING