# カテゴリ エンコーディング

多くの機械学習アルゴリズムでは、変数が数値である必要があります。カテゴリ値は、同じ列内の他の値と比較して明確に測定できる関係にないため、最初に数値表現に変換して数学的に測定する必要があります。Qlik Predict は、カテゴリ エンコーディングを使用して、特徴量列のカテゴリ値を機械学習アルゴリズムが理解できる数値に変換します。

Qlik Predict では、インパクト エンコーディング、one-hot encoding、序数エンコーディングの 3 つのエンコーディング方式を使用します。特定の特徴量に使用される方法は、データの特性、一意のカテゴリ値の数、実験タイプに応じて異なります。

* 分類および回帰問題の場合:

  * 100 列以下のデータセットの場合:

    * 一意の値が 13 個以下のカテゴリ特徴量には、one-hot encoding が使用されます。

    * 一意の値が 14 個以上のカテゴリ特徴量には、impact encoding が使用されます。

  * 100 列を超えるデータセットの場合、すべてのカテゴリ列に impact encoding が使用されます。

* 時系列の問題の場合、カテゴリ列は序数エンコーディングを使用してエンコードされます。

ML 実験を構成するときにスキーマ ビューを参照することで、カテゴリ エンコーディングを使用してデータセットのどの特徴量が処理されているかを確認できます。詳細については、「[実験の構成](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/AutoML/configuring-experiments.htm)」を参照してください。

## カテゴリ エンコーディングの仕組み

カテゴリに数学的表現を与える一般的な手法として、one-hot encoding があります。one-hot encoding は、カテゴリ列を n 個の列にピボットします。ここで、n は列内の一意の値の数に等しくなります。各行の適切な列に数値の「1」が割り当てられ、カテゴリに生成された他の列に「0」が割り当てられます。カテゴリ エンコーディングを使用すると、列内の他の値に対して相対的に評価される数値とは異なり、一意の変数をそれぞれ個別に評価できます。

以下のテーブルでは、MarketingSource のカテゴリ列が one-hot encoding された例を示しています。 結果として、一意の MarketingSource ごとに 1 つずつ、合計 4 つの新しい列が作成されています。最初の行で、Person\_1 の MarketingSource は「Facebook」となっています。新しい Facebook 列には「1」、その他の列には「0」が表示されています。

MarketingSource 列のカテゴリ エンコーディング

MarketingSource 列のカテゴリ エンコーディング

MarketingSource 列のカテゴリ エンコーディング ![サンプル データを含むテーブル。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Resources/Images/AutomatedMachineLearning/categorical-encoding-table-1.png)

関連する学習コンテンツ：

* [Qlik Predict の概要](https://help.qlik.com/lnk/Introduction_Qlik_AutoML)

## 詳細を見る

* [Qlik Predict の概要](https://help.qlik.com/lnk/Introduction_Qlik_AutoML)