私はまだSpark 1.6を使用しており、今後のデータセットで保存して再利用したいStandardScalarを訓練しています。後でScalaで使用するためにSpark StandardScalerを保存します
the supplied examplesを使用するとデータを正常に変換できましたが、訓練された正規化器を保存する方法が見つかりませんでした。
訓練された正規化器を保存する方法はありますか?
私はまだSpark 1.6を使用しており、今後のデータセットで保存して再利用したいStandardScalarを訓練しています。後でScalaで使用するためにSpark StandardScalerを保存します
the supplied examplesを使用するとデータを正常に変換できましたが、訓練された正規化器を保存する方法が見つかりませんでした。
訓練された正規化器を保存する方法はありますか?
あなたがscalerModel
を作成したと仮定すると:それはモデルではないだからだ
import org.apache.spark.ml.feature.StandardScalerModel
scalerModel.write.save("path/folder/")
val scalerModel = StandardScalerModel.load("path/folder/")
標準スケーラモデルクラスは、保存メソッドを持っています。 API Docs
例えば:StandardScalerにフィットメソッドを呼び出した後、返されたオブジェクトは、StandardScalerModelです
import org.apache.spark.ml.feature.StandardScaler
import org.apache.spark.ml.PipelineModel
val dataFrame = spark.read.format("libsvm").load("data/mllib/sample_libsvm_data.txt")
val scaler = new StandardScaler()
.setInputCol("features")
.setOutputCol("scaledFeatures")
.setWithStd(true)
.setWithMean(false)
// Compute summary statistics by fitting the StandardScaler.
val scalerModel = scaler.fit(dataFrame)
scalerModel.write.overwrite().save("/path/to/the/file")
val sameModel = PipelineModel.load("/path/to/the/file")
供給の例のように。これは標準化されたデータなので、実際にそのままデータを保存するだけです。 – eliasah
おかげでeliasah。しかし、私が同意するかどうかわからない、正規化には、標準化変換を可能にする手段と標準偏差の配列が含まれているべきである。だから基本的に私はこれらの方法を探していて、新しいデータセットに適用します。 ml(およびmlibではない)パッケージには保存機能があります。 –