【ダミー変数とは】One-Hotエンコーディングとの違い、作り方

ダミー変数とは?One-Hotエンコーディングとの違い、作り方についてまとめました。

スポンサーリンク

【ダミー変数とは】One-Hotエンコーディングとの違い

ダミー変数とは、カテゴリ変数(数値ではない定性データ)を数字(「0」と「1」だけの数列)に変換する手法です。
機械学習は、数字などの量的データで計算を行うので、カテゴリ変数(定性データ)を扱う場合は、それをダミー変数に変換し、数値化してやる必要があります。

One-Hotとは、「1つだけ1でそれ以外は0のベクトル(行列)」のことです。
One-Hotエンコーディングも、カテゴリー変数をOne-Hotのベクトル(行列)に変換するので、やっていることはダミー変数とほとんど同じです(カテゴリー変数を0,1の変数に変換し、学習器が学習しやすい形に変換)。

統計学の分野ではダミー変数、機械学習の分野ではOne-Hotエンコーディングと呼ばれる事が多いです。

スポンサーリンク

【ダミー変数の作り方】2分類の場合

2分類のダミー変数を作成する場合、どちらか一方を「0」、もう片方を「1」と変換してデータを作ります。

「はい→1、いいえ→0」、 「男→1、女→0」など

スポンサーリンク

【One-Hotエンコーディング】多分類の場合

One-Hotとは、「1つだけ1でそれ以外は0のベクトル(行列)」のことです。
One-Hotエンコーディングも、カテゴリー変数をOne-Hotのベクトル(行列)に変換することです。

【例】10分類の場合

カテゴリ変数 One-Hot
[1,0,0,0,0,0,0,0,0,0]
1 [0,1,0,0,0,0,0,0,0,0]
2 [0,0,1,0,0,0,0,0,0,0]
3 [0,0,0,1,0,0,0,0,0,0]
4 [0,0,0,0,1,0,0,0,0,0]
5 [0,0,0,0,0,1,0,0,0,0]
6 [0,0,0,0,0,0,1,0,0,0]
7 [0,0,0,0,0,0,0,1,0,0]
8 [0,0,0,0,0,0,0,0,1,0]
9 [0,0,0,0,0,0,0,0,0,1]
Python
スポンサーリンク

コメント