Scala SPARK:如何从LabeledPoint为决策树创建分类特征信息?

Scala SPARK:如何从LabeledPoint为决策树创建分类特征信息?,scala,apache-spark,random-forest,decision-tree,apache-spark-mllib,Scala,Apache Spark,Random Forest,Decision Tree,Apache Spark Mllib,我有一个标签点,我想运行一个决策树(以及后来的随机林) 使用代码: import org.apache.spark.mllib.tree.DecisionTree import org.apache.spark.mllib.tree.model.DecisionTreeModel import org.apache.spark.mllib.util.MLUtils import org.apache.spark.mllib.tree.impurity.Gini val numClasses =

我有一个
标签点
,我想运行一个决策树(以及后来的随机林)

使用代码:

import org.apache.spark.mllib.tree.DecisionTree
import org.apache.spark.mllib.tree.model.DecisionTreeModel
import org.apache.spark.mllib.util.MLUtils
import org.apache.spark.mllib.tree.impurity.Gini

val numClasses = 2
val categoricalFeaturesInfo = Map[Int, Int]() //change to what?
val impurity = "gini"
val maxDepth = 5
val maxBins = 32

val model = DecisionTree.trainClassifier(
  trainingData, numClasses, categoricalFeaturesInfo, impurity, maxDepth, maxBins)
在我的数据中,我有两种类型的特征:

  • 某些功能是用户访问给定网站/域的次数(功能是一个网站/域,其值是访问次数)

  • 其余的特性是一些声明性变量——二进制/分类变量

    有没有办法从
    标签点
    自动创建
    分类特征信息
    ?我想检查声明性变量(类型2)的级别,然后让这些信息创建
    categoricalFeaturesInfo

  • 我有一个包含声明性变量的列表:

    List(6363,21345,23455,...
    

    categoricalFeaturesInfo
    应该从索引映射到给定功能的多个类。一般来说,识别分类变量可能会很昂贵,特别是当这些变量与连续变量严重混合时。此外,根据您的数据,它可以给出假阳性和假阴性。记住,最好手动设置这些值

    如果仍要自动创建
    分类功能信息
    ,可以查看。它在这种情况下不直接适用,但应该提供一个有用的代码库来构建您自己的解决方案。

    检查我的答案!这可能会有帮助。
    List(6363,21345,23455,...