本文簡要介紹
pyspark.ml.classification.MultilayerPerceptronClassifier
的用法。用法:
class pyspark.ml.classification.MultilayerPerceptronClassifier(*, featuresCol='features', labelCol='label', predictionCol='prediction', maxIter=100, tol=1e-06, seed=None, layers=None, blockSize=128, stepSize=0.03, solver='l-bfgs', initialWeights=None, probabilityCol='probability', rawPredictionCol='rawPrediction')
基於多層感知器的分類器訓練器。每一層都有sigmoid激活函數,輸出層有softmax。輸入的數量必須等於特征向量的大小。輸出的數量必須等於標簽的總數。
版本 1.6.0 中的新函數。
例子:
>>> from pyspark.ml.linalg import Vectors >>> df = spark.createDataFrame([ ... (0.0, Vectors.dense([0.0, 0.0])), ... (1.0, Vectors.dense([0.0, 1.0])), ... (1.0, Vectors.dense([1.0, 0.0])), ... (0.0, Vectors.dense([1.0, 1.0]))], ["label", "features"]) >>> mlp = MultilayerPerceptronClassifier(layers=[2, 2, 2], seed=123) >>> mlp.setMaxIter(100) MultilayerPerceptronClassifier... >>> mlp.getMaxIter() 100 >>> mlp.getBlockSize() 128 >>> mlp.setBlockSize(1) MultilayerPerceptronClassifier... >>> mlp.getBlockSize() 1 >>> model = mlp.fit(df) >>> model.setFeaturesCol("features") MultilayerPerceptronClassificationModel... >>> model.getMaxIter() 100 >>> model.getLayers() [2, 2, 2] >>> model.weights.size 12 >>> testDF = spark.createDataFrame([ ... (Vectors.dense([1.0, 0.0]),), ... (Vectors.dense([0.0, 0.0]),)], ["features"]) >>> model.predict(testDF.head().features) 1.0 >>> model.predictRaw(testDF.head().features) DenseVector([-16.208, 16.344]) >>> model.predictProbability(testDF.head().features) DenseVector([0.0, 1.0]) >>> model.transform(testDF).select("features", "prediction").show() +---------+----------+ | features|prediction| +---------+----------+ |[1.0,0.0]| 1.0| |[0.0,0.0]| 0.0| +---------+----------+ ... >>> mlp_path = temp_path + "/mlp" >>> mlp.save(mlp_path) >>> mlp2 = MultilayerPerceptronClassifier.load(mlp_path) >>> mlp2.getBlockSize() 1 >>> model_path = temp_path + "/mlp_model" >>> model.save(model_path) >>> model2 = MultilayerPerceptronClassificationModel.load(model_path) >>> model.getLayers() == model2.getLayers() True >>> model.weights == model2.weights True >>> model.transform(testDF).take(1) == model2.transform(testDF).take(1) True >>> mlp2 = mlp2.setInitialWeights(list(range(0, 12))) >>> model3 = mlp2.fit(df) >>> model3.weights != model2.weights True >>> model3.getLayers() == model.getLayers() True
相關用法
- Python pyspark MultilabelClassificationEvaluator用法及代碼示例
- Python pyspark MultiIndex.size用法及代碼示例
- Python pyspark MultiIndex.hasnans用法及代碼示例
- Python pyspark MultiIndex.to_numpy用法及代碼示例
- Python pyspark MultiIndex.levshape用法及代碼示例
- Python pyspark MultiIndex.max用法及代碼示例
- Python pyspark MultiIndex.drop用法及代碼示例
- Python pyspark MultiIndex.min用法及代碼示例
- Python pyspark MultiIndex.unique用法及代碼示例
- Python pyspark MultiIndex.rename用法及代碼示例
- Python pyspark MultiIndex.value_counts用法及代碼示例
- Python pyspark MultiIndex.values用法及代碼示例
- Python pyspark MultiIndex.difference用法及代碼示例
- Python pyspark MultiIndex.sort_values用法及代碼示例
- Python pyspark MultiIndex.spark.transform用法及代碼示例
- Python pyspark MultiIndex.T用法及代碼示例
- Python pyspark MultiIndex用法及代碼示例
- Python pyspark MultiIndex.ndim用法及代碼示例
- Python pyspark MulticlassClassificationEvaluator用法及代碼示例
- Python pyspark MultiIndex.copy用法及代碼示例
- Python pyspark MultiIndex.to_frame用法及代碼示例
- Python pyspark MultiIndex.shape用法及代碼示例
- Python pyspark MultiIndex.equals用法及代碼示例
- Python pyspark MultiIndex.empty用法及代碼示例
- Python pyspark MultiIndex.to_series用法及代碼示例
注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.ml.classification.MultilayerPerceptronClassifier。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。