「Deep Learningを搭載したAIの弱点とは何か?」について考察していきます。

【みんなの囲碁】Deep Learningの欠点

精巧なマネキン

「みんなの囲碁」というアプリをご存知でしょうか?

初心者に好評の囲碁アプリらしく、私はごく最近その存在を知りました。

試しにやってみたら「まあ、こんなもんだよな」といった印象です。

いわゆる「Deep Learning(深層学習)」を搭載したAIの打ち筋には1つの特徴があります。

それは「非常に美しく、素晴らしい石運び」です。

設定を高段にしても、初級にしても、その素晴らしさは変わりありません。

だからこそ、Deep Learningを搭載したAIの囲碁ソフトやアプリはどれも「つまらない」のです。

囲碁ソフトやアプリには2つの種類が存在します。

昔ながらの「コンピュータ(機械)」と「AI(人工知能)」です。

AIのほうが優れた機能を有しているのは周知の事実であり、囲碁AIの中でも「Zen」の打ち筋はとても美しく惚れ惚れします。

ただしAIは「手加減しない」からこそ素晴らしいのであり、棋力調整されたAIなど何の価値もありません。

例えるなら「ピッチングマシン」のようなものです。

80キロ~160キロまで調整可能として、人間の代わりがどれほど務まるのでしょうか?

人間には「呼吸」と言うべき一連の流れ、やり取りがあります。

ただ球が速いだけではなく、コントロールや球の切れ、伸びといったわずかな変化が生じます。

その微妙な「ズレ」が空間に何とも言えぬ「深み」を与えています。

これは囲碁でも同じです。

「ザル碁」「ヘボ碁」と揶揄されようとも、下手な打ち筋にこそ「味わい」を感じます。

みんなの囲碁をやってみて感じたのは「マネキンとデートしている」ような感覚です。

勿論、マネキンとデートしたことはありません。

むしろ美人でスタイルがよく、いつも微笑んでくれるのなら歓迎かもしれません。

しかし「美人は3日で飽きる」とはよく言ったものですね。

「天頂の囲碁」も「みんなの囲碁」もすぐに飽きました。

何せ表情がないどころか、一定のペースで歩き続けるわけですから。

囲碁における表情とは「棋風」であり、歩くのは「打つ」ことを指しています。

まあ欠点がないのは良いことですよね。

ただし私が認めるのは、あくまでも最高峰の「Zen」だけです。

「天頂の囲碁=Zen」なのですが、棋力調整したAIには何の魅力も感じません。

5級でも六段でも等しく「美しい打ち筋」というのは、いったいどこで差を付けているのでしょうか?

答えは「死活力」です。

変な打ち方をしないので、途中まではやたらと強く感じます。

とはいえ死活が絡むとこちらが分からないように「忖度(そんたく)」してきます。

その加減が「絶妙」ではなく、どちらかといえば「嘘くさい」感じなのです。

そもそも死活は一局の中で最も「力まなくてはならない」場面でしょう。

そこでフッと力を抜かれると真剣に打っているのがバカらしくなります。

「みんなの囲碁」のアプリは14級~三段まで設定できますが、どれも一本調子といった具合です。

打つペースも「速い」「普通」「遅い」と分かれていますが、どれも一定のペースであり「呼吸」をまったく感じません。

COSUMIなら「困った局面」でちゃんと時間を使って考えてくれます。

打ち筋も時間の使い方も「一本調子」なうえ、手加減の仕方も「嫌味」を感じてしまいます。

「無料アプリ」だからといって下手に利用するのは、やる気を削がれる原因になりかねません。

どうせやるなら「COSUMI」や「囲碁クエスト」のほうが良いでしょう。

八百長のすゝめ

今の時代、人間がAIに勝てないのは誰の目にも明らかです。

今後、囲碁AIの利用価値は「学習補助」に他なりません。

それができないなら、囲碁AIに未来はありません。

ただ「強いだけ」というのは、同じ人間だからこそ尊敬できるのです。

もし「二足歩行型ロボット」が100メートル9秒台で走る時代が来たとしましょう。

すると一時のAlphaGoのように「すごい!」と話題になり、今度は「誰が勝てるか?」といった興味が湧いてきます。

しかし勝てないことが明らかになるにつれ、次第に人々の興味が薄れていきます。

いくら100メートルを7,8秒で走れるようになっても「はいはい、すごいね」としか思われないでしょう。

勿論、開発者やそのチームは称賛されて然るべきです。

とはいえロボットそのものは「ただのすごいもの」でしかありません。

人は皆、自分と関わりのないことには興味を示さないものです。

ところがロボットが「先生」になれば、話は別です。

ロボット先生に習って「金メダル」を取れたら、たちまち話題をさらうのは間違いないでしょう。

今の囲碁AIはその学習補助の一面を伸ばせるかどうか、非常に微妙なところです。

囲碁AIとインストラクターの最大の違いは「手加減が上手いか否か」という点でしょう。

先ほどから申し上げているようにAIは手加減が下手くそです。

Deep Learning(深層学習)によって得られたものは、正解に近いポイントを絞る「好点の解析」に過ぎません。

囲碁には「筋の隣は俗筋」といったような「悪手」が数多く存在しています。

それらの悪手をどう使いこなすかによって、教える者の技量が問われます。

ちなみにプロ棋士やセミプロレベルのインストラクターは「悪手」を一切打ちません。

適切なハンデを置いて「数え碁」にしていますが、見ていてちょっと物足りないなと思います。

囲碁教室に通っている生徒さんに共通するのは、指導碁は上手く打てても実戦になるとめちゃくちゃに打ってしまうという点です。

プロ棋士は無論のこと、セミプロレベルのインストラクターは「自分の打ち筋を崩したくない」という想いが少なからずあります。

つまり「碁打ちとして現役」という意識が働く限り、筋のよい本手しか打てないのです。

これは指導する者として相応しい態度とは言えません。

好手に悪手を織り交ぜながら、あくまでも「実戦的に」指導するのが理想的でしょう。

私も初めのうちは「二ケタ級」の方に対して、上手く指導することができませんでした。

何にもしなくても相手の石がボロボロに崩れていくわけですからね。

むしろ悪手を見過ぎて、目がチカチカして見るに堪えなかったくらいです。

今ではどんな悪手でも「意味を拾える」ようになり、こちらも相応の「返し」を打てるようになりました。

なるべく「定先」の手合で、時には白黒入れ替えて「実戦的に」指導するのが理想的だと考えています。

このような「適切な加減」をAIが担えるようになれば、それは何とも素晴らしいことではないでしょうか?

それこそAIは「悪手をDeep Learning(深層学習)」すべきなのです。

勿論、わざと負けるような打ち方ではいけません。

最近では世界最弱を謳う「絶対に相手に勝たせるオセロ」が開発されています。

やってみて分かったのは、何のことはない「最強=最弱」というだけのつまらないものでした。

オセロは「打たせない場所」を意図的に作ることで、勝つも負けるも自由自在というわけです。

しかし囲碁ではそうはいきません。

勝ちを目指しつつ、レベルの低い手を打つというのはイメージよりもはるかに難しいのです。

これからAIが目指すべき方向性はまさしくそこでしょう。

「みんなの囲碁」に限らず、Deep Learningを搭載したAIは皆、八百長を苦手としています。

上手く手加減することができて初めて、AIは人の領域に足を踏み入れることができるのです。

AIとの付き合い方

AIを女性に例えるなら「完全無欠な美人」であり、碁会所のおじさんは「気立てのよい町娘」のようなものです。

昔から「男は度胸、女は愛嬌」と言いますが、まさに言い得て妙だと感じます。

美人と付き合うにはそれ相応の「地位やお金」といったものが必要になります。

それが囲碁では「棋力と置き石」に匹敵します。

どんなに優れたAIでもハンデを10も20も置かれては勝負になりません。

碁盤を埋め尽くすほどのハンデを設ければ、AlphaGoといえど手も足も出ないでしょう。

大切なのは「そんなことをして楽しいのか?」という気持ちです。

男なら相手が誰であれ、互先で挑む心構えを忘れてはいけません。

かといって負けてばかりでは何も面白くないでしょう。

AIとの付き合い方にはコツがあります。

それは人間相手には決してできない方法です。

そのコツとは「待った」の活用に他なりません。

よく「詰碁は答えを見てもよい」といったアドバイスがあります。

いわばそれの応用です。

「ここに打ったらこう打ってきた」「ならばこちらに打ったらどうか」という研究を打ちながら実践します。

「そんなことをして強くなれますか?」「はい、なれます」

特に級位者の方は「並べ返し」をせず、検討すらままならないでしょう。

だったら打ち進めながら、研究すればよいだけのことです。

RPG(ロールプレイングゲーム)を攻略本片手にやるようなものですね。

勿論、一周目は自力でクリアするのが醍醐味です。

「みんなの囲碁」も自分に合った棋力を選び、適切なハンデを置いて勝ちを目指しましょう。

しかしいずれは煮詰まるわけですから、攻略するために研究を重ねるのは当然の行為です。

「打つ手を見てから手を変えるなんて、そんなの邪道だ!」と異を唱える方もいるかもしれません。

昔、私はテスト前に「問題」を解いていました。

しかし「解答」を家に忘れて、ただひたすら「問題」を解いていたのです。

これって相当「頭悪い」行為だと思いませんか?

解答を見ずに問題を解いたところで、何の意味もありません。

問題とは「答え合わせ」をして初めて解く意味があるのです。

そしてテストとは「本番」のことを言います。

囲碁では「大会」もしくは「人と打つ」のが本番であり、AIとの対戦は「練習」でしかありません。

AIとの関係はよき「練習相手」であるべきです。

AI相手にムキになっても仕方ありません。

勝ち負けではなく、上達をサポートしてもらう態度が望ましいでしょう。

人と違って、直接的に教えを乞うのは無理です。

だからこそ、待ったを活用して「着手の意味」を自分なりに解釈する必要があります。

インストラクター相手なら、その場で聞かなくてもあとで並べ返しすることができます。

勿論「みんなの囲碁」にも棋譜保存の機能は付いています。

とはいえ、見返す人は少数派でしょう。

何だかんだ言って、結局「テスト問題を解きっぱなし」で答え合わせしようとしません。

「勝てば100点」「負ければ0点」といったアバウトな点数方式の人が多すぎます。

囲碁は一手一手の積み重ねによる「総合点」で勝ち負けを争います。

9路盤は「100点満点」

13路盤は「500点満点」

19路盤は「1000点満点」

このように単純な勝ち負けだけの世界ではありません。

プロ棋士なら

「100点満点中 90点以上」

「500点満点中 450点以上」

「1000点満点中 900点以上」

という具合です。

僅差の負けなのか、それとも大差の負けなのか?

一手一手、見直してみないことには分かりません。

しかし検討は時間がかかる上、別の手に相手がどう対処してくるのか初心者では見当もつかないでしょう。

それなら潔く「待った」を使いましょう。

AIとの対戦は決して「本番」ではありません。

AIとは敵対する関係ではなく、友好な「学習パートナー」としての付き合い方をするべきなのです。

あなたが1人で強くなりたいのなら、AIを活用した学習は効果的でしょう。

「待った」ができる学習法こそ、これからの時代に求められているのかもしれません。