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

機械学習システムアーキテクチャ入門 #2

機械学習システムアーキテクチャ入門 #2

機械学習システムのアーキテクチャを検討する上で考慮すべき課題について調査しまとめた資料です。Money Forward 社内で開かれた MLOps についての勉強会のために作成しました。

## Reference

澁井 雄介 著 AIエンジニアのための機械学習システムデザインパターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
有賀 康顕 中山 心太 西林 孝 著 仕事ではじめる機械学習 第2版 オライリー・ジャパン 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
Katrina Clokie 著 風間 裕也, 河原田 政典 訳 A Practical Guide to Testing in DevOps Japanese Edition Leanpub 2021年 https://leanpub.com/testingindevops-japanese-edition

Asei Sugiyama

July 15, 2022
Tweet

More Decks by Asei Sugiyama

Other Decks in Technology

Transcript

  1. TFX パターン化されたものの一部のコンポーネントは複雑になりがち Akshay Naresh Modi and Chiu Yuen Koo and

    Chuan Yu Foo and Clemens Mewald and Denis M. Baylor and Eric Breck and Heng-Tze Cheng and Jarek Wilkiewicz and Levent Koc and Lukasz Lew and Martin A. Zinkevich and Martin Wicke and Mustafa Ispir and Neoklis Polyzotis and Noah Fiedel and Salem Elie Haykal and Steven Whang and Sudip Roy and Sukriti Ramesh and Vihan Jain and Xin Zhang and Zakaria Haque TFX: A TensorFlow-Based Production- Scale Machine Learning Platform, KDD 2017 (2017) https://research.google/pubs/pub46484/
  2. ETL データの取得は大変 課題 対策 データが散財していて取得が大変 Data Lake, DWH, Data Mart

    テーブルが散財していて把握が大変 Data Catalog 見つけたテーブルが使えるか不明 メタデータ管理 見つけたテーブルの使い方が難しい BI ツール
  3. kfp.dsl.ParallelFor json_string: str = json.dumps([ {"snakes": "anaconda", "lizards": "anole", "bunnies":

    [{"cottontail": "bugs"}, {"cottontail": "thumper"}]}, {"snakes": "cobra", "lizards": "gecko", "bunnies": [{"cottontail": "roger"}]}, ]) with dsl.ParallelFor(json_string) as item: with dsl.ParallelFor(item.bunnies) as item_bunnies: print_op(item_bunnies.cottontail) パイプラインにモデルのパラメーターや ID で分岐を作成 パイプラインは分割しすぎない & まとめすぎない
  4. 検討事項 機能: 推論の精度 レイテンシー システムコスト 上記を可能な範囲 でバランスよく叶 える 澁井 雄介

    著 AIエンジニアのための機械学習システムデザインパ ターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
  5. モノリス Web アプリケーション 内で直接モデルを呼び 出して推論 初期はこうなりがち バンディットはこうな りがち 有賀 康顕

    中山 心太 西林 孝 著 仕事ではじめる機械学習 第2版 オライリ ー・ジャパン 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
  6. 同期推論パターン 推論用 API を実装し、アプ リケーションから呼び出す コンテナとして実装するの が一般的 軽いモデル向き 有賀 康顕

    中山 心太 西林 孝 著 仕事ではじめる機械学習 第2版 オライリー・ジ ャパン 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453 澁井 雄介 著 AIエンジニアのための機械学習システムデザインパターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
  7. 非同期推論パターン アプリケーションのリクエ ストをキューイング 推論結果をキューか DB に 書き込み、アプリケーショ ンから利用 重いモデル向け ユーザーになんとかして待

    ってもらう必要はある 澁井 雄介 著 AIエンジニアのための機械学習システムデザインパターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
  8. バッチ推論パターン あらかじめバッチ処理とし て全件推論 結果を DB に保存し、アプ リケーションから利用 重いモデルでユーザーが待 てないのならこれ 入力をあらかじめ列挙でき

    ないのなら採用不可 澁井 雄介 著 AIエンジニアのための機械学習システムデザインパターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453
  9. 機械学習の困難さ 通常のソフトウェアエンジニア リングの手法では機械学習シス テムを扱うことが難しい コードではなくシステムのレベ ルで困難が生じる データへの依存は原因の1つ D. Sculley and

    Gary Holt and Daniel Golovin and Eugene Davydov and Todd Phillips and Dietmar Ebner and Vinay Chaudhary and Michael Young (2014) Machine Learning: The High Interest Credit Card of Technical Debt, SE4ML: Software Engineering for Machine Learning (NIPS 2014 Workshop https://research.google/pubs/pub43146/
  10. シャドウ A/B テスト 現行のサーバーと別にアップデ ート後のモデルをデプロイした サーバーを用意 実際のリクエストを2つのサーバ ーに送信 エラーやレイテンシ、計算資源 の負荷をテスト

    可能な場合は精度やビジネス指 標をテスト 澁井 雄介 著 AIエンジニアのための機械学習システムデザインパターン 翔泳社 2021年 https://www.shoeisha.co.jp/book/detail/9784798169453