机器学习 决策树

决策树-分类

1 概念

1、决策节点通过条件判断而进行分支选择的节点。如:将某个样本中的属性值(特征值)与决策节点上的值进行比较,从而判断它的流向。

2、叶子节点没有子节点的节点,表示最终的决策结果。

3、决策树的深度所有节点的最大层次数。

决策树具有一定的层次结构,根节点的层次数定为0,从下面开始每一层子节点层次数增加

决策树优点:

​ 可视化 - 可解释能力-对算力要求低

决策树缺点:

​ 容易产生过拟合,所以不要把深度调整太大了。

集成学习方法之随机森林

机器学习中有一种大类叫集成学习(Ensemble Learning),集成学习的基本思想就是将多个分类器组合,从而实现一个预测效果更好的集成分类器。集成算法可以说从一方面验证了中国的一句老话:三个臭皮匠,赛过诸葛亮。集成算法大致可以分为:Bagging,Boosting 和 Stacking 三大类型。

(1)每次有放回地从训练集中取出 n 个训练样本,组成新的训练集;

(2)利用新的训练集,训练得到M个子模型;

(3)对于分类问题,采用投票的方法,得票最多子模型的分类类别为最终的类别;

随机森林就属于集成学习,是通过构建一个包含多个决策树(通常称为基学习器或弱学习器)的森林,每棵树都在不同的数据子集和特征子集上进行训练,最终通过投票或平均预测结果来产生更准确和稳健的预测。这种方法不仅提高了预测精度,也降低了过拟合风险,并且能够处理高维度和大规模数据集

python 复制代码
from sklearn.ensemble import RandomForestClassifier
import pandas as pd 
from sklearn.feature_extraction import DictVectorizer
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split

data=pd.read_csv("../src/titanic/titanic.csv")
data["age"].fillna(data["age"].mode()[0],inplace=True)
X=data[["pclass","age","sex"]]
y=data["survived"]
data.drop(["survived"],axis=1,inplace=True)
dict=data.to_dict(orient="records")
vec=DictVectorizer(sparse=False)
x=vec.fit_transform(dict)
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.25,random_state=666)
scaler=StandardScaler()
x_train1=scaler.fit_transform(x_train)
model=RandomForestClassifier(n_estimators=100,max_depth=8,criterion="gini")
model.fit(x_train1,y_train)
x_test=scaler.transform(x_test)
rank=model.score(x_test,y_test)
print(rank)
相关推荐
大模型码小白2 小时前
AI 对话流性能调优:万级消息的虚拟滚动落地
java·大数据·前端·javascript·人工智能·算法·机器学习
月疯3 小时前
生成对抗网络的变体版本
深度学习·机器学习·生成对抗网络
sel_93 小时前
【多轮对话论文导读(三)】多轮对话与Agent论文阅读笔记:用户模拟、轨迹生成与长期记忆
论文阅读·人工智能·笔记·深度学习·算法·机器学习
船厂电气自动化ai大模型5 小时前
AI大模型与数学·第57课 傅里叶全套工具链综合实战:串联级数/连续变换/DFT/FFT,图像、音频、扩散模型完整例题
数据结构·人工智能·深度学习·算法·机器学习
罗西的思考9 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(1)— 总体
人工智能·笔记·深度学习·机器学习
BFT白芙堂9 小时前
Franka & DROID :面向真实场景的机器人操作数据集
人工智能·学习·机器学习·机器人·具身智能·franka·robotiq
叠层归一研究院10 小时前
螺旋时空:E框架的整合宇宙论
人工智能·经验分享·算法·机器学习·agi
磁场转动100万匹10 小时前
线性回归算法实现训练数据集、测试数据集的缺失值填充
算法·机器学习·线性回归
集芯微电科技有限公司11 小时前
700V/17A高频开关低导通阻GaN HEMT驱动器适用于快充,LLC,PFC功率校正
人工智能·嵌入式硬件·深度学习·神经网络·机器学习·生成对抗网络·计算机外设
YOLO数据集集合12 小时前
尼帕果实目标检测数据集 | 尼帕果实检测 农业视觉 热带作物 目标检测 YOLO格式9013期
人工智能·yolo·目标检测·机器学习·计算机视觉·农业果实