AI開発について理解しておくべき4つの特徴
こんにちは、よじまるです。
経産省から出されたAI・データの利用に関する契約ガイドラインがとても有用だということで、わかりやすく解説する記事を書いています。
今回はAI・データの利用に関する契約ガイドラインの記事第三弾です。この記事では、
AI技術を利用したソフトウェア開発の特徴について
解説いたします。
今回の記事は短めですが、AIを利用するに当たっておさえておくべきとても重要な記事なので、ぜひご一読ください。
この記事のまとめ
AIの利用には、通常のソフトウェア開発と異なる点が4点存在する。
1. 学習済みモデルの内容・性能などが契約締結時に不明瞭な場合が多いこと
- 事前の性能保証が性質上困難である
- 事後的な検証等が困難である
- 探索的なアプローチが望ましい
2. 学習済みモデルの内容・性能等が学習用データセットによって左右されること
3. ノウハウの重要性が特に高いこと
- 通常のソフトウェア開発よりも、データの加工やプログラムの実行に置いてノウハウが生じうる場面が多い
4. 生成物にさらなる再利用の需要が存在すること
- できたAIは様々な形で他のものに利用する需要が存在する
それぞれの項目について詳しくみていきます。
--------------
1. 学習済みモデルの内容・性能などが契約締結時に不明瞭な場合が多いこと
学習済みモデル、というのは学習を行った結果で未知のデータの推論をしてくれるもののことです。用語に関しても記事を書いているので、こちらをご参照ください。
理解する上では一旦、私たちが会話の中でAIと呼んでいるものだと思ってもらって問題ありません。
未知のデータなどを学習済みモデルに入れることで、予測結果などを得ます
この項目の簡単な解釈としては、
作るAIの性能は事前にはわからないですよ
ということです。なんでかというと、
・ どんなAIを作るかも、どれくらいの精度が出るかも割とデータ依存である
・ 作った後に、ここが悪いから性能が出ない、と分析することが必ずしもできる訳ではない
・ 上記二つの理由を踏まえても、段階的探索的なやり方をする必要がある(つまり契約前には何をするか、どれくらいできるかは明言できない)
という性質があるからですね。
まず、どんなアルゴリズムを適用してどんなものを作るかはデータをみないとなんとも言えません。
そして、ある性能を目標に作ったとして、その性能に達していない時にどこが悪いかなどを分析できないことも存在します。
データを分析しないとどんなものを適用するかが決定できない、性能の事後検証などが難しいという理由もあり、色々な方法を探索的に試しながら、段階を踏んで契約や導入を進めていくのがおすすめ、ということです。通常のソフトウェア開発のように最初からかっちり決めていくスタイルでは両者にとってリスクが高すぎるので、
無理そうなら途中でやめられるように少しずつ段階をおって、方法も様々探索しながら最小限のリスクで進める
ということが推奨されるわけですね。
--------------
2. 学習済みモデルの内容・性能等が学習用データセットによって左右されること
さて、AIの特徴として何を作るか、それがどれくらいの性能かがデータに大きく依存するという特徴があります。
ここで、例えば以下のような場合もあるということをおさえておきましょう。
・学習用データセットにほぼ含まれていないような稀なケースは反映しにくい
・学習したデータセットと予測したいデータが異なる場合、高い性能が達成されない可能性がある
例えば動物に関して100万枚の画像を学習してその種類を当てられるAIを作ったとします。
学習データには1枚だけホワイトライオンのデータがあったとしましょう。
その場合、未知のデータでホワイトライオンのデータが入れられたとしても、そうだと判定できる可能性は高くないということです。
また、100万枚の画像が比較的あたたかい地域の動物たちであった場合、未知のデータに寒い地域のペンギンやホッキョクグマの画像があっても正しく予測はできませんね。
そのためAIの導入前には、
持っているデータはどのようなデータで、
予測したいデータはどのようなデータか
などをきちんと考慮する必要があります。
--------------
3. ノウハウの重要性が特に高いこと
AIの性能はデータに大きく依存するので、
・どのようなデータを使うのか
・それらをどのように加工するのか
・データに対してどのようなアルゴリズムを適用するか
などについて、ノウハウが発生する可能性が高いということをおさえておく必要があります。これは、多くがAIを開発する方のノウハウでありますが、
例えば
・どのようなデータを除外するべきか
などについては、データを持っている側のノウハウが必要となることも存在します。どのようなノウハウが生じうるのか、などについては両者が理解をする必要があります。
--------------
4. 生成物にさらなる再利用の需要が存在すること
こちらが特に従来のソフトウェア開発と異なる点ですが、作ったAIはそのままの形ではないにせよ、様々に再利用の需要が存在します。
例えばある領域のAIを作った時には、別の領域にそのAIを応用することで少ないデータでも高い精度を出すことができる場合があります。(このような手法は転移学習と呼ばれます)
他にも、別で作ったAIと組み合わせることでさらに高い精度を出すことができるようになること(アンサンブル学習と言います)などが存在します。
そのため、開発側には
・ 作ったものは別のものに対しても応用したい
という需要が強く存在します。その点を理解した上で、契約を進める必要があるでしょう。
--------------
まとめ
今回の記事では、AI・データの利用に関する契約ガイドラインの中から、
AI開発について理解しておくべき4つの特徴について解説をしました。
特に重要なのは、事前に性能がわからないため、探索的段階的な契約とする必要がある、という点です。この点は通常のソフトウェア開発と異なる形態のため、注意が必要です。
AIがどのようなものか、どのように契約や導入を進めればいいかについての知見がより広く共有され活用が進むと良いですね。
次回は、AIの利用において問題が起きる権利関係について解説します。
--------------
株式会社ACESでは、上記のガイドラインの内容を踏まえ、AIの技術導入及び技術導入のためのコンサルティングを行っております。
・AIを導入したいけど自社のデータでどのようなことが可能かわからない
・AIを導入して実現したいことがあるがリスクを最小限に抑えた形での導入の方法がわからない
・AIの実装開発を行って欲しいがあるがリスクを最小限に抑えた形での導入の方法がわからない
などの課題を抱えていらっしゃる場合は、お気軽にお問い合わせください。
株式会社ACES HP : http://acesinc.co.jp
お問い合わせ先 : info@acesinc.co.jp
この記事が気に入ったらサポートをしてみませんか?