1つのホットベクトルを数値属性でスケーリングする必要があります


20

カテゴリ属性と数値属性の組み合わせを持つ場合、通常、カテゴリ属性を1つのホットベクトルに変換します。私の質問は、それらのベクトルをそのままにして、標準化/正規化を通じて数値属性をスケーリングするのですか、それとも数値属性とともに1つのホットベクトルをスケーリングするのですか?

回答:


11

一度数値形式に変換されると、モデルはワンホットエンコードされた列に対して他の数値データとは異なる反応をしません。そのため、何らかの理由で他の列を準備する場合、{0,1}値を正規化する明確な前例があります。

そうすることの効果は、モデルクラスと適用する正規化の種類によって異なりますが、ニューラルネットワークをトレーニングするときに、ワンホットエンコードされたカテゴリデータの平均0、標準1にスケーリングする場合、いくつかの(小さな)改善が見られました。

距離メトリックに基づくモデルクラスでも違いが生じる場合があります。

残念ながら、これらの種類の選択肢のほとんどと同様に、多くの場合、両方のアプローチを試して、最良のメトリックを持つアプローチを取る必要があります。


1
言葉遣いは少し不明瞭でした。ohe以外の列を正規化した場合、1つのホットエンコード列のみを正規化すると言いますか?
-Info5ek

@ Info5ek:ワンホットエンコードされた列を正規化する方が良いかもしれないと言っています。すでに他の列に対してそれを行っている場合は、試してみることもできます。これに対する決まったルールはありません。手元の問題に依存しすぎます。
ニールスレーター
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.