すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:DLC MNIST トレーニングのベストプラクティス

最終更新日:Jun 22, 2026

このトピックでは、DLC コンピューティングリソースでハイパーパラメータチューニングを行うための AutoML 実験を送信する方法を説明します。このソリューションは、PyTorch フレームワークと torchvision.datasets.MNIST モジュールを使用して、MNIST データセットを自動的にダウンロードして読み込み、最適なハイパーパラメータ設定を見つけるためにモデルをトレーニングします。トレーニングモードは、スタンドアロントレーニング、分散トレーニング、ネストされたパラメータトレーニングの 3 つから選択できます。

前提条件

ステップ 1:データセットの作成

  1. スクリプトファイル mnist.py を OSS バケットにアップロードしてください。詳細については、「クイックスタート」をご参照ください。

  2. 実験のデータファイルを格納するための OSS データセットを作成してください。詳細については、「データセットの作成と管理」をご参照ください。

    以下の主要なパラメータを設定し、他のパラメータはデフォルト設定のままにしてください:

    • [Dataset Name]: カスタムのデータセット名を入力します。

    • [Select Data Storage]: スクリプトファイルが格納されている OSS ディレクトリを選択します。

    • [Property]: [Property] を選択します。

ステップ 2:実験の作成

新しい実験 ページに移動し、次の手順に従ってキーパラメーターを設定します。その他のパラメーターの詳細については、「実験の作成」をご参照ください。設定が完了したら、Submit をクリックします。

  1. 実行設定を構成します。

    このソリューションでは、スタンドアロントレーニング、分散トレーニング、ネストされたパラメータトレーニングの 3 つのトレーニングモードを提供します。

    スタンドアロントレーニング

    パラメータ

    説明

    [Job Type]

    [DLC] を選択します。

    [Resource Group]

    [Public Resource Group] を選択します。

    [Framework]

    PyTorch を選択します。

    [Datasets]

    ステップ 1 で作成したデータセットを選択します。

    [Node Image]

    [PAI Image] > pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 を選択します。

    [Instance Type]

    [CPU] > ecs.g6.4xlarge を選択します。

    [Nodes]

    1 に設定します。

    [Startup Command]

    python3 /mnt/data/mnist.py --save_model=/mnt/data/examples/search/model/model_${exp_id}_${trial_id} --batch_size=${batch_size} --lr=${lr} と設定します。

    ハイパーパラメータ

    • batch_size

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、16、32、64 の 3 つの列挙値を追加します。

    • lr

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、0.0001、0.001、0.01 の 3 つの列挙値を追加します。

    この設定により、9 つのハイパーパラメータの組み合わせが生成されます。実験では、各組み合わせに対してトライアルが作成されます。

    分散トレーニング

    パラメータ

    説明

    [Job Type]

    [DLC] を選択します。

    [Resource Group]

    [Public Resource Group] を選択します。

    [Framework]

    PyTorch を選択します。

    [Datasets]

    ステップ 1 で作成したデータセットを選択します。

    [Node Image]

    [PAI Image] > pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 を選択します。

    [Instance Type]

    [CPU] > ecs.g6.4xlarge を選択します。

    [Nodes]

    3 に設定します。

    [Startup Command]

    コマンドを python -m torch.distributed.launch --master_addr=$MASTER_ADDR --master_port=$MASTER_PORT --nproc_per_node=1 --nnodes=$WORLD_SIZE --node_rank=$RANK /mnt/data/mnist.py --data_dir=/mnt/data/examples/search/data --save_model=/mnt/data/examples/search/pai/model/model_${exp_id}_${trial_id} --batch_size=${batch_size} --lr=${lr} と設定します。

    ハイパーパラメータ

    • batch_size

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、16、32、64 の 3 つの列挙値を追加します。

    • lr

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、0.0001、0.001、0.01 の 3 つの列挙値を追加します。

    この設定により、9 つのハイパーパラメータの組み合わせが生成されます。実験では、各組み合わせに対してトライアルが作成されます。

    ネストされたパラメータトレーニング

    パラメータ

    説明

    [Job Type]

    [DLC] を選択します。

    [Resource Group]

    [Public Resource Group] を選択します。

    [Framework]

    PyTorch を選択します。

    [Datasets]

    ステップ 1 で作成したデータセットを選択します。

    [Node Image]

    [PAI Image] > pytorch-training:1.12PAI-gpu-py38-cu113-ubuntu20.04 を選択します。

    [Instance Type]

    [CPU] > ecs.g6.4xlarge を選択します。

    [Nodes]

    1 に設定します。

    [Startup Command]

    python3 /mnt/data/mnist.py --save_model=/mnt/data/examples/search/pai/model/model_${exp_id}_${trial_id} --batch_size=${nested_params}.{batch_size} --lr=${nested_params}.{lr} --gamma=${gamma} と設定します。

    ハイパーパラメータ

    • nested_params

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、{"_name":"large","{lr}":{"_type":"choice","_value":[0.02,0.2]},"{batch_size}":{"_type":"choice","_value":[256,128]}}{"_name":"small","{lr}":{"_type":"choice","_value":[0.01,0.1]},"{batch_size}":{"_type":"choice","_value":[64,32]}} の 2 つの列挙値を追加します。

    • gamma

      • 制約タイプ: [choice] を選択します。

      • 検索スペース: image.png をクリックして、0.8、0.7、0.9 の 3 つの列挙値を追加します。

    この設定により、24 のハイパーパラメータの組み合わせが生成されます。実験では、各組み合わせに対してトライアルが作成されます。

  2. トライアル設定を構成します。

    パラメータ

    説明

    メトリクス

    メトリクスタイプ

    [stdout] を選択します。この設定により、実行中の標準出力 (stdout) から最終メトリクスが抽出されます。

    方法

    [best] を選択します。

    メトリクスの重み

    以下の項目を設定します:

    • キー: validation: accuracy=([0-9\\.]+)

    • 値: 1

    メトリクスソース

    コマンドキーワードを「cmd1」に設定します。

    最適化方向

    [Maximize] を選択します。

    モデルストレージパス

    モデルを保存するための OSS パスを設定します。このソリューションでは、パスを oss://examplebucket/examples/search/pai/model/ のように設定します。

  3. 検索設定を構成します。

    パラメータ

    説明

    検索アルゴリズム

    [TPE] を選択します。アルゴリズムの詳細については、「サポートされている検索アルゴリズム」をご参照ください。

    最大トライアル数

    3 に設定します。

    最大同時トライアル数

    2 に設定します。

    早期停止の有効化

    このスイッチをオンにすると、パフォーマンスが低いトライアルを早期に停止できます。

    開始ステップ

    5 に設定します。トライアルは、少なくとも 5 回の評価を完了した後にのみ早期停止できます。

ステップ 3:実験詳細と結果の表示

  1. 実験リストで実験名をクリックして、[実験詳細] ページを開きます。

    [実験詳細] ページには 4 つの主要エリアがあります。[基本設定] エリアには、実験 ID、名前、可視性、ステータス、作成者、作成時刻、更新時刻が表示されます。[トライアルステータス統計] エリアには、完了、失敗、実行中、またはその他の状態にあるトライアルの数を示すドーナツチャートが表示されます。[トライアル設定] エリアには、メトリクスタイプ、計算方法、メトリクスの重みの正規表現、メトリクスソース、モデルストレージパスが含まれます。最後に、[検索設定] エリアには、検索アルゴリズム、最大トライアル数、最大同時トライアル数、最適化方向、早期停止の設定が含まれます。

    このページでは、すべてのトライアルの進捗とステータスを監視できます。実験は、検索アルゴリズムと最大トライアル数の設定に基づいて 3 つのトライアルを作成します。

  2. [Trials] タブをクリックしてください。実験用に生成されたすべてのトライアルのリストを表示でき、各トライアルのステータス、最終メトリクス、ハイパーパラメータの組み合わせが含まれます。

関連ドキュメント

  • MaxCompute コンピューティングリソース上でハイパーパラメータチューニング実験を送信することもできます。詳細については、「MaxCompute k-means のベストプラクティス」をご参照ください。

  • AutoML の使用方法とその仕組みの詳細については、「AutoML」をご参照ください。