Slide 1

Slide 1 text

LT2 MLOps Workshopでの学びと 弥生の研究開発基盤 弥生株式会社 鍋谷 碧衣 2023/01/26

Slide 2

Slide 2 text

自己紹介  名前:鍋谷 碧衣(なべや あおい)  職歴:弥生に新卒入社し、エンジニア4年目  業務:YAYOI SMART CONNECTの機械学習を使った推論部分を実装、研究開発

Slide 3

Slide 3 text

re:Inventでいろいろ参加しました!  AWSのCEOやCTO、その他各分野責任者によるKeynote  AWSの活用に関する様々なBreakout Session  ゲーム形式で課題を解くAWS Jam  実際に手を動かす形式のWorkshop Swami SivasubramanianのKeynoteより

Slide 4

Slide 4 text

道中いろいろありましたが… 海外旅行名物、飛行機が大幅に遅れる お弁当に丸ごとりんごが入っていて どうしようか悩む

Slide 5

Slide 5 text

行ってよかったです!  AWSのサービスで世界を盛り上げようという熱気を肌で感じられた  普段業務でなかなか触れないサービスに現地で触れて、便利さに感動した  普段使うサービスを学び直し、新たな知見を得ることができた 学びの尽きない、楽しくあっという間の5日間でした!

Slide 6

Slide 6 text

今回のお話  AWSのサービスで世界を盛り上げようという熱気を肌で感じられた  普段業務でなかなか触れないサービスに現地で触れて、便利さに感動した  普段使うサービスを学び直し、新たな知見を得ることができた re:Inventで参加した MLOps WorkShop について話します

Slide 7

Slide 7 text

参加したWorkshop  Amazon SageMaker MLOps Workshop  https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b- e3407147a59c/en-US  Amazon SageMakerを活用したMLOps実現のベストプラクティスをハンズオン形式で 学ぶ

Slide 8

Slide 8 text

現地でWorkshopに参加することの良さ  あらかじめ用意されたSandbox環境で手軽にハンズオンを実施できる  導入部分で躓くことなく、コアな部分の学習に集中できる  操作面で迷った際にすぐに質問できる  文章だと言い表しにくいところなども画面を見せながら質問できる  インストラクターの作業を見ることで学べることも多い  SageMakerに限らず、Jupyter Notebookの使い方のTipsなども学べる

Slide 9

Slide 9 text

MLOpsとは?  DevOpsの機械学習(ML)版  MLモデルの開発~デプロイサイクルを自動化するもの  MLプロジェクトを円滑に進め、早く大きな成果を出していくための取り組み

Slide 10

Slide 10 text

AWSにおけるMLOps  Amazon SageMakerの各種サービスを使用してMLOpsを実現

Slide 11

Slide 11 text

弥生の研究開発基盤の状況  1年ほど前からAmazon SageMakerを利用し、クラウド上の実験環境を構築して いる  それ以前はローカルやVMで個々で研究開発をしていた  Amazon SageMakerの機能については段階的に利用を進めている途中

Slide 12

Slide 12 text

弥生の研究開発基盤の状況 活用状況 検証 SageMaker上のJupyter Notebookでの実験が中心 Jobについてはまだ実用的な活用は進められていない 検証結果管理 現在は手動で実施 モデル管理 研究開発環境では特にモデル管理をしていない 本番環境は独自の管理機構を構築している パフォーマンス監視 研究開発環境とサービスの開発環境が完全に別 本番環境は独自の監視機構を構築している SageMakerでMLOpsを実現するためのベストプラクティスを知りたい!

Slide 13

Slide 13 text

MLOpsのベストプラクティス 使用するサービス 学習・検証 SageMaker Processing Job、SageMaker Training Job 検証結果管理 SageMaker Experiments モデル管理 SageMaker Model Registry 自動化 SageMaker Pipeline 推論 SageMaker Endpoint CI/CD SageMaker Deployment 監視 SageMaker Model Monitor  Amazon SageMakerに用意されている様々なサービスを用いて、MLOpsを実現  SageMaker Python SDKを使用し、SageMaker Notebook上から環境を構築していく

Slide 14

Slide 14 text

SageMakerで実現するMLOpsの全体像 引用元:https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b-e3407147a59c/en-US/module2/projects 今回は特に検証フェーズ 中心に確認しました

Slide 15

Slide 15 text

SageMakerで実現するMLOpsの全体像 引用元:https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b-e3407147a59c/en-US/module2/projects 検証フェーズの SageMaker部分構成

Slide 16

Slide 16 text

実際に触ってみて特によいと思った点  検証段階でSageMaker Experimentsを使用できるが、これが便利  SageMaker Experimentsは、Training Jobの結果をUI上から確認できるツール  過去検証のパラメーター(条件)やトレーニング結果をUI上から確認できる

Slide 17

Slide 17 text

実際に触ってみて特によいと思った点 複数の検証ごとに訓練誤差等を可視化し比較

Slide 18

Slide 18 text

実際に触ってみて特によいと思った点 どの検証でどんなパラメーターを用いたのかも確認しやすい

Slide 19

Slide 19 text

実際に触ってみて特によいと思った点  検証ではパラメーターを変えながら同じアルゴリズムを動かすことも多い  手動でこれらの結果を一元管理するには独自のコードを記述する必要がある、 自動で管理してくれるのは便利

Slide 20

Slide 20 text

まとめ  re:Inventに参加し、プロジェクトで使用しているAWSサービスについてより深 く知ることができた  研究開発の促進のためにも、AWSサービスについてもっと学んでいきたい