Работя върху churn
предвиждане (дали клиент се премести в друга компания) в телеком индустрията, използвайки decision tree
(supervised learning
). Имам набор от данни със следната структура (csv
данни):
number vmail messages,total call minutes,total number of calls,total call charge,number of customer service calls,churn
В тази последната колона (churn
) е колона със стойност true
или false
и служи като етикет. По време на тестване искам да предскажа стойностите за тази колона (като вярно-невярно или 0-1). Съмнението ми е как мога да обуча данните с помощта на алгоритъм Spark MLlibs
decision tree
? Преминавах през regression example
, даден в документацията и съм не мога да разбера къде предоставят labels
по време на фазата на обучение. Примерът има:
val categoricalFeaturesInfo = Map[Int, Int]()
val impurity = "variance"
val maxDepth = 5
val maxBins = 32
val model = DecisionTree.trainRegressor(trainingData, categoricalFeaturesInfo, impurity,
maxDepth, maxBins)
Тъй като това е контролирано обучение, не трябва ли да предоставяме и етикетите, когато обучаваме модела?
Как мога да обуча моя модел на моите данни с предоставяне на labels
и след това да тествам, за да предвидя labels
за тестовите данни?