学習を運用に組み込んだビジネス設計がこれからのAIの成功パターン

今、AI開発でホットなのはTikTokやTinderのように「学習を運用に組み込んだビジネス設計」です。この記事では、なぜこれが重要かという理由とともに、1. 二者択一UIパターン、2. サジェスチョン付きコミュニケーションパターン、3. 事後補正パターンの3つのパターンを紹介します。

AIと切り離せない「学習」の問題

機械学習には「教師あり学習」「教師なし学習」の2つがあります。教師あり学習は利用する前に事前に「正解」となる教師データを準備する必要があり、教師なし学習はそれが不要という違いがあります。ビジネス上のAIプロジェクトでは、「売上を上げる」「ユーザの利便性を高める」といった目標があることから、「教師あり学習」が使われるケースが多く見られます。

さて、ここで典型的な教師データの例を挙げてみましょう。

  1. 新聞記事のデータベースを正しい文章として、日本語の文法を学習させるときの新聞記事
  2. 画像の中で「何が人間の顔なのか」を学習させるためオペレータを雇用してラベル付けをさせたときの画像とラベルのセット
  3. どのような利用者にどのような商品を勧めると購入につながるかを予測するための、行動データ→購買データの組み合わせ

1や2のパターンでは、教師データや学習済みモデルが販売・配布されており、それを購入できる場合もあります。2のようなパターンでは、教師データ作成のためのアノテーションを代行する業者も多数あります。いずれにせよ、どのように学習データを手に入れるか、どのように学習を行っていくかが、AIの性能を決める重要な要素になります。

学習用データを得る難しさ

AIの運用に当たっては、十分な学習によってモデルの精度を高めることが重要です。いくら理屈の上でうまくいくはずのシステムを作っても、モデルの精度が低ければ意味がありません。では、より良い学習データとはどんなデータなのでしょうか。

  1. 学習のために十分な量のデータ(量)
  2. 実運用の条件に近く、バイアスのかかっていない質の高いデータ(質)

量の方は言うまでもないと思いますが、どういったデータが「質」の高いデータと言えるのでしょうか。

ここで、ある会社がAIを用いた営業支援ツールを作るという架空の事例を元に話を進めたいと思います。電話・訪問などアクション対象の顧客で自動で選定し、「この人にこういうアクションをかけると良いでしょう」とアドバイスするようなツールです。

実運用の条件に近いデータとは?

この開発を担当したシステム部門の新入社員の鈴木さんは、アノテーションのためのオペレータを雇い、「人間だったらどういうアクションをするか?」を入力してもらう設計を考えました。ところが、先輩にそれを話したら、それはダメだというのです。

たしかに、Aさんの考えたシステムでも、それなりのAIができあがるでしょう。しかし、当然のことながら、アノテーションオペレータは、「優れた営業担当者」である必要があります。未経験の人にアノテーションをさせたら、性能の低いAIができあがることは言うまでもありません。でも、「優れた営業担当者」に長時間のアノテーションを依頼するのは困難です。

では、どうすれば良いのでしょうか。そもそも、こういうケースでオペレータにアノテーションを依頼する設計は適切ではありません。アノテーションより優れているのは、実際に誰がどういう人にアクションを行い、その結果どうだったのかという実データです。過去の営業データを元に、「どういう顧客にアクションをするのが良いか」「どういう顧客にどういうアクションを行ったら成約につながるか」を学習させた方が、アノテーションより優れていることは明らかでしょう。

この例から、

ラボ(実験環境)でのアノテーション < 実運用環境

ということが分かると思います。

バイアスのかかっていないデータとは?

さて、鈴木さんたちの営業支援ツールは無事完成し、営業担当者に営業アクションがアドバイスされるようになりました。さらに、1ヶ月に1度、実運用データを元に学習モデルの再構築をするという運用も順調に稼働し、AIシステムとして順調に滑り出したのです。ところが、実運用のデータが蓄積することで、どんどんAIの精度が高くなっていくはずが、営業部の成績は次第に下がっていたのです。なぜなのでしょうか。

落とし穴は2つありました。1つ目に、過去の営業データを元に学習したAIは、営業担当者たちが過去に良くアクションを起こした顧客についての情報しか持っていなかったのです。結果として「アクションを起こしてもダメだった」セグメントはある程度排除されたものの、手つかずの多数の顧客リストはそのままでした。

また、このシステムでは、「アクションするべき顧客」に優先順位を付けてA, B, Cと表示する仕組みになっていました。そこが問題だったのです。営業担当者は、優先順位の高い顧客に真剣に対応する一方、優先順位の低い顧客には、おざなりに対応していました。ところが、AIは、それを不適切に学習して、優先順位の高い顧客の選定が営業担当者の思い込み(心理的バイアス)に基づいたルールに近づいていき、本来アクションするべき顧客を見落とすようになっていったのです。

結局、AIを導入したことで、営業担当者の思い込み(心理的バイアス)が強化されただけで、「本来アクションするべき顧客を探し出す」という目的を達成することはできなかったのです。

(あくまで「学習データのバイアス」を説明するための架空の事例であり、実際にはこの程度のラフな設計でも、それなりの(マイナスではない)成果が得られる場合があります。ただ、こうした要因によって十分なパフォーマンスが得られないことは良くあります。)

AI運用の視点から見た理想のシステム

そこで、システム部では、営業支援システムの設計を大幅に見直す提案をしました。

  • 今まで、A, B, Cと優先順位を出していたものを廃止し、常に1件だけ「次のアクション」を表示するように変更する。
  • 営業担当者は、システムがアドバイスしたアクションを「必ず」行わないといけないというルールにする

利用者の行動を単純にすることで、データのバイアスを排除し、精度の高い運用データを取得する。「次のアクション」に優先順位の低いアクションをランダムに混ぜることによって、データの網羅性を確保することができる。そして、長期的には必ず、営業成績のアップにつながる。そうシステム部は主張したのです。

ところが、この構想は、営業部の反対で実現しませんでした。新しい構想では担当者の裁量がなく、仕事のモチベーションを維持できない。そんなシステムが導入されたら退職してやると言って強行に反対したのです。

そうして、多額の予算を費やして作られた営業支援システムは廃止され、誰からも使われないことになってしまったのです。システム部が提案したシステムは、AIの設計の観点から見ると理想のシステムですが、組織の力の前に実現することはなかったのでした。

TikTokやTinderのビジネス設計

上のストーリーからも分かるように、AIの精度を高めるためには、バイアスのかかっていないデータが必要です。これを実現するには、ユーザの導線や、UXなど、多くのことを考慮する必要があり、「とりあえずやってみて後から修正する」というレベルでは済まないのです。

これについては、有名な事例があります。TikTokとTinderです。

TikTokは、短時間の動画に特化したSNSアプリです。動画を再生時に、動画を最後まで見る or 途中でスキップして、次の動画を見るというUIが組み込まれており、ユーザは自分で選ぶことなく、動画を見続けることができるようになっています。この設計は、しばしば「ユーザに選ばせない」というUXの観点から解説されることが多いと思いますが、これは、同時に、AIの学習を最適化する設計でもあるのです。Youtubeも機械学習を使ったリコメンデーションを実装しているという点では同じですが、Youtubeが「ユーザに選択権を与える」代わりに、学習データの品質にあきらめているのに対し、AIに特化したUIということができます。

(注: AIの観点からのTikTokの考察としては、「AIがプロダクトになるとき: AIベースのコンシューマアプリの台頭 (a16z)」が参考になります。)

一方、Tinderは、カード型マッチングアプリの先駆けで、マッチング候補に対して「良い」「悪い」を2択で選択するようになっています。従来のマッチングアプリでは、条件検索等で複数の候補を表示させるのが普通だったのですが、これだと学習データの精度が低くなってしまいます。これを解消し、AIの精度向上にターゲットを絞ったUX設計を採用したのがTinderです。Tinderも、表面的に見ると「ユーザに選ばせない」という斬新なUXの提案のように思えるのですが、それは、AIの学習効率の最大化という技術的な側面とも関係しているのです。

さて、これらのシステム、先程の営業支援システムのストーリーのシステム部の提案にそっくりではないでしょうか?すべてに共通するのは、システムの中でユーザが取るべき行動が単純化されていること。それによって、AIがバイアスのないデータを学習できる仕組みになっていることです。「どうすればAIが効率よく学習できるか」という視点があり、そこから逆算してシステムの設計全体が決まっていくことが、現代のAI開発の特徴と言えるのではないかと思います。

AIの成功パターン

さて、「AIの学習を中心に置いたビジネス設計」として、どういうものがあるのでしょうか?

1. 二者択一UIパターン

一つは先程も説明した、TikTokやTinderのような設計パターン。二者択一のUIで、ユーザに「いい」「悪い」を選ばせることで、AIの学習効率を最大化しようとする設計パターンです。

マッチングアプリで良く見られますが、TikTokもこの考え方の応用と言うことができそうです。到達目標が「好き」「嫌い」と言ったパーソナルで言語化しづらいものである場合に使われる設計パターンです。

2. サジェスチョン付きコミュニケーションパターン

ここでもう一つ、最近注目されているパターンを説明したいと思います。

たとえば、AI診療のサービスを作ろうとしているとします。その時に、膨大な医学書や論文を学習させ、適切な治療をできるようにしようというのが古いタイプの(そして多くの場合間違った)AIの設計です。そうではなく、オンライン診療で医師と患者の両方に会話のサジェスチョンを提供する仕組みを作り、そのサジェスチョンの精度向上とともに最終的にAI診療を目指すという設計が考えられるでしょう。患者がサジェスチョン候補から外れた解答をしたときに、シームレスに人間のオペレータ医師につなぐ仕組みにすることで、省力化と信頼性を両立させることができます。

同じ設計パターンは、オンライン教育、サポートセンターの合理化などに応用ができ、従来最適化が難しかった自然言語処理と相性の良い設計パターンと言うことができます。こうしたサービスの例として、弊社で開発させていただいている株式会社サイシード様のサービス、sAIPhoneがあります。

さて、二者択一UIと異なり、この設計パターンでは、コスト削減とビジネス上のアウトカム(治療成績や学習成績の向上)の評価の比率をどうするか、サジェスチョンされた選択肢と、そうではないアクション(文字入力等)の評価の比率をどうするかなど、設計上の恣意的な要素が多くあります。また、選択肢が多岐に渡る場合、効率化に至るまでに膨大なデータな蓄積が必要だという問題もあります。とは言え、経験上、効率化に支障が出るのは頻度の少ないロングテールの問題で、主要部分については比較的早く効果がでることも多いです。近年チャットボットを導入する企業が増えていますが、短期的な人員の合理化だけでなく、将来的な顧客満足度向上に向けてのデータ収集という視点で考えてほしい問題だと思います。

余談ですが、この設計パターンはリコメンデーションと似ています。ただ、リコメンデーションが本来のユーザの導線(商品Aの購入)に、付加的に別の行動をうながすのに対し、サジェスチョン付きコミュニケーションにおいて、ユーザは「サジェスチョンに従うか、従わないか」という行動を迫られ、AIが学習するのに必要なデータが収集されます。技術的には近いのですが、必ず学習データが得られるUIにすることによって、AIの学習効率を高められるのが特徴です。

3. 事後補正パターン

一方、業務分野で良く使われるのが、AIによる結論を人間の手を補正する仕組みをUIに組み込んでしまうパターンです。たとえば、画像分類のAIシステムを作っていたとします。その際、AIによる分類を人間が確認し、再分類する仕組みをUIに組み込んでおけば、運用を通して「正しい分類」に近づけていくことができます。

このパターンは、画像分類のほかにも、等級判定、与信、人事評価等幅広い分野に応用可能ですが、一番フィットするのは、「AIよりも人間の方が精度の高い判定ができる」という条件を満たす場合です。野菜の等級判定は、この条件を満たすケースでしょう。

一方、与信や人事評価、画像診断のように「人間の評価より本質的な評価指標が存在する」場合には、先に挙げた「営業支援システム」のストーリーと同じようなバイアスの問題が生じることに注意が必要です。ただ、そのような場合も回避手段はあります。利用者による補正を一応可能とした上で、学習の際に「利用者による補正」をあくまで入力条件の一つとしてみなすということです。これでバイアスの問題がなくなるわけではありませんが、応用範囲の広いテクニックです。

まとめ

以上、3つのパターンを見てきましたが、これらに共通するのはAIの学習を踏まえて、UX設計やビジネス設計が組み立てられていることです。これらはあくまで無数にあるパターンの一つであり、ビジネス領域に合ったUX設計やビジネス設計を柔軟に考えることが大切なのです。

もちろん、こうした方法を使ったからと言って、システム設計の見直しをしなくても完璧なAIが完成するわけではなく、学習データの前処理等、人の手による見直しは重要です。しかし運用を通して適切な学習データが得られなければ、こうした見直しすらできません。適切なUX設計やビジネス設計があってこそ適切な学習データが得られ、AIを、そしてビジネスを成長させていくことができるのです。

AI開発はどうあるべきか

日本のシステム開発で良くあるのは、ビジネス領域に詳しい人が「こんなシステムを作りたい」と打ち出して、それを実現する手段をエンジニアが考えるというパターン。AI以前の世界であれば、こういう開発でも良かったのだと思いますが、こういう開発体制は、これから時代遅れになってくるのではないかと思います。一方で、「とりあえずをAIやりたいんだけど、どうすれば良いか教えて?」というような丸投げ視点で良いものができるはずもありません。ビジネスの設計を、AIを中心に行わなくてはいけなくなった今、技術的な視点とビジネス的な視点の両方が求められるようになってきます。

また、TokTokやTinderの例のもう一つの教訓は、AIがUI/UXと切り離せない問題になっているということです。「AIの精度を高めるためには、こういうデータが必要」→「それなら、こういうUI/UXを新たに作れば良い」という 両者の近さが、こうしたサービスを可能にしたのではないかと思うからです。「今まで見たことがない新しいUI/UX」をビジネス知識からロジカルに組み立てるのはUXエンジニアの仕事であり、技術の知識のない人が、デザインカンプの上で新しいUXを考案するのは難しいことです。

つまり、ビジネスの知識、AIについての知識、UXを可能にする技術、この3つが揃っていることが、これからのAIプロジェクトを成功させるための必須条件なのです。これを踏まえたチーム作り、パートナー探しが重要になってくるのではないかと思います。