打印随机森林模型
2018-08-15 19:00
316 查看
import numpy as np import pandas as pd from sklearn.ensemble import RandomForestClassifier from sklearn import tree import pydot from sklearn.externals.six import StringIO from IPython.display import Image import pydotplus train = pd.read_csv("train2.csv", dtype={"Age": np.float64},) print train.head(10) def harmonize_data(titanic): titanic["Age"] = titanic["Age"].fillna(titanic["Age"].median()) titanic.loc[titanic["Sex"] == "male", "Sex"] = 0 titanic.loc[titanic["Sex"] == "female", "Sex"] = 1 titanic["Embarked"] = titanic["Embarked"].fillna("S") titanic.loc[titanic["Embarked"] == "S", "Embarked"] = 0 titanic.loc[titanic["Embarked"] == "C", "Embarked"] = 1 titanic.loc[titanic["Embarked"] == "Q", "Embarked"] = 2 titanic["Fare"] = titanic["Fare"].fillna(titanic["Fare"].median()) return titanic harmonize_data(train) print "ok" predictors = ["Pclass", "Sex", "Age", "SibSp", "Parch", "Fare", "Embarked"] results = [] sample_leaf_options = list(range(1, 500, 3)) n_estimators_options = list(range(1, 1000, 5)) groud_truth = train['Survived'][601:] alg = RandomForestClassifier(min_samples_leaf=50, n_estimators=5, random_state=50) alg.fit(train[predictors][:600], train['Survived'][:600]) predict = alg.predict(train[predictors][601:]) #print groud_truth == predict results.append((50, 5, (groud_truth == predict).mean())) #print((groud_truth == predict).mean()) print(results) Estimators = alg.estimators_ for index, model in enumerate(Estimators): filename = 'iris_' + str(index) + '.pdf' dot_data = tree.export_graphviz(model , out_file=None, feature_names=predictors, class_names=["die","live"], filled=True, rounded=True, special_characters=True) graph = pydotplus.graph_from_dot_data(dot_data) Image(graph.create_png()) graph.write_pdf(filename)
前提需要安装graphviz
yum install graphviz
涉及到的训练集参考上一篇文章
相关文章推荐
- 通过kinect实现3d扫描建立打印模型(processing、skanect、ReconstructMe)
- 笔记——kaldi中关于声学模型final.mdl的打印
- Three.js 3D打印数据模型文件(.STL)加载
- 3D 打印大型模型时的经验和注意事项
- 3D打印机打印星战尤达大师模型细节惊人
- 漂亮打印问题与动规模型的建立
- swift中打印模型的属性--oc中的description方法
- 3D打印大件模型时,添加支撑的注意事项:支撑的地基一定要结实
- 3D 打印的模型 告别手动添加支撑的方式 — 使用 Meshmixer 软件
- [译]随机森林模型的参数调优
- 3d 打印模型下载网站
- 字符串模型1:打印去掉字符串首尾空格后的字符
- 【大数据部落】基于随机森林、svm、CNN机器学习的风控欺诈识别模型
- Spark随机森林之多分类模型
- 区间dp模型之括号匹配打印路径 poj(1141)
- 集成模型——随机森林
- keras打印模型结构
- 上位机与打印设备通信模型
- 教您用CT数据和桌面3D打印机打印自己的器官模型