Slide 1

Slide 1 text

DRIVE CHART における OSS を活 用した実践 AI 開発 株式会社Mobility Technologies スマートドライビング事業部システム開発部AI基盤グループ 石井 健太朗

Slide 2

Slide 2 text

Table of Contents 01|Mobility Technologiesについて 2 02|DRIVE CHARTについて 03|DRIVE CHARTのAI開発の特徴 04|OSSを活用したAI開発

Slide 3

Slide 3 text

Table of Contents 01|Mobility Technologiesについて 3 02|DRIVE CHARTについて 03|DRIVE CHARTのAI開発の特徴 04|OSSを活用したAI開発

Slide 4

Slide 4 text

Moblility Technologiesについて 2020年 4月 JapanTaxi社とDeNAのMOV/DRIVE CHART事業などが統合し 株式会社Mobility Technologiesとして始動。 Mobility Technologiesは「移動で人を幸せに。」をミッションに、 日本のモビリティ産業をアップデートする様々なITサービスの提供を行っています。 4

Slide 5

Slide 5 text

タクシーアプリ『GO』 5

Slide 6

Slide 6 text

タクシーを起点に、より大きな課題の解決に向かう 6

Slide 7

Slide 7 text

事業展開 7

Slide 8

Slide 8 text

Table of Contents 01|Mobility Technologiesについて 8 02|DRIVE CHARTについて 03|DRIVE CHARTのAI機能の特徴 04|OSSを活用したAI開発

Slide 9

Slide 9 text

DRIVE CHARTについて AIを搭載したドラレコによる事故防止支援サービス AIが様々な危険シーンを検知して、普段の運転行動を分析 9

Slide 10

Slide 10 text

DRIVE CHARTは危険シーンを抽出しWebでレポート確認 ■ AIにより危険シーンを抽出 ■ Webで簡単に該当シーンの動画を閲覧 ■ 運転行動をレポート表示 10

Slide 11

Slide 11 text

企業は社有車の事故を防止する必要がある ■ 社員が社有車で事故を起こせば会社の責任 ■ 企業は事故を起こさないための仕組みづくりが必要 ■ やみくもに事故削減活動を行ってもキリがない ■ すべての運転記録をチェックするのは現実的ではない ■ 社員それぞれの事故のリスクを把握し効率・効果的な指導、改善が求められる ■ 運転の癖を可視化し、社員ごとに指導内容をカスタマイズできる 11 https://drive-chart.com/magazines/mg_220131

Slide 12

Slide 12 text

事故削減に向けたDRIVE CHARTの考え方 ■ 「軽度のリスク運転行動」を徹底的に減らすことで「重度のリスク運転行動」が自ずと減り、最終的に「事故」が減 ることを想定 ■ 「軽度のリスク運転行動」を駆逐するための改善を継続的に行うことで事故削減の実現を目指す 12 法令違反別交通事故割合(2019年) ハインリッヒの法則

Slide 13

Slide 13 text

DRIVE CHARTが提供する代表的な機能 ■ 危険シーン検知 ■ 脇見運転、車間距離不足、一時不停止、速度超過、急ハンドル、急加速、急減速、急後退 ■ 日報・月報自動作成機能 ■ 車両別 / ドライバー別の走行データをもとに日報 / 月報を生成 ■ ライブマップ機能 ■ 車両の位置、直近のリスク運転が発生した場所を地図上に描画 ■ ヒヤリハット通知メール ■ 危険度が高い項目の検出時には警報でドライバーに知らせ、管理者にもメール通知 13

Slide 14

Slide 14 text

Table of Contents 01|Mobility Technologiesについて 14 02|DRIVE CHARTについて 03|DRIVE CHARTのAI開発の特徴 04|OSSを活用したAI開発

Slide 15

Slide 15 text

DRIVE CHARTのAI 15 ● エッジからクラウド上のサーバーまであらゆる環境・目的で動作する機械学習モデル ● センサーデータやGPSデータ、動画など多様なデータを扱う イベント検出モデル 急加速 急減速 急ハンドル ⼀時不停⽌ 速度超過 ⾞間距離不⾜ 脇⾒ 急後退 検出結果 エッジデバイス クラウドサーバー データベースやS3 外カメ画像 検出結果 内カメ画像 深層学習 モデル センサー 加速度センサ、 ジャイロセンサ GPS 動画

Slide 16

Slide 16 text

DRIVE CHARTのAI 16 ● エッジからクラウド上のサーバーまであらゆる環境・目的で動作する機械学習モデル ● センサーデータやGPSデータ、動画など多様なデータを扱う イベント検出モデル 急加速 急減速 急ハンドル ⼀時不停⽌ 速度超過 ⾞間距離不⾜ 脇⾒ 急後退 検出結果 エッジデバイス クラウドサーバー データベースやS3 外カメ画像 検出結果 内カメ画像 深層学習 モデル センサー 加速度センサ、 ジャイロセンサ GPS 動画

Slide 17

Slide 17 text

DRIVE CHARTのAI 17 ● エッジからクラウド上のサーバーまであらゆる環境・目的で動作する機械学習モデル ● センサーデータやGPSデータ、動画など多様なデータを扱う イベント検出モデル 急加速 急減速 急ハンドル ⼀時不停⽌ 速度超過 ⾞間距離不⾜ 脇⾒ 急後退 検出結果 エッジデバイス クラウドサーバー データベースやS3 外カメ画像 検出結果 内カメ画像 深層学習 モデル センサー 加速度センサ、 ジャイロセンサ GPS 動画

Slide 18

Slide 18 text

エッジAIとは 18 クラウド上にある高性能サーバーと離れた場所に配置され、ネットワークで接続されている端末をエッジ端末といい、 DRIVE CHARTの場合ドライブレコーダーを指す。エッジAIはエッジ端末上で推論処理を行うAI。 クラウド エッジ端末 エッジAI

Slide 19

Slide 19 text

DRIVE CHARTのAI開発の特徴 19 様々なバックボーンを持った開発メンバー ● CV(コンピュータビジョン) ● データサイエンス ● エッジAI開発 ● サーバーサイド開発

Slide 20

Slide 20 text

DRIVE CHARTのAI開発の特徴 20 様々なバックボーンを持った開発メンバー ● CV(コンピュータビジョン) ● データサイエンス ● エッジAI開発 ● サーバーサイド開発 余談ですが… 色々な領域にチャレンジできます! 採用ページ: https://mo-t.com/career/ CVモデル開発 サーバーサイドAI の推論高速化 エッジアプリケー ション開発

Slide 21

Slide 21 text

Table of Contents 01|Mobility Technologiesについて 21 02|DRIVE CHARTについて 03|DRIVE CHARTのAI開発の特徴 04|OSSを活用したAI開発

Slide 22

Slide 22 text

今日お話すること 22 DRIVE CHARTではどのようにOSSを活用しながらAI開発を促進しているかを DRIVE CHARTでのAI開発の流れに沿ってステップごとにお話します STEP 1: データ収集・加工 STEP 2: モデル開発・学習 STEP 3: 推論・モニタリング

Slide 23

Slide 23 text

4: データ収集・加工 23 データ収集・加工 モデル開発・学習 推論・モニタリング

Slide 24

Slide 24 text

データ収集・加工 24 アノテーション: 教師あり学習を行う場合、学習データは機械学習モデルの入力となる特徴量に対して教師ラベルが付与されている必要がある 特徴量に対して必ず教師ラベルがついているデータ(購買履歴など)も存在するが、ついていないものもある そういったデータには人間がデータを見ながら手動で正解となるラベルをつける必要がある。その作業をアノテーションと呼 ぶ データ収集・加工 モデル開発・学習 推論・モニタリング DRIVE CHARTでは以下のようなアノテーションが行われている - 脇見した時刻のアノテーション - 顔のランドマーク(目や鼻など)のアノテーション - 前方にある車両のアノテーション 等々… アノテーションの例

Slide 25

Slide 25 text

Nota 25 DeNA社製のCV専用OSSアノテーションツール Notaはチームでアノテーションを行う際の機能が充実しており、効率的なアノテーションができるようになっている ● データセットをタスク単位に分割し、アノテーターにアノテーションを依頼することができる ● アノテーションの定義をテンプレートを使用することで柔軟に変更できる Nota 前述のチームの存在と、チームによるアノテーション作業の効率を高めるNotaに より、高品質なアノテーションデータを量産することができる データ収集・加工 モデル開発・学習 推論・モニタリング Notaのアノテーション画面

Slide 26

Slide 26 text

Notaを利用したアノテーションフロー 26 ストレージ ① アノテーション用動画のデー タセット作成 CVエンジニア / データサイエンティスト ④ タスク振り 分け ② アノテーション仕様書 を作成しアノテーション を依頼 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーション管理者 ③ タスクを作 成 アノテーター ⑤ アノテーション

Slide 27

Slide 27 text

Notaを利用したアノテーションフロー 27 ストレージ ① アノテーション用動画のデー タセット作成 CVエンジニア / データサイエンティスト ④ タスク振り 分け ② アノテーション仕様書 を作成しアノテーション を依頼 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーション管理者 ③ タスクを作 成 アノテーター ⑤ アノテーション

Slide 28

Slide 28 text

Notaを利用したアノテーションフロー 28 ストレージ ① アノテーション用動画のデー タセット作成 CVエンジニア / データサイエンティスト ④ タスク振り 分け ② アノテーション仕様書 を作成しアノテーション を依頼 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーション管理者 ③ タスクを作 成 アノテーター ⑤ アノテーション

Slide 29

Slide 29 text

Notaを利用したアノテーションフロー 29 ストレージ ① アノテーション用動画のデー タセット作成 CVエンジニア / データサイエンティスト ④ タスク振り 分け ② アノテーション仕様書 を作成しアノテーション を依頼 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーション管理者 ③ タスクを作 成 アノテーター ⑤ アノテーション

Slide 30

Slide 30 text

Notaを利用したアノテーションフロー 30 ストレージ ① アノテーション用動画のデー タセット作成 CVエンジニア / データサイエンティスト ④ タスク振り 分け ② アノテーション仕様書 を作成しアノテーション を依頼 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーション管理者 ③ タスクを作 成 アノテーター ⑤ アノテーション

Slide 31

Slide 31 text

4: モデル開発・学習 31 データ収集・加工 モデル開発・学習 推論・モニタリング

Slide 32

Slide 32 text

DRIVE CHARTでのモデル開発・学習 データ収集・加工 モデル開発・学習 推論・モニタリング フェーズ1: 機械学習モデルの開発・学習 フェーズ2: 実データを使用した検証実験

Slide 33

Slide 33 text

DRIVE CHARTでのモデル開発・学習 データ収集・加工 モデル開発・学習 推論・モニタリング フェーズ1: 機械学習モデルの開発・学習 フェーズ2: 実データを使用した検証実験

Slide 34

Slide 34 text

機械学習モデルの開発・学習 データ収集・加工 モデル開発・学習 モデルの開発・学習ではClearMLという実験管理ツールを使用している 推論・モニタリング 動画 センサーデータ GPSデータ エッジAI推論データ 学習 実験データを記録 実験結果を確認

Slide 35

Slide 35 text

ClearML 35 ● Allegro AI社製の実験管理ツール ● 標準的な実験管理ツールに含まれる機能は全て備わっている ○ メトリクスの記録 ○ ハイパーパラメータの記録 ○ 過去の実験の検索 ○ 実験同士の比較 ○ … ● それらに加えて、実験の再現性を高めるための機能が充実 ○ 未コミットのソースコードの記録 ○ ライブラリやPythonのバージョンの記録 データ収集・加工 モデル開発・学習 推論・モニタリング

Slide 36

Slide 36 text

ClearML 36 データ収集・加工 モデル開発・学習 推論・モニタリング ※ ClearML 公式Documentより引用(https://clear.ml/docs/latest/docs/deploying_clearml/clearml_server) ClearML ClearMLの構成図

Slide 37

Slide 37 text

DRIVE CHARTチームではAWS環境上にホスティングしており、データサイエンティストやCVエンジニアが利用している ClearML 37 データ収集・加工 モデル開発・学習 推論・モニタリング AWS Cloud VPC Private subnet Public subnet Web UI用エンドポイント(ALB) web web用portのみ アクセス許可 実験インスタンス api/file server portのみ アクセス許可 実験インスタンスからの アクセス用エンドポイント(ALB) api file アーティファクトを保 存 clearml server(https://github.com/allegroai/clearml-server)を フォークし、マネージドサービスと連携できるよう修正し ビルドしたイメージ + redis

Slide 38

Slide 38 text

ClearML 38 データ収集・加工 モデル開発・学習 推論・モニタリング AWS Cloud VPC Private subnet Public subnet Web UI用エンドポイント(ALB) web web用portのみ アクセス許可 実験インスタンス api/file server portのみ アクセス許可 実験インスタンスからの アクセス用エンドポイント(ALB) api file アーティファクトを保 存 clearml server(https://github.com/allegroai/clearml-server)を フォークし、マネージドサービスと連携できるよう修正し ビルドしたイメージ + redis ClearML DRIVE CHARTチームではAWS環境上にホスティングしており、データサイエンティストやCVエンジニアが利用している

Slide 39

Slide 39 text

ClearML 39 データ収集・加工 モデル開発・学習 推論・モニタリング AWS Cloud VPC Private subnet Public subnet Web UI用エンドポイント(ALB) web web用portのみ アクセス許可 実験インスタンス api/file server portのみ アクセス許可 実験インスタンスからの アクセス用エンドポイント(ALB) api file アーティファクトを保 存 clearml server(https://github.com/allegroai/clearml-server)を フォークし、マネージドサービスと連携できるよう修正し ビルドしたイメージ + redis DRIVE CHARTチームではAWS環境上にホスティングしており、データサイエンティストやCVエンジニアが利用している

Slide 40

Slide 40 text

ClearML 40 データ収集・加工 モデル開発・学習 推論・モニタリング AWS Cloud VPC Private subnet Public subnet Web UI用エンドポイント(ALB) web web用portのみ アクセス許可 実験インスタンス api/file server portのみ アクセス許可 実験インスタンスからの アクセス用エンドポイント(ALB) api file アーティファクトを保 存 clearml server(https://github.com/allegroai/clearml-server)を フォークし、マネージドサービスと連携できるよう修正し ビルドしたイメージ + redis DRIVE CHARTチームではAWS環境上にホスティングしており、データサイエンティストやCVエンジニアが利用している

Slide 41

Slide 41 text

ClearMLの機能 41 データ収集・加工 モデル開発・学習 推論・モニタリング 実験間でメトリクスを比較

Slide 42

Slide 42 text

ClearMLの機能 42 データ収集・加工 モデル開発・学習 推論・モニタリング 実験間でハイパーパラメータを比較

Slide 43

Slide 43 text

ClearMLの機能 43 データ収集・加工 モデル開発・学習 推論・モニタリング ログをWeb UI上で確認

Slide 44

Slide 44 text

ClearMLの機能 44 データ収集・加工 モデル開発・学習 推論・モニタリング ソースコードの未コミット部分を記録

Slide 45

Slide 45 text

ClearMLの機能 45 データ収集・加工 モデル開発・学習 推論・モニタリング Pythonや使用したライブラリのバージョンを記録

Slide 46

Slide 46 text

DRIVE CHARTでのAI開発 データ収集・加工 モデル開発・学習 推論・モニタリング フェーズ1: 機械学習モデルの開発 フェーズ2: 実データを使用した検証実験

Slide 47

Slide 47 text

実データを使用した検証実験 47 モデルやパラメータの変更、検出ロジックの調整などを行った場合、最終的なリスク運転検出数にどのような変化がある かを確認する必要がある。たとえば… データ収集・加工 モデル開発・学習 推論・モニタリング イベント検出モデル 急加速 急減速 急ハンドル ⼀時不停⽌ 速度超過 ⾞間距離不⾜ 脇⾒ 急後退 検出結果 エッジデバイス クラウドサーバー データベースや S3 外カメ画像 検出結果 内カメ画像 深層学習 モデル センサー 加速度センサ、 ジャイロセンサ GPS 動画 デプロイ 新しいCVモデルを実装 & 学習

Slide 48

Slide 48 text

実データを使用した検証実験 48 モデルやパラメータの変更、検出ロジックの調整などを行った場合、最終的なリスク運転検出数にどのような変化がある かを確認する必要がある。たとえば… データ収集・加工 モデル開発・学習 推論・モニタリング イベント検出モデル 急加速 急減速 急ハンドル ⼀時不停⽌ 速度超過 ⾞間距離不⾜ 脇⾒ 急後退 検出結果 エッジデバイス クラウドサーバー データベースや S3 外カメ画像 検出結果 内カメ画像 深層学習 モデル センサー 加速度センサ、 ジャイロセンサ GPS 動画 新しいCVモデルを実装 & 学習 デプロイ ここにも影響が出る! モデルへの入力が変化し…

Slide 49

Slide 49 text

実データを使用した検証実験 49 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 50

Slide 50 text

実データを使用した検証実験 50 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 51

Slide 51 text

実データを使用した検証実験 51 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 52

Slide 52 text

実データを使用した検証実験 52 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 53

Slide 53 text

実データを使用した検証実験 53 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト ● 設定ファイルを書き換え モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 54

Slide 54 text

実データを使用した検証実験 54 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト ● 設定ファイルを書き換え ● イメージをビルド モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 55

Slide 55 text

実データを使用した検証実験 55 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト ● 設定ファイルを書き換え ● イメージをビルド ● 処理を順番に実行 モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する

Slide 56

Slide 56 text

実データを使用した検証実験 56 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト ● 設定ファイルを書き換え ● イメージをビルド ● 処理を順番に実行 モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する 変更前後で結果の比較を行いたい場合、×2

Slide 57

Slide 57 text

実データを使用した検証実験 57 データ収集・加工 仮に仮想マシン上で全ての作業を手作業で行おうとすると… ● 実験に使用するデータをリストアップしてストレージからダウンロード ● モデルのウェイトファイルのダウンロード ● 検出処理を実装しているリポジトリのクローン & チェックアウト ● 設定ファイルを書き換え ● イメージをビルド ● 処理を順番に実行 モデル開発・学習 推論・モニタリング 通常のAI開発における単体のモデルの精度確認だけでなく、システム全体のリスク検出数への影響を実験により検証する 必要がある → 大量の実データに対して変更前後の検出処理を実行し、リスク検出数の変化を比較・確認する 変更前後で結果の比較を行いたい場合、×2 ← 本当に全てのデータをダウンロードできていた? ← 間違ったバージョン使ってない? ← ブランチ間違ってない? ← 設定間違ってない? ← ビルド手順あってる? ← 順番あってる? 結果が違うけど設定間違ってたのかも?どうやってそれを後から確認するんだっけ?

Slide 58

Slide 58 text

実データを使用した検証実験 58 データ収集・加工 要件: ● 準備に必要な作業が多いので、それらを自動化する ● 実験の設定を容易に変更でき、後から確認することができる モデル開発・学習 推論・モニタリング

Slide 59

Slide 59 text

実データを使用した検証実験 59 データ収集・加工 要件: ● 準備に必要な作業が多いので、それらを自動化する ● 実験の設定を容易に変更でき、後から確認することができる ● デバイス上で実行するように開発されたエッジAIをサーバーで実行できるようにする ● 複数の実験が同時に実行されることが想定されるため、負荷が上がっても自動でスケールアウトする モデル開発・学習 推論・モニタリング

Slide 60

Slide 60 text

実データを使用した検証実験 60 データ収集・加工 要件: 解決策: Kubeflow Pipelinesを使用した実験パイプラインの使用 ● 準備に必要な作業が多いので、それらを自動化する → イメージのビルドなどの定型処理作業をパイプラインのタスクとして実装し自動化(属人性の排除) ● 実験の設定を容易に変更でき、後から確認することができる → Web UI上から変更。実験の履歴を保存することで後から設定値を確認できるようになる ● デバイス上で実行するように開発されたエッジAIをサーバーで実行できるようにする → エッジAIをシミュレーションするイメージの利用 ● 複数の実験が同時に実行されることが想定されるため、負荷が上がっても自動でスケールアウトする → Kubeflow Pipelinesのスケーラビリティを活用 モデル開発・学習 推論・モニタリング

Slide 61

Slide 61 text

Kubeflow Pipelines 61 KubeflowはOSSのMLOpsフレームワーク。Kubeflow Pipelinesはそのコンポーネントの一つ パイプライン実行ツールはいくつか存在するものの、以下のような理由でKubeflow Pipelinesを採用 ● k8sのスケーラビリティの恩恵を受けられる ● リッチなWeb UI 特に下の理由が重要。 実験はパラメータを一部変えたものやモデルのバージョンを変えたものを同時並行で実行するような ケースが多い。 Kubeflow PipelinesのWeb UIは画面上からパラメータを変更する作業が行うことができる データ収集・加工 モデル開発・学習 推論・モニタリング

Slide 62

Slide 62 text

Kubeflow Pipelines 62 データ収集・加工 モデル開発・学習 推論・モニタリング 実験パラメータの設定 パイプラインの実行確認

Slide 63

Slide 63 text

Kubeflow Pipelinesを使用した実験基盤 63 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 64

Slide 64 text

Kubeflow Pipelinesを使用した実験基盤 64 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 65

Slide 65 text

Kubeflow Pipelinesを使用した実験基盤 65 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 66

Slide 66 text

Kubeflow Pipelinesを使用した実験基盤 66 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 67

Slide 67 text

Kubeflow Pipelinesを使用した実験基盤 67 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 68

Slide 68 text

Kubeflow Pipelinesを使用した実験基盤 68 データ収集・加工 モデル開発・学習 推論・モニタリング エッジAIシミュレーションコンテナ 前処理 推論 出力 ストレージ エッジAIモデルによる 推論結果を保存 検出サーバー 前処理 検出 出力 動画データを ダウンロード センサー、GPS、エッ ジAI推論結果データを ダウンロード Test X Test Y ソースコードをクローン してビルド & デプロイ ソースコードをクローン してビルド & デプロイ エッジAI開発 repo 検出AI開発 repo 検出結果をDBに登録 ※ エッジAIを変更したケース

Slide 69

Slide 69 text

4: 実装・学習 69 データ収集・加工 モデル開発・学習 推論・モニタリング

Slide 70

Slide 70 text

Redashによる監視 70 一般的なAIプロジェクト同様、推論結果のモニタリングを行っている + DRIVE CHART特有の問題として、デバイスの問題(故障していないか等)も監視しておく必要がある 監視したい項目は運用を行っていく中で常に増えていくので、 SQLを用意すれば監視項目を追加できるため、サーバーサイドエンジニアの作業抜きで監視が開始できるのでスピーディ ー 定期的にDBからBigQuery上に用意しているデータウェアハウスにデータを同期しており、 それに対して集計処理を実行する データ収集・加工 モデル開発・学習 推論・モニタリング データ収集・加工 モデル開発・学習 推論・モニタリング データ同期 集計処理

Slide 71

Slide 71 text

まとめ 71 データ収集・加工 モデル開発・学習 推論・モニタリング アノテーションチーム によるアノテーション データの量産 タスクを作成 アノテーション データセットを作成 アノテーションを依頼 データセットに アノテーション 情報を付与 アノテーション管理者 アノテーター CVエンジニア/データサイエ ンティスト

Slide 72

Slide 72 text

まとめ 72 データ収集・加工 モデル開発・学習 推論・モニタリング より再現性が高まった 実験管理基盤 簡単かつ大規模に検証 を行うことができる 検証実験基盤 実験を記録 モデルを保存 検証実験 デプロイ 学習 テストB(変更前) テストA(変更後) アノテーション管理者 アノテーター CVエンジニア/データサイエ ンティスト アノテーション済み動画データ

Slide 73

Slide 73 text

まとめ 73 データ収集・加工 モデル開発・学習 推論・モニタリング データウェアハウス スピーディーに項目 を追加できるモニタ リング基盤 デプロイ 推論・検出 テストB(変更前) テストA(変更後) アノテーション管理者 アノテーター CVエンジニア/データサイエ ンティスト CVエンジニア/データサイエ ンティスト サーバーサイドエンジニア 監視 監視項目の追加 集計

Slide 74

Slide 74 text

まとめ 74 データ収集・加工 モデル開発・学習 推論・モニタリング データウェアハウス アノテーションチーム によるアノテーション データの量産 より再現性が高まった 実験管理基盤 簡単かつ大規模に検証 を行うことができる 検証実験基盤 スピーディーに項目 を追加できるモニタ リング基盤 タスクを作成 データセットを作成 アノテーションを依頼 実験を記録 モデルを保存 検証実験 デプロイ 推論・検出 学習 テストB(変更前) テストA(変更後) データセットに アノテーション 情報を付与 アノテーション管理者 アノテーター CVエンジニア/データサイエ ンティスト CVエンジニア/データサイエ ンティスト サーバーサイドエンジニア 監視 監視項目の追加 集計

Slide 75

Slide 75 text

75