0

LogisticRegression合成的に生成されたデータでパフォーマンスをテストしています。入力として持っている重みは

   w = [2, 3, 4]

切片がなく、3 つの特徴があります。1000それぞれのランダムな正規分布を想定して合成的に生成されたデータポイントでトレーニングした後、LogisticRegression取得した Spark モデルの重みは次のとおりです。

 [6.005520656096823,9.35980263762698,12.203400879214152]

各重みが元の値に対して「3」に近い係数でスケーリングされていることがわかります。この背後にある理由を推測することはできません。コードは次のように単純です。

/*
 * Logistic Regression model
 */
 val lr = new LogisticRegression()
  .setMaxIter(50)
  .setRegParam(0.001)
  .setElasticNetParam(0.95)
  .setFitIntercept(false)

 val lrModel = lr.fit(trainingData)


 println(s"${lrModel.weights}")

誰かがここで怪しいものに光を当てることができれば幸いです.

敬具、ニキル

4

1 に答える 1

0

私は問題を理解しました: サンプラーが適切に機能しておらず、結果のデータが完全に決定論的だったため、完全な分離可能性の犠牲者でした。その結果、ロジスティック回帰はトレーニング データを過剰適合させました。

于 2015-11-18T02:47:10.240 に答える