連続データとバイナリデータを線形SVMと混合しますか?


15

だから私はSVMで遊んでいますが、これが良いことかどうか疑問に思います:

一連の連続フィーチャ(0〜1)と、ダミー変数に変換した一連のカテゴリフィーチャがあります。この特定のケースでは、測定の日付をダミー変数にエンコードします。

データを取得する期間は3つあり、3つの機能番号を予約しました。

20:21:22:

そのため、データの取得期間に応じて、異なる機能に1が割り当てられます。その他は0になります。

SVMはこれで適切に動作しますか、これは悪いことですか?

SVMLightと線形カーネルを使用します。


これは正常に機能します。
マーククレセン14年

これで十分です。私はここで少し詳細な答えを与えました-quora.com/Machine-Learning/…-テナリラマン14
1

@TenaliRamanは、実際に何かを読む前にログインが必要なサイトへのリンクを投稿しないでください。
マーククレセン14年

@MarcClaesen私は以下の答えを複製しました。
テナリラマン14年

回答:


8

SVMは、何らかの前処理を行う限り、バイナリ変数と連続変数の両方を処理します。すべての機能をスケーリングまたは正規化する必要があります。そのステップの後、アルゴリズムの観点からは、特徴が連続的かバイナリかは問題ではありません。バイナリの場合、「遠い」または非常に類似したサンプルを見ます。連続の場合、値の間にもあります。カーネルは、変数のタイプに関して重要ではありません。


1
そして、最高の正規化手法は何でしょうか?
シュロミシュワルツ

23

http://www.quora.com/Machine-Learning/What-are-good-ways-to-handle-discrete-and-continuous-inputs-together/answer/Arun-Iyer-1から回答を複製する

  • リスケールは、連続的な特徴を有界:囲まれているすべての連続入力、それらを再スケールを介して、X = 2 、X - 最大- 最小[1,1]x=2xmaxminmaxmin
  • すべての連続の機能を標準化:すべての連続入力が標準化されなければならない、これで私はすべての連続の機能のために、その平均値(計算し、平均値)と標準偏差(σ)とやるのx = X - μμσx=xμσ
  • カテゴリ/離散フィーチャを2値化する:すべてのカテゴリフィーチャについて、それらを複数のブールフィーチャとして表します。たとえば、married_statusと呼ばれる1つの機能の代わりに、3つのブール値機能-married_status_single、married_status_married、married_status_divorcedがあり、これらの機能を1または-1に適切に設定します。ご覧のとおり、すべてのカテゴリ機能に対して、kバイナリ機能を追加しています。ここで、kはカテゴリ機能がとる値の数です。

これで、埋め込まれていると想定できる単一のベクトルですべての機能を表現し、分類/回帰などに既製のパッケージを使用することができます。Rn

補遺:カーネルベースのメソッドを使用する場合、へのこの明示的な埋め込みを回避し、特徴ベクトルのカスタムカーネルの設計に集中できます。カーネルを複数のカーネルに分割し、MKLモデルを使用してそれらの重みを学習することもできます。ただし、ソルバーに問題がないように、カーネルの正の半正定性を確認することができます。ただし、カスタムカーネルを設計できるかどうかわからない場合は、以前の埋め込みアプローチに従うことができます。Rn


さて、この記事はカテゴリ機能に関して非常に興味深いものです。カテゴリ機能に対してワンホットエンコーディングが最良の選択であるとは言われていませんが、それは私が得ているものです。
displaynameは

1
これはすばらしい答えです。@ displaynameコメントのリンクを読んで、比較に役立ちます。記事から、バイナリエンコーディングが最適であり(この回答で説明されているものではなく)、非常にシンプルであるように見えます)リンクからコードを実行すると、そのバイナリ文字列の数字が別々の列に分割されます。これにより、ワンホットよりも少ない次元でデータがエンコードされますが、距離に多少の歪みが生じます。
シェルビーペレイラ

@displaynameで与えられた記事は良い記事ですが、額面通りに取るべきではありません。最初に覚えておくべきことは、ほとんどすべてのMLメソッドが類似度または距離のいずれかの尺度で機能することです。エンコード方法の選択は、2点間の距離または類似性の測定方法に直接影響します。1ホットエンコーディングは、1つのカテゴリのオブジェクトがそれ自体にのみ、または同等に類似していることを示し、すべてのカテゴリを互いに等距離に置きます。ただし、特定のカテゴリが他のカテゴリに近い場合があります。その場合、異なるエンコーディングが役立ちます。
テナリラマン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.