ゼロから作るDeep Learning(最終日)

こんにちは、筋肉めがねです。

 

2018年10月1日から始めたこの「ゼロから作るDeep Learning」勉強シリーズもようやく最終日を迎えました。3ヶ月で本を一冊終わらせる、という目標に向けて取り組んで参りましたが、本日12月31日に、無事に最後の章である8章について書く事ができ、2019年を清々しい気持ちで迎える事ができそうです。

f:id:KinnikuMegane:20181231045154j:plain

 

それでは、早速「ゼロから作るDeep Learning」について、最後の記事を書いていきましょう。本日は8章です。8章は、ディープラーニングを実装する事には重きを置いておらず、現在主流となっている技術の紹介、そしてディープラーニングが使われているアプリケーションの紹介ですね。

中でも「強化学習」という項目が気になったのでそれについて書いていきます。強化学習とは、「特定のタスクを達成するために必要な行動をコンピュータ自ら学習していく」ものです。そして、一連の行動の結果、与えられる報酬(期待値)を最大化させる行動を学習していきます。強化学習では、与えられた「環境」における「価値」を最大化させるようにエージェントに学習させます。

「強化学習」を取り入れたアプレケーションとしてAlphaGoが有名ですね。プロの囲碁棋士を人工知能が負かした、という事でとても大きな話題になりました。

f:id:KinnikuMegane:20181231225620j:plain

本書でこれまで扱ってきたケースは「教師あり学習」と呼ばれるものでした。ニューラルネットワークへ訓練データを入力し、出力値と教師データを比較、差分を損失関数で計算し、損失関数の重みによる偏微分を勾配として求め、勾配方向へ重みを更新していく。

しかし、「強化学習」には教師データはありません。エージェントがある環境下で何らかの行動を起こし、その行動によって変化した環境から情報(報酬)を得る。その繰り返しによって、コンピュータが学習していきます。

今月12月に、AlphaGoを開発したDeep Mind(google傘下)から、Scienceにて新たに論文が発表されましたね。

A general reinforcement learning algorithm that masters chess, shogi, and Go through self-play | Science

Mindgameのルールを全く知らないAlphaZeroという人工知能が、外部から教えてもらう事なく、ゲームを繰り返し行う事で、ルールを自ら「学習」しています。チェスの人工知能として良く知られているStokfishという人工知能と、AlphaZeroがプレイしたところ、1000回のゲームの中で155回AlphaZeroが勝利し、6回負け、839回引き分けた、という事です。そして、プロの囲碁棋士を負かしたというAlphaGoに対してAlphaZeroが囲碁をプレイしたところ、61%の確率で勝利した、という事です。2年前に大きなニュースとなったAlphaGoを負かすというのは、技術の進歩はとても早いなと感嘆しますね。

 

以上で「ゼロから作るDeep Learning」勉強シリーズは以上でございます。雨の日も風の日も雪の日も、このブログを楽しみにしてくださった、そして更新する度に読んでくださった熱心な読者の方々に心より感謝申し上げます。

それでは、明日2019年1月1日より、新たなテーマでブログを書いていきます。

皆様方におかれましても良いお年をお迎えください。

 

筋肉めがね

 

にほんブログ村 IT技術ブログへ
にほんブログ村



Pythonランキング