カテゴリーデータと連続データを使用した機械学習


9

この質問は、ここか、そうかもしれません...

トレーニングデータセットに、次のようなカテゴリデータと連続データの両方が含まれているとします。

 Animal, breed,  sex, age, weight, blood_pressure, annual_cost
 cat,    calico, M,   10,  15    ,   100         , 100 
 cat,    tabby,  F,   5,   10    ,   80          , 200
 dog,    beagle, M,   3,   30    ,   90          , 200
 dog,    lab,    F,   8,   75    ,   80          , 100

そして、予測される従属変数は、年間の獣医費用です。そのようなデータセットを処理するために利用できる特定の手法について、私は少し混乱しています。連続データとカテゴリデータの両方が混在するデータセットを処理するために一般的に使用される方法は何ですか?

回答:


8

カテゴリー属性の各クラス(品種、性別...)について、そのクラスで可能な値の数と同じ数のコンポーネントを特徴ベクトルに追加できます。次に、データポイントにi番目の値がある場合、それらのコンポーネントのi番目の要素を1に設定し、その属性の残りの要素を0に設定します。

この例では、性別の場合、2つの新しいコンポーネントを特徴ベクトルに追加します。動物が男性の場合、最初の動物を1に設定し、2番目の動物を0に設定します。動物が女性の場合は、逆も同様です。動物の場合、可能性が猫、犬、魚であれば、3つのコンポーネントで同じことを行います。

これらは、継続的な属性と並んで共存します。ただし、「インジケーター値」(属性が「オン」のときに使用する値)の大きさを調整して、使用している連続値の大きさに匹敵するようにすることもできます。

この問題に対処する方法を選択した場合、次のステップは、サポートベクターマシンなどのアルゴリズムを選択して、特徴ベクトルにフィードすることです。もちろん、Decision Treesのようないくつかのアプローチでは、最初に上記のステップを必要としません。


1
クールで素晴らしいヒント!品種がトレーニングデータで登場しなかったテストデータの状況についてはどうですか?たとえば、テストデータにプードルが含まれていて、トレーニングデータが含まれていない場合はどうでしょうか。最善の方法は、品種ベクトルのすべてのコンポーネントにゼロがあることでしょうか?
reptilicus 2013年

2
実際、通常、反対のアプローチ(データの離散化として知られています)は、階層的な方法(決定木アルゴリズムなど)に最適です。データの離散化もデータの前処理手法です(他の回答で述べたとおり)。
rvcoutinho 2013年

2

あなたは見てとるべきデータの前処理を。これは、機械学習技術の前にあります。これは良い紹介です(Googleで見つかります)。

テクニックに関しては、多くの異なるアプローチがあります。データの前処理を行った後、それらのほとんどを使用できます。あなたはそれらを試して、あなたのニーズに最も合うものを選ぶべきです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.