Amazon SageMaker
Amazon SageMaker Serverless Inference
必要に応じてエンドポイントを立ち上げることが可能なサービス。
ただし、GPU対応していないため、今後はそこの対応が期待される。
Serverlessが最適化どうか判断するためのベンチマークについて、以下のブログで紹介されている。
Amazon SageMaker Clarify
機械学習モデルの解釈可能性を可視化するサービス。
SHAPなどを使って寄与度を算出することが可能となっている。
Amazon SageMaker Automatic Model Tuning
「ランダム」、「ベイズ」、「ハイパーバンド」、「グリッドサーチ」が使用可能。
「グリッドサーチ」は2022-10発表。
「ハイパーバンド」は良く知らなかったけど、Bandit-Basedなランダムサーチらしい。(2016年発表なので比較的新しいかも)
Amazon SageMaker Data Labeling
機械学習モデルのトレーニング向けのデータセットを作成するサービス。
料金としては、数千ドルから数万ドルが事例としてある様子。
Amazon SageMaker Ground Truth
自社のデータラベリングワークフローやワークフォースを柔軟に構築および管理する。
Amazon Mechanical Turk、サードパーティーベンダー、または独自のプライベートワークフォースを介して人間のアノテーターを使用するオプションを提供可能。
また、自動ラベル付けされた合成画像を生成することも可能。(2022-06にGA)
以下の記事の紹介によると、作成したデータセットはSageMaker以外にもRekognition Custom Labelsでもそのまま使用可能。
Amazon SageMaker Ground Truth Plus
ラベリングアプリケーションを構築したり、ラベル付けのための労働力を自ら管理したりすることなく、質の高いトレーニングデータセットを作成することが可能。
データをアップロードするだけで、SageMaker Ground Truth Plus がお客様に代わってデータラベリングワークフローとワークフォースを作成および管理する。
re:invent2021で発表された。
Amazon SageMaker Data Wrangler
機械学習向けのデータ前処理用のサービス。
データソースとしては、S3やAthena、Redshiftなど。
AWS SDK for pandas(旧称:AWS Data Wrangler)とは別物のため注意。
Wrangler自体で課金というよりはStudioを立ち上げてたりジョブを実行する際に課金される様子。
Articles
2023-06-12 SageMakerのバッチ変換でPCAを実行してみた | DevelopersIO
なゆゆのSageMakerのバッチ変換
2023-07-06 Amazon SageMaker Studio ノートブックのインスタンスタイプをユーザーごとに利用制限する方法 | DevelopersIO
ドメインに紐づいたユーザー毎の実行ロールに対してDenyなポリシーをアタッチすることで実現している
Articles(公式)
2023-04-27 CustomOpsでTrainiumの機能を拡張する方法
TrainiumやInferentiaは、Neuron SDKを通じてソフトウェアでCustomOpsをサポート
GPSIMDエンジンを用いてハードウェアを加速させる
General Purpose Single Instruction Multiple Data engine
2023-05-02 SageMaker上のTriton推論サーバで動作するFILバックエンドの詳細
Triton推論サーバがエンドポイントで使用
FIL(Forest Inference Library)は各フレームワーク(XGBoost, LightGBM, cuML)の独自性をうまく吸収してくれそう
2023-05-02 独自のMLモデルをSageMaker Canvasに持ち込み、正確な予測を生成する方法
以下3つのアーキテクチャ事例を紹介している
SageMaker AutopilotとCanvas
SageMaker JumpStartとCanvas
SageMaker Model RegistryとCanvas
2023-05-02 SageMaker JumpStartの基盤モデルによるRetrieval Augmented Generationを用いたQA
LLMsを用いたRAGによるテキスト生成では、LLMsに供給されるコンテキストの一部として特定の外部データを供給することで、ドメイン固有のテキスト出力を生成することが可能
以下2つの事例を取り上げている
LangChainライブラリとAmazon SageMakerのエンドポイントを使う方法
SageMakerのKNNアルゴリズムを使って、SageMakerのエンドポイントを使って大規模データの意味検索を行う方法
LLMsはオープンソース(GPT-J-6B、Flan T5 UL2、BloomZ 7B1)を使っており、近年のに比べると軽量なものの事例
2023-05-09 SageMaker上のTriton推論サーバで動作するPythonバックエンドの紹介
FILの記事に似ている。違いが良く分からん。
2023-05-09 SageMaker上のESMFold言語モデルによるタンパク質構造予測の高速化
ESMFoldは、アミノ酸配列からタンパク質の構造を予測するために開発された、高精度な深層学習ベースの手法
AlpaFold2などと異なり、ルックアップやMultiple Sequence Alignmentを必要とせず、外部データベースへの依存もない
その代わりに大規模なタンパク質言語モデル(pLM)をバックボーンとして使用する
2023-05-10 GravitonでSageMakerの推論コストを削減する
Graviton3ベースのEC2 c7gインスタンスを使ったSageMakerリアルタイム推論の例
比較対象として、16個のvCPUと32GiBのメモリのスペックで横並びに評価している
Gravitonインスタンスにモデルをデプロイするには、AWS DLC(Deep Learning Container)を使用するか、ARMv8.2アーキテクチャに対応したコンテナを自身で用意すればよいとのこと
2023-05-16 SageMaker JumpStartでGPT-NeoXT-Chat-Base-20Bという基盤モデルを提供開始
20Bなので性能は良さそうだが、日本語対応が微妙かもしれない。
2023-05-17 SageMaker JumpStartで大規模言語モデルによるサーバーレスな会議要約バックエンドを構築
Flan-T5-XLを使う。日本語モデルに差し替えできれば有用かもしれない。
Lambda + S3のバケツリレーでTranscribeとSageMaker Endpointを使う
SageMaker Endpointのお値段が。。
2023-05-23 AWS CDKを使用してAmazon SageMaker JumpStartから生成型AIモデルをデプロイする
アプリにはECS + Fargateを使用し、Streamlitで構築する
画像生成とNLU・テキスト生成にはAPIGW + Lambda + SageMaker Endpointを使用
これらすべてを4つのStackに分けてCDKで構築している
2023-05-24 SageMaker Jumpstart Text2Textでバッチ変換を実行する例
こちらもFLAN T5を使用する例
2023-05-30 SageMaker XGBoostが完全分散型GPUトレーニングを提供開始
マルチGPUでのトレーニングに対応
2023-06-07 SageMakerで最新のLLM基盤モデル Falcon-40Bをトレーニング
最近界隈で石油マネーLLMと話題になっているやつ
記事はゼロから事前学習モデルを作る方法について紹介されているのであくまで読み物として
2023-06-09 Tritonを使用してAmazon SageMaker上でONNXモデルをホストする
ONNXの最大のメリットは、異なるフレームワークやツール間でMLモデルを表現し、交換するための標準化された形式を提供すること
記事では、GPUを使用するマルチモデルエンドポイント(MME)向けにONNXベースのモデルをデプロイする方法を紹介
2023-06-22 日本語大規模言語モデル OpenCALM の知識でクイズ王に挑戦する | Amazon Web Services ブログ
少し考察が偏っており、個人的には7Bでは到底GPT-3.5-turboなどに及ばないことが分かる。
もう少し大規模化しないとちょっと難しそう
2023-06-22 ライト&ワンダーがAWSでゲーム機の予知保全ソリューションを構築した方法
カジノの設備の予知保全ソリューションの構築例。
ベースラインにAutoGluon、そしてSageMaker automatic model tuningでDeep Learningを使っている様子
Deep Learningのアーキテクチャはお手製で結構きちんと頑張っている印象なので参考になる
2023-06-27 Amazon SageMaker JumpStartの独自基盤モデルをAmazon SageMaker Studioで使用する
SageMaker JumpStart には、2 種類の基礎モデルがある
Proprietary models
AI21、Cohereなどが提供する事前学習済みモデルで、scriptsや重みなどのmodel artifactsは閲覧できない
Publicly available models
HuggingFaceなどで公開されているFLANやFalconなどのモデル
2023-06-29 Amazon SageMaker Studio Notebook上でFalcon-40BなどのLLMをQLoRAでチューニングする方法
具体的には、単一のml.g5.12xlargeインスタンス(4 A10G GPU)を使用してFalcon-40Bを 微調整する
2023-07-03 AWS上のディープラーニングに基づく先進運転支援システムのための自動ラベリングモジュール
Ground Truth の自動ラベリング機能の使い方を紹介
2023-07-19 自分のデータを使って要約と質問応答のための生成的AI基礎モデルを使用する
LangChainでRAGを実現する複雑めなアーキテクチャ
2023-08-01 SageMakerでカスタム要約モデルを構築する
基礎として使っているモデルは、Hugging Face Hubで提供されているGoogleのPegasus
これをJumpStartでfine-tuningする
2023-08-03 Amazon SageMakerとAmazon Rekognitionを使用して、画像内の車の位置を検出するコンピュータビジョンモデルの構築とトレーニング
RekognitionモデルまたはカスタムDetectronモデルのいずれかを呼び出して車の位置を検出できるAmplifyのモックウェブアプリケーションで構成
2023-08-03 生成AIによるAWSインテリジェント文書処理の強化
textractで抽出し、LLMで要約を作る事例
2023-08-09 SageMakerに導入されたジェネレーティブAIを使ってクリエイティブな広告を生成する
SAMを生成AIって言っている…?
Updates
2023-04-19 SageMaker Studio LabがCAPTCHAに対応しボットやスクリプトの使用を抑制
あの画像に記載された文字を手入力したりするやつ
2023-04-20 SageMaker Inference Recommenderの最新のアップデート
SageMaker Python SDKによる推論リコメンダーの実行サポート
推論レコメンダーの操作性向上
推論リコメンダーの柔軟な運用を可能にする新APIを公開
ロギングとメトリクスのためのAmazon CloudWatchとのより深い統合
2023-04-27 SageMaker with TensorBoardの一般提供を開始
TensorBoardを使用して、SageMakerトレーニングジョブのモデル収束の問題を可視化し、デバッグが可能に
TensorBoardは、トレーニングセットと検証セットにおけるモデルの精度やロスを追跡するために一般的に使用される観測可能ツール
価格表にも更新があり、ホスティングするためにml.r5.largeインスタンスが使われ、US Eastで1時間$0.126程度
東京リージョンではまだ使えない。
2023-05-01 Data Wranglerが画像データ作成に対応
ラベリング、トレーニング、推論のための画像データを準備することが可能に
S3から画像をプレビューしてインポートし、さまざまな組み込み画像変換を使用して、画像データのクリーン化、標準化、品質改善を行う
ビルトイン変換には、リサイズ、重複の削除、回転、反転、グレイスケール、コントラストの強化、ぼかし、ノイズの追加など
スニペットを使って、異常値の検出や画像からテキストを抽出するなどの高度な使用例もサポート
2023-05-10 SageMaker Serverless Inferenceのプロビジョンドコンカレンシーを発表
Serverless Inferenceのコールドスタートを緩和し、ワークロードの予測可能なパフォーマンス特性を得ることが可能に
2023-05-10 SageMaker CanvasでMLモデルを本番で運用できるように
学習したモデルをワンクリックでSageMaker Model registryに登録できるように
2023-05-10 SageMakerノートブックがml.p4d、ml.p4de、ml.inf1インスタンスをサポート
inf1はinf2が先行していた
2023-05-10 SageMaker Autopilotは、重みを持つMLモデルのトレーニングや、8つの目的指標をサポート
Ensembleモードでの重み付き客観指標による訓練をサポート
追加目的指標は、RMSE、MAE、R2、Balanced Accuracy、Precision、Precision Macro、Recall、Recall Macro
標準的な指標がそろった感じか
2023-06-06 SageMaker Automatic Model Tuningが探索や試行、最大実行時間を目標変数に基づいた自動選択が可能に
ジョブ定義の一部として必要だったハイパーパラメータの範囲、チューニング戦略、ジョブ数などの設定を指定する必要がない新しい設定であるautotuneを提供する
2023-06-07 SageMaker Canvasがモデルの再トレーニングと、更新されたデータセットによるバッチ予測ワークフローの自動化機能を提供
プロダクション向きの機能がでてきた
対応するデータソースは、ローカルアップロードとAmazon S3のみ。
2023-06-08 Amazon SageMaker DistributionがECRから利用可能に
Amazon SageMaker Distributionは、機械学習、データサイエンス、可視化のための主要なフレームワークを含むDockerイメージのセット
CPUとGPUの2種類を準備し、PyTorch、TensorFlow、KerasなどのDeep Learningフレームワーク、numpy、scikit-learn、pandasなどのPythonパッケージ、およびJupyter LabなどのIDEが含まれる
GPU版は5.3GB程度のイメージサイズ
2023-06-09 Falcon 40B基盤モデルがSageMaker JumpStartで利用可能に
Falcon 40Bは、Apache 2.0ライセンスで利用可能な400億パラメータの大規模言語モデル
2023-06-21 SageMaker Feature Storeのfeature processingを使用してデータをMLの特徴量に変換する機能が発表
データソースと、データに対して実行したい変換関数を提供するだけで、SageMaker Feature Store がデータを ML フィーチャに変換できる
2023-07-25 Amazon SageMaker Canvasが新しい5つのデータ前処理機能を追加
列のデータ型を数値、テキスト、日時の間で変更することが可能となり、バイナリやカテゴリカルなどのデータ型に関する表示も可能に
時系列データを再サンプルして、時系列データセットの観測値を一定の間隔にすることが可能に
データ内の行を管理する方法が改善され、昇順または降順に並べ替えたり、ランダムにシャッフルしたり、重複する行を削除したりできるように
2023-07-25 Amazon SageMaker CanvasでAmazon Textractによって提供されるすぐに使えるモデルであるDocument Queriesが使用可能に
Document Queriesによりドキュメントの構造 (テーブル、フォーム、フィールド、ネストされたデータ) についての事前知識がなくても、自然言語を使用して構造化ドキュメントから抽出したいデータを指定できる
2023-07-25 Amazon SageMaker CanvasがAmazon QuickSightとの機械学習(ML)モデルの共有をサポート
Canvasでモデルを構築し、QuickSightでダッシュボードを構築するための予測を生成できるように
Canvasからモデルを共有すると、すべての入力データと出力データの属性からなるMLモデルのスキーマファイルが自動的に作成
2023-07-25 Amazon SageMaker Canvasが機械学習(ML)モデルを異なる客観的指標でトレーニングする機能を提供
これまで SageMaker Canvas は、各問題タイプに対して単一のデフォルトの目的メトリックのみをサポートしていた
以降は、サポートされているメトリックのリストから目的メトリックを選択し、それに従って ML モデルを最適化することが可能
Last updated