Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Use model deployment and security with Core MLの要約

aboy
July 09, 2020

Use model deployment and security with Core MLの要約

WWDC 2020 『Use model deployment and security with Core ML』の要約スライド。
集まれSwift好き!Swift愛好会スピンオフ 
WWDC20セッション要約会 @オンライン 5分LT用

aboy

July 09, 2020
Tweet

More Decks by aboy

Other Decks in Technology

Transcript

  1. Use model deployment and security with Core ML
 の要約 集まれSwift好き!Swift愛好会スピンオフ

    
 WWDC20セッション要約会 @オンライン
 あぼ(@suxisuxido) コネヒト株式会社
 2020/07/09 5分LT
  2. Core MLの新機能を⼀部紹介! • Model Deployment
 Core MLモデルの新しいデプロイ⽅法 • Model Encryption


    Core MLモデルの新しい暗号化⽅法 • Core MLまわりのXcodeの新機能
  3. Model Deploymentの機能 • ダッシュボード上でモデルを管理できる • Apple Cloud経由でモデルをデプロイすることができる
 (アプリ⾃体を更新することなくモデルを更新できる ) •

    モデルをグループ化して管理できる • 特定の端末群に向けてモデルを配信できる
 (OSバージョンや端末の種類や⾔語で絞って配信できる)
  4. Model Deploymentの機能 • ダッシュボード上でモデルを管理できる • Apple Cloud経由でモデルをデプロイすることができる
 →アプリ⾃体を更新することなくモデルを更新できる • モデルをグループ化して管理できる(Model

    Collection) • 特定の端末群に向けてモデルを配信できる
 →OSバージョンや端末の種類や(iPadだけとか)や端末の ⾔語で絞って配信できる モデルの配信プロセスが
 すごく柔軟になる
  5. Model Deploymentを
 つかうには? 1. 新しいCore ML APIを使ってModel Deploymentを許可す る(⾮同期でモデルを読み込むようなコード) 2.

    Xcodeでデプロイ⽤のモデルを作成する 3. デプロイ⽤のモデルをダッシュボードにアップロードす る(ダッシュボード上でできる) 以降モデル更新のたびに2,3を繰り返す
  6. CoreMLの新機能を⼀部紹介! • Model Deployment
 アプリ更新なしでモデルを更新できたり、特定の端末に
 配信できたりと、モデルの配信プロセスが柔軟になる • Model Encryption
 Core

    MLモデルの新しい暗号化⽅法 • Core MLまわりのXcodeの新機能
  7. Model Encryptionの機能 • コンパイルされたCore MLモデルを暗号化できる(バンド ルされたモデル、Apple Cloud経由で配信されたモデルど ちらも可能) • 暗号化されたモデルを初めて読み込むとき、OSがアプリ

    に代わって復号キーを安全に取得し、保存する • Core MLはモデルを⾃動で複合する。複合されたモデルは メモリ上にしか存在せず、ファイルシステムにあるモデル は暗号化されたまま
  8. Model Encryptionの機能 • コンパイルされたCore MLモデルを暗号化できる(バンド ルされたモデル、Apple Cloud経由で配信されたモデルど ちらも可能) • 暗号化されたモデルを初めて読み込むとき、OSがアプリ

    に代わって復号キーを安全に取得し、保存する • Core MLはモデルを⾃動で複合する。複合されたモデルは メモリ上にしか存在せず、ファイルシステムにあるモデル は暗号化されたまま モデルをより安全に扱える
  9. Model Encryptionを
 つかうには? 1. Xcodeで暗号化キーをつくる(キーはteamに関連づけら れ、Apple Cloud上で保存) 2. 暗号化キーでモデルを暗号化する
 Model

    Deploymentを使う場合はデプロイ⽤のモデルを 作成する際に暗号化キーを選択
 バンドルされたモデルを使う場合はCompiler Flagsに暗 号化の処理を記述し、リビルド 3. モデルをロードする
  10. CoreMLの新機能を⼀部紹介! • Model Deployment
 アプリ更新なしでモデルを更新できたり、特定の端末に
 配信できたりと、モデルの配信プロセスが柔軟になる • Model Encryption
 モデルを簡単に暗号化でき、安全に扱える

    • Core MLまわりのXcodeの新機能
  11. Xcodeの新機能 • Core ML モデルのより詳細な情報が⾒れる(サポートして るOSのバージョン、クラスラベル、内部のニューラル ネットワークの詳細など) • インタラクティブなプレビュー表⽰(画像セグメンテー ション、ポーズ検出、depth推定などに対応)


    対応モデル https://developer.apple.com/machine-learning/models/ • PlaygroundでCore ML モデルが扱える
  12. Xcodeの新機能 • Core ML モデルのより詳細な情報が⾒れる(サポートして るOSのバージョン、クラスラベル、内部のニューラル ネットワークの詳細など) • インタラクティブなプレビュー表⽰(画像セグメンテー ション、ポーズ検出、depth推定などに対応)


    対応モデル https://developer.apple.com/machine-learning/models/ • PlaygroundでCore ML モデルが扱える XcodeでCore MLをつかった
 開発がしやすくなる
  13. まとめ • Model Deployment
 アプリ更新なしでモデルを更新できたり、特定の端末に
 配信できたりと、モデルの配信プロセスが柔軟になる • Model Encryption
 モデルを簡単に暗号化でき、安全に扱える

    • Core MLまわりのXcodeの新機能
 プレビュー機能やPlaygroundの対応によって
 XcodeでCore MLをつかった開発がしやすくなる

  14. 参考 • Use model deployment and security with Core ML


    https://developer.apple.com/videos/play/ wwdc2020/10152/