SageMakerで機械学習モデルを構築、学習、デプロイする方法が学べるNotebookと教材集
AWS ML JP
AWS で機械学習をはじめる方法を学ぶことができるリポジトリです。
:books: リポジトリの構成
ai-services
sagemaker
frameworks
aws-neuron AWSが設計した機械学習アクセラレーター AWS Trainium、AWS Inferentia を活用する方法を学ぶためのコンテンツ。
tasks
solutions
:hamburger: AWSの機械学習サービス
AWS の機械学習サービスは AI Services 、 ML Services 、 ML Frameworks/Infrastructure の 3 層構成になっています。リポジトリの構成はサービスの構成を踏襲しています。

✏️ 学習の準備
本リポジトリのコンテンツは主に Jupyter Notebook で作成されています。コンテンツを動かすため、次の準備をしておいてください。セットアップの詳細は、コンテンツ本体の記載も参照してください。
* 必要に応じ、コンテンツで動かすサービスにとって適切なユーザー、ロールを作成します。🎥 学習コンテンツ
AI Service
- Amazon Forecast
- Amazon Personalize
Amazon SageMaker
AI/ML の BlackBelt シリーズである AI/ML DarkPart で SageMaker の使い方を解説しています! そもそも機械学習のプロジェクトはどうやって始めればいいのかに疑問をお持ちの方は、 AI/ML LightPart の動画や ML Enablement Workshop の資料をご参考ください。
|No |Process|Title|Content|Video| |:----|:------|:----|:----|:----| |1 |Train|Amazon SageMaker Training で機械学習のモデル開発を楽にする| - || |2 |Train|Amazon SageMaker Training ハンズオン編|
|
| |3 |Train|Amazon SageMaker による実験管理|
|
| |4 |Deploy|Amazon SageMaker 推論 Part1 推論の頻出課題とSageMakerによる解決方法| - |
| |5 |Deploy|Amazon SageMaker 推論 Part2すぐにプロダクション利用できる!モデルをデプロイして推論する方法 |
|
| |6 |Deploy|Amazon SageMaker 推論 Part3(前編)もう悩まない!機械学習モデルのデプロイパターンと戦略 | - |
| |7 |Deploy|Amazon SageMaker 推論 Part3(後編)もう悩まない!機械学習モデルのデプロイパターンと戦略 | - |
| |8 |Monitor|Amazon SageMaker モニタリング Part1 | - |
| |9 |Monitor|Amazon SageMaker モニタリング Part2 |
|
| |10 |Monitor|Amazon SageMaker モニタリング Part3 |
|
|
Amazon SageMakerの概要 では Amazon SageMaker の全体像と動画で解説しているコードも含めたコンテンツの詳細を確認できます。
📝 実践コンテンツ
AWS で機械学習を実践する時の参考となるサンプルコードなどを紹介します。
※本サンプルコードは MIT-0 で公開していますが、サンプルコードで使用されるモデルやデータセットはそれぞれライセンスが付与されています。サンプルコードを参考に独自の実装をする場合、用途がモデルやデータセットのライセンスに違反しないか別途確認してください。
Amazon SageMaker
Amazon SageMaker で機械学習の構築、学習、デプロイをスケールする。
📯 MLOps
- Amazon SageMaker Neo で学習したモデルをコンパイルし、 AWS IoT Greengrass V2 でエッジにデプロイする
- Amazon SageMaker Pipelines で離反予測を題材にモデルの学習・評価・更新プロセスを構築する
- Amazon SageMaker Processing と AWS Step Functions でモデルの学習・評価・更新プロセスを構築する
- Amazon SageMaker Processing と AWS Step Functions でモデルの学習・評価・更新プロセスを構築する (Studio 版 )
🚚 ML Frameworks
機械学習フレームワークの実装を SageMaker へ移行する。
- PyTorch
- TensorFlow
Tasks
AWS で画像処理や自然言語処理などの機械学習のタスクを解く方法を解説します。
👁 画像処理
- 物体検知
- 画像分類
- OCR
💬 自然言語処理
- テキスト分類
🔈 音声処理
- 自動発話認識
📄 テーブルデータ
- 回帰
- 分類
🤖 生成系 AI
text-to-image
| サンプルコード | 詳細 | |:-------| :-----------| | Stable Diffusion Web UI | Stable Diffusion の GUI として人気の AUTOMATIC1111/stable-diffusion-webui を EC2 インスタンスに立てて利用できるようにする CloudFormation です。モデルのトレーニングに bmaltais/kohyass、GUI ベースのファイル操作に filebrowser/filebrowser を立ち上げる構成も含まれています。SageMaker JumpStart を利用した Fine Tuning については たった数枚の画像で Stable Diffusion をファインチューニングできる効率的な Amazon SageMaker JumpStart の使い方 をご参照ください。 | | Inpainting | 画像の一部を生成した画像で差し替えるサンプルです。差し替える箇所 ( マスク ) の作成には CLIPSeg を使用しています。詳細は Stable Diffusion で画像の部分的な差し替えを行う環境を、 Amazon SageMaker JumpStart で簡単に構築する をご参照ください。|
text-to-text
| サンプルコード | 詳細 | |:-------| :-----------| | Instruction Tuning | text-to-text の基盤モデルである StableLM や OpenCALM をインストラクションチューニングする方法を解説します。対応しているモデルとサンプルコードはフォルダ内の README.md を参照してください。 OpenCALM については 日本語大規模言語モデル OpenCALM の知識でクイズ王に挑戦する をご参考ください。| | LangChain Inference | LangChain から SageMaker でホスティングした text-to-text の基盤モデルを扱うサンプルです。|
Solutions
SageMaker と他のサービスを組み合わせ、業務プロセスの効率化や差別化を行うためのソリューションを格納/紹介します。
* カスタマーサポートなどで生成系 AI を利用する場合、自然な応答による顧客体験の改善が期待できるものの、誤った発言 ( ハルシネーション ) が発生する恐れがあります。生成元のドキュメントを指定することで誤った発言を抑止することができ、検索エンジンから生成系 AI にドキュメントを与え生成する仕組みを RAG と呼びます。本ソリューションでは、検索エンジンとしてAmazon Kendra 、生成系 AI として Anthropic Claude / rinna/japanese-gpt-neox-3.6b-instruction-ppo を用いて RAG を実現します。
* 参考記事: 高精度な生成系 AI アプリケーションを Amazon Kendra、LangChain、大規模言語モデルを使って作る
* コールセンターで会話の文字起こし、翻訳、感情分析、会話内容の要約、オペレーターへのアドバイスをリアルタイムで行うソリューションです。文字起こしは Amazon Transcribe 、翻訳は Amazon Translate 、 感情分析は Amazon Comprehend 、 要約は Amazon SageMaker 、 アドバイスは Amazon Lex と Amazon Kendra で実装しています。
* 情報システム部門のヘルプデスクへの問い合わせ件数を削減するため、問い合わせを受け付けるチャットボットを設置するソリューションです。社内文書の検索を行う Amazon Kendra と問い合わせを受け付けるチャットボットの Amazon Lex v2 を組み合わせて実装しています。 AWS CDK で構成されているため、シンプルにデプロイ可能です。
* SBI 生命様のコールセンターでの導入事例
* 自然言語処理でレビューを分析した結果を Amazon Quicksight でダッシュボードとして表示するソリューションです。オープンソースの形態素解析ツールである GiNZA を用いて時系列のレビュー数に加え頻出単語・係り受け関係を参照できます。ブログ記事では、評価の低い DVD に対し 「まだ」「届く」の発生が多いことから発送遅延が原因ではないかといった分析例を示しています。
Contribution
本リポジトリへの Contribution を歓迎します! Contribution の方法は CONTRIBUTING をご参照ください。
License
This library is licensed under the MIT-0 License. See the LICENSE file.