【发布时间】:2018-11-30 20:03:06
【问题描述】:
我正在将我的 sklearn 代码转换为 pyspark,我能够在链接的帮助下做到这一点。
https://towardsdatascience.com/multi-class-text-classification-with-pyspark-7d78d022ed35
现在我很难调用预测方法。在使用的sklearn中,下面的代码返回multicast算法的值
predictions = p.predict_proba (['My text 1', 'My text 2'))
totalItens = predictions.shape[0]
for i in range(0, totalItens):
print('PROD:->')
print(sorted(zip(p.classes_, predictions[i]), key=lambda x:x[1] , reverse=True))
pyspark应该怎么做?
代码 PySpark
from pyspark.ml.feature import HashingTF, IDF
hashingTF = HashingTF(inputCol="filtered", outputCol="rawFeatures", numFeatures=10000)
idf = IDF(inputCol="rawFeatures", outputCol="features", minDocFreq=5) #minDocFreq: remove sparse terms
pipeline = Pipeline(stages=[regexTokenizer, stopwordsRemover, hashingTF, idf, label_stringIdx])
pipelineFit = pipeline.fit(data)
dataset = pipelineFit.transform(data)
这里删除 80/20
#(trainingData, testData) = dataset.randomSplit([0.8, 0.2], seed = 100)
trainingData = dataset
#testData = datasetTrain
lr = LogisticRegression(maxIter=20, regParam=0.3, elasticNetParam=0)
lrModel = lr.fit(trainingData)
#predictions = lrModel.transform(testData)
【问题讨论】:
-
如果答案解决了您的问题,请接受,否则请留下反馈 - 谢谢
标签: python machine-learning pyspark apache-spark-ml