まず、スパーク1.6.0を使用します。フィーチャの選択には、pyspark.ml.regression.LinearRegressionModelでL1ペナルティを使用したいと思います。機能選択のためにpyspark.ml.regression.LinearRegressionModelでL1ペナルティを使用する方法?
しかし、関数を呼び出すときに、私は、詳細な係数を得ることができない:私はsklearn.linear_model.LogisticRegressionを使用するときながら
[0,0,0,0,0,..,-0.0871650387514,..,]
:
lr = LogisticRegression(elasticNetParam=1.0, regParam=0.01,maxIter=100,fitIntercept=False,standardization=False)
model = lr.fit(df_one_hot_train)
print model.coefficients.toArray().astype(float).tolist()
私だけのようなまばらなリストを取得しますモデルでは、coef_ listのようにゼロ値なしで詳細リストを得ることができます:
[0.03098372361467529,-0.13709075166114365,-0.15069548597557908,-0.017968044053830862]
sparkでのパフォーマンスが向上しているので、作業をすばやく完了できました。私は、機能の選択にL1ペナルティを使いたいと思う。
sklearnと同じように、私の特徴選択作業にもっと詳細な係数の値を使用する必要があると思いますが、どうすれば問題を解決できますか?