強化学習の勉強 1日目
書籍で強化学習の勉強をしています。
機械学習と言われる分野では、教師あり学習、教師なし学習、強化学習という三本柱があります。
その中で、強化学習にフォーカスした書籍を読んでいます。
1章で機械学習の概要、2章でPythonを使うための環境セットアップの説明がされています。書籍ではWindowsでしたが、私のPCはMacです。それでも、以前にAnacondaのインストールをしていたので、すんなり始めることができました。
会社だとライセンスの問題でAnacondaが使えないので、Pycharmを使っています。
3章からが強化学習の具体例で、題材としては、気温に応じてアイスクリームの売り上げがどのように変わるのかという課題です。
ニューラルネットワークモデルの解説を式とコードで丁寧に行われています。予測のグラフとして、直線だけでなく曲線も引くことができるのですが、問題になるのはサンプルに忠実すぎる曲線が引かれる過学習(オーバーフィッティング)と言われる現象です。
過学習は、現実のスポーツなどでも起きることで、自分たちの練習した状況で戦っている時はよいのですが、練習したことのない未知の状況で、急に弱くならないように対策する必要があります。AI将棋なども、未知の状況になっても戦えるように過学習を避ける処理が入ったことで強くなりました。
過学習を避けるために、どのような処理が行われているのか、ざっと解説を読んで深いところまでは理解できませんでしたが、視覚的にグラフで最適解を見つけるところはなんとなくわかりました。この辺りは、複数の書籍を読んでみるしかないのかもしれません。