MoTLab -GO Inc. Engineering Blog-MoTLab -GO Inc. Engineering Blog-

GO TechTalk #20 Deep Dive into AI - 次世代AIドラレコサービス編 #goinc_tech_talk

AItechtalk
August 01, 2023

An image from Notion

2023年7月11日に「GO TechTalk #20 Deep Dive into AI - 次世代AIドラレコサービス編」(connpass)を開催しました。

本記事では当日の内容を簡単に紹介します。


GO TechTalkとは?

GO TechTalkは、GO株式会社のエンジニアたちが、タクシーアプリ『GO』をはじめとしたサービスやプロダクトを開発する中で得た技術的ナレッジを共有するイベントです。

GO株式会社が開発する次世代AIドラレコサービス『DRIVE CHART』は、ドライブレコーダーから得られる各種データから、交通事故に繋がる可能性の高い危険シーンを自動検知し、運転傾向を分析する、AIとIoTを掛け合わせた交通事故削減支援サービスです。

20回目となる今回は、『DRIVE CHART』で活用しているAIの中でコンピュータビジョン、エッジ、データサイエンスに関する技術を紹介しました。

こちらのスレッドで当日の様子や雰囲気を感じていただけると思います。

登壇者紹介

今回はこちらのメンバーが登壇しました。

  • データサイエンスグループ グループマネージャ:松井 健一
  • エンジニア:木村 元紀
  • エンジニア:亀澤 諒亮
  • データサイエンスティスト:高橋 文彦
  • 広報:高堂 和芽(@sandgirl_14

次世代AIドラレコサービス『DRIVE CHART』の全体像

このパートでは、後続のパートの前提情報となる次世代AIドラレコサービス『DRIVE CHART』のサービスやシステム構成について全体像を紹介しました。

コンピュータビジョンモデルの量子化による精度低下の原因特定とその緩和

『DRIVE CHART』で利用しているコンピュータビジョンモデルの一部はエッジデバイス上で動作しています。エッジデバイスの計算リソースは限られているため、モデルの軽量化(高速化)が重要です。このパートでは軽量化手法の一つである量子化についての事例を紹介しました。

量子化は効果的な手法ですが、丸め誤差によってモデルの精度が低下する可能性があります。『DRIVE CHART』では精度低下が大きいレイヤを感度解析を用いて特定し、モデルの最適化を図ることで量子化による精度低下を緩和しました。感度解析の概要や、どのような検証を経て精度低下の緩和につなげたのかといった詳細については、スライドやアーカイブ動画をご覧ください。

別のブログ記事でも量子化に関連するトピックを紹介しているので、ご興味のある方はそちらもあわせてご覧ください!

参考:量子化による物体検出モデルの精度低下の原因分析と対策(YOLOv3・YOLOv5の量子化を例に)

エッジAIにおけるCIとAI開発環境

『DRIVE CHART』のようなエッジデバイスとその上で動作するエッジAIモデルを含むシステムでCIを行う場合、以下のような課題があります。

  • CIでの実機デバイスを使った自動テストが難しい
  • デバイス上での推論結果のPC/サーバー上での再現が難しい
  • すべての開発メンバーがデバイスを使えない

このパートでは、これらの課題を解決するためにGitHub Actionsのセルフホストランナーを活用した事例を紹介しました。CIをどのように構築、運用しているか、ワークフローの構成なども紹介しているのでぜひご覧ください。

危険運転検知のData-Centric AIな取り組み

『DRIVE CHART』では、エッジAIを用いてドライバーの脇見運転を検知しています。教師ありのコンピュータビジョンモデルによって検知しているため、動画に対してアノテーションが必要ですが、1分の動画をアノテーションするのに平均5分必要だったり、ランダムに取得した動画に脇見が含まれているのも稀であるため、アノテーションのコストが高いという課題があります。

このパートでは、効率的な学習データ収集を目指してActive Learningを適用した事例を紹介しました。適用によって得られた良い効果だけでなく注意点も紹介しているので、参考にしていただければと思います。

アーカイブ動画

今回非常に多くの質問や感想をいただきました。ありがとうございました。アーカイブ動画の中では以下の質問にもお答えしていますのでぜひ視聴いただければと思います。

  • 量子化時に複数レイヤーの組み合わせで精度低下するケースも特定できるのでしょうか?
  • 量子化で影響を受けやすいレイヤーはdepthwise sep conv以外にどのようなものがあるのでしょうか?
  • デバイスだとサーバーに比べて速度が出にくいと思うのですが、評価データが大きい時などにはどうされていますか?並列化なども簡単にできるのでしょうか?
  • CIの実行時間は現状どの程度かかっているのでしょうか?

開催履歴・開催予定

GO TechTalk は不定期開催しています。過去の開催レポートは こちら にもありますので、ぜひご覧ください!

GO株式会社の最新技術情報は公式SNSアカウント @goinc_techtalkで随時発信していきますので、ぜひフォローして続報をお待ちください!

We're Hiring!

📢
GO株式会社ではともに働くエンジニアを募集しています。

興味のある方は 採用ページ も見ていただけると嬉しいです。