8問中 0問が回答されています
質問:
You have already completed the テスト before. Hence you can not start it again.
問題を読み込んでいます…
You must sign in or sign up to start the テスト.
まず、次の操作を完了する必要があります:
正解数 0/問題数8
回答にかかった時間:
終了時間となりました
回答お疲れ様でした。
Earned Point(s): 0 of 0, (0)
0 Essay(s) Pending (Possible Point(s): 0)
【MLS-82】動画分析 SaaS 企業は 7 TB の JPEG 画像を用いて ResNet を Amazon SageMaker で再学習する。
採用予定の ml.p3.8xlarge にはローカル NVMe 100 GB しかなく、ジョブ起動時間とストレージコストを極力抑えたい。
データはすでに S3 バケットに階層化されており、学習コード (MXNet) は 80:20 で訓練/検証をストリーミングしたい。
インスタンス内へ全量コピーせず、最新のベストプラクティスで最も簡潔に要件を満たすデータ取り込み方法はどれか。
Amazon SageMaker で ml.p3.8xlarge を使う場合、インスタンスの NVMe キャッシュは 100 GB しかなく 7 TB の JPEG を置く余裕がありません。Amazon S3 に RecordIO 形式で保管し、トレーニングチャネルで InputMode=Pipe を指定すると、MXNet は必要なシャードのみをネットワーク経由で逐次取得します。この仕組みにより大量データの全量コピーを省き、ジョブは転送待ちなく即時に立ち上げられます。
File 入力モードを選ぶと SageMaker はジョブ開始時にデータをローカルへ展開するため、Elastic Block Store や Amazon FSx for Lustre など高価な追加ストレージが不可欠となり、7 TB の転送だけで数時間かかります。Pipe 方式は S3 のオブジェクトを直接ストリームするため GPU のアイドル時間を無くし、学習終了後に不要なボリュームを片付ける運用負荷も発生しません。
起動時間短縮、インスタンス内ストレージ制限の回避、S3 だけで完結するコスト最適化、MXNet での 80:20 ストリーミング分割という複数要件を俯瞰すると、トレーニングチャネルで InputMode=Pipe と RecordIO を組み合わせて S3 から直接データを供給する方法が最もシンプルで推奨される選択肢となります。
【MLS-83】ECサイトを運営する企業が Amazon SageMaker のビルトイン TensorFlow コンテナを用い、224×224 画像 100 万枚を分類する ResNet を ml.p3.8xlarge 単一ノードで学習している。
5 エポック目以降で訓練正確度 99%、検証正確度 82% と乖離し、推論レイテンシは 50 ms 以下を維持したい。
運用負荷を抑えつつ過学習を軽減するために最も適切な対応はどれか。
訓練 99% と検証 82% の開きは画像分類で典型的な過学習です。Amazon SageMaker の Built-in TensorFlow コンテナでは dropout と weight_decay(L2) を設定するだけで畳み込み層の正則化が簡単に有効化できます。ドロップアウトは推論時に無効化されるためエンドポイントのレイテンシ 50 ms には影響しません。追加でエポックを増やしたりモデルを置き換えたりする前に、まずこれらの正則化強度を適切に調整して検証精度を高める方が GPU を有効活用しつつ運用負荷を抑えられます。
weight_decay や dropout_rate は適切な値がデータセット依存で変わるため、Amazon SageMaker Hyperparameter Tuning Job を使い BayesianOptimization や RandomSearch を自動実行すると、人手で試行錯誤せず最適化できます。ml.p3.8xlarge 単一ノードでも並列ジョブを活かせば総学習時間を抑えつつ汎化性能を改善でき、運用面でも定型化が容易です。
バッチサイズの極端な変更やエポック数の増加は学習の安定性や計算コストに影響する一方で過学習を根本的に抑える保証はなく、線形モデルでは画像特徴の表現力が不足しがちです。Amazon SageMaker で既存の ResNet を維持し、ドロップアウトと L2 正則化を軸に HPO で自動探索する構成が、精度向上・レイテンシ維持・運用簡素化という複数要件を総合的に満たすアプローチと判断できます。
【MLS-84】国内EC企業が約50万件の日本語レビューを用いポジ/ネガ2値分類モデルを構築する。
多言語BERTを転移学習し、全層をファインチューニングしつつ最終層のみ2クラス用に置換する必要がある。
運用負荷を抑えるためマネージドな仕組みを希望し、学習は単一GPUの ml.p3.2xlarge 上で2時間以内に完了させたい。
最適な Amazon SageMaker の実装方法はどれか。
転移学習で多言語ないし日本語の BERT を丸ごとファインチューニングする場合、Amazon SageMaker の HuggingFace DLC が最もシンプルです。from_pretrained でモデルと tokenizer を取得し、Trainer API で num_labels=2 と freeze_base_model=False を指定、S3 に置いた reviews.csv を datasets.load_dataset で読み込み、ml.p3.2xlarge の V100 16 GB なら 50 万文を約 2 時間で処理できます。
組込アルゴリズム BlazingText や TensorFlow Script Mode を使う手もありますが、fastText 系は Transformer の事前学習重みを流用できず、古い TF1 系イメージでは transformers のビルドが追加で発生します。GPU 世代が K80 の ml.p2.xlarge や CPU の ml.c5.2xlarge を選ぶと計算時間が延び、全層ファインチューニングと 2 時間以内という制約を同時に満たすか慎重な検討が必要です。
要件は①日本語レビュー 50 万件の 2 値分類、②多言語 BERT の全層ファインチューニング、③マネージドサービスで運用負荷を抑制、④単一 GPU ml.p3.2xlarge で 2 時間以内完了、の 4 点です。SageMaker の HuggingFaceEstimator、BlazingText、Script Mode、Neo など各選択肢がこれら条件をどこまでカバーするかを俯瞰しつつ最適な手段を判断してください。
【MLS-85】金融SaaS企業は独自C++実装のXGBoost派生アルゴリズムをAmazon SageMakerで学習させたい。
ECRにBYOA用Dockerイメージを登録し、ml.m5.4xlargeで4時間以内にトレーニングを完了し、500 MBのモデルを自動でS3へ保存する必要がある。
ジョブ起動時に–hyperparameters max_depth=6を受け取り、学習後は同一イメージを推論エンドポイントにも流用したい。
コンテナ実装の要件を満たすアプローチはどれか。
独自アルゴリズムをBring-Your-Own-Algorithm方式でAmazon SageMaker Training Jobに載せる場合、DockerfileでENTRYPOINTを明示し、コンテナ起動後にpythonなどで/opt/ml/code配下のtrain.pyを呼び出す設計が基本です。ECRに登録したイメージは–hyperparametersで渡された値をargparse等で受け取れるようCLI引数を拾う実装にしておくと運用が楽になります。またSM_CHANNEL_TRAIN環境変数が入力データのパスを示すので、コード側でos.environから取得すれば大量データも問題なく処理できます。
学習した重みや成果物を/opt/ml/modelに書き出すと、SageMakerはジョブ終了時に自動でS3の指定バケットへアップロードしてくれます。500 MB程度のサイズであればml.m5.4xlargeでも転送に支障はなく追加設定も不要です。/opt/ml/outputは主にログ用ディレクトリなので混同しないよう注意してください。
同じDockerイメージを推論エンドポイントでも使うなら、学習用スクリプトに加えてserve.pyやinference.pyを用意し、SageMaker Hostingが呼び出すpredict関数を実装しておくとデプロイが一手間で済みます。Framework ModeやScript Modeは公式コンテナ向けの機能なので、BYOAでは決められたフォルダ規約とENTRYPOINT設定を守るアプローチが総合的に適していると判断できます。
【MLS-86】小売企業A社は、10種類の商品画像を分類するディープラーニングモデルを Amazon SageMaker で迅速に開発している。
自前データは5,000枚と少なく、学習時間を p3.2xlarge 1台で2時間以内に制限する必要がある。
転移学習のベストプラクティスに従い、ResNet-50 の学習済み重みで全層を初期化した上で出力数に合わせて最終全結合層だけを置換し、その後に全層をファインチューニングして高い汎化性能を得たい。
最も要件を満たす SageMaker の学習ジョブ構成はどれか。
Amazon SageMaker のイメージ分類組み込みアルゴリズムでは pretrained_model チャネルに ResNet-50 の学習済みアーティファクトを置き、transfer_learning_type を fine_tuning、num_layers_to_freeze=0 とすると全層が学習可能な状態でウォームスタートできるため、p3.2xlarge 1 台・2 時間という制約下でもエポック数を抑えて高い汎化性能を獲得しやすく、学習後はモデルが S3 に保存されそのままエンドポイントへデプロイ可能です。
同じ Amazon SageMaker 設定でも feature_extraction を選ぶと畳み込み層が凍結され計算量は軽いものの、5,000 枚の画像から新しい特徴を引き出す柔軟性が下がり、fine_tuning のように層をアンフリーズして調整する方がドメインシフトへの頑健性や精度向上を狙えるため、転移学習で高精度を目指す場面では層を解放して学習する構成が望ましいと整理できます。
データ数・GPU 時間・汎化性能という複数制約を同時に満たすには、S3 上の ResNet-50 重みで Amazon SageMaker 学習ジョブをウォームスタートし出力層だけ置換後に全層を調整する手法が、ゼロからの学習や SageMaker Neo による推論最適化のみのアプローチより計算資源の効率とモデル品質の両面で総合的に優れています。
【MLS-87】医療画像解析 SaaS 企業は、CSV 形式で gzip 圧縮された 5 TB の学習データを Amazon S3 に保存し、週次で Amazon SageMaker 組み込み XGBoost を単一の ml.p3.8xlarge インスタンスで再学習しています。
現在 File モードを使用しており、ジョブ開始前に S3 からローカル EBS へ全データをダウンロードするため 2 時間の待ち時間と高い EBS ストレージ費用が発生しています。
各エポックで順次読み込みが可能であることから、モデル精度を維持しつつレイテンシーとストレージコストを大幅に削減する最適な構成はどれですか?
Amazon SageMaker には File と Pipe という入力モードがあり、File はトレーニング開始前に Amazon S3 から全データをインスタンスの EBS にコピーします。そのため 5 TB の gzip CSV を扱うとコピーだけで数時間と高額な gp2 料金がかかりますが、Pipe モードは S3 からストリーミングでバッチ単位に読み込むため待ち時間とローカル容量を大幅に削減できます。さらに XGBoost は逐次読み込みに対応しているので精度への影響もありません。
同じ課題に対し Spot トレーニングを選ぶと課金の対象は ml.p3.8xlarge の計算コスト中心で I/O 量と EBS サイズは変わりませんし、Amazon FSx for Lustre をリンクすると高速な並列 I/O は得られるものの初回 Import とファイルシステム料金が発生します。順次処理する単一ノード学習では帯域よりも前処理待ち時間とストレージ費用がボトルネックなので、S3 から直接パイプ供給できる構成に注目すると道筋が見つかります。また Amazon ECR に巨大データを含むイメージを保存する方法は 5 TB のサイズ制約や pull 時間が非現実的で、データとコード分離の原則にも沿いません。
コストとレイテンシーという複数要件を俯瞰すると、SageMaker がネイティブにサポートする Pipe モードで Amazon S3 と学習プロセスをストリーミング接続し、ml.p3.8xlarge の GPU を休ませずにデータを供給する構成が、EBS を最低限に抑えつつ週次ジョブを迅速に完了させる最もバランスの取れた選択肢と判断できます。チャンネル設定を変えるだけで実装負荷も小さく、暗号化やバージョニングなど S3 既存ポリシーを継続利用できる点も運用メリットです。
【MLS-88】FinTech企業は SageMaker エンドポイントで不正検知モデルを 24 時間提供し、推論は 1 日 100 万件である。
要件:
①入力・出力双方のドリフトを日次で検知し、閾値超過時に自動再学習してエンドポイントを置換する。
②全モデル世代を監査目的で保管する。
③運用をサーバレスで最小化する。
最適なアーキテクチャはどれか。
入力や推論のドリフトを毎日測定したい場合、SageMaker Model Monitor の DataQuality と PredictQuality ジョブを定期スケジュールすると、収集バッチ処理と基準統計の比較が完全にマネージドで行われます。ジョブがしきい値を超えると CloudWatch Events(EventBridge)が自動で違反イベントを出力し、後段の SageMaker Pipelines や Lambda などを無停止で呼び出せる仕組みが備わっています。
再学習からデプロイまでをコード化して自動実行するには、Processing→Training→Model Registry→Create/Update Endpoint のステップをまとめた SageMaker Pipelines が便利です。パイプライン実行ごとに Model Registry がモデルアーティファクトを世代管理するため監査証跡が残り、EventBridge をトリガにすれば常時稼働するサーバや手動操作は不要で、S3 とコンテナ実行時間以外のコストを最小化できます。
EMR クラスターを都度起動したり、Athena や Batch で独自判定ロジックを作る構成も実現はできますが、サーバレス運用の簡潔さ、監査向けバージョン管理、ドリフト検出から本番置換までの自動連携という三つの要件を同時に満たすかを俯瞰すると、Model Monitor の違反イベントと SageMaker Pipelines・Model Registry を組み合わせたマネージドワークフローが総合的に最も適合すると判断できます。
【MLS-89】あるオンライン動画配信企業では、Step Functions から Amazon SageMaker の CreateTrainingJob API を呼び出して 4 台の ml.p3.8xlarge で推薦モデルを分散学習しています。
開発者は TrainingImage・InputDataConfig・StoppingCondition だけを指定して実行したところ「ValidationException: required field missing」が発生しました。
S3 にある 500 GB の学習データを用い、成果物は 30 日間保持するポリシーを順守しつつ、AWS SDK for Python で再実行する前に最小限どの設定を追加すれば API 仕様を満たせますか。
Amazon SageMaker の CreateTrainingJob API 仕様書を読むと、TrainingJobName、AlgorithmSpecification、RoleArn、OutputDataConfig、ResourceConfig、StoppingCondition が全て必須パラメータと明示されていますので、Python の boto3 で渡す引数にこれらが網羅されているかをまず点検し、欠けている項目を補えば ValidationException を解消できますし、Step Functions から呼ぶ際は States 定義にそのキーが無ければ当然空になる点も意識しておくとよいです。
ResourceConfig は SageMaker が利用する EC2 インスタンスを宣言する領域で、InstanceType、InstanceCount、VolumeSizeInGB の 3 つを必ず明示しないとデフォルトは存在しませんから、ml.p3.8xlarge を 4 台使う分散学習や 500GB の入力データを置く EBS サイズを boto3 の引数で設定しておくことが不可欠であり、VolumeSizeInGB は学習コードや中間生成物まで含めて余裕を見積もることで CloudWatch Metrics 上の I/O スロットルを避けられます。
学習結果を 30 日間保持する運用ポリシーに合わせるためには OutputDataConfig で S3 の保存先 URI を示し、バケットには Lifecycle ルールを設定して削除を自動化し、そのバケットやトレーニングコンテナにアクセスする IAM の RoleArn を併せて渡すことで SageMaker は成果物を安全にアップロードできますから、必須 6 項目のうち既に指定済みのものと不足しているものを俯瞰し、データ量・分散数・保持要件を同時に満たす設定を組み立てる総合的視点が最終的な判断の決め手となります。
この教材の改善リクエストがある場合は、お気軽にご報告ください。
カテゴリを選択のうえ、詳細をご記入いただけますと幸いです。
CloudTech(クラウドテック)は多くのユーザーの皆様から改善リクエストをご協力いただき運営できております。
あなたの視点での気づきは他の学習者の迷いを解決する手助けとなります。
運営側でもチェックをしておりますが限界があるため、誠に恐縮ではございますが細かい点でもご遠慮なくご指摘をお願いいたします。
※ 匿名での報告となり、内容は一般公開されません。
※ 技術的なご質問への回答を行うフォームではございませんのでご注意ください。
