ablog

不器用で落着きのない技術者のメモ

AWS ML Engineer Associate 勉強

SageMkader でデータセットを取り込むモード
  • ファイル

ファイルモードでは、トレーニングデータは、トレーニングを開始する前に、まずトレーニンインスタンスに添付された暗号化された EBS ボリュームにダウンロードされます。

Amazon SageMaker でより速いパイプモードを使用してモデルのトレーニングを高速化する | Amazon Web Services ブログ
  • パイプ

パイプモードでは、データは高い並行性とスループットAmazon S3 からプリフェッチされ、Unix の名前付きパイプ (別名 FIFO) にストリームされます。

Amazon SageMaker でより速いパイプモードを使用してモデルのトレーニングを高速化する | Amazon Web Services ブログ
  • 高速ファイル

高速ファイルモードでは、あたかもトレーニンインスタンスのローカルディスクにファイルがあるかのように、POSIX 準拠のファイルシステムインターフェイスを使用して S3 オブジェクトを公開します。

データセットにアクセスするようにトレーニングジョブを設定する - Amazon SageMaker AI
SageMaker Feature Store のメリット
  • 特徴量パイプラインの管理も可能で、データインジェストから前処理、モデルトレーニングまでのライフサイクル全体を自動化・効率化します
  • チームやモデル間で標準化された特徴量を再利用できるため、品質の向上と信頼性の確保に役立ちます。
Amazon SageMaker Neo
どういうときに使う?

GPUだけでなく、特定のチップ(AWS Inferentia, NVIDIA Jetson, Raspberry Pi など)で動作するようにモデルを最適化 したいとき

仕組み
Amazon SageMaker Neo #AI - Qiita
Amazon SageMaker Ground Truth

Amazon SageMaker Ground Truth はフルマネージド型のデータラベル付けサービスで、機械学習のための高精度なトレーニングデータセットを簡単に構築することができます。カスタム、または組み込み済みのデータラベル付けワークフローを使用して、SageMaker Ground Truth コンソールから数分でデータのラベル付けを開始することができます。

(中略)

ラベリングジョブを行うワーカーを選択します。このとき、以下の3つから選択します。

  • パブリック。Amazon Mechanical Turkによる50万人以上の独立系請負業者に任せる
  • プライベート。自身で用意した作業者に任せる
  • ベンダー管理下。AWS Marketplaceから選択できるベンダーに任せる
Amazon SageMaker Ground Truthを概略を理解する #AWS - Qiita
Amazon Bedrock でサポートされている基盤モデル
SageMaker Data Wrangler

Amazon SageMaker Data WranglerはSageMaker Studio上の機能で、機械学習向けの前処理を行うサービスです。
ほとんどコーディングなしでデータの前処理と特徴量エンジニアリングを簡素化・効率化することができます。
また様々なソース(S3、Athena、Redshiftなど)および40以上のサードパーティのソースにアクセスすることが可能です。

Amazon SageMaker Data Wranglerに再入門する(2022年12月版)その1 | DevelopersIO
  • TF-IDF (Term Frequency-Inverse Document Frequency)

TF-IDF (Term Frequency-Inverse Document Frequency) は、テキスト内の単語の「重要性」を評価するための一般的な手法であり、以下の計算を行います:

  • TF (Term Frequency): 文書内で特定の単語がどれだけ頻繁に出現するか。
  • IDF (Inverse Document Frequency): その単語が全体の文書の中でどれだけ珍しいか。

TF-IDF の重み付けにより、重要な単語が強調され、一般的すぎる単語(例:「です」「ある」)の影響が軽減されます。この数値化されたデータは、感情分析モデルや製品評価分析モデルに直接利用できます。

  • スケーリング - 正規化
サービス
  • Amazon Transcribe: 音声データを自動でテキスト化するサービス
  • Amazon Textract: スキャンした文書や画像からテキストを抽出するサービス
  • Amazon Comprehend: テキストデータから自然言語処理を使用して、感情分析やエンティティ抽出、キーフレーズ抽出などを行うサービス
  • Amazon Rekognition: 画像や動画から顔認識や物体検出、テキスト検出などを行うサービス
  • Glue DataBrew: データのクリーニングと前処理に特化したツール
  • SageMaker Data Wrangler: 機械学習モデルに適した特徴量エンジニアリングを行うツール
AWS Compute Optimizer

Compute Optimizer は機械学習を利用して、過去のリソース使用状況に関するメトリクスを分析し、リソースのパフォーマンス向上やコスト削減のレコメンデーションを提案してくれるサービスです。

コスト・パフォーマンス最適化サービスの AWS Compute Optimizer の使い方や各種設定方法を紹介! | DevelopersIO

Compute Optimizer は、次のリソースに関するレコメンデーションを生成します。

とは AWS Compute Optimizer - AWS Compute Optimizer
GitHub Flow

GitHub Flowの特徴は、メインとなるmasterブランチと作業用のブランチ(featureブランチ)の2種類だけでワークフローをすすめることです。

【入門】Github Flowとは?使い方の基本 - カゴヤのサーバー研究室
壊滅的な忘却
  • Catastrophic Forgetting、破滅的忘却はモデルが新しいデータで再トレーニングされると、過去のデータで学習した内容が失われる現象
継続的事前トレーニン

『ラベルなしデータを使用して、モデルをドメインに慣れさせるための方法』

特徴

  • AIモデルがトレーニングされたデータセットに最新のデータを定期的に追加し、それを基に再トレーニングすることでモデルの性能を維持し、改善する仕組みです。
  • これにより、モデルは新しいトレンドやデータの変化に対応でき、最新の情報に基づいた予測や結果を提供することができます。
  • 継続的にモデルをアップデートすることで、データドリフトなどによるパフォーマンス低下を防ぎ、信頼性の高い結果を維持します。

ラベルがないデータの形式

継続的な事前トレーニングには、ラベル付けされていないデータを利用します。
次のような、ラベルがないデータの形式を利用します。

{"input": "<input text>"}
AWS Certified AI Practitioner(AIF)対策:Bedrock モデルのカスタマイズ(ファインチューニング・継続的事前トレーニング) #AI - Qiita
アンサンブル法

アンサンブル学習とは、複数の機械学習モデルを組み合わせて、より高い精度の回答を得る手法です。
アンサンブルとは、音楽用語の「アンサンブル(ensemble)」に由来し、二人以上で協力して歌唱または演奏することを指します。調和を意味する名詞で、複数のものが集まり一つになるという意味もあります。
つまり、単一の機械学習モデルでは十分な精度を達成できない場合に、アンサンブル学習を用いることで、より正確な予測を得ることができます。

アンサンブル学習とは?スタッキングやブースティングの手法も解説 | DXを推進するAIポータルメディア「AIsmiley」
ブースティング

ブースティングは、複数の弱学習器を 1 つの強い学習モデルに変換することにより、マシンモデルの予測精度とパフォーマンスを向上させます。機械学習モデルは、次の弱学習器か強学習器である可能性があります。

ブースティングとは何ですか? - 機械学習におけるブースティングの説明 - AWS
早期停止

早期停止(Early Stopping)は、モデルが過学習し始める兆候を捉え、その時点で学習を終了させる手法です。モデルが訓練を進めるにつれて、訓練データに対する誤差は徐々に減少しますが、ある時点で検証データに対する誤差が増加し始めることがあります。これが過学習のサインです。

【0から学ぶAI】第170回:早期停止(Early Stopping)
Amazon SageMaker AI の推論オプション
  • リアルタイム推論
  • サーバレス推論
  • バッチ変換
  • 非同期推論
Amazon SageMaker Studio のメリット
  • 機械学習のワークフローを効率的に管理するための統合開発環境IDE)で、データサイエンティストやMLエンジニアが、データの準備からモデルの構築、トレーニング、デプロイまでの一連の作業をシームレスに行うことができる。
  • ウェブベースのビジュアルインターフェイスの提供を通じて、データ準備からデプロイまでのプロセスを統合的に行える。
Amazon SageMaker Clarify
  • データセットやモデルに潜むバイアスを検出するためのツール
Amazon FSx for Lustre

Linux」と「クラスタ」の組み合わせから生まれた名前を持つ Lustre は、並列で分散されたファイル・システムです。

Amazon FSx for Lustre とは |ピュア・ストレージ |ピュア・ストレージ
ローリングデプロイ

ローリングデプロイでは、トラフィックが新しいエンドポイントに移行するたびに古いエンドポイントのインスタンスがクリーンアップされるため、エンドポイントの更新に必要な追加インスタンスの数が減ります。この新しい更新戦略はデプロイガードレールの一部です。これにより、トラフィック移行のステップのサイズを制御できるほか、古いエンドポイントのインスタンスを終了する前に、新しいインスタンスに問題がないか監視する評価期間を指定できます。

Amazon SageMaker がローリングデプロイの新たなエンドポイント更新オプションを発表
git フロー
  • 新機能の開発を開始する際に、developブランチから新しいfeatureブランチを作成します。これにより、developブランチが安定した開発環境として機能し、他の新機能開発と並行して作業することが可能です。開発が完了した後、featureブランチは再びdevelopにマージされ、最終的にリリース準備が整った時点でmainブランチに統合される。
Amazon SageMaker Inference Recommender

nference Recommender では、想定インスタンスのリスト、またはモデルデプロイのコスト、スループットレイテンシーが最適化された上位 5 つのインスタンスタイプを、信頼度スコアとともに提供することもできます。

Amazon SageMaker Inference Recommender を使用したレコメンデーションジョブ - Amazon SageMaker AI
モデルの特徴量属性ドリフト

モデルに使用される特定の特徴量の分布が変化する現象です。特徴量の有用性が低下したり、新しいパターンが現れたりすると、誤った予測につながる場合があります。継続的な特徴量の監視とエンジニアリングが重要です。

モデルドリフト | FlowHunt
Amazon SageMaker Python SDK
  • Python の高レベル API を通じて、SageMaker 上でのモデルのトレーニングやデプロイなどの機械学習ワークフローを効率化するためのツール。この SDK を使用することで、モデル作成のプロセスが簡便化され、エンジニアはワークフローをスムーズに構築できる。
SMOTE

SMOTE(Synthetic Minority Over-sampling Technique)は、少数クラスのデータポイント間に新たな合成データを生成することで、データの不均衡を解消するオーバーサンプリングの手法です。通常のオーバーサンプリングでは、単に少数クラスのデータを複製するだけですが、SMOTEは少数クラスのデータ同士の間に新しいデータを合成して、より多様なデータセットを作り出します。

【0から学ぶAI】第132回:SMOTEによるオーバーサンプリング
敵対的生成ネットワーク

敵対的生成ネットワーク (てきたいてきせいせいネットワーク、英: Generative adversarial networks、略称: GANs)は、2014年にイアン・グッドフェローらによって発表された教師なし学習で使用される人工知能アルゴリズムの一種であり、ゼロサムゲームフレームワークで互いに競合する2つのニューラルネットワークのシステムによって実装される[1]。

敵対的生成ネットワーク - Wikipedia