随机森林预测鸢尾花类型代码实现
一、随机森林
1.应用
远程遥感
物体侦察
kinect体感器:用一个训练集识别身体部位,比如手在哪、脚在哪、身体部位发生了哪些变化,随机森林分类器就可以开始学习,比如可以在人跳舞时识别身体部位并以计算机能听懂的方式表示,然后据此对用户在游戏中的动作进行评分。
1.为什么学习随机森林?
无过度拟合
高准确度(最重要)
可以估计丢失的数据
2.什么随机森林?
通过大多数决策树的投票选择确定最终决策
3.随机森林和决策树
决策树是一种树形图,用来决定一个行动的过程,树的每个分支代表一个可能的决策、事件或反应。
二.学习代码
from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
import pandas as pd
import numpy as np
np.random.seed(0)
加载不同的模块,sklear数据集不是实际的数据,而是允许我们引入数据的模块;
load_iris是1936年Ronaled Fisher发表的一篇关于他们正在测量的花的不同部分并根据测量结果预测该花是什么的数据;
pandas为我们创建了一种数据格式,有点像excel电子表格;
numpy是数字python,其运行我们做不同的数学集
np.random.seed实际并未显示任何东西,但是它表示了随机性为0的种子坐标。
#creating an object called iris with the iris data
iris=load_iris()
#creating a dataframe with the four feature variables
df=pd.DataFrame(iris.data,columns=iris.feature_names)
df.head()
用df定义数据框,我们正在查看iris数据;
如果不清楚数据来自哪,可以print(iris)查看,可看到’feature_names’: [‘sepal length (cm)’, ‘sepal width (cm)’, ‘petal length (cm)’, ‘petal width (cm)’];
df.head是pandas数据帧的简洁功能之一,可以打印数据集的前五行以及标题。
{
'data': array([[5.1, 3.5, 1.4, 0.2],
[4.9, 3. , 1.4, 0.2],
[4.7, 3.2, 1.3, 0.2],
[4.6, 3.1, 1.5, 0.2],
[5. , 3.6, 1.4, 0.2],
...................
[5.9, 3. , 5.1, 1.8]]), 'target': array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,