题目:


题目大意是这样的:生成一个数据集合,并且使用三种机器学习算法进行训练,并且根据训练结果使用三种方法评估三种算法的性能
步骤1:生成数据集合
使用make_classification函数生成一个数据集
dataset = datasets.make_classification(n_samples=1000, n_features=10)
步骤2.使用10-fold cross validdation对数据集合进行划分
kf = cross_validation.KFold(1000, n_folds=10, shuffle=True)
for train_index, test_index in kf:
X_train, y_train = dataset[0][train_index], dataset[1][train_index]
X_test, y_test = dataset[0][test_index], dataset[1][test_index]
1.高斯NB
\\
GaussianNB_clf = GaussianNB()
GaussianNB_clf.fit(X_train, y_train)
GaussianNB_pred = GaussianNB_clf.predict(X_test)
2.SVM
SVC_clf = SVC(C=1e-01, kernel='rbf', gamma=0.1)
SVC_clf.fit(X_train, y_train)
SVC_pred = SVC_clf.predict(X_test)
3.随机森林
Random_Forest_clf = RandomForestClassifier(n_estimators=6)
Random_Forest_clf.fit(X_train, y_train)
Random_Forest_pred = Random_Forest_clf.predict(X_test)
步骤4:对性能进行评价
分别使用accuracy_score,fi_score,roc_auc_score得到准确度

可以看到综合来看随机树的效果是最好的
本文通过生成的数据集,对比了高斯朴素贝叶斯、支持向量机与随机森林三种机器学习算法的性能。采用10折交叉验证进行数据划分,并利用accuracy_score、f1_score及roc_auc_score等指标进行了综合评估。
311

被折叠的 条评论
为什么被折叠?



