無限ノック › MLA 練習問題一覧 › 問題
MLAMLモデルの開発

大手EC企業のMLエンジニアが、パラメータ数が単一GPUのVRAM容量を大幅に超える大規模トランスフォーマーモデルのファインチューニングをSageMakerで行おうとしています。ml.p4d.24xlarge(GPU 8台)で試みましたが、モデル全体が単一GPUに収まらずOut of Memoryエラーが発生しています。複数インスタンスを活用してこのメモリ問題を根本解決するための最も適切なアプローチはどれですか。

A
SageMaker Data Parallelism Library でデータを複数GPUに分割し AllReduce で勾配を同期してトレーニングスループットを向上させる
SageMaker Data Parallelism Library(SMDDP)はトレーニングデータを複数GPUに分割し AllReduce 通信で勾配を同期する「データ並列化」手法。各GPUはモデル全体のコピーを保持することが前提のため、モデルが単一GPUのVRAMに収まらないOOMの根本解決には適用できない。
B
SageMaker Model Parallelism Library でモデルのレイヤーをシャーディングして複数GPUのメモリに分散させる
✓ 正解
SageMaker Model Parallelism Library(SMP)はモデルのレイヤーを複数GPUに分割する「モデル並列化」手法。各GPUがモデルの一部のみを保持するため、単一GPUのVRAMを超える大規模モデルでもOOMなしで訓練が可能になる。大規模LLMのファインチューニングに最適な正しい選択。
C
Amazon EMR の Apache Spark MLlib を使用しクラスター全体のメモリでモデルをロードして分散訓練する
Amazon EMR の Apache Spark MLlibはスケーラブルなバッチ処理・古典的ML向けの分散フレームワークで、大規模トランスフォーマーのGPUモデル並列訓練には設計されていない。PyTorch / TensorFlowベースのディープラーニングのモデル並列化機能を提供しておらず、このシナリオには不適切。
D
Horovod を SageMaker 上で実行しデータを各ノードにレプリケートして Ring-AllReduce で勾配を集約する
Horovodはデータ並列型の分散トレーニングフレームワークで、各ノードがモデルの完全なコピーを保持してデータのみを分割する方式。モデル全体が単一GPUのVRAMに収まらない場合のメモリ不足は解決できず、本シナリオの根本原因への対処にはならない。

解説

SageMaker Model Parallelism Library(SMP)は、単一GPUのVRAMに収まりきらない大規模モデルを訓練するためのモデル並列化機能を提供します。モデルの各レイヤーを複数のGPUに分散(シャーディング)させることで、1台のGPUが保持するパラメータ量を削減しOOM問題を根本的に解消します。 選択肢AのSageMaker Data Parallelism Libraryはデータを分割して各GPUがモデルの完全なコピーを保持する方式であり、モデル自体がVRAMに収まらない場合の解決策にはならない。 選択肢CのAmazon EMR の Apache Spark MLlibはバッチ処理・古典的ML向けの分散フレームワークであり、PyTorch/TensorFlow系の大規模トランスフォーマーのモデル並列化には対応していない。 選択肢DのHorovodはデータ並列型の分散トレーニングフレームワークで各ノードにモデルのフルコピーが必要なため、単一GPUのVRAM不足の根本解決にはならない。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← MLA の問題一覧に戻る