我试图根据车辆识别号码(VIN)预测车辆的类型(模型)。VIN的前10个位置表示类型,因此我将它们用作变量。请看下面的数据示例:
positie_1_tm_3 positie_4 positie_5 positie_6 positie_7 positie_8 positie_9 positie_10 MODEL
MBL B 7 5 L 7 A 6 SKODA YETI
JNF A A E 1 1 U 2 NISSAN NOTE
VWZ Z Z 5 Z Z 9 4 VOLKSWAGEN FOX
F1D Z 0 V 0 6 4 2 RENAULT MEGANE
NAK U 8 1 1 C A 5 KIA SORENTO
F1B R 1 J 0 H 4 1 RENAULT CLIO
我用了这个R代码:
#make stratisfied train and test set:
library(caret)
train.index <- createDataPartition(VIN1$MODEL, p = .6, list = FALSE)
train <- VIN1[ train.index,]
overige_data <- VIN1[-train.index,]
test.index<-createDataPartition(overige_data$MODEL, p = .5, list = FALSE)
test<-overige_data[test.index,]
testset2<-overige_data[-test.index,]
#make decision three :
library(rpart)
library(rpart.plot)
library(rattle)
library(RColorBrewer)
tree<- rpart(MODEL ~., train, method="class")
但是最后一个,制作树,已经运行了两个多星期了。数据集大约有300万行,所以训练集大约有180万行。运行这么长时间是因为部分数据太多还是有其他问题?
不,很明显有问题。这可能需要很长时间,但不是两周。
问题-有多少标签(类)?当类的数量很大(这里的大是指超过50个)时,决策树往往很慢。