2021年8月15日日曜日

【本紹介】AIソフトウェアのテスト 答えのない答え合わせ[4つの手法]

 AI系の教育用の本として入手。企業でAIソフトウェアを導入するには、「研究開発で精度が上がって良かったね」、といった時代は過ぎ、テスト、品質保証は当たり前の流れとして各メンバーに理解してもらい、方法を考えてもらう時代に突入しているため、こういった話は避けて通れない。


 これまでのロジック型ソフトウェアでは、プログラムを開発し、そして使ってもらう前に、テストを行い、品質保証をするのは「当たり前」。

 ではその「当たり前」は、AIを活用したプログラムの場合、どうすればよいのか?

分かりやすい例としてまず示されているのが、年齢層により傾斜で変わる入場料。

ルールがあって普通にロジック組んでプログラムし、きちんと限界値テストすれば、間違った結果を出すプログラムを提供するリスクは極めて低いだろう。ではそれを、「入場料と年齢との履歴を教師データとして与えて、年齢を入力として入場料を出力とする」AI(ロジックは不明)にした場合、正しい出力は得られるのか? どうテストすればよいのか?


 AIでは、限界値テストができない。同じ入力で同じ出力が出るとは限らない。人間なら、今日の考えをよりブラッシュアップしたものが明日ふと思いつくかもしれないのは良いことだろう。だが、特に業務に特化したAIは、今日の出力と明日の出力が変わることを許容できるのか。変わる理由をヒトは説明できるか。

 ディープラーニングの登場等で、AIは人間とは異なる思考パターンで結果を出すことがある程度許容されているとはいえ、同じ細胞の画像を入力して、昨日は末期のガン、今日は全く元気、といったガン判定システムは許されないだろう。

 ではまだ発展途上ともいえるAIソフトウェアの世界で、どのように「正しい答えを出している」テストを行うか。

 この本では、その「答えのない答え合わせ」をするための考え方が、いくつかの例に基づいて示されている。実行環境はPython3.6.8。Windowsユーザ向けのインストール方法、tensorflow、keras等のライブラリインストール方法も書かれている。テスト用ツールやデータは出版社のサイトからダウンロードできる。

 まずは良く使われる数字画像認識モデル、住宅価格予測モデルの動作確認から。そのあたりは既に実践済みの人をターゲットとし、メインは、テストの考え方や実践方法。論理式、数式を用いてしっかりと解説されている。ある程度のAI知識がないと論理部分はかなり難しい。

 メタモルフィックテスティング、ニューロンカバレッジテスティング等、検証方法の考え方、検証ツールの実行例等が丁寧に解説されている。例えば、MNIST(数字画像データ認識)の方法として、画像データを5度回しても同じ結果になるか、ぼかして同じ結果になるか、といった考え方、実践方法は特に分かりやすい。住宅価格予測モデルだと、「この部屋の広さでこの値段はあり得ない」といった必ず守っておきたい条件を使う方法が示されている。


 ある程度もうAIに十二分に触れて中の仕組みも分かっており実践もしている人が、結果の説明を求められたり、精度を少しでも上げる方法の検討を求められたり、既に動いているシステムのVersionUp時に同じような出力が出せるのかの検証など、実践・活用の一歩先を考える必要が生じた場合に手に取りたい一冊。





AIソフトウェアのテストーー答のない答え合わせ [4つの手法] [ 佐藤 直人 ]

価格:3,080円
(2021/8/15 18:50時点)

0 件のコメント:

コメントを投稿