2017/2/4 JaSST2017東京

セッション E6
「テストと⼈⼯知能」

最近の事例から

⽇本アイ･ビー・エム 東京基礎研究所
増⽥ 聡

講師紹介

増⽥ 聡
【所属】
⽇本アイ･ビー･エム株式会社.東京基礎研究所 シニア・リサーチ・スタッフ・メンバー【経歴】
⽇本アイ・ビー・エム株式会社のアプリケーション開発・保守部⾨において技術⽀援業務に従事．テストメソドロジー，技法，テストツールなどに専⾨的に取り組み，プロジェクトにおいて展開をおこなう．2007年からIBMのテスティングサービスの⽇本市場への展開をおこない，テストコンサルティングなどのテスティングサービスを提供した．2014年4⽉から
東京基礎研究所においてビジネスアナリティクス．サービス・ソフトウェア・エンジニアリングに従事．
ISO/IEC WG26(ソフトウェアテスト)国内幹事。 NPO法⼈ソフトウェアテスト技術振興協会（ASTER）理事。情報処理学会の正会員。
【著書/寄稿】 『実践アジャイルテスト』(翻訳、2009、翔泳社)、『テストPRESS Vol.2』に寄稿、『Test ManiaX』に寄稿。

当セッションでは講師個⼈の考えを述べるもので、IBMの考えを表すものではありません。
© 2016 IBM Corporation本⽇の話§最近の(私の周辺の)事例から「テストと⼈⼯知能」に関連する話をします–⾳声質問応答システムとテスト•「セルフサービスシステムの実現に向けた回答データ作成⼿法」–「テストケース作成⾃動化のための意味役割付与⽅法」§より多くの参加者に役⽴つよう、分かりやすい話を⽬指します§⼈⼯知能の技術を利⽤したアプリケーション開発にはテストのスキルが有⽤だと思ってます© 2016 IBM Corporation

本⽇の話

⼈⼯知能の技術をテストに利⽤する
テスト

⼈⼯知能

テストケース作成
組み合わせテスト
テスト⾃動化..

⾳声認識
⾃然⾔語処理機械学習..

⼈⼯知能をテストする© 2016 IBM Corporation

⾳声質問応答アプリケーション 例
遊園地にある⾳声質問応答アプリケーション

ゴーカートはどこにありますか

⾳声質問応答アプリケーション
マイク
画⾯

スピーカ

来場者

ゴーカートはモーターランドにあります© 2016 IBM Corporation

⾳声質問応答アプリケーション 例(2)⾳声テキスト変換

ゴーカート
はどこにありますか(1)周辺環境

ゴーカートはどこにありますか(3)テキスト分類(⾃然⾔語処理、データベース
機械学習)
質問ゴーカート
はどこにありますか© 2016 IBM Corporation

⼊場料はいくらですかゴーカートはどこですか回答

⼊場料は1500円です
ゴーカート
はモーターランドにあります⽂章の類似度の例

cos類似度

⼆つのベクトル a=(a1,a2,⋯,an) とb=(b1,b2,⋯,bn) に対して𝑎1𝑏1 + ・・・ + 𝑎𝑛𝑏𝑛
𝑎1𝑎1 + ・・・ + 𝑎𝑛𝑎𝑛 𝑏1𝑏1 + ・・・ + 𝑏𝑛𝑏𝑛
をcos類似度という。
cos類似度が1に近いほど似ている。

© 2016 IBM Corporation

⽂章の類似度の例

cos類似度

ゴカにあり

ます

かです

入場
料

いくら

トはど
こ

ゴーカートはどこにありますか

1

1111

1

1000

ゴーカートはどこですか1

110001100

入場料はいくらですか

010000111

1「ゴーカートはどこにありますか」と「ゴーカートはどこですか」のcos類似度は0.676「ゴーカートはどこにありますか」と「⼊場料はいくらですか」のcos類似度は0.338© 2016 IBM Corporation

⾳声質問応答アプリケーション 例(2)⾳声テキスト変換

ゴーカート
はどこにありますか(1)周辺環境

ゴーカートはどこにありますか(3)テキスト分類(⾃然⾔語処理、データベース
機械学習)
質問

ゴーカート
はどこにありますか
ゴーカートはモーターランドにあります
正解(4)テキスト⾳声変換© 2016 IBM Corporation

⼊場料はいくらですかゴーカートはどこですか回答

⼊場料は1500円です
ゴーカート
はモーターランドにあります
ゴーカート
はモーターランドにあります⾳声質問応答アプリケーション 例(2)⾳声テキスト変換

豪華はこ
こにありますか(1)周辺環境

ゴーカートはどこにありますか(3)テキスト分類(⾃然⾔語処理、たかはら
機械学習)
豪華プレゼ ⾼原広
ントはやっ場で実施
豪華はこ てますか中です

こにありますかこうげんひろばでじっしちゅうです

ゴーカートはどこです
かゴーカートはモーターランドにあります
⾼原広場で実施中です

不正解 (4)テキスト⾳声変換© 2016 IBM Corporation

⾳声質問応答アプリケーション 例(2)⾳声テキスト変換

ゴーカート
はどれにありますか(1)周辺環境

ゴーカートはどこにありますか(3)テキスト分類(⾃然⾔語処理、データベース
機械学習)
質問

ゴーカートの待ち時間は15分です回答

ゴーカートは ゴーカートのゴーカート どれくらい待 待ち時間は15分です
はどれにあ ちますかりますか
ゴーカート
ゴーカート
はモーターはどこです
ランドにありかます

不正解 (4)テキスト⾳声変換© 2016 IBM Corporation

ゴーカートの待ち時間は15分です「セルフサービスシステムの実現に向けた回答データ作成手法」§ 回答データはどのような構造が良いか？

© 2016 IBM Corporation

⾳声質問応答アプリケーションの開発
質問

質問(1)周辺環境回答(2)⾳声テキスト変換(3)テキス
ト分類(4)テキス
ト⾳声変換

100%

正解率
合格ライン

この例のようなアプリケーションの開発作業は質問対する正解率が合格ラインに達するまで、データやロジックを調整していくこと
テスト、結果確認、調整、再テストの繰り返し＝＞テストの技術が有益である© 2016 IBM Corporation

V字モデルとの⽐較
事例の開発モデル

V字モデル

要件定義

概要設計

受け入れテスト

要件定義

システムテスト

概要設計
データ作成

詳細設計

統合テスト

実装/単体テスト© 2016 IBM Corporation

テスト/調整本⽇の話
次はこちらの⽅の話

⼈⼯知能の技術をテストに利⽤する
テスト

⼈⼯知能

テストケース作成
組み合わせテスト
テスト⾃動化..

⾳声認識
⾃然⾔語処理機械学習..

⼈⼯知能をテストする© 2016 IBM Corporation

「テストケース作成⾃動化のための意味役割付与⽅法」から§ ISO/IEC/IEEE 29119-4のDecision Table TestingのStep
1. 仕様を確認する•「年齢が20歳以上の場合、入場料1000円を表示する。」

2. Step 2: テスト条件(条件と動作)を抽出する条件(Conditions)•TCOND1(C1): 年齢が20歳以上の場合動作(Actions)•TCOND4(A1): 入場料1000円を表示する© 2016 IBM Corporation

「テストケース作成⾃動化のための意味役割付与⽅法」から
Step 3. 条件と動作の組み合わせを挙げる

条件動作

Decision Rules(C1):年齢が20歳以上の場合(A1):入場料1000円を表示する

Test Coverage Item
12
T
F
TF

Step 4. テストケースを作成する
テストケース
番号
1
2

入力
年齢出力
表示

25歳
10歳

入場料1000円を表示する
入場料1000円を表示しない© 2016 IBM Corporation

TestCoverageItem
12「テストケース作成自動化のための意味役割付与方法」から
6
コンピュータソフトウェア- 実施内容:雛形文体
表 1 有識者判断と構文的類似度の比較

18

例文

有識者判 構文的類
断似度

年齢が２０歳以上の場合、入場料１０００円を表示する。
個数が１０個以上の場合、配送料５００円を徴収する。
ログオン・ユーザーが対象会社ではない場合、システムは、対象ユーザーではない旨を表示する。
年齢が２０歳以上で女性の場合、５００円を表示する。
ユーザーは、ログインし、イントラネットＩＤおよびパスワードを入力する。
納期が３日未満の場合、追加料８００円を徴収し、係員が手配をする。
その際に担当が代わる場合は、「担当メンテ」を使用し、発行の担当者名を変更する必要あり。
当日受付確認処理された患者情報一覧を表示すること (主に医師が診察室で使用する)。
時間管理が出来ること (オーダー時間、受付時間、採血時間等)
何もせずに終わる場合→終了。

適
適
適

1.000
1.0000.594

適適
適
不適

0.563
0.500
0.313
0.292

不適

0.271

不適
不適

0.200
0.125© 2016 IBM Corporation

し，文型と論理式ラベルの対応表など仕様書「テストケース作成自動化のための意味役割付与方法」からに沿った辞書の作成が必要となり，本論文でしておらず今後の課題である．

§ 前処理：雛形⽂体知識を利⽤した構⽂的類似度⽐較により⽂
では，自然言語処理による条件と動作の抽出の振り分け

割付与の方法と捉え，自然言語処理の解析–条件と動作が明確に記述された⽂を雛形⽂体とする
得られる情報を基に意味役割付与を行うア• 雛形⽂体を「年齢が20歳以上の場合、⼊場料1000円を表⽰する。」としたを提案する．現実のソフトウェアの仕様書に–仕様書の⽂の⽂体を、雛形⽂体と⽐較し条件と動作の抽出に適した⽂を，曖昧な記述や論理不明瞭な文も存在する．
図 2 雛形文体の係り受け構造
振り分ける
しては，条件と動作が明確に記述された雛1 Feb. 2016 –構⽂⽊の類似度⽐較は⽊カーネルを⽤いる
3

構文的類似度を比較することで，条件と動に適した文を振り分けることとする．また，のリスト構造の文のように複数の文から機することがある．複数の文の文間関係や含意

究 [8] もあるが，本論文では，一文ごとの解上に取り組む．

件と動作を抽出する意味役割付与の方法抽出方法概要

図2

雛形文体の係り受け構造

図3

雛形文体の品詞の構造

動作を抽出する意味役割付与の方法を図 1
19

まず，前処理で仕様書の文と雛形文体との間© 2016 IBM Corporation円を表示する。」という動作の記述を持つ，本論文の「テストケース作成自動化のための意味役割付与方法」から- 実施内容:雛形文体
6
コンピュータソフトウェア
適と不適の構⽂的類似度の閾値は⼀般的[⾼瀬2014,グェン2011]な0.3とした
表 1 有識者判断と構文的類似度の比較

20

例文

有識者判
断

構文的類
似度

年齢が２０歳以上の場合、入場料１０００円を表示する。
個数が１０個以上の場合、配送料５００円を徴収する。
ログオン・ユーザーが対象会社ではない場合、システムは、対象ユーザーではない旨を表示する。
年齢が２０歳以上で女性の場合、５００円を表示する。
ユーザーは、ログインし 、イントラネットＩＤおよびパスワードを入力する。
納期が３日未満の場合、追加料８００円を徴収し 、係員が手配をする。
その際に担当が代わる場合は、「担当メンテ」を使用し、発行の担当者名を変更する必要あり。
当日受付確認処理された患者情報一覧を表示すること (主に医師が診察室で使用する)。
時間管理が出来ること (オーダー時間、受付時間、採血時間等)
何もせずに終わる場合→終了。

適
適
適1.0001.0000.594

適
適
適
不適

0.563
0.500
0.313
0.292

不適

0.271

不適
不適

0.200
0.125

© 2016 IBM Corporation

再掲:本⽇の話§最近の(私の周辺の)事例から「テストと⼈⼯知能」に関連する話をします–⾳声質問応答システムとテスト•「セルフサービスシステムの実現に向けた回答データ作成⼿法」–「テストケース作成⾃動化のための意味役割付与⽅法」§より多くの参加者に役⽴つよう、分かりやすい話を⽬指します§⼈⼯知能の技術を利⽤したアプリケーション開発にはテストのスキルが有⽤だと思ってます© 2016 IBM Corporation

The end of presentation© 2016 IBM Corporation