ビジネス目線からのAI・機械学習|AI系プロジェクトのマネジメント #2

#1ではAI系のプロジェクトの立ち上げにあたって、マネジメントにあたって最低限知っておきたい基礎知識についてまとめました。

#2ではビジネス目線からの視点ということで、プロジェクトの問題定義の仕方やスモールスタートでの実践方法、チームの組み方やプロジェクトの進め方についてまとめたいと思います。
以下目次になります。

1. AI系プロジェクトにおける問題定義の仕方
2. スモールスタートでの実践方法
3. チームの組み方やプロジェクトの進め方
4. まとめ

 

1. AI系プロジェクトにおける問題定義の仕方
AI系プロジェクトにおける問題定義の仕方ですが、#1の人工知能の言葉の定義のところでも簡単にまとめたのですが、大資本と世界トップレベルの技術力(理論面も含めて)を合わせ持った企業を除いては『UI/UXを高めるための手段』として捉えるのが良いのではと考えています。
理由としては、『AIを作る』や『機械学習を導入する』という手段ありきでのプロジェクト立ち上げは失敗するケースが多いからです。このような手段が目的化するケースは大概のケースにおいて、予算も計算リソースもないのに、State-of-the-Art(あるタスクにおけるこれまでで一番良い成果)を出す的な要望になってきます。この状況でR&Dチーム側がこれを指摘しても言い訳しているような捉え方をされるケースも多いのですが、本来的にはマネジメントサイドの怠慢だと思います。

上記のドラッカーの5章の読解メモでもまとめましたが、マネジャーを見分ける基準は権限ではなくて『責任』です。ビジネス上の成果を出すという目的に対して、SOTAを出すのが合理的な選択かどうかをビジネス側では吟味せねばなりません。Webの開発や業務システムの開発などのプロジェクトであれば、アウトプットがはっきりしているのでまだビジネス上の問題は起きにくいのですが(本来であればシステムの導入はビジネスプロセスの改善なので、本質的には戦略的な視点でマネジメントしていく必要があります)、AI・機械学習系のプロジェクトだとアウトプットが見えにくいので余計に迷走が起きます。

迷走を防ぐ方法としては目的を明確化することです。本来であれば、戦略論などのフレームワークを使いこなせる方がビジネスのスペシャリストとしては望ましいのですが、ここまでの素養をマネジメントサイドに求めるのは難しいシチュエーションも多いです。その際に一番簡単な問題設定の仕方が『UI/UXを高めるための手段』としてAIを捉えるということです。技術の枠組みで捉えると、成果定義のしにくいR&Dの予算設定になってしまいますが、上記のように捉えることで、AIの導入が機能追加やデザインリニューアルなどと同様の俎上で議論が可能なので、合理的な予算配分が可能になります。

AI系のプロジェクトの技術的な捉え方は①データ分析(Data Science)、②自動化システムの開発(ML Engineer)の基本的に二パターンだと思うのですが、①は意思決定(Decision Making)に生かすという意味ではUI/UXの向上と言ってもいいし、②の自動化システムの開発も何かしらの改善=UI/UXの改善だと思います。したがって、『UI/UXを高める』をAIプロジェクトの目的に置くというのは割と理にかなっていると思います。


本質的には戦略論から議論すると良いのですが、分量が増えてしまうので、後日別記事でまとめられればと思います。


2. スモールスタートでの実践方法
スモールスタートの実践にあたっては、まず問題設定が必要になります。
1節で述べたように、何かしらの自社のサービスの向上(社内向けのサポートも含めて)を図るというのを目的にするのが良いのではと思います。例えばECサイトを運営している会社ではレコメンドロジックの開発などがあるのではと思います。これを行うことで自社サービスのUXが改善し、売り上げ向上に繋げることができます。

実際に開発にあたっては、機械学習を行って開発を行っていくにはデータが必要になります。ECサイトの例だと、これまでのDBを用いることでスムーズに行っていくことができるケースが多いと思います。会社によってはデータの管理がExcelなどで行っており、利用しにくいケースもあります。このような際は先に、ビジネスプロセスの改善の方が優先順位が高いので、AI導入の議論を行う段階にきていないと思います。

とにかく、プロジェクトをスタートするにあたっては、目的を定めてデータを整理するというのが重要です。この段階に来ていない場合はプロジェクトに予算を計上しても時間とお金の無駄なので極力行わないようにしましょう。

ある程度プロジェクトの目的を決めて、全体の見通しを立てたらプロジェクトを進めていく形になります。スモールスタートにあたっては小さなTry&Errorを元に高速でフィードバックを回していくというのが重要です。PDCAの高速化にあたってはチームを組んでどのようにプロジェクトを進めていくというのが鍵になってくるので、この辺につきましては3節でまとめたいと思います。


3. チームの組み方やプロジェクトの進め方
3節ではチームの組み方やプロジェクトの進め方についてまとめていきます。
まず前提としてですが、AIの導入は現場単位というより意思決定レイヤーのコミットが非常に重要です。そのため、あまり外部の会社に発注するのは望ましくありません。基本的には自社の課題をわかっているのは自社の内部の人間だと思います。したがって、基本的に内製で開発するイメージで考えておくのが良いと思います。理論的(学術的)なノウハウなどは外注よりも大学と共同研究するなどの方が会社の広報戦略的にも良いです。(ただし、大学との共同研究にあたって教員などは忙しく基本的に学生の研究となり少々スピードの面とアウトプットのクオリティ面で良くないので、基本的には社内で開発を進めつつ、隔週くらいで定期的に教員(准教授や教授も含む)の方に進捗ミーティングに入ってもらうのが良いと思います。(以前関わっていたプロジェクトではその形で進める形になっていて非常に進めやすかったです)

チームの組み方としては、経験豊富なアドバイザと作業の早いプロパーの若手を組み合わせていくのが一番望ましいのではと思っています。理工系のバックグラウンドのあるメンバーが2~3人いるとなお望ましいです。
職種としては、データサイエンスや機械学習の理論に詳しい人が1~2人いると望ましいですが、システムの低レイヤーに詳しく、基盤システムやDBなどをしっかり組める人間が必ず一人いると良いです。データの用意や計算など重たい処理を行う際には、システム側が詳しい人間が一人いると望ましいです。

役割としては、『理論側』、『ビジネス側(ドメイン知識 or コンサル能力)』、『システム側』の3つが必要でそれぞれの基本的な能力+専門知識があるメンバーが集まったチームが理想なのではと思います。
理論側、システム側はガチのスペシャリストが採用できれば望ましいですが、予算的に厳しい場合は外部から技術顧問(アドバイザ)に入ってもらうのもありだと思います。

プロジェクトの進め方としては、ウォーターフォール型ではなくアジャイルで進めていくのが良いと思います。
やってみないとわからない点なども多いため、当初の計画にこだわらないで済むような成果指標の定義が望ましいです。新規事業の立ち上げにこの辺の感覚は似ているので、参考にすると良いかと思います。


4. まとめ
AI系のプロジェクトの進行にあたっては課題設定の仕方がやはり重要だと思います。
『UI/UXの向上』に目的を置くのが、日本企業だと進めやすいのではと思います。