Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

DRIVE CHARTのMLOpsを体感しよう

GO Inc. dev
December 05, 2023

DRIVE CHARTのMLOpsを体感しよう

GO TechTalk #24 タクシーアプリ『GO』のAIサービスを支えるMLOpsを体感しよう!で発表した資料です。

■ YouTube
https://www.youtube.com/live/r_oYsac9Hvo?si=Ob4UmLpsE4DdfKKT&t=353

■ connpass
https://jtx.connpass.com/event/301271/

GO Inc. dev

December 05, 2023
Tweet

More Decks by GO Inc. dev

Other Decks in Programming

Transcript

  1. © GO Inc. 2 自己紹介 GO株式会社 スマートドライビング事業本部 システム開発部 AI基盤グループ 森本

    淳司 2021年 GO株式会社に入社 AI基盤グループで次世代AIドラレコサービス『DRIVE CHART』の MLOps業務に従事
  2. © GO Inc. • 社員が社有車で事故を起こせば会社の責任 ◦ 企業は事故を起こさないための仕組みづくりが必要 • やみくもに事故削減活動を行ってもキリがない ◦

    すべての運転記録をチェックするのは現実的ではない ◦ 社員それぞれの事故のリスクを把握し効率・効果的な指導、改善が求められる ◦ 運転の癖を可視化し、社員ごとに指導内容をカスタマイズできる なぜDRIVE CHARTが必要なのか https://drive-chart.com/magazines/mg_220131 7
  3. © GO Inc. DRIVE CHARTの MLOps 02 1. 契約台数6万台超えの膨大なデータを扱う 2.

    センサー、動画など多様なデータを扱う 3. 多数の機械学習モデルを本番環境で運用 9
  4. • 機械学習システムに求められるもの • いちはやくAI機能をお客様に届ける • 品質を担保したAI機能を提供し続ける • 機械学習モデルは作っておしまいではない • これらを実現するのがMLOps

    • 高速に価値ある実験を多数実現する実験環境 • スケーラブルかつ堅牢な本番環境 • Data-Centric AI • 本番環境で得たフィードバックを次の実験に活用 いかに市場に素早くAIを届けられるか、そのためのMLOps 実験環境 本番環境 10
  5. • 実験結果を蓄積し、ゴールまで走り切る実験環境 • 実験に失敗はつきもの • 試行錯誤を経てゴールに辿り着くもの • 実験結果を正しく蓄積し、議論の土台となる実験管理ツールが必要 • ClearML

    • 実験結果を比較しやすい + わかりやすいUI • 実験を多数行える基盤 • AWSで自由に実験用インスタンスを活用できるようにサポート • 多様なデータを扱う実験や本番環境のシミュレーション環境をサポート • Kubeflow • スケールし高速に実験可能 + わかりやすいUI 高速に価値ある実験を多数実現する実験環境 11
  6. • 本番環境の安定運用 • インフラ運用は基本を忠実に守る • 死活監視、Infrastructure as Code、コスト最適化、セキュリティ強化 • 継続的学習

    • 定期的に学習の必要なMLシステム • Airflow + Sagemaker • 運用しやすさを重視 = キャッチアップのしやすさ + 問題発生時の対応しやすさ • モニタリング • 推論監視 + ドリフト検知 • 推論結果が劣化していないか、異常値のトレンドが変化していないか • BigQuery + Redash • システム監視 • CloudWatch + X-Ray スケーラブルかつ堅牢な本番環境 13
  7. • 本番環境で得られたフィードバックは次の開発に活かす • データパイプライン • 本番環境からアノテーション環境、そして実験環境へ • データフローは基本内製 • 属人化に気をつけ汎用的な作りを心がける

    • アノテーション • アノテーションツールNOTAを使用 • DeNA時代から内製ツールとして開発運用 • アノテーショングループと協働し、フィードバックサイクルを回しなが ら効率的に行う Data-Centric AI https://github.com/DeNA/nota 14
  8. • データウェアハウスの活用で2010年以降データの民主化が進む • 非エンジニアがSQLを書き、効果測定を行うようになった • マーケターがクリエイティブの評価を行う • カスタマーサクセスが問い合わせ内容の分析を行う • 組織全体の作業効率化を実現

    • DRIVE CHARTではBigQuery + Redash • さらにその先へ、問合せの効率化 • 非エンジニアからエンジニアへの問い合わせを削減できないか • カスタマーサクセスがロジックやモデルの推論結果の解釈を自分で行うには? • Jupyter Notebookを共有する? 1. データの民主化、さらにその先へ 16 Before After お客様 カスタマー サクセス エンジニア お客様 カスタマー サクセス
  9. • 求めるもの • ロジックやモデル推論を再現できる • Webベースで可視化や共有ができる • Streamlit • PythonのWebフレームワーク

    • データ可視化や共有が容易 • グラフ、テーブル、画像、動画、etc… • 構成 • 実行環境はコスト最適化したい • 既存のKubernetes • 認証認可を詳細に設定したい • 認証は会社の認証基盤(SAML認証)を利用、認可はCognitoを利用 • 野良コードは撲滅したい • GitHubでコード管理、マージしたら自動デプロイ Streamlitで問い合わせ工数削減へ https://streamlit.io/ 17
  10. • よくあるサービス環境 + DWH構成 • 課題感 • ETLの運用が地味に工数かかる • テーブル追加やカラム追加時にETL環境も追加実装必要

    • データ量が増えるとETL環境のコンピューティングコストも増える 2. ゼロETLはデータエンジニアリングの夢を見るか AWS 1 ETL環境 BigQuery API API S3 Aurora AWS 2(マルチアカウント) 18
  11. • ゼロETLとは • AuroraからRedshiftに自動でデータ保存する機能 • 全テーブル対象 • Redshiftへの反映は数十秒から数分 • ラグもモニタリングできる

    • バイナリログ有効化必要 • Redshiftの代表的な機能 • Spectrum • フェデレーテッドクエリ • サーバーレス • マネージドストレージ • 課題 • DWHの移行は強力なパワーが必要 Aurora => RedshiftでできるゼロETL 検証中 19 S3 Redshift Aurora ログデータ Spectrum トランザクショ ンデータ ゼロETL マスターデータ フェデレーテッド クエリ Aurora
  12. まとめ 1. 次世代AIドラレコサービス『DRIVE CHART』について a. 契約台数6万台超えの膨大なデータを扱う b. センサー、動画など多様なデータを扱う c. 多数の機械学習モデルを本番環境で運用

    2. DRIVE CHARTのMLOps a. 実験環境 b. 本番環境 c. Data-Centric AI 3. 今後の発展に向けて a. データの民主化、さらにその先へ b. ゼロETLはデータエンジニアリングの夢を見るか 20