弥生株式会社 もくテク AWS re:Invent 2022 参加報告会(2023/01/26) https://mokuteku.connpass.com/event/266065/
LT2MLOps Workshopでの学びと弥生の研究開発基盤弥生株式会社 鍋谷 碧衣2023/01/26
View Slide
自己紹介 名前:鍋谷 碧衣(なべや あおい) 職歴:弥生に新卒入社し、エンジニア4年目 業務:YAYOI SMART CONNECTの機械学習を使った推論部分を実装、研究開発
re:Inventでいろいろ参加しました! AWSのCEOやCTO、その他各分野責任者によるKeynote AWSの活用に関する様々なBreakout Session ゲーム形式で課題を解くAWS Jam 実際に手を動かす形式のWorkshopSwami SivasubramanianのKeynoteより
道中いろいろありましたが…海外旅行名物、飛行機が大幅に遅れるお弁当に丸ごとりんごが入っていてどうしようか悩む
行ってよかったです! AWSのサービスで世界を盛り上げようという熱気を肌で感じられた 普段業務でなかなか触れないサービスに現地で触れて、便利さに感動した 普段使うサービスを学び直し、新たな知見を得ることができた学びの尽きない、楽しくあっという間の5日間でした!
今回のお話 AWSのサービスで世界を盛り上げようという熱気を肌で感じられた 普段業務でなかなか触れないサービスに現地で触れて、便利さに感動した 普段使うサービスを学び直し、新たな知見を得ることができたre:Inventで参加した MLOps WorkShop について話します
参加したWorkshop Amazon SageMaker MLOps Workshop https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b-e3407147a59c/en-US Amazon SageMakerを活用したMLOps実現のベストプラクティスをハンズオン形式で学ぶ
現地でWorkshopに参加することの良さ あらかじめ用意されたSandbox環境で手軽にハンズオンを実施できる 導入部分で躓くことなく、コアな部分の学習に集中できる 操作面で迷った際にすぐに質問できる 文章だと言い表しにくいところなども画面を見せながら質問できる インストラクターの作業を見ることで学べることも多い SageMakerに限らず、Jupyter Notebookの使い方のTipsなども学べる
MLOpsとは? DevOpsの機械学習(ML)版 MLモデルの開発~デプロイサイクルを自動化するもの MLプロジェクトを円滑に進め、早く大きな成果を出していくための取り組み
AWSにおけるMLOps Amazon SageMakerの各種サービスを使用してMLOpsを実現
弥生の研究開発基盤の状況 1年ほど前からAmazon SageMakerを利用し、クラウド上の実験環境を構築している それ以前はローカルやVMで個々で研究開発をしていた Amazon SageMakerの機能については段階的に利用を進めている途中
弥生の研究開発基盤の状況活用状況検証 SageMaker上のJupyter Notebookでの実験が中心Jobについてはまだ実用的な活用は進められていない検証結果管理 現在は手動で実施モデル管理 研究開発環境では特にモデル管理をしていない本番環境は独自の管理機構を構築しているパフォーマンス監視 研究開発環境とサービスの開発環境が完全に別本番環境は独自の監視機構を構築しているSageMakerでMLOpsを実現するためのベストプラクティスを知りたい!
MLOpsのベストプラクティス使用するサービス学習・検証 SageMaker Processing Job、SageMaker Training Job検証結果管理 SageMaker Experimentsモデル管理 SageMaker Model Registry自動化 SageMaker Pipeline推論 SageMaker EndpointCI/CD SageMaker Deployment監視 SageMaker Model Monitor Amazon SageMakerに用意されている様々なサービスを用いて、MLOpsを実現 SageMaker Python SDKを使用し、SageMaker Notebook上から環境を構築していく
SageMakerで実現するMLOpsの全体像引用元:https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b-e3407147a59c/en-US/module2/projects今回は特に検証フェーズ中心に確認しました
SageMakerで実現するMLOpsの全体像引用元:https://catalog.us-east-1.prod.workshops.aws/workshops/7acdc7d8-0ac0-44de-bd9b-e3407147a59c/en-US/module2/projects検証フェーズのSageMaker部分構成
実際に触ってみて特によいと思った点 検証段階でSageMaker Experimentsを使用できるが、これが便利 SageMaker Experimentsは、Training Jobの結果をUI上から確認できるツール 過去検証のパラメーター(条件)やトレーニング結果をUI上から確認できる
実際に触ってみて特によいと思った点複数の検証ごとに訓練誤差等を可視化し比較
実際に触ってみて特によいと思った点どの検証でどんなパラメーターを用いたのかも確認しやすい
実際に触ってみて特によいと思った点 検証ではパラメーターを変えながら同じアルゴリズムを動かすことも多い 手動でこれらの結果を一元管理するには独自のコードを記述する必要がある、自動で管理してくれるのは便利
まとめ re:Inventに参加し、プロジェクトで使用しているAWSサービスについてより深く知ることができた 研究開発の促進のためにも、AWSサービスについてもっと学んでいきたい