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

Platform For AI:K-meansクラスタリングコンポーネントを実行するためのベストプラクティス

最終更新日:Jul 22, 2024

このトピックでは、MaxComputeリソースに基づいてハイパーパラメータチューニング実験を実行し、K-means Clusteringコンポーネントアルゴリズムに最適なハイパーパラメータの組み合わせを取得して、Platform for AI (PAI) のK-means ClusteringコンポーネントおよびClustering Model Evaluationコンポーネントを実行する方法について説明します。

ステップ1: データの準備

[クラスタリングモデルの評価] トピックの例を参照して、テストデータと評価データを準備できます。

この例で使用されているサンプルデータpai_online_project.pai_kmeans_test_inputpai_online_project.pai_cluster_evaluation_test_inputは、オープンソースデータソースからのものです。 データを直接使用できます。

ステップ2: 実験の作成

  1. [実験の作成] ページに移動します。 詳細については、「実験の作成」をご参照ください。

  2. [実験の作成] ページで、パラメーターを設定します。 次の表に、主要なパラメーターを示します。 その他のパラメーターについては、「実験の作成」をご参照ください。

    • 実行設定 image.png

      パラメーター

      説明

      メトリックタイプ

      [MaxCompute] を選択します。

      コマンド

      次のコマンドを設定し、コマンドを順番に実行します。

      • コマンド1: K-means Clusteringコンポーネントを実行し、準備されたテストデータを使用してクラスタリングモデルを構築します。 パラメーターの設定方法については、「K-means Clustering」トピックの「方法2: PAIコマンドの実行」を参照してください。

        pai -name kmeans
            -project algo_public
            -DinputTableName=pai_online_project.pai_kmeans_test_input
            -DselectedColNames=f0,f1
            -DappendColNames=f0,f1
            -DcenterCount=${centerCount}
            -Dloop=10
            -Daccuracy=0.01
            -DdistanceType=${distanceType}
            -DinitCenterMethod=random
            -Dseed=1
            -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id}
            -DidxTableName=pai_kmeans_test_output_idx_${exp_id}_${trial_id}
            -DclusterCountTableName=pai_kmeans_test_output_couter_${exp_id}_${trial_id}
            -DcenterTableName=pai_kmeans_test_output_center_${exp_id}_${trial_id};

        上記のコードでは、${centerCount}${distanceType} は、定義できるハイパーパラメーター変数です。

      • コマンド2: コマンド1で生成されたクラスタリング結果に基づいて [クラスタリングモデル評価] コンポーネントを実行し、クラスタリングモデルのパフォーマンスを評価します。 パラメーターの設定方法については、「クラスタリングモデルの評価」トピックの「方法2: PAIコマンドの使用」を参照してください。

      • PAI -name cluster_evaluation
            -project algo_public
            -DinputTableName=pai_online_project.pai_cluster_evaluation_test_input
            -DselectedColNames=f0,f1
            -DmodelName=pai_kmeans_test_output_model_${exp_id}_${trial_id}
            -DoutputTableName=pai_ft_cluster_evaluation_out_${exp_id}_${trial_id};

      ハイパーパラメータ

      次のセクションでは、ハイパーパラメータの制約タイプと有効な値を示します。

      • centerCount:

        • 制約タイプ: 選択。

        • 有効な値: image.pngアイコンをクリックして、2、3、4、5の列挙値を追加します。

      • distanceType:

        • 制約タイプ: 選択。

        • 有効な値: image.pngアイコンをクリックして、次の列挙値を追加します。

      システムは、前述の構成に基づいて12のハイパーパラメータの組み合わせを生成し、各ハイパーパラメータの組み合わせに対して試行を作成します。 各試行において、システムは、ハイパーパラメータの組み合わせを使用することによって、K平均クラスタリングコンポーネントおよびクラスタリングモデル評価コンポーネントを実行する。

    • トライアル設定

      項目

      説明

      メトリックタイプ

      テーブルを選択します。

      移動方法

      ベストを選択します。

      メトリック重量

      • キー: vrc

      • 値: 1

      メトリックソース

      パラメーターをselect GET_JSON_OBJECT(summary, '$.calinhara') as vrc from pai_ft_cluster_evaluation_out _${ exp_id }_${ trial_id}; に設定します。

      最適化

      [最大化] を選択します。

      モデル名

      パラメーターをpai_kmeans_test_output_model _${ exp_id }_${ trial_id} に設定します。

    • 検索設定

      パラメーター

      説明

      検索アルゴリズム

      [TPE] を選択します。

      最大トライアル

      パラメーターを6に設定します。

      最大同時試行

      パラメーターを3に設定します。

  3. [送信] をクリックします。

    システムは実験の作成を開始します。 AutoMLページで実験を表示できます。

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

  1. [AutoML] ページで、実験の名前をクリックして、[実験の詳細] ページに移動します。

    [実験の詳細] ページで、トライアルの実行の進行状況とステータスを表示できます。 image.png

    この例では、検索アルゴリズムと指定したトライアルの最大数に基づいて、6つのトライアルが作成されます。

  2. [トライアル] タブでは、システムが生成したトライアルを表示できます。 また、各トライアルの実行ステータス、最終メトリック、ハイパーパラメータの組み合わせを表示することもできます。

    この例では、OptimizationパラメーターはMaximizeに設定されています。 したがって、最適なハイパーパラメータの組み合わせは、その最終メトリックが59089であるものである。 最適な組み合わせ: centerCount: 2、distanceType: cityblock。