存在しない(欠落していない)データを処理する方法は?


11

分類器への入力として「存在しない」データを処理する方法について、良いテキストや例を実際に見つけたことはありません。欠落しているデータについてたくさん読んだことがありますが、多変量入力に関連して存在できない、または存在しないデータについて何ができるでしょうか。これは非常に複雑な質問であり、使用するトレーニング方法によって異なります...

たとえば、正確なデータを使用して複数のランナーのラップタイムを予測しようとする場合。多くの入力の中で、多くの中で可能な変数は次のとおりです。

  1. 入力変数-初回ランナー(Y / N)
  2. 入力変数-前回のラップタイム(0〜500秒)
  3. 入力変数-年齢
  4. 入力変数-高さ。。。より多くの入力変数など

&出力予測-予測ラップタイム(0〜500秒)

「2.Previous laptime」の「欠落変数」は、「1。初めてのランナー」は常にNに等しくなります。しかし、初めてのランナー(「1.初めてのランナー」= Y)の「非存在データ」の場合、「2。前のラップタイム '?

たとえば、 '2。-99または0としての以前のlaptime 'は、分布を劇的に歪め、新しいランナーがうまく機能しているように見せることができます。

私の現在のトレーニング方法は、ロジスティック回帰、SVM、NN&ディシジョンツリーを使用しています


固有の不確実性のために、トレーニングデータと予測データの両方から新しいランナーを破棄してきましたが、「無視」よりも優れた方法があれば
幸いです

回答:


6

存在しない初回ランナーの前回のラップタイムに特別な値を割り当てる代わりに、初回ランナーのダミーの逆で前回のラップタイムの相互作用項を使用するだけです:

Yi=β0+β1FTRi+β2(NFTRi)×PLTi+...

ここに

  • Yiは入力変数です。
  • ...あなたの他の変数です、
  • FTRiは初めてのランナーではダミーですが、
  • PLTiは前回のラップタイムであり、
  • NFTRiは、場合、1以外の最初のタイムランナーではダミーで、それ以外の場合は0です。FTRi=0

次に、初めてのランナーのモデルは次のようになります。

Yi=(β0+β1)+...

初めてのランナーの場合:

Yi=β0+β2PLTi+...

8

(1)と(2)の両方がモデルにある限り、最尤法で近似されたロジスティック回帰の場合、(2)の新しいランナーにどの「デフォルト」値を与えても、(1)の推定値それに応じて調整されます。

たとえば、を「新しいランナーである」のインジケーター変数、「秒単位の前回のラップタイム」という変数とします。次に、線形予測子は次のとおりです。X1X2

η=α+β1X1+β2X2+

のデフォルトがゼロの場合、新しいランナーの線形予測子は次のようになります。X2

η=α+β1+

一方、既存のランナーの場合は次のようになります。

η=α+β2X2+

ここで、のデフォルトを0から-99に変更するとします。次に、新しいランナーの線形予測子は次のようになります。X2

η=α+β199β2+

ただし、既存のランナーの場合は同じままです。したがって、ようにモデルを再パラメーター化するで、最大尤度はパラメーター化不変なので、推定値はそれに応じて調整されます。β199β2=β1

もちろん、最大尤度を使用していない場合(つまり、ある種のペナルティを使用している場合や、パラメータに事前に使用している場合)、ペナルティ/優先度を適切に調整しない限り、異なる値が得られます。また、モデルが非線形の場合(SVM、NN、ディシジョンツリーなど)、この引数はまったく機能しません。

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