2013-03-18 8 views
7

は、あなたが特定の機能に基づいて家を分類しようとしていると言う: 可変長の特徴ベクトルの扱い方は?

しかし、すべての家がガレージを持っている部屋の

  • 総面積
  • ガレージエリア。しかし、彼らがそうするとき、彼らの総面積は非常に差別的な特徴になります。この機能に含まれる情報を活用するための良いアプローチは何ですか?

答えて

5

あなたがガレージ、ならびにダミー付きガレージエリアのクロス積は(NOガレージ付き住宅用、ゼロに領域を設定)があるか否かを示すゼロ/つのダミー変数を組み込むことができます。

+2

ガレージ領域をゼロに設定している場合、ダミー変数が何か変更されることはありません。存在しないガレージの領域を0に設定することでわかる問題は、非常に小さいガレージに似ていると見なされることです。不正確です。 – jessems

+0

@ ty4:これは、ダミーが入る場所です。例えば、線形モデルに適合させる場合、ダミーのおかげで、ガレージの有無にかかわらず、別の盗聴を得ることになります。第二の考えでは、おそらくクロスプロダクトは必要ありません。 – NPE

1

ベストプラクティスは、すべての機能を備えたデータセットを構築することです。ほとんどの場合、使用できない列はゼロで埋めても問題ありません。

Total area Number of rooms Garage area 
100   2    0 
300   2    5 
125   1    1.5 

多くの場合、あなたが選択した学習アルゴリズムが適切にそのエントリを分類するために、これらのゼロを使用するのに十分強力で次のようになります。

あなたの例を使用して、それはのようなものになるでしょう。結局のところ、値の不在はアルゴリズムの情報です。データが歪曲している場合、これは問題になる可能性がありますが、その場合は歪度に対処する必要があります。

EDIT:

私はちょうどあなたが小さなガレージと混同される可能性が事実を考えると、ゼロを使用することを恐れているのコメントを持つ別の答えがあった実現。私はまだそれに問題は見られませんが(小さいガレージとゼロの間に十分な差があるはずです)、負の数(-1としましょう)の存在しないエリアガレージをマークする同じ構造を引き続き使用できます。

他の回答で示された解決策は、家は(特別に決定木に基づくアルゴリズムで)正常に動作しますガレージを持っているか否かを示す余分な機能を持つ、あまりにも完全にもっともらしいです。私は、データの次元性を可能な限り低く保つことを好むだけですが、最終的には技術的な決定よりも優先されます。

0

ゼロインジケータ機能を組み込むことをお勧めします。つまり、ガレージサイズが0の場合は1、それ以外の場合は0です。

あなたの特徴ベクトルは次のようになります: area | num_rooms | garage_size | garage_exists

あなたの機械学習アルゴリズムはガレージサイズのこの(非線形)特徴を見ることができます。

関連する問題