4. 3
オープンサイエンスとオープンデータ
n ImageNet: http://www.image-net.org/
n 1,400万枚を超える画像,物体名(クラス名)は2万種類以上
u 14,197,122 images, 21841 synsets indexed
n 画像に写っている物体名(クラス名)を付与
n http://starpentagon.net/analytics/imagenet_ilsvrc2012_dataset/
n Berkeley DeepDrive BDD100k: http://bdd-data.berkeley.edu/
n Currently the largest dataset for self-driving AI. Contains over 100,000 videos of over 1,100-hour
driving experiences across different times of the day and weather conditions. The annotated images
come from New York and San Francisco areas.
n 訓練済みモデルの公開と集合知による改良
n Model Zooなど
https://modelzoo.co/
5. 4
Content-Based Image Retrieval using Deep Learning
CLS: Classification Error
LOC: Localization Error
AlexNet ResNet GoogLeNet
2015年に人の認識率を超える
ImageNet Large Scale Visual Recognition Competition
13. 12
機械学習応用システムの開発と通常のシステ
ム開発の違い
n システムの品質低下への対処
n 訓練済みモデルの品質低下、コンセプトドリフト
u データの傾向が時間とともに変化
n データの収集・加工に膨大なコスト
n データの管理が重要
n 利用データと訓練済みモデルのパラメータの
バージョン管理が必要
n 効率の良い試行錯誤、再現性の確保
n 機械学習モジュール間での影響が大きい
n 複数の訓練済みモデルを用いる場合注意が必要
Wan, Z., Xia, X., Lo, D., & Murphy, G. C. (2019). How does Machine Learning Change Software Development Practices? IEEE Transactions on Software Engineering, 1–14. https://doi.org/10.1109/tse.2019.2937083
14. 13
機械学習のコードはシステム全体のごく一部
Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., … Dennison, D. (2015). Hidden technical debt in
machine learning systems. In Advances in Neural Information Processing Systems (Vol. 2015-Janua, pp. 2503–2511).
データの処理
16. 15
ソフトウェア工学と機械学習工学
ソフトウェア工学
n “The application of a systematic, disciplined, quantifiable approach to the
development, operation, and maintenance of software” -IEEE Standard
Glossary of Software Engineering Terminology, IEEE std 610.12-1990,
1990.
機械学習工学
n 機械学習を利用したソフトウェア(機械学習応用システム、機械学習ア
プリケーション)の開発、運用、保守に対する系統的で規律化された、
定量化可能なアプローチの適用およびアプローチに関する研究
n 機械学習応用システムへのエンジニアリングの適用
機械学習応用システムにはこれまでのソフトウェア工学のアプローチが通用しない
19. 18
機械学習応用システムの開発・運用の難しさ
n 要求抽出の難しさ
n 実現可能な要求の抽出と整理の難しさ
u 機械学習への期待が大きい
u そもそもどこまでできるのかが不明
n AIシステムとしての新たな要求への対応
u 公平性、プライバシー、低い説明可能性の考慮
n テスト・品質保証の難しさ
n 訓練プログラム・訓練済みモデルの妥当性の確認の難しさ
n 振る舞いを完全に把握できない
n 機械学習特有の脆弱性への対応
n 意図的に判断を狂わせる攻撃
n 訓練パイプラインの難しさ
n 発見的なプロセス、工数が膨大で予測が困難
n コードの再利用の難しさ
n データ処理に関するマネジメントの難しさ
n ツールの未成熟
n 機械学習のためのバージョン管理
20. 19
機械学習応用システム特有の要求
n 公平性とバイアス
n 人の判断をソフトウェアで置き換える際の問題
n 説明可能性、透明性
n 訓練済みモデルの説明性・透明性が低いことに起因する考慮
n プライバシー
n データ収集に関するプライバシー要求
n システムに関するプライバシー要求
n コンセプトドリフトへの対応
n 安全性
n 訓練済みモデルの頑健性(ロバスト性)
u 理想とやや異なっていても同様に推論できる
n ハザードが起こるまれな状況(訓練データが少ない場合)への対処
n 機械学習特有のセキュリティ脆弱性への考慮
n データに対する要求
n 安全性担保に必要な訓練データ、確認に必要なテストデータ
21. 20
機械学習における公平性とは?
n 公平性の種類
n 集団公平性:人種などのセンシティブ属性によるグループ間で判断に差異がない
n 個人公平性:人種などのセンシティブ属性以外が似ている個人間で差異がない
法的な要求
n 人種,肌の色,宗教,性別,出身国による雇用差別の禁止
n 男女雇用機会均等法
n 職場における男女差別の禁止
n GDPR:
n 個人データの処理は”適法、公平かつ透明性のある手段で処理しなければならない”
推論結果により差別を生む可能性を排除・軽減する要求
• 雇用に関するサービス・個人情報を扱うサービスは、公平性を考慮する必要がある
• 差別の原因となるセンシティブな情報から判断・予測・推薦するサービスも公平性がリスク
にならないか分析する必要がある
• 肌の色などDNNが自動的に特徴量として抽出、判断に利用する場合がある
23. 22
機械学習工学のトレンド
2020
booking.comにおけるベストプラクティス [2]
AIプロダクト品質保証ガイドライン 第1版†2
機械学習品質マネジメントガイドライン†3
マイクロソフトにおけるベストプラクティス [3]
ソフトウェア工学の観点での課題[4]
バグの原因・修正パターンを整理[5,6]
[1]Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., … Dennison, D. (2015). Hidden technical debt in machine learning
systems. In Advances in Neural Information Processing Systems (Vol. 2015-Janua, pp. 2503–2511).
[2]Bernardi, L., Mavridis, T., & Estevez, P. (2019). 150 successful machine learning models: 6 lessons learned at Booking.com. In Proceedings of
the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (pp. 1743–1751).
[3]Amershi, S., Begel, A., Bird, C., Deline, R., Gall, H., Kamar, E., … Zimmermann, T. (2019). Software Engineering for Machine Learning: A
Case Study. 41st ACM/IEEE International Conference on Software Engineering (ICSE 2019).
[4]Wan, Z., Xia, X., Lo, D., & Murphy, G. C. (2019). How does Machine Learning Change Software Development Practices? IEEE Transactions
on Software Engineering, 1–14.
[5]Nargiz Humbatova, Gunel Jahangirova, Gabriele Bavota, Vincenzo Riccio, Andrea Stocco, Paolo Tonella, Taxonomy of Real Faults in Deep
Learning Systems, ICSE 2020
[6] Md Johirul Islam, Rangeet Pan, Giang Nguyen, Hridesh Rajan, Repairing Deep Neural, Networks: Fix Patterns and Challenges, ICSE 2020
googleにおけるベストプラクティス[1]
AlexNet GoogLeNet/VGGnet
ResNet
BERT
MLSEのアンケート†1
仕事で始める機械学習,オライリー・ジャパン
• 学術的な中心課題はテスト技術
• ベストプラクティスからガイドライン
†1 https://sites.google.com/view/sig-mlse/参考文献
†2 http://www.qa4ai.jp/download/
†3 https://www.cpsec.aist.go.jp/achievements/aiqm/
24. 23
機械学習工学のトレンド
2020
booking.comにおけるベストプラクティス [2]
AIプロダクト品質保証ガイドライン 第1版†2
機械学習品質マネジメントガイドライン†3
マイクロソフトにおけるベストプラクティス [3]
ソフトウェア工学の観点での課題[4]
バグの原因・修正パターンを整理[5,6]
[1]Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., … Dennison, D. (2015). Hidden technical debt in machine learning
systems. In Advances in Neural Information Processing Systems (Vol. 2015-Janua, pp. 2503–2511).
[2]Bernardi, L., Mavridis, T., & Estevez, P. (2019). 150 successful machine learning models: 6 lessons learned at Booking.com. In Proceedings of
the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (pp. 1743–1751).
[3]Amershi, S., Begel, A., Bird, C., Deline, R., Gall, H., Kamar, E., … Zimmermann, T. (2019). Software Engineering for Machine Learning: A
Case Study. 41st ACM/IEEE International Conference on Software Engineering (ICSE 2019).
[4]Wan, Z., Xia, X., Lo, D., & Murphy, G. C. (2019). How does Machine Learning Change Software Development Practices? IEEE Transactions
on Software Engineering, 1–14.
[5]Nargiz Humbatova, Gunel Jahangirova, Gabriele Bavota, Vincenzo Riccio, Andrea Stocco, Paolo Tonella, Taxonomy of Real Faults in Deep
Learning Systems, ICSE 2020
[6] Md Johirul Islam, Rangeet Pan, Giang Nguyen, Hridesh Rajan, Repairing Deep Neural, Networks: Fix Patterns and Challenges, ICSE 2020
googleにおけるベストプラクティス[1]
AlexNet GoogLeNet/VGGnet
ResNet
BERT
†1 https://sites.google.com/view/sig-mlse/参考文献
†2 http://www.qa4ai.jp/download/
†3 https://www.cpsec.aist.go.jp/achievements/aiqm/
MLSEのアンケート†1
仕事で始める機械学習,オライリー・ジャパン
• 学術的な中心課題はテスト技術
• ベストプラクティスからガイドライン
そして、パターンへ
26. 25
ベストプラクティスの例 (2/2)
データへの要求管理
n データの可視化が重要
n データの量と品質について検討する
n データを増やすために利用できるデータを検討する
n データの十分性(網羅性)、一貫性、正しさについて考慮する
n データの識別と要求が重要
n データの収集、形式、値の範囲
n データの出どころ・素性を理解することが重要
n データ拡張の可能性を検討する
n データの収集・利用時に対する取り扱いに注意する
n 個人情報・GDPR・ライセンスなどへの考慮
その他
n ドメイン知識が重要
n 要求エンジニア、データサイエンティスト、法律者の参加が必要
27. 26
データの品質ガイドライン例
n (a) 学習データの量の十分性
n (a.i) 想定する学習手法の適用前提や統計的観点から十分な量のデータがあるか.
n (a.ii) 想定する要求・適用環境において,希少な状況や分類クラスの偏りがある場合で あっても,それらに対して十分な量のデータがあるか.
n (a.iii) データ量が少ない場合,「かさ増し」(人工的なデータ生成など)で補完が可能か.
n (b) 学習データの妥当性
n (b.i) 想定する要求・適用環境に意味の観点から対応した適切なデータとなっているか.
n (b.ii) 要求・適用環境の想定にそぐわないデータが入っていないか.
n (b.iii) 人工的に作成・加工したデータについても,要求・適用環境を適切に表現している といえるか.
n (b.iv) データの収集等の費用対効果の観点からも適切であるか.
n (c) 学習データの要件適合性
n (c.i) データに関するステークホルダーの要求事項を満たしているか.
n (c.ii) データが満たすべき不変条件や整合性条件,学習対象となる判断の公平性,個人 情報の有無など,データに対する制約を満たしているか.
n (d) 学習データの適正性
n (d.i) 潜在的なバイアスや汚染の可能性について,多様なステークホルダーや社会への 影響の観点から検討し,データが適切であることを確認した
か.
n (e) 学習データの複雑性
n (e.i) 学習させたい推論機能に対して,必要以上の情報量や傾向を含む複雑なデータと なっていないか.
n (e.ii) データを単純化しすぎて,必要な情報が入っていないことはないか.
n (f) 学習データの性質の考慮
n (f.i) 想定する学習手法の適用前提となるようなデータの性質(多重共線性など)は適切に考慮されているか.
n (g) 学習データの値域の妥当性
n (g.i) データに含まれている値は,対象ドメインの知識などと照らし合わせて現実的に発生する妥当な値となっているか.
n (g.ii) 外れ値と欠損値と判断した値は,真に現実的な値ではなく取り除くべきであるこ とを確認したか.データを取り除くための前処理は適切であった
か.
n (h) 学習データの法的適合性
n (h.i) データの利用が契約や第三者の知的財産権により制限されないか、データの利用 に法令上、倫理上の問題はないか、プライバシー等への配
慮が必要ないか.
n (i) 検証用データの妥当性
n (i.i) 学習用データと検証用データは独立しているか.
AIプロダクト品質保証コンソーシアム. (2020). Ai プロダクト品質保証ガイドライン 2020.08版.