Skip to content

アプリケーション内で をクリックすると、お使いのDataRobotバージョンに関する全プラットフォームドキュメントにアクセスできます。

クラスタリング

教師なし学習の応用であるクラスタリングによって、セグメントをグループ化して識別することでデータを探索できます。クラスタリングを使用して、多くの種類のデータ(数値、カテゴリー、テキスト、画像、および地理空間データ)から生成されたクラスターを単独でまたは組み合わせて探索します。クラスタリングモードでは、DataRobotは、データセット内で列という形で明示的に捉えられていない潜在的な挙動を捕捉します。

クラスタリングを使用する理由

クラスタリングは、データに明示的なラベルが付いておらず、データがどういった形であるかを判断する必要がある場合に有用です。ターゲットを必要としないため、どんなデータセットでもアップロードしてデータを理解することができます。クラスタリングの例には次のようなものが考えられます:

  • テキストコレクションにおける、トピック、タイプ、分類、および言語の検出。クラスタリングは、テキスト特徴量と他の特徴量の型が混在するデータセットにも、トピックモデリングのための単一のテキスト特徴量にも適用できます。

  • 予測マーケティングキャンペーンを実行する前の、カスタマーベースのセグメント化。顧客の主要グループを識別し、各グループにさまざまなメッセージを送信します。

  • 画像のコレクションにおいて潜在的なカテゴリーを把握します。

  • より包括的なパイプラインでのステップとして、MLOpsを用いたクラスタリングモデルを導入し、大規模なクラスター割り当て要求に対応します。

クラスタリングモデルの構築

クラスタリングワークフローは異常検知ワークフロー、および教師なしの学習アプリケーションに類似しています。クラスタリングモデルを構築するには、次の操作を行います:

  1. データをアップロードして、ターゲットなし?をクリックしクラスターを選択します。

    モデリングモードのデフォルトは [包括的] で、最適化指標のデフォルトは [シルエットスコア] です。

    シルエットスコアの説明

    シルエット係数とも呼ばれるシルエットスコアは、クラスタリングモデルの比較に使用される指標です。平均クラスター内距離(クラスター内の各ポイントの平均距離)と平均最近傍クラスター距離(クラスター間の平均距離)を使って計算します。つまり、クラスター間の距離を考慮しながらも、各クラスター内の分布も考慮するということです。クラスターが凝縮された場合、インスタンス(ポイント)には高い類似性があります。シルエットスコアの範囲は-1~+1です。+1に近いほど、クラスターが離れているということです。

  2. 開始をクリックします。

    DataRobotは、データセットサイズのデフォルトクラスター数に基づいてクラスタリングモデルを生成します。クラスター数を設定することもできます。クラスタリングの場合、DataRobotは元のデータセットをホールドアウトパーティーティションなしでトレーニングと検定パーティションに分割します。

    モデリングが完了すると、リーダーボードにはシルエットスコアによってランク付けされた生成済みのクラスタリングモデルが表示されます。

    クラスター列には、クラスタリングアルゴリズムで使用されたクラスター数を示します。

  3. 調査するモデルを選択します。

    デフォルトでは、説明 > ブループリントタブが表示されます。

  4. ビジュアライゼーションを分析して、クラスタリングモデルを選択します。

  5. クラスタリングモデルを評価して選択した後、モデルをデプロイして、他のモデルと同様に既存または新規データを予測を作成します。リーダーボードまたはデプロイから予測を行うことができます。

クラスタリングブループリントのサンプル

次に挙げるのは、マルチモーダルデータセットのクラスタリングブループリントの例です。

ブループリントノードをクリックして、アルゴリズムでのドキュメントにアクセスするか、変換します。この例では、K-平均クラスタリングノードについての詳細を示しています。

このデータセットには、カテゴリー、地理空間の位置、数値、画像、テキストの各特徴量が含まれます。クラスタリングアルゴリズムが特徴量タイプの再処理と次元削減後に適用され、処理速度を改善します。

クラスターの探索のビジュアライゼーション

次のビジュアライゼーションツールはクラスタリングプロジェクトに有用です:

クラスターインサイト

クラスターインサイトのビジュアライゼーション(解釈 > クラスターインサイト)は、モデリング中に生成されたクラスターを調査するのに役立ちます。

各クラスターの特徴量値を比較して、グループ化の解釈を取得します。

画像埋め込み

データセットに画像が含まれる場合は、画像埋め込みビジュアライゼーション(解釈 > 画像埋め込み)を使用して、各クラスターからの画像がどのように並べ替えられるかを確認します。

クラスタリングモデルの場合、各画像のフレームは、画像を含むクラスターを表す色で表示されます。画像にカーソルを合わせて、画像が各クラスターに所属する確率を表示します。

アクティベーションマップ

アクティベーションマップでは、予測決定を行う(この場合はデータをクラスタリングする最良の方法)際にモデルが使用している画像領域を確認できます。画像上にカーソルを合わせると、画像が割り当てられている先のクラスターを確認できます。

備考

教師なしプロジェクトでは、デフォルトの画像前処理に詳細な特徴量化が用いられますが、教師ありプロジェクトではマルチレベルの特徴量化が使われます。詳細については、粒度を参照してください。Visual Artificial Intelligence (AI) リファレンスも参照してください。

特徴量のインパクト

特徴量のインパクトツール(解釈 > 特徴量のインパクト)を使用して、クラスタリング結果に最も影響力のある特徴量を確認します。

特徴量のインパクトはクラスタリングプロジェクトに対してどのように計算されますか?

教師ありプロジェクトと同様、DataRobotは各特徴量の順序を変更し、RSME指標に基づいてどの程度予測が変化するかを確認します。変化が大きいほど、特徴量のインパクトは大きくなります。

特徴量の関連性

クラスタリングは計算コストが高くなる可能性があるので、特徴量の関連性ツール(データ > 特徴量の関連性)を使用して、削除可能な冗長な特徴量がないかどうかを判断します。

この例の場合、year_builtsold_dateが相関性の高い特徴量を派生させるため、クラスタリングアルゴリズムに役立つ可能性があります。その場合、特徴量を削除してからクラスタリングを再実行することができます。

備考

クラスタリングプロジェクト(または教師なし学習プロジェクト)の特徴量の関連付けを生成するには、DataRobotは最初の50の特徴量をアルファベット順に使用します。ACEスコアが特徴量の選択に使用される教師ありの学習とは異なり、教師なしのプロジェクトはターゲットを使用せず、ACEスコアを計算できません。

クラスターの数を設定する

一部のクラスタリングアルゴリズム(K平均法、Gaussian混合モデル)では、モデリングの前に一定のクラスター数が必要です。その他(HDBSCAN—Hierarchical Density-Based Spatial Clustering of Applications with Noiseなど)は、動的にクラスターの有効数を検出します。これらのクラスタリングアルゴリズムの詳細については、ブループリントを参照してください。

クラスターの数はどのように決定しますか?

クラスター数を検出するには、異なるクラスター数を使用するモデルをテストして、クラスターの分布を確認します。場合によっては、分布を均衡させる方が良いかもしれません。その他の場合、より小さい、微細なクラスターの方が良いでしょう。例えば、顧客セグメント化の場合、小さいクラスターはより顧客の小さいクラスターを効率的にターゲットとできるため、より操作しやすいかもしれません。

次のセクションでは、クラスター数の設定方法について説明しています:

高度なオプションでクラスター数を設定する

クラスタリング実行を開始する前、DataRobotで使用するクラスター数をカスタマイズできます:

  1. データをアップロードしてクラスタリングモードを設定した後、高度なオプションを表示をクリックします。表示される高度なオプションセクションで、左側のクラスタリングをクリックします。

  2. クラスター数フィールドに1つ以上の数値を入力します。最大10の数値を入力することができます。入力する各数値ごとに、DataRobotは固定数のクラスターの設定をサポートする各アルゴリズムの1つのモデルをトレーニングします(K平均法またはGaussian混合モデルなど)。

クラスター数を更新してモデルを再実行する

異なるクラスター数でモデルを再実行するには:

  1. モデルのクラスター列で+アイコンをクリックします。

  2. 実行に使用するクラスター数を入力します。

クラスター数を更新して、すべてのモデルを再実行する

クラスター数を更新してすべてのモデルを再実行するには:

  1. 右のワーカーペインでモデリングの再実行をクリックします。

  2. クラスタリングアルゴリズムで使用するクラスター数を更新して、再実行をクリックします。

    この例では、DataRobotは7、10、12、および15クラスターを使用してクラスターアルゴリズムを実行します。


更新しました May 19, 2022
Back to top