はじめまして、本ブログでは初めて記事を書かせていただく堤と申します。12年ほどずっとiOSエンジニアをやっていたのですが、ひょんなことからSansanの研究開発部のマネージャーをやることになり、今年の4月からSansanで働いています。
というわけで今はiOSから離れているのですが、現職で最近力をいれようとしているMLOpsと、慣れ親しんだiOSとを組み合わせた発表テーマでプロポーザルを出したところ見事採択され、
採択していただきました!iOSエンジニア時代からの知見と、今R&Dマネージャーとしてやっていることの掛け算で考えたテーマです。会場でお会いするのを楽しみにしています。
— Shuichi Tsutsumi (@shu223) 2022年6月15日
MLOps for Core ML by 堤 修一 #iOSDC 2022https://t.co/BbdSpB3FkH
先月9月に国内最大級のiOSカンファレンス「iOSDC Japan 2022」で登壇させていただいたのでした。今回はその報告記事になります。
発表内容
概要
「MLOps for Core ML」というタイトルの発表で、概要としてはこんな感じです。
MLOpsはML Operationsの略で、データ収集・前処理・学習・デプロイ・監視といった機械学習のライフサイクルの継続的な運用を効率化するための考え方や手法を総称してこう呼ばれています。たとえば、蓄積したデータを用いたモデルの再学習を定期的に自動実行し最新データに合うようモデルを改善し続ける仕組み、モデルを本番システムに自動デプロイする仕組み等が含まれます。機械学習をビジネスで本番運用するために不可欠な考え方として昨今ホットなトピックとなっています。
一方で、Core MLモデルの世界ではMLOpsという考え方はまだそれほど広がっていないように思います。多くの場合は一度学習したモデルを利用し続けるか、手運用で再学習等を行っているのではないでしょうか。Core MLにMLOpsの考え方を導入するとどのように継続的な運用を効率化できるのか、そのパターンを解説します。
シンプルにいうと、MLOpsの考え方をCore MLにあてはめて、実運用をいい感じにする諸々を考えてみた、という発表です。
スライド
「スマートキャプチャー」について
途中に出てくる「スマートキャプチャー」という機能があるのですが、スライドだけ見て動画を見れていない方のために、GIFを貼っておきます。
こちらは実際のプロダクトではなく、開発途中のデモ画面になります。
上部のUIで「Old」「New」を切り替えていますが、
- Old: TensorFlowのモデルをそのまま組み込んだもの
- New: Core ML化したモデルを組み込んだもの
という違いがあり、Core ML化によりどのくらいパフォーマンスが改善するかを比較検証しています。
どちらもオンデバイス(iPhone上で)でリアルタイム処理をしているのですが、Oldの方はカメラを動かしたときに矩形検出が追従しきれておらず、Newの方はピタッと追従できていることがわかるかと思います。FPSでいうと300%高速化しています。
スマートキャプチャーという技術についてはまた別途記事を書きたいと思います *2。
発表への反応
Core MLについて前提知識のある人も多くないのに、本発表はそこからさらに「実運用する際のペイン」をMLOpsで改善していく話だったため、ニッチ×ニッチの掛け算となり会場やDiscordでの反応は正直寂しいものがありました。ニッチ過ぎたし、せめてもっとデモやエンタメ性を盛り込めなかったかと大いに反省しました。
ただ、届くところには届くもので、「MLOps勉強会」の主催の方にお声がけいただき、なんとそちらに登壇させていただくことになりました!毎回300人〜400人が参加する大きな勉強会で、MLOpsについて調べているとすぐに到達する、界隈では誰もが知る勉強会です。
現職では今MLOpsに力を入れており、いつか出たいと思っていた勉強会だったので、願ったりかなったりの展開でした。
SansanにおけるMLOps
現在は研究開発部Architectグループという、研究開発部におけるエンジニアリングを担う部隊のマネージャーをやっています。その中でも今力を入れようとしているのがMLOpsで、MLOps/DevOpsエンジニアを絶賛募集中です!
求人内容も更新したのでぜひご検討いただけますと幸いです。
弊チームの求人が588万〜1208万だったのを、800万〜1500万に更新してもらいました。
— Shuichi Tsutsumi (@shu223) 2022年7月4日
R&D MLOps/DevOpsエンジニア | Sansan株式会社 https://t.co/zqkcIb1y8g
10/5(水)iOSDCのAfter Talkイベントを開催します!
2022年10月5日(水)19:00〜21:00 に、MoTさん、ANDPADさんと共催でiOSDCのAfter Talkイベントをやるのでぜひご参加ください!
▼タイムテーブル
19:00 オープニング 19:05 LT1「ARKitを触りながら振り返る」 Sansan / 平山 智己 19:20 LT2「タクシーアプリ「GO」でApp Clipを使えるようにしてみる 〜Engineer Challenge Weekでの取り組み〜」 Mobility Technologies / 久利 龍義 19:35 LT3「SwiftUI化をみすえてUIKitで実装する」 ANDPAD / 伊藤 智行 19:50 特別講演「Xcode10から最新までのTestingをふりかえる」 ANDPAD 技術顧問 / 10X SET / 平田 敏之 20:20 パネルディスカッション ■モデレーター Mobility Technologies / 日浅 貴啓 ■パネラー Sansan / 多鹿 豊 Mobility Technologies /黒田 修平 ANDPAD / 栗山 徹 20:50 アンケート・クロージング
下記connpassページよりお申し込みください。