多类分类,使用 Spark 在 Scala 中更好地显示原始预测
Multiclass classification, show raw predictions better in Scala with Spark
使用 Iris 数据集(LogisticRegressionWithLBFGS(),多类分类)。
我将我的数据提取到一个 rdd 中,转换为一个 Dataframe,并对其进行了一些整理。在 Iris plant class/label 字段上创建了标签索引。创建了其他字段的特征向量。
获取数据帧的这两个字段并转换为标签点 rdd 实例,我可以在其中将数据输入 LogisticRegressionWithLBFGS()。
这是一些预测代码:
val model = new LogisticRegressionWithLBFGS()
.setNumClasses(10)
.setIntercept(true)
.setValidateData(true)
.run(training)
分数和标签:
val scoreAndLabels_ofTrain = training.map {
point =>
val score = model.predict(point.features)
(score, point.label)
}
我想看预测
scoreAndLabels_ofTrain.take(200).foreach(println)
唯一的问题是,我几乎从一本书中得到了这个例子。
我很希望看到一个数据集,它显示了特征列、预测数字是多少、它给出的概率分数等等
如果我想查看它们代表的字符串数据,我想我需要对 labelindex 进行转换。
如何获得更美观、尽可能接近原始数据集的表格数据,并对其进行预测?
我想我在某个地方漏掉了一个把戏。
上面的输出如下:
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
...
这到底是什么意思?不确定如何 read/interpret 数据
对于第一行,它是说,它预测“2.0”,而实际标签是“2.0”?
我理解的对吗?
是的,当您将地图应用于输入数据集并使每个元素的预测。但是,您正在使用 mlib LR 实现。您可以直接使用 Dataframe 实现。看看 example. The fit function optimizes the model and return a LogisticRagressionModel。将转换方法应用于您的输入 Dataframe,将添加一个包含预测的新列。
使用 Iris 数据集(LogisticRegressionWithLBFGS(),多类分类)。 我将我的数据提取到一个 rdd 中,转换为一个 Dataframe,并对其进行了一些整理。在 Iris plant class/label 字段上创建了标签索引。创建了其他字段的特征向量。 获取数据帧的这两个字段并转换为标签点 rdd 实例,我可以在其中将数据输入 LogisticRegressionWithLBFGS()。
这是一些预测代码:
val model = new LogisticRegressionWithLBFGS()
.setNumClasses(10)
.setIntercept(true)
.setValidateData(true)
.run(training)
分数和标签:
val scoreAndLabels_ofTrain = training.map {
point =>
val score = model.predict(point.features)
(score, point.label)
}
我想看预测
scoreAndLabels_ofTrain.take(200).foreach(println)
唯一的问题是,我几乎从一本书中得到了这个例子。 我很希望看到一个数据集,它显示了特征列、预测数字是多少、它给出的概率分数等等 如果我想查看它们代表的字符串数据,我想我需要对 labelindex 进行转换。
如何获得更美观、尽可能接近原始数据集的表格数据,并对其进行预测? 我想我在某个地方漏掉了一个把戏。
上面的输出如下:
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
(2.0,2.0)
...
这到底是什么意思?不确定如何 read/interpret 数据 对于第一行,它是说,它预测“2.0”,而实际标签是“2.0”? 我理解的对吗?
是的,当您将地图应用于输入数据集并使每个元素的预测。但是,您正在使用 mlib LR 实现。您可以直接使用 Dataframe 实现。看看 example. The fit function optimizes the model and return a LogisticRagressionModel。将转换方法应用于您的输入 Dataframe,将添加一个包含预测的新列。