【问题标题】:Spark Multiclass Classification using python使用 python 的 Spark 多类分类
【发布时间】:2017-07-16 05:25:35
【问题描述】:
我正在尝试使用 pySpark 实现多类分类,我花了很多时间搜索网络,并且我读到现在可以使用 Spark 2.1.0。
我已经生成了自己的具有全数字特征的数据集,并创建了如下所示的 DataFrame;
我有三个类“Service_Level”,它们是 0、1 或 2。
问题:
- 如果我有这些功能,我是否必须使用 LabeledPoints?
- 如何使用多层感知器代替逻辑回归?
谢谢。
【问题讨论】:
标签:
python
apache-spark
pyspark
multiclass-classification
【解决方案1】:
由于没有答案,我将分享我在研究过程中观察到的情况。在 Spark 2.1.0 中使用 Spark MLlib 现在处于维护模式时,使用 Labeled Points 是可以的。但是,我的特征是分类的,因此使用带有 Spark ML 的 DataFrame API,我必须使用 StringIndexer、OneHotEncoder 和 Pipelines 将它们转换为向量来选择我的特征和标签。
回答问题
是的,标记点可以与这些功能一起使用,但在使用 Spark MLlib 时。我无法实现多层感知器,因为不知何故它需要libsvm 格式化数据,而我没有也无法将我的 CSV 转换成这样的数据。
在最终的实现中,我不得不使用基于 Dataframe 的 API Spark ml