AI関連サービスとの付き合い方について

まずはじめに、僕はAIスケジュール管理アプリを作成しています。全体の設計からAIのアルゴリズム、実装、UIデザインまで全て1人でやっています。一応ある程度の知識はあるつもりです。
その僕が、NewsPicksとかのビジネス系の偉い人たちのAIに対するコメントを読んでいて、「少し捉え方、使い方が間違っているな。期待値と実際のサービスのギャップかな?」とか色々と考えたことをここで書きます。

エンジニア以外の人向けに書きたいと思いますが、実際にAIをサービスに組み込む開発者の方にも参考になればと思います。
*数式やアルゴリズムがどうこうとか書きませんが、サービスの設計やデザインに関しては書きます。


まず、大雑把にAIがサービスに組み込まれる場合にどのような流れになるか説明します。
もちろん一概には言えませんが、大雑把にです。

⒈ 機能(タスク)を特定する
⒉ 機能(タスク)の過去と現在のデータを纏めて解析する
⒊ 計算して問題ない数値であればそれを表現する
⒋ それで問題なさそうであれば、そのデータを再利用する
これが基本の流れです。

もっと砕けた感じであれば、
「過去データ」x「現在のデータ」

解析

画面や音声で表現

問題なければ「過去データ」を更新する

の流れです。
*AIは機械学習と呼ばれる機械に学習させるシステムのことです。機械への学習のさせかた、手法と利用方法により色々と状況が異なってきますが、基本的に上記の「過去」「現在」のデータを纏めて「解析」するのがキーです。

もっと具体的にすると
昼ご飯にカップラーメンの種類を選ぶ機能です。

「過去にシーフード」を選ぶ確率が高い場合、かつ「現在はカレー」を食べたい気分だった場合、両方を鑑みて、やっぱり「シーフード」にしようと決断するようなものです。カレーは匂いがあるし、スープが飛ぶと服に付いちゃうし、色々と大変だからなど理由、原因は色々です。
*ものすごい適当です。。が、要は過去データは重要ですし、現在のデータも重要です。全体を分析します。


良くある誤解ですが、AIだからと言って、いつも100点満点の結果を出すとは限りません。
今までのコンピュータを利用したサービスは基本的に「常に100点」の操作を「自分で」行なっていたからです。ですので、100%の確率で自分の意図通りの結果を出します。
ですが、そのノリでAIを使うと「100点」ではなく「70点」で返す場合もあります。これは仕方がないことです。
人に何か依頼して頼んだ場合、100%意図通りのことをしてくれる従業員ばかりではありませんし、もし100%意図通りのことをして欲しい場合は、事前にマニュアルを整備したりします。当たり前ですね。それと同じことをAIに対しても行う必要があります。過去データの整備です。


ここで、客観的になって考えてみると重要なことに気づくと思います。「100点」とは何か?です。
例えば、グーグルの検索サービスはAIと呼べます。単純に「検索単語」でヒットした順番に表示している訳ではなく、順番をグーグルが決めて表示しているからです。順番を決める行為(人の選好に近い)をAIがやっています。
AIがやっているのに「100点っぽい」結果を表示してくれますよね?だからみんなグーグルを使います。

なぜ100点と感じて「いいサービス」だと感じるのか?
それは「納得感」の演出がデザインに組み込まれているからです。
そもそも冷静に考えてみると100点の欲しい情報を僕らはグーグルから取得していません。それらしい情報を一覧で取得して、その中から選んで納得しています。テクノロジーだけではくサービスの全体の体験が設計されている結果です。素晴らしいですね。

さらにもう一点、グーグル検索サービスの設計で重要なことですが、グーグルは検索欄を用意するだけで、基本的にユーザに検索ワードを入力させます。

この流れです。
「命令」

「結果表示」

「ユーザが選ぶ」

「納得感」

事前に過去のデータから「この人はこういった情報が欲しいユーザだろう」と推測して表示することは技術的に可能です。日本で有名なニュースアプリはそういう設計をしていると思います。

ですが、先ほどの体験をベースに考えると「命令」→「結果表示」→「納得感」を演出するために「ユーザに入力」してもらう体験は必須だからです。つまり「命令」があることによって、コンピュータと主従の関係性を築いています。これを省くと違う体験になります。

これまでのAIを用いたサービスは、命令ベースに作られています。


次に疑問が出てきます。
なぜグーグルのような元からAIを利用したサービスがあったのに、最近AIが話題なのか?です。

この理由は色々で、もちろん技術的な面もあります。深層学習のためのコンピュータリソースが現実的になってきた点や、実際の結果、社会へのインパクトです。囲碁で素晴らしい結果を残したニュースになったモノなど色々ありますね。

色々理由がありますが、最近のAIサービスは根底にある設計が変化している点が大きいです。

AIがこちらに提案してくる設計です。
コンピュータが命令に従うだけではなくなっているということです。

上記で説明したグーグルの検索結果は「主従関係」で「命令ベース」でした。ですが、昨今のサービス設計は「主従関係」ではない作りになっています。「対等ベース」と言えそうです。

元から可能だったのに、人類は気づいたのだと思います。ある程度の点数であれば計算して表現することが可能だから、それでいいじゃん。と。

まぁ確かにそうです。僕の作っているAIスケジュール管理アプリもそうです。AIに都合の良い日を意思決定させていますが、100点かは分かりません。
ですが、一応上手く機能します。

つまり、サービスに対して過去の「主従関係」の認識のまま、現在の「対等な関係」のサービスを利用して、期待値のギャップが発生しているケースが増えてきています。NewsPicksなどでAIが使えないなどというコメントに多くある原因の一つです。サービスに対しての期待値が異なります。

もし、今まで通り100点満点の結果しか欲しくないのであれば、恐らく対応な関係のAIとは付き合っていけないと思います。

「対等な関係」の設計では、ある程度の「寛容さ」を求められるんです。

勿論、AIが表現する精度をあげることは可能です。100点に近づけることは可能です。ですが、根底のユーザ側の期待値が異なっているんです。

これは永遠に解決しない問題です。なぜなら100点とは何か?問題だからです。テクノロジーや技術がどうこうの話ではなく、ユーザがサービスに向き合う姿勢の問題だからです。主観的な問題です。

コントロールとマネージメントの違いでもあります。従来の命令ベースは完全なコントロールが可能でしたが、これからはマネージメントしていくことになると思います。

あと、法的にも問題が生まれる可能性があります。いわゆるSLA的な問題です。提供者と利用者で、お互いに何を保証するのか?が異なっている問題です。
長くなるので、書きませんが、要点は同じで、AIとの付き合い方が、これまでとこれからでは違う点です。

ちょっと長くなってきたので、ここでやめます。AIと人の付き合い方はサービスの設計に依存します。また、これからはAIと人だけでなく、AIとAIもコミュニケーションしていく時代です。僕の作っているAIスケジュール管理アプリも結果的に意思決定をAI同士が行なっています。それを僕はマルチエージェント社会と読んでいるのですが、それについてもいつか書きたいと思いますが、今日はここでやめます。