Star_1

Star_1

2019, Nov 30

アジェンダ

この記事は、システムテスト自動化カンファレンス2019の1回目の内容です。

AIを活用した交通事故削減サービスのテスト自動化

スピーカー(登壇者)は鈴木翔太氏。馬 立東氏はご不在のこと。 ご自身のお話と参画しているプロジェクトの概要や目指すべき目標など。

agenda

概略

AIを活用したサービス開発が近年増加してくるにあたりそのテスト方法をどうするかが注目されてきています。DeNAがリリースしたAIを活用した交通事故削減サービス「DRIVE CHART」におけるテストの工夫を紹介します。

思った以上に長かったので、スピーカーフィードバック

ドライバーの行動を改善するためのサービス

技術要件は画像の通り。 非常にシンプルでいいですね!本来システムはこれぐらい簡単であるべきです。(私見)

私がドライバーなら入れないなぁ。 強制搭載とかしないと、わざわざお金出して自分に赤点つけるようなマネはしないです。

カメラ画像

  • 外向きカメラ
    • 自動車や人を検知する
  • 内向きカメラ
    • ドライバーの顔の向きを検知する

ますます嫌だ。 自分では入れたくない。

テストとして起こすためには?

考えること 対象範囲

これぐらいは考えるよね、という内容で納得。 どこでもそうだけど、「品質保証」が明確に定義されないまま実装の話をされることもあるので、品質評価ではなくテスト屋っぽいイメージを持たれがち。 こういう場に来るとそういう話がそもそも起こらないのが良いですね!エンジニアの地位が低いとこうはならないです。

機械学習(AI)をテストする、とは?

ソフトウェアと機械学習は開発アプローチが違う ソフトウェアと機械学習は開発アプローチが違う

ソフトウェアと機械学習は開発アプローチが違う! 当然テストも違う

MSOps(Machine Learning)

そもそもMLOpsとは?

データモデルから学習の再現や結果、バージョン管理が難しい。 同じものを作り直すことは難しいのでは?

ベストプラクティスやガイドラインは(まだ)ない、なかった

モデルテストとソフトウェアテストを両立させる

モデル部分とソフトウェア部分はテストの方針を明確に分ける(分けないとできない) モデルのバリデーションがよく分からない。

ハードウェアとAIのテスト

これを網羅するのはムリ。 対応するならエッジケース(特殊なケース)で、できない事はできないと言ってしまおう! (過剰品質) 想定されるケースにはいいけど、想定されないケースに弱くなる。過学習問題もあるし……

アノテーション

画像やテキストにタグをつけられる。アノテーションは常に正しい前提なので、これを誤るとモデルそのものが無効(品質が悪くなる)に。

質疑応答

Q. テストケースについて具体的に教えて欲しい A. ハードウェア的な側面からざっくりな概略は出せるけど、細かなケースに対応できていない

所感

ハードウェアベンダーの経営者が品質保証にこれぐらいやれ、と求めるレベルの内容です。 が、自動でできる環境はほとんどないですが、実現ができていると感じられる内容と体制に驚いてます。 間違いなく日本国内における最先端の一つの形ではあると感じられました。

ナビゲーション