AI・IoT等の新技術

人工知能(AI)システムの開発の基礎(第1回)

弁護士 石田 優一

コラムのご紹介

今回のコラムのテーマは,人工知能(AI)システムを開発する際に留意すべきポイントについてです。人工知能のシステムは,機械学習を取り入れなければならない特徴から,通常のシステム開発とは留意すべきポイントに大きな違いがあります。2回シリーズで,通常のシステム開発と比較しながら,企画・開発からテスト・運用まで概説します。


はじめに

 

今や,「人工知能」「AI」という言葉を聞かない日はないといっても過言ではありません。マーケティング,病院での診断補助,自動運転技術・・・人工知能の活躍が期待できる場は多様で,新時代を担う技術として期待が膨らむばかりです。

 

今回のコラムでは,「はじめて人工知能のシステムを開発してみたい」というIT企業担当者の方に向けて,人工知能システムの開発の基礎的なポイントを解説いたします。

 

人工知能システムの開発依頼を受けた際の初動対応

 

「ぜひわが社で人工知能を活用したシステムを導入したいです」という依頼をユーザーから受けた場合,開発者(ベンダー)が確認すべきことは何でしょうか。それは,(1)ユーザーがなぜ人工知能を活用したいのか,(2)ユーザーは人工知能にどのようなことを期待しているのかです。

 

時代の潮流に乗りたいという先進的な企業(ユーザー)が陥りがちなのが,「本当に人工知能を活用する必要があるのか」「人工知能に何を期待するのか」をよく検討しないままに,人工知能システムを導入しようとしてしまうことです。

 

人工知能は,これまで人の手で行ってきたことを代替し,時には,人の手ではおよそ実現できなかったことを実現できることもあります。例えば,医療ビッグデータを活用した疾病要因の研究は,人工知能を活用しなければ実現し得ない例といえます。一方で,対話システム(人工知能)を利用したヘルプデスクであれば,むしろ,優秀なスタッフを起用したほうが,低コストで高い顧客満足度を実現できるかもしれません。

 

開発者側は,ユーザー担当者と綿密な打合せを行って,(1)ユーザーが人工知能システムを導入するメリットはどれほどあるか,(2)開発可能な人工知能システムでユーザーの期待する精度を実現しうるのかを説明する必要があります。また,人工知能を活用しない従来型のシステムのほうがユーザーにとってメリットが大きいのであれば,むやみに人工知能システムを推奨せず,積極的に従来型のシステムを推奨すべきです。このような配慮を怠ると,プロジェクトが途中で頓挫してしまったり,ユーザーの期待する仕様を実現できず紛争化してしまうおそれがあります。

 

人工知能システムの企画

 

従来型のシステムとは異なり,人工知能システムを企画するに当たって特に留意しなければならない点は,(1)「人工知能の担う役割」と「人の担う役割」をどのようにすみ分けるか,(2)どのようなデータを利用するかです。

 

「人工知能の担う役割」と「人の担う役割」のすみ分け

 

大量のデータ分析に基づく判断は「人工知能」に委ねるほうが正確性を期待できる一方で,単純なデータ分析ではなく長年の研究や経験等に基づく判断が必要な場合には「人」に委ねたほうが正確性を期待できます。

 

例えば,医学研究の分野であれば,医療ビッグデータから疾病と特定の環境因子が併存する傾向を人工知能で分析したうえで,2つの関連性については専門医が医学的知見を踏まえて判断するようなシステムが考えられます。

 

開発者側は,ユーザーとの間で,人工知能システムによって実現しうる精度について理解を共有したうえで,システムにおいて「人工知能の担う部分」と「人の担う部分」を決定する必要があります。

 

利用するデータの選択

 

次に,人工知能にどのようなデータを分析させるかを検討しなければなりません。

 

まず,開発者側は,ユーザーが人工知能システムに「何」を求めているかを把握し,ユーザーの求める仕様を実現するために「どのような」そして「どれくらい」のデータが必要になるかを検討しなければなりません。そして,ユーザーと検討内容を共有したうえで,(1)社内に必要十分なデータはそろっているのか,(2)そろっていないのであればどうやって入手するか,検討する必要があります。

 

もし,社内に必要十分なデータがそろっていないのであれば,他社や公共機関が公開するデータを入手したり,時にはインターネット等から情報を収集して新たにデータを作成する必要があるかもしれません。このような場合,必要十分なデータを確保するためにどの程度のコストを要するかについて,ユーザーとの間で情報共有をしておかなければ,「そんなに高額になるとは聞いていない」とユーザーからのクレームにつながるおそれがあります。

 

人工知能システムの開発に必要な「POC

 

ここまで,開発者側が,「人工知能システムによって実現しうる精度についてユーザーときちんと情報共有しておくこと」が,紛争化を防ぐために必要であることを説明しました。ただ,人工知能の機械学習は,「やってみないとどうなるか分からない」ことが多く,何ら検証なく精度を予想するのは容易ではありません。

 

そこで,人工知能システムにおいては,具体的な開発段階に着手する前のPOC」(Proof Of Concept,概念実証)が重要です。簡単にいえば,実際にデータを使って機械学習を試行してみて,あらかじめ想定していた精度を得られるか,想定外の挙動をしないか等を検証することです。

 

従来型のシステムの場合,バグ(プログラミングのミス)を減らすことに尽力すれば足ります。しかし,機械学習の場合は異なります。

 

例えば,機械学習を行うプログラム自体にはバグがなくても,データに異常値が含まれるせいで誤った学習を行ってしまうことがあります。異常値を適切に除外した機械学習の方法を検討する必要があります。

 

また,学習用データに適合しすぎてしまい,その他の未知のデータを正確に分析できなくなる「過学習」という問題もあります。正確性は欠きますが,人に例えれば,「勉強した問題と同じ問題がテストに出れば満点がとれるが,少し違う問題が出たら(勉強したことの本質を理解していれば解けるはずなのに)正解できなくなってしまう」というイメージです。過学習を防止するためには,利用するデータの選択やアルゴリズムの工夫が必要です。

 

開発者は,POCに基づく評価結果をユーザーと共有したうえで,人工知能の活用によって期待する仕様や精度,過学習等の発生しうる問題点について,ユーザーと理解を共有する必要があります。そのうえで,あらかじめ企画したシステムで開発段階に着手しても問題はないか,あるいは,システムの見直しが必要かについて,綿密な打合せを重ねる必要があります。

 

第1回コラムのまとめ

 

仕様をめぐって事後にトラブルになることは,一般的なシステムでもしばしばあります。ただ,人工知能システムの場合,一般的なシステムとは異なった配慮が求められ,その違いを理解しないままに開発に着手してしまうと,思わぬ紛争の要因になってしまうおそれがあります。

 

また,ユーザーが人工知能に対して過度な期待を抱いてしまい,導入後に「思っていたものと違う」「こんなに使えないとは思わなかった」というクレームにつながってしまうこともあります。

 

人工知能システムの開発依頼を受けた際には,適切な初動対応に始まり,通常のシステム開発以上にユーザーとの情報共有を意識する必要があります。

 

また,一般的なシステム開発でも共通することですが,打合せの内容について「言った」「言わない」の紛争を防ぐために,議事録の作成や録音を行ったり,重要な事項については口頭ではなく資料化しておく等の配慮が重要です。

 

さて,第1回コラムでは,主に,人工知能システムの企画段階において留意すべきポイントを解説しました。第2回では,具体的な開発段階に着手してから導入するまでの過程において留意すべきポイントについて,解説したいと思います。

 

第2回につづく-

 
ー当事務所の「システム・アプリ関連紛争」法務サービスはこちらですー
 
ー当事務所の「AI・IoT」サービスはこちらですー

このコラムを書いた人

弁護士 石田優一
兵庫県弁護士会所属 68期 登録番号53402
情報処理安全確保支援士、応用情報技術者の資格を持つ若手弁護士。IT、IoT、営業秘密など、いつでもすぐに、最新の問題に対応するリーガルサービスを提供できるよう、5年先、10年先を読みながら、日々研鑽を積んでいる。
プロフィールはこちら

同じカテゴリのコラム記事

AI・IoT等の新技術
IoTを活用した働き方改革
AI・IoT等の新技術
気象ビジネスと気象データの利活用
AI・IoT等の新技術
AI自動運転の法律問題(第3回)

みおの関連サービス