我正在使用 sklearn 在 python 中处理文本分类问题。我创建了模型并将其保存在 pickle 。
中以下是我在sklearn中使用的代码。
vectorizerPipe = Pipeline([('tfidf', TfidfVectorizer(lowercase=True,
stop_words='english')),
('classification', OneVsRestClassifier(LinearSVC(penalty='l2', loss='hinge'))),])
prd=vectorizerPipe.fit(features_used,labels_used])
f = open(file_path, 'wb')
pickle.dump(prd, f)
有没有办法使用这个相同的pickle来获取基于DataFrame的apache spark而不是基于RDD的输出。我已经阅读了以下文章,但没有找到合适的实施方式。
what-is-the-recommended-way-to-distribute-a-scikit-learn-classifier-in-spark
how-to-do-prediction-with-sklearn-model-inside-spark - >我在StackOverflow上找到了这两个问题并发现它很有用。
deploy-a-python-model-more-efficiently-over-spark
我是机器学习的初学者。所以,原谅我,如果解释是天真的。任何相关的示例或实现都会有所帮助。
答案 0 :(得分:0)
RDD->使用Spark的Spark数据帧
喜欢:
import spark.implicits._
val testDF = rdd.map {line=>
(line._1,line._2)
}.toDF("col1","col2")