見出し画像

#iOSDC 2022 に登壇しました/発表までの苦悩まとめ

shu223

2年ぶりにiOSDCに登壇しました。発表内容と、苦労話、感想について書きます。

発表内容

「MLOps for Core ML」というタイトルの発表で、概要としてはこんな感じです。

MLOpsはML Operationsの略で、データ収集・前処理・学習・デプロイ・監視といった機械学習のライフサイクルの継続的な運用を効率化するための考え方や手法を総称してこう呼ばれています。たとえば、蓄積したデータを用いたモデルの再学習を定期的に自動実行し最新データに合うようモデルを改善し続ける仕組み、モデルを本番システムに自動デプロイする仕組み等が含まれます。機械学習をビジネスで本番運用するために不可欠な考え方として昨今ホットなトピックとなっています。

一方で、Core MLモデルの世界ではMLOpsという考え方はまだそれほど広がっていないように思います。多くの場合は一度学習したモデルを利用し続けるか、手運用で再学習等を行っているのではないでしょうか。Core MLにMLOpsの考え方を導入しするとどのように継続的な運用を効率化できるのか、そのパターンを解説します。

プロポーザルより

なんのこっちゃ、ようわからん、という方に一言で「MLOpsとは」を伝えると、

発表スライドより

という感じです。

で、このMLOpsの考え方をCore MLにあてはめて、実運用をいい感じにする諸々を考えてみた、という発表になります。

スライドはこちら:

動画(※1)はこちら:

発表までの苦悩

Core ML運用の何をいい感じにするのか

この発表テーマは、最近の業務で関わっているMLOpsと、iOSエンジニア時代に好んで触っていたCore ML周りをかけ合わせたもので、プロポーザル段階ではただ「何かできそう」というふわっとしたアイデアがあるだけでした。

前述の通りMLOpsという概念が何でもありなだけに、「Core ML運用の何をいい感じにするのか」というところでは大いに悩みました。

当初の目論見としては、Core MLのモデルの中身まで理解しているからこそのOpsを考えるつもりでした。

だからこそMLOpsについて元iOSエンジニアがiOSDCで話す価値があるかなと。

ただ、正直そこはあんまり結びつきませんでした。

クラウドのModel Deploymentを使ってデプロイまでを含めたかっこいいパイプラインのデモを披露しようかとも思いましたが、

APIもないし、初期のFastlaneのようにスクレイピングしてハックするのもスマートじゃないし、実際のところ実運用のシーンでそんなにそこはペインじゃないなとも思ったのでボツ。

結局、発表にあるようにcoremltoolsを用いた変換を学習パイプラインに組み込む&実験管理する、というところに着地しました。

デモをどうするか

また発表時間と準備時間の足りなさから、見てワクワクするようなデモをお見せできなかったのも悔いが残る点です。

たとえば、パイプラインのデモとして、

1. 会場にいる方二人の写真をその場で10枚ずつパシャパシャ撮る
2. 撮った写真をMacの特定のフォルダに置くと、パイプラインが走って、その二人を顔認識するアプリがTestFlightで降ってくる

というのをやりたかったなと。

パイプラインの中身は、Create ML(コードで書く方) + MLflow です。

Create MLで即席で画像識別機をつくるデモは講演の場でやったことがありますし、

Core MLモデルができたあとは、拙作MLModelCameraのビルドを走らせてfastlaneなりでTestFlightにアップすればいいかなと。

久々のオフライン開催の感想

そんなこんなで発表準備は試行錯誤し、迷走し、どこに着地するのか不安な日々でしたが、iOSDCという会自体はとにかく最高に楽しかったです。

主催・運営・スポンサー企業のみなさま、スピーカーのみなさま、参加者のみなさま、どうもありがとうございました。また来年も来ます!

最後に

Sansanという会社で非iOSエンジニアとして働いております。弊社ではMoTさん、ANDPADさんと共催でiOSDCのAfter Talkイベントをやるのでぜひご参加ください!


※1: 今年のiOSDCはひさびさのオフライン開催でしたが、万が一オフライン開催できなくなった場合のバックアップ手段として全スピーカー事前収録が必須となっていたのでした。YouTubeで公開しているのはその事前収録動画になります。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
shu223

最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/

shu223
フリーランスiOSエンジニア。エンジニアと人生コミュニティ運営。YouTube・Podcastパーソナリティ。著書「iOS×BLE」「Metal入門」「実践ARKit」「iOSデプス詳解」他。GitHubでさまざまなOSSを公開。