AI(人工知能)の概要は理解しているが、システム構築の現場ではどう使うのだろうか。本連載ではこうした疑問に答えるため、AIシステム構築時のポイントを解説する。1回目の今回は要件定義フェーズを取り上げる。

 これまでの連載「今からでも間に合うAIのキホン」では、近年のAI(人工知能)の進化や潮流、アルゴリズムの種類と概要など、AIの活用を考えるうえで押さえておきたい基本事項を解説してきました。

 基本を押さえた後の本連載は、実践編となります。AIシステム構築プロジェクトに取り組む際の具体的な注意事項を、ウォーターフォール型の開発プロセスに当てはめ、各フェーズでのポイントを説明していきます。まず今回は要件定義フェーズを取り上げ、AIシステム構築プロジェクトに特有の検討論点や、陥りがちな失敗例を紹介します。

要件は机上で整理し切れない

 要件定義は、AIに限らずシステム構築プロジェクトの成否を左右する最も重要なプロセスの1つです。とりわけAIシステムの構築では、ユーザーがAIの果たすべき役割やAIシステムの構築目的を絞り切れていないケースが非常に多いため、通常のシステム構築以上に要件定義の難易度が高くなります。

 またAIシステム構築プロセスの特徴として、要件定義と前後して、PoC(概念実証:Proof of Concept)フェーズに取り組むことが挙げられます。一般的な業務システムを構築するプロジェクトとは異なり、ほとんどのAIシステム構築プロジェクトは、要件定義フェーズでの机上の整理では判断し切れない事項が数多く存在するためです。

 もちろんAIに関連しない部分など、これまで通りの方法でシステム要件を整理できる部分はそのまま進めて構いません。一方で不確実性の高いAIの領域は、要件定義の前半でPoCに必要な要件の大枠を整理します。その後、PoCで実データを用いてモデルの精度や必要な計算リソースなどを検証し、それらを踏まえて、再び要件の詳細化を進めます(図1)。

図1●AIシステムの構築プロセス
[画像のクリックで拡大表示]

 今回はこのPoC前の要件整理について説明します。

 要件定義を実施する際の詳細なタスクやドキュメントの整理方法についての議論は割愛しますが、以下の5つを要件定義フェーズの主な成果物と想定し、それぞれを検討するうえで考慮すべきポイントを考えていきます。

(1)プロジェクトスコープ
(2)業務要件
(3)機能要件
(4)非機能要件
(5)PoC要件

プロジェクトスコープ:定量化・具体化で絞り込み

 まず、プロジェクトスコープから見ていきましょう。プロジェクトの開始時には、AIシステム構築に取り組む目的を明確にしておく必要があります。こう言われると「当たり前のこと」と思うかもしれませんが、AIシステム構築プロジェクトにおいて最初にぶつかる難しいポイントとなる場合があります。

 よくある失敗の1つは、「AIの導入」自体を目的として設定してしまうことです。当然ながらAIは業務上の目的を達成するための1つの手段でしかありません。「AI導入」をもう何段階かブレークダウンした目的の設定が必要となります。

 またユーザーが「万能のAI」を想定して目的が定まらないケースも頻繁に見かけます。小売業において店舗ごとの需要を予測し、商品発注作業を支援するシステムの導入を考えてみましょう。AIシステムによってどのような効果を得られると思いますか。実際のプロジェクトでは、以下のようなAIシステムの構築目的が挙がったことがあります。

  • 売れ筋商品の発注漏れ防止による売り上げ向上
  • 在庫廃棄率の低下によるコスト低減
  • 商品発注業務時間の短縮による残業時間の圧縮
  • 商品需要の増加傾向を従業員に教育することによる顧客への商品提案力の強化
  • 顧客の潜在的な購買欲求を引き出す意外性のある品揃えの実現
  • 売り上げ向上、コスト低減によるフランチャイズオーナーのモチベーション向上

 これらの観点を見て、いくつかは商品発注作業支援システムの目的として「無理がある」と感じる読者もいるのではないでしょうか。ところが実際にAIシステムの構築プロジェクトを始めると、これらの観点が挙がってくるのです。

 AIは万能ではありません。これら全ての目的を1つのモデルで実現することは難しく、一定のコストとスケジュールでプロジェクトを進めるためには、実現性のある目的とスコープを設定しなければなりません。

 そこでプロジェクトのスコープを明確化するための有効な手段の1つは、AIシステム構築の目的や効果を定量化したり、具体化したりして議論を進めることです。複数観点で構築目的が挙がった場合、目指すべき指標をより具体化することで、目的間の優先順位をつけやすくなります。

 先の例では、プロジェクトの目的として「在庫廃棄率の低下によるコスト低減」と設定すれば、AIには高い予測精度が求められます。一方で「商品需要の増加傾向を従業員に教育することによる顧客への商品提案力の強化」を目的とする場合は、精度よりも解釈性(AIがなぜそのような予測結果を出したのか、AIを使用する人が理解できること)の高いアルゴリズムを選択することが優先されます。AIに解釈性が必要かどうかは、業務要件を整理するうえで最も重要なポイントの1つであり、アルゴリズムの選定に大きな影響を与えます。

業務要件定義:AIを採用しないケースも検討

 次は業務要件定義です。業務要件を定義する際には、システム導入後に実現すべきTo-Beの業務を明らかにする必要があることは、これまでのシステム構築と同様です。

 AIシステム構築においてもまずは、AIを活用する業務シーンを整理します。これによりAIの予測・判断に求められる更新頻度や、どの程度の将来までを予測したいかという予測・判断の対象期間を具体化していきます。

 この際、過度に更新頻度や予測期間のスコープを広げるべきではありません。繰り返しになりますが、AIシステムの構築では特に、ユーザーがAIに過度な期待をしがちなケースが見られます。しかし、予測・判断の更新頻度を高めることは通常多くのリソースを必要とします。また予測・判断の対象期間が長くなればなるほど、予測精度を高く保つことは困難となるのです。

 また詳細な業務要件整理により、あえてAIの予測を採用しないケースを検討することも大切なポイントです。AIを適用して構築したシステム全体を見渡すと、一連の求められる機能の中にAIでの実装が向いていることと、これまで通りのシステム機能で実現した方が効率的なことが混在している場合が多くあります。

 保険商品の加入候補となる顧客を予測し、営業担当者に通知するAIシステムを想定してみましょう。このシステムでは、AIが保険商品を契約しそうな顧客を予測します。しかし健康上の理由などで、加入傾向は高くても営業ターゲットとして不向きな顧客がいる場合も考えられます。

 こういったイレギュラーな業務判断については、AIの予測結果よりも優先されるビジネスロジックをシステム内に用意しておき、AIの予測結果を意図的に採用しないルールとしておくことが有用です。あるいは、ごくまれにしか発生しないような例外的なケースやAIの予測結果の修正・承認については、人手による業務として整理しておくことも有力な選択肢となります。

この先は有料会員の登録が必要です。「日経SYSTEMS」定期購読者もログインしてお読みいただけます。有料会員(月額プラン)は登録月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら