和歌山のプログラミング・システム開発ならシステムキューブ
先日、Google参加のGoogle Deepmindの開発する囲碁プログラムAlaphaGoがプロ棋士イ・セドルを4勝1敗で下すということが起こりました。
AlphaGoと呼ばれる囲碁のプログラムは、プロの棋士が説明できないような複雑な手を繰り出して、最終的にプロ棋士を下しています。
このGoogle Deepmindのプロジェクトはハイパフォーマンスコンピューティングと呼ばれる計算スピードに特化したコンピュータを利用し、事前に膨大な数の対局をコンピュータ自身とこなして囲碁について学習しました。
その自ら学んでアルゴリズムを強化していく仕組みは深層学習と呼ばれ、人間の脳が行う学習をモデルにして発展しています。
人間の作ったアルゴリズムでプロ棋士に勝ることは当面ないだろうと言われていました。囲碁というゲームは要素数と可能性のパターンがあまりに多く、総当たりで全ての手を検証していくことに限界があると考えられていたからです。
AlphaGoは自分自身や過去のデータとの対局の中で幾度も負けることによって、囲碁で負けないようにするアルゴリズムを学習し強化していきました。
そのため、AlphaGoは総当たりによって可能な全ての手を検証しなくとも、現実的な計算時間で勝つための手を考えることができるようになったのです。
これはコンピュータが思考を獲得したと言っても間違ったものではないですが、あくまで囲碁に特化した思考の獲得です。
今回は人間とコンピュータのやりとりが、囲碁という共通のものが使えて、それは交互にお互いの石を碁盤に置く、という分かりやすいルールがあることでその能力を発揮することができました。
このような深層学習により、様々な分野、ビジネスなどでも応用されることが今後可能になってくるはずです。
ただ囲碁のようにコンピュータと人間とのやりとり(インターフェース)として簡単なルールがない分野ではまだまだ先の長いお話になりそうです。
近年マーケティングなどに利用されるようになった大きなデータの解析などについては、効果を発揮しそうと考えています、そこには人間が見つけられていないパターンがあるかもしれず、深層学習によって明らかになるかもしれません。
人間がパターンを見つけてアルゴリズムを作成する従来のものとは違い、コンピュータがパターンを見つけてアルゴリズムを作成するものは、ただのプログラムではなく人工知能(AI)と呼んで間違いないものだと思います。
ただSFの描く人工知能のようにあらゆる部分で人間を超えるということはなく、あくまで一定の答えにたどり着くために現実的な計算量で計算するプログラム、という意味合いのものだと考えています。
人間の思考をシミュレーションするということについてはあくまでSFの物語の中だけの話でしょう。