2017年2月20日 Random Forest Classifier
2019独角兽企业重金招聘Python工程师标准>>>
Random Forests builds various decision trees on bootstrap samples and random seleted features, prediction can be made by averaging
from __future__ import division
import numpy as np
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifierdata = pd.read_csv('data/sonar.all-data.csv', header=None)
X = data[data.columns[:-1]].as_matrix()
y = data[data.columns[-1]].as_matrix()class myRandomForest:def fit(self, X, y, n_estimators, max_depth):self.learners = []for n in range(n_estimators):idx_data = np.random.choice(X.shape[0],X.shape[0],replace=True)idx_feat = np.random.choice(X.shape[1],int(np.sqrt(X.shape[1])),replace=False)X_sub = X[idx_data][:,idx_feat]y_sub = y[idx_data]clf = DecisionTreeClassifier(max_depth=max_depth)clf.fit(X_sub, y_sub)self.learners.append({'tree': clf,'idx_feat': idx_feat})def predict(self, X):ps = []for i in range(len(self.learners)):clf = self.learners[i]['tree']idx_feat = self.learners[i]['idx_feat']p = clf.predict(X[:, idx_feat])ps.append(p)ps = np.transpose(ps).tolist()return [ max(p, key=p.count) for p in ps]def score(self, X, y):return np.count_nonzero(self.predict(X) == y)/len(y)rf = myRandomForest()
rf.fit(X,y,50,3)
print 'score:', rf.score(X,y)
#score: 0.942307692308dt = DecisionTreeClassifier(max_depth=3)
dt.fit(X,y)
print 'decision tree score:', np.count_nonzero(dt.predict(X) == y)/len(y)
#decision tree score: 0.884615384615
转载于:https://my.oschina.net/airxiechao/blog/863499
2017年2月20日 Random Forest Classifier相关推荐
- 2017年含金量最高的机器学习技能或知识有哪些? 翻译 2017年10月20日 14:22:44 标签: 机器学习 / quora 7504 原文:As of 2017, what set of
2017年含金量最高的机器学习技能或知识有哪些? 翻译 2017年10月20日 14:22:44 标签: 机器学习 / quora / 7504
- 乐视网CEO梁军:现在就是缺钱 正在重新学习做生意 2017年09月20日01:18 新京报 37 微博 微信 QQ空间 添加喜爱 乐视网CEO梁军。 新京报记者 吴江 摄乐视网CEO梁军。 新京
乐视网CEO梁军:现在就是缺钱 正在重新学习做生意 2017年09月20日01:18 新京报 37微博微信QQ空间添加喜爱 乐视网CEO梁军. 新京报记者 吴江 摄 乐视网(15.330, 0.00, ...
- 天下布魔服务器维护,2017年4月20日服务器停机维护公告
亲爱的<天下HD>玩家: 为保证各位玩家的游戏体验,本周<天下HD>将于2017年4月20日(周四)停机维护,维护时间为早上8:00-10:00,如果在维护期间无法完成维护相关 ...
- 2017年11月20日 第二次小组会议
2017年11月20日 第二次小组会议,今晚七点半左右在图书馆进行了第二次小组会议,本次会议的主要内容是确定开发软件所需的各种工具及技能,同时也确定了我们开发中各项工作的进度安排以及第一周的基本分工. ...
- 2017年3月20日下午学习日志
2017年3月20下午复习了高等数学,观看了张宇高等数学第十四讲教学视频高等数学部分第二讲如何进行系统的复习,学习了定理综述的9大定理如图,是考试必考的,必须认真对待的定理和公式,扇贝背今天的英语单词 ...
- 2017年2月20日 Adaboost
2019独角兽企业重金招聘Python工程师标准>>> Adaboost linearly combines weak learners into a single strong l ...
- 难忘2017年5月20日的那次雪崩
某业务某路径上的机器只有两台,业务高峰到来后,这两台机器出现了高负载, 缓冲区中请求堆积, 队列中的请求超时, 产生雪崩,至今仍然历历在目,永远无法忘记当时的窘迫. mark一下.
- 2016传智SSH框架CRM项目(5天)笔记(2017年5月20日22:11:15)
5天视频,摘取了其中的一些笔记.笔记记得有点简略,但是把项目中的易错点都写出来了. 下面是笔记链接 链接:http://pan.baidu.com/s/1geQ9Tn1 密码:1eh8 或者: htt ...
- AI智商评测标准专家研讨会邀请,2018年12月20日北京
21世纪以来,人工智能领域陆续爆发很多重要事件.其中最吸引人们眼球的,当属2016年战胜了人类围棋冠军并开始能够从0自我学习的AlphaGo. 10月26日,软银CEO孙正义在沙特阿拉伯举行的未来投资 ...
最新文章
- javascript中文网学习
- python图表之pygal入门篇
- HDU 6741 MUV LUV UNLIMITED (博弈论)
- JAVA 三种线程实现创建方式
- .NET六大剑客:栈、堆、值类型、引用类型、装箱和拆箱
- which oracle linux,(总结)Linux下Oracle11gR2的ORA-00845错误解决方法
- 知乎高赞:有哪些值得刻意练习的心态?
- 腾讯广告算法大赛 | 专家开小灶,独家解析Lookalike那些事儿
- Windows Server 2008域中组的简析
- Go Web框架 Gin路由(一)
- pycharm新建项目时选择virtualenv与existing interpreter
- 广东第一高中生_广东男篮签下全美第一高中生 NBA状元热门征战CBA
- 赛博朋克小建筑系列模型
- ISO3834认证所需的部分标准
- python安装教程(搬运工)
- Scrum立会报告+燃尽图(Beta阶段第二周第五次)
- verilog复习与vhdl入门
- ecshop php 5.4,ecshop在PHP 5.4以上版本各种错误问题处理
- ShareSDK 常见问题
- 全民一起玩python求分享_全民一起玩Python 基础篇+提高篇