AI(人工知能)がチェスや将棋のプロプレーヤーに勝利した、という話を聞いたことがある方々もいるでしょう。一昔前では将棋などのボードゲームでコンピューターが人間に勝つのは不可能でした。ですが、今では逆に人間がコンピューターに勝つことが難しいと言われています。
ではなぜコンピューターの実力が急激に上がったのでしょうか。ここで登場するキーワードが「強化学習」です。
例えば将棋の名人に勝利したコンピューターである「Ponanza」や囲碁のチャンピオンに勝利したコンピューターの「AlphaGo」には強化学習の技術が使われています。
「学習」という言葉が入っていることから分かるように、強化学習も機械学習の一つ。大きな特徴として「学習に必要なデータが多くない」こと、「ゴールまでの方法は問われない」ことが挙げられます。そのため、データ数が少ない分野や囲碁などのボードゲームのような目的が明確な分野において強化学習は頻繁に使用されているのです。
本日は強化学習の概要を紹介した後に、強化学習を学ぶ際におすすめの参考書について紹介します。
強化学習って?
強化学習ではコンピューターが判断して実行した行動が望ましいものならば報酬を与え、望ましくないものならば罰を与えます。この賞罰によってコンピューターは正しい行動を徐々に学習していくのです。
最終的な目標の設定は必要ですが、目標に辿り着くまでの過程は細かく問いません。この考えはスポーツの試合に例えるとわかりやすいです。
実際に強化学習を実装する際には「どのような行動に対して報酬(罰)を与えるか」、「報酬(罰)の大きさはどれくらいにするか」といった部分を調整してアルゴリズムを最適化します。
以下では強化学習を学ぶうえでおすすめの参考書、ならびに強化学習を行う際に必要となる数学やディープラーニング、Pythonプログラミングに関する参考書を紹介しましょう。
おすすめの強化学習の参考書その1: ゼロから作るDeep Learning
この本の特徴的なところはディープラーニングの原理から詳細に説明されており、外部のライブラリを使わずにゼロから自分でプログラムを書いて学ぶことができる点です。
なおこの本を用いる際はPython3の使い方、ならびにニューラルネットワークに関する基本的な知識が必要です。Python3やニューラルネットワークに詳しくない方に向けて、後ほどそれぞれの入門書についても紹介します。
おすすめの強化学習の参考書その2:直感 Deep Learning
この本では簡単なゲームを題材として強化学習プログラムを実装させています。また、プログラムの説明のみならず、強化学習の理論についても丁寧に書かれているのも特徴。
なお、こちらの本もPython3並びにニューラルネットワークに関する知識を持っている読者を対象としています。
おすすめの強化学習の参考書その3:強化学習(森北出版)
次にご紹介するのは「強化学習」。非常にシンプルなタイトルであるこの本は、強化学習を発展させた立役者のR.Suttonが自ら執筆した教科書の日本語版で、まさに強化学習の「教科書」とも言える一冊です。
逆に理論は詳しく学ばなくてもよいので、まずはプログラムを組みたいという人は先に他の参考書を読み、理論の理解が必要になったときに読んでみる方がよいかもしれません。
おすすめの強化学習の参考書その4: 最短コースでわかる ディープラーニングの数学
強化学習に限らず機械学習全般を学ぶときに多くの人が直面する壁、それは学習理論に使われている数学ですよね。一方で数学と向き合わなければ機械学習を深く理解し、AI(人工知能)開発を推し進めることはできません。
高校数学のみならず大学で学ぶような線形代数学なども説明されているため、数学で躓いてしまった人、機械学習に関する数学理論を学んだことがない人におすすめの参考書です。
おすすめの強化学習の参考書その5:ニューラルネットワーク自作入門
前述の通り、現在は強化学習とディープラーニング、ニューラルネットワークを組み合わせた技術が頻繁に使われています。従って強化学習だけを学べば大丈夫、というわけではありません。
そして本に付属しているPythonプログラムコードを用いることで学んだ内容をすぐに確認することができます。中学、高校数学の知識があれば読みすすめることが可能であり、数学が苦手な人にもおすすめの参考書。
おすすめの強化学習の参考書その6:詳細! Python 3 入門ノート
特徴としてサンプルコードが大量に付属しており、実際に動かしながら学べる点が挙げられます。機械学習に関するコードも付属しているため、まずPythonの基礎を学び、その後に機械学習プログラムを体験することもできます。
まずはPythonを使いこなせるようになりたいと思っている人、機械学習の理論よりも先にプログラムを書くことに慣れていきたい人におすすめの参考書です。
技術の進歩が非常に速い機械学習の分野のなかでも、強化学習は最近になって特に注目されている手法の一つです。
ニューラルネットワークやディープラーニングと強化学習を組み合わせることによって様々な分野にとって有用な技術となり、これからますます強化学習は使われていくことでしょう。
強化学習を学び、使いこなすためにはPythonなどのプログラミングに関するスキルや強化学習に関する理解を深める必要があるのはもちろんのこと、ニューラルネットワークやディープラーニングに関する知識も必要です。
強化学習に習熟した技術者の市場価値は今後ますます高まることが予想されるからこそ、ご自身のスキルや能力に合わせて本日紹介した参考書を基に、これから強化学習を学んでみましょう。
【お知らせ】
当メディア(AIZINE)を運営しているAI(人工知能)/DX(デジタルトランスフォーメーション)開発会社お多福ラボでは「福をふりまく」をミッションに、スピード、提案内容、価格、全てにおいて期待を上回り、徹底的な顧客志向で小規模から大規模ソリューションまで幅広く対応しています。
御社の悩みを強みに変える仕組みづくりのお手伝いを致しますので、ぜひご相談ください。