深層強化学習を0から理解したい人におすすめの本を紹介します。
数学が苦手な人でも読みやすい本だと思います。
さっそくですが、今回紹介したい本は「つくりながら学ぶ! 深層強化学習 ~PyTorchによる実践プログラミング~」になります。
この本のおすすめ理由などは以下で説明していきます。
おすすめ理由
理由1:数式は抑えめで、図は多め
おすすめする第一の理由としては、数式は抑えめで、図は多めであることです。
どうしても機械学習や強化学習関連の教科書は数式だらけになりがちです。
もちろん基礎研究を行うのであれば重要ですが、数学が苦手な人が強化学習を学ぼうとする場合には、ハードルが高くなってしまいます。
深層強化学習を実装して動かしながら学びたい場合には、数式は最小限にしてどのような原理で動いているかを理解することが重要です。
この本では数式はシンプルになっていて、実装部分がメインとなっています。
初学者や強化学習を動かして学びたい人にとってはとても良い書籍になっています。
理由2:Pythonのコードが丁寧に記述してある
作りながらと本のタイトルにある通り、この本では大部分を使って、深層強化学習のソースコードを丁寧に説明しています。
そのため、ソースコードを丁寧に説明しています。
ソースコードはPythonで書かれています。機械学習を学ぶのであれば、Pythonは必須のプログラミング言語になりつつあるので、Pythonを習得することは重要です。
丁寧に説明があるので、Pythonの初心者にとっても読みやすいと言えます。
理由3:強化学習の概要を丁寧に説明
この本のメイン『深層強化学習』ですが、強化学習の基本についても丁寧に説明しています。
強化学習について全く知らない方でも、この本を読むことで強化学習から深層強化学習まで学ぶことができます。
強化学習の代表的なアルゴリズムQ学習も扱っています。
(最も基本的な深層強化学習もQ学習をベースとしているので、Q学習の理解は重要です)
強化学習の基本についても飛ばさずに丁寧に説明しているのは、強化学習初学者にとってはとても重要な点です。
残念な点
この本にはあまり残念な点はないのですが、強いて言えば、PyTorchを使わなければいけないことです。
PyTorchは深層学習(ディープラーニング)を構築するためのライブラリで、近年人気も高まっています。
なので、学んでおくことは大きなメリットになると思います。
ただ、仮にKeras、 TensorFlow、Chainer、もしくは自作で深層学習を学んでいる人にとっては足かせになるかもしれません。
まぁ深層強化学習を実装するためには、何かしらのライブラリを使わなければいけないので、どうしても生じてしまう問題です。
終わりに
今回は「つくりながら学ぶ! 深層強化学習 ~PyTorchによる実践プログラミング~」を紹介しました。
深層強化学習を0から動かせるぐらいにまで学びたい人にはとても良い書籍になっています。ぜひ、この本で勉強してみてください。