【发布时间】:2018-07-14 05:07:08
【问题描述】:
我有这个dataset,我正在使用 SKlearn 生成如下随机森林模型:
from sklearn.ensemble import RandomForestClassifier as RandomForest
from sklearn.cross_validation import cross_val_score, cross_val_predict
import pandas as pd
import numpy as np
df = pd.read_csv('trainingSetExample.csv')
X_train = df.iloc[:, df.columns != 'label']
y_train = df.ix[:]['label']
clf = RandomForest()
print np.mean(cross_val_score(clf, X_train, y_train, cv=10))
print 'precision', np.mean(cross_val_score(clf, X_train, y_train, cv=10, scoring='precision_macro'))
准确率和精度都是 0.99,但是当我使用 WEKA 随机森林时,准确率和精度都是 0.95。看起来两者的参数默认值是一样的,另外,我尝试了 WEKA 的 10000 次迭代而不是 100 次,但并没有改善。
为什么结果如此不同?
【问题讨论】:
-
你也应该贴出Weka的完整代码以及两者使用的数据。
标签: python machine-learning scikit-learn weka random-forest