# Apache Spark StreamingのtKMeansStrModelプロパティ

これらのプロパティは、Spark Streamingジョブのフレームワークで実行されているtKMeansStrModelを設定するために使われます。

Spark Streaming tKMeansStrModelコンポーネントは、機械学習ファミリーに属しています。

このコンポーネントは、Talend Real Time Big Data PlatformおよびTalend Data Fabricで利用できます。

## 基本設定

| [Save on disk] (ディスクに保存) | [Path] (パス)フィールドに入力したHDFSディレクトリーにクラスタリングモデルを保存するには、このチェックボックスをオンにします。<br><br>この場合、モデルが保存される最後の時間間隔(分単位)を入力する必要があります。<br><br>このチェックボックスをオフにすると、モデルはメモリに保管されます。 |
| --- | --- |
| Path (パス) | 特定のファイルシステムにモデルを保管する場合は、このチェックボックスを選択します。オフの場合、モデルはメモリに保管されます。参照用のボタンはSpark [Local] (ローカル)モードでは機能しません。Spark YarnまたはSpark [Standalone] (スタンドアロン)モードを使用している場合は、同じジョブ内のtHDFSConfigurationなどの設定コンポーネントで接続を適切に設定したことを確認する必要があります。<br><br>[Path] (パス)フィールドに、使うHDFSディレクトリーを入力します。<br><br>このフィールドは、ファイルシステムへのモデルの保存またはファイルシステムからのモデルの読み取りに使うチェックボックスをオンにすると利用できます。 |
| [Load a precomputed model from disk] (事前計算済みモデルをディスクからロード) | [Path] (パス)フィールドで指定したディレクトリーに保管されている既存のK-Meansモデルを使うには、このチェックボックスをオンにします。これはtKMeansStrModelを使う場合の一般的なケースです。この状況では以下の動作が予想されます。<br><br><ul> <li> <p><span>[Reuse the model transformation associated with the model] (モデルに関連付けられたモデル変換を再利用する)</span> チェックボックスをオンにすると、<span>tKMeansStrModel</span>は、使うこのモデルと共に、このモデルの作成中に以前に実装された機能前処理アルゴリズムを再利用します。この再利用により、<span>tKMeansStrModel</span>は、同じアルゴリズムの別の実装を待たずに、新しい入力データをK-Means準拠の特徴ベクトルに直接変換し、これらのベクトルを処理できます。</p> <p>ただし、このオプションを有効にして、これらの特徴前処理アルゴリズムによって変換されたデータのスキーマを確認し、<span>tKMeansStrModel</span>への新しい入力データが同じスキーマを使うことを確認する必要があります。 </p> <p>このスキーマは、これらの特徴前処理アルゴリズムを最初に実装したジョブで簡単に確認できます。</p> </li> <li> <p><span>[Reuse the model transformation associated with the model] (モデルに関連付けられたモデル変換を再利用する)</span> チェックボックスをオフにする場合は、1つまたは複数の<span>tModelEncoder</span>コンポーネントを<span>tKMeansStrModel</span>の前に配置して、受信データをK-Meansで必要な特徴ベクトルに変換する必要があります。表示される<span>[Vector to process] (処理するVector)</span>ドロップダウンリストから、これらの特徴ベクトルを提供するカラムを選択します。</p> <p><span>tModelEncoder</span>の詳細は、<a href="https://help.qlik.com/talend/ja-JP/components/7.3/machine-learning/tmodelencoder" target="_blank">tModelEncoder</a>をご覧ください。</p> </li> <li> <p>ロードするモデルが実際に存在しない場合、<span>tKMeansStrModel</span>は自動的に2つのクラスターを初期化してK-Meansモデルを作成します。</p> </li> </ul><br><br>この[Load a precomputed model from disk] (ディスクから事前計算済みモデルをロードする)チェックボックスをオフにすると、tKMeansStrModelは新しいK-Meansモデルを最初から作成します。 |
| [Vector to process] (処理するVector) | 特徴ベクトルを提供するために使う入力カラムを選択します。多くの場合、このカラムはtModelEncoderによって実行された機能エンジニアリング計算の出力です。<br><br>このリストは、[Load a precomputed model from disk] (ディスクから事前計算されたモデルをロードする)チェックボックスまたは[Reuse the model transformation associated with the model] (モデルに関連付けられたモデル変換を再利用する)チェックボックスをオフにした場合に表示されます。 |
| [Size of your feature vector] (特徴ベクトルのサイズ) | [Vector to process] (処理するベクトル)リストから選択したカラムから、処理する特徴ベクトルのサイズを入力します。 |
| [Display the vector size] (ベクトルサイズを表示する) | このチェックボックスをオンにすると、[Run] (実行)ビューのコンソールで使われる特徴ベクトルが表示されます。<br><br>この機能はジョブを遅くしますが、[Size of your feature vector] (特徴ベクトルのサイズ)フィールドに入力する値がわからない場合に役立ちます。 |
| [Number of clusters (K)] (クラスター数(K)) | tKMeansModelでデータをクラスター化するクラスターの数を入力します。<br><br>一般に、多数のクラスターを使うと予測のエラーを減らすことができますが、過剰適合のリスクが高くなります。<br><br>このフィールドは、K-Meansモデルを最初から作成するために[Load a precomputed model from disk] (ディスクから事前計算されたモデルを読み取る)チェックボックスをオフにした場合に表示されます。 |
| [Decay factor] (減衰ファクター) | 新しいクラスターの中心を評価するプロセスで、新しい着信ポイントに対して既存のポイントの重みを割り引くために適用される減衰率(0〜1の範囲)を入力します。<br><br>減衰率が低いほど、新しい受信データに付加する重要性が高くなります。減衰率が*0*の場合、新しいクラスターの中心は新しいポイントによって完全に決定されます。減衰率が*1*の場合、既存のポイントと新しい着信ポイントは同等に評価されます。 |
| 時間単位 | 減衰率を適用するユニットを選択します: ポイントまたはポイントのバッチ。 |

## 詳細設定

| [Display the centers after the processing] (処理後に中央を表示) | このチェックボックスをオンにすると、クラスターの中心のベクトルが[Run] (実行)ビューのコンソールに出力されます。<br><br>この機能は、K-Meansモデルのトレーニングプロセスでクラスターセンターがどのように移動するかを理解する必要がある場合に役立ちます。 |
| --- | --- |

## 使用方法

| **使用ルール** | このコンポーネントは、終了コンポーネントとして使用され、入力リンクを必要とします。 |
| --- | --- |
| [Model evaluation] (モデル評価) | 設定する必要があるパラメーターは自由パラメーターであるため、値は以前の実験や経験的推測などによって提供される場合があります。すべてのデータセットに適用できる最適値はありません。<br><br>したがって、最適な評価結果が得られるまで、さまざまなパラメーター値のセットを使って生成するリレーションシップモデルをトレーニングする必要があります。ただし、モデルをスコアでランク付けするためには自分で評価コードを記述する必要があります。 |