AIシステムの開発工程は本質的にアジャイルである

機械学習システムやAI(人工知能)システムと呼ばれるようなシステムを開発する上において、PoC(Proof of Concept:概念実証)は非常に重要なプロセスとされる。これは、いきなり大量のデータを集めてモデルを構築してビジネスに導入しようとしても、本当に実現したい事が可能であるかが分からない。だから最初に、仮説を立てた上で少量のデータを使ってAIに実現性があるかを検証するのがPoCである。

一般的には、プロジェクトが立ち上がった後、PoCにより実現性がありそうだと判断が下されれば、本開発に入ってシステムへの導入などウォーターフォール型の開発プロセスに入る、といった説明がされることも多い。

しかし、それはPoC後の本番開発のみを静的に捉えた考え方に過ぎない。なぜなら、PoCを経て本番開発で良さげなモデルが完成し、それをシステムに組み込んだ(或いは新たなシステムを開発した)ところで、そのモデルがいつまでも有効とは限らない。寧ろいつまでも有効なケースの方が珍しく、どこかでモデルの刷新が必要である。

日々追加されるデータを用いてオンライン学習を続けていく形で対応できるのであれば、通常の保守・運用の範囲で対応できる。しかし、そもそも市場環境の変化などでデータの種類やモデルに限界がきて、データを追加して再学習するだけでは対応し切れなくなる事が多々生じる。

ましてや人工知能で株式投資をして一山あげようと考えているなら尚更である。なかなか新しいアルゴリズムを見つけることは難しいし、同じ事を考えている人は世界中に山程いるので、アルゴリズムをみつけるより掛かった時間よりも、アルゴリズムが有効な時間の方が短いことだって珍しくない。

関連記事:人工知能で株価を予測したい人へのヒント集

そんなわけで、PoCを経て本番開発をした後も、再び問題設定から始まってPoCという繰り返しが生じる。この意味で、本質的にAIシステム開発はアジャイルなのである。そもそも、ウォーターフォール開発とアジャイルという二項対立で比較されるが、アジャイルという開発方式(本来は「機敏に」開発するための「考え方」であって、明確に方法が決まっているわけではない)も、「設計→実装→テスト」というウォーターフォールの一部分を非常に短期間に行い、それを繰り返していくわけである。

だから、PoCの後に時間のかかるウォーターフォール型開発が入ったところで、それが繰り返されるのであれば、そこに構造的な違いは無い。1回目は確かにアジャイルというには開発期間が長すぎるが、2回目以降はある程度短くなるはずである。

アジャイルとは言っていないが、『失敗しない データ分析・AIのビジネス導入:プロジェクト進行から組織づくりまで(森北出版)』でも似たような事が言われている。

下図は、同著で「データ分析の仕事の流れ」として以下のような図が掲載されている。基本的には、プロジェクト立ち上げ→PoC→ビジネス適用という流れであれば、ポイントは矢印で再び1に戻る点である。

データ分析の仕事の流れ
出典:株式会社ブレインパッド(2018, 46)の図を再作成

これは、機械学習システムが最初から理想的に動くとは限らず、現場で運用する中で改善点が見えてきたり、更に別のシステムを作りたいという要望が発生したりするからである。本書でモデルの陳腐化については言及されていないが、基本的には同じことだろう。

関連記事:【書評】失敗しない データ分析・AIのビジネス導入:プロジェクト進行から組織づくりまで

参考文献:株式会社ブレインパッド(2018)『失敗しない データ分析・AIのビジネス導入:プロジェクト進行から組織づくりまで』森北出版

About HAL

金融・マーケティング分野の機械学習システム開発や導入支援が専門。SlofiAでは主に海外情勢に関する記事、金融工学や機械学習に関する記事を担当。

View all posts by HAL →