集成学习通过构建并结合多个学习器完成任务,结合策略有简单平均法和加权平均法,结果可通过投票法产生。
集成学习分类包括:Bagging:个体学习器无强依赖关系,可并行生成,代表为随机森林。随机森林具有处理高维数据、给出特征重要性、并行化快、可可视化等优点。
Boosting:个体学习器有强依赖关系,需串行生成(如AdaBoost),通过调整数据权重提升模型性能。
Stacking:聚合多个分类或回归模型,分阶段进行。
神经网络相关
感知机(1957年提出)用于二分类,但只能表示线性可分空间。多层感知机通过隐藏层和激活函数(如ReLU、Sigmoid、Tanh)解决非线性问题。
关键概念:
使用Softmax处理多分类。
评估方法:验证数据集、测试数据集、K折交叉验证。
问题:过拟合与欠拟合(可通过正则化、数据增强缓解)。
图像识别技术与应用
图像分类分为三类境界:
通用多类别图像分类
子类细粒度图像分类
实例级图片分类
评估指标:混淆矩阵:TP(真正例)、FP(假正例)、TN(真反例)、FN(假反例)。
精确率、准确率、召回率、F1-Score:分别衡量不同维度性能。
P-R曲线:反映召回率与精确率的关系,曲线面积越大模型越好。
多类别混淆矩阵:k分类问题的k×k矩阵,主对角线元素之和为正确分类数。
PyTorch工具箱:数据处理:DataLoader(批量加载)、transforms(图像增强与转换)、ImageFolder(按目录读取数据)。
可视化:TensorBoard记录训练过程(损失、准确率)、展示网络结构与特征图。
神经网络工具箱
核心组件:层、模型、损失函数、优化器。
模型构建:
继承nn.Module:自定义网络结构,自动管理参数。
nn.Sequential:按顺序堆叠层,支持三种构建方式:直接传入层列表、使用add_module动态添加层、通过OrderedDict有序组织层。
模型容器:nn.Sequential、nn.ModuleList、nn.ModuleDict。
训练流程:加载数据、定义模型、选择损失函数与优化器、循环训练、验证与测试、可视化结果。
经典网络架构
卷积神经网络基础:卷积层(局部感知)、填充(Padding)、步幅(Stride)、多通道处理。
经典模型:LeNet(1998):手写数字识别,由卷积层、池化层和全连接层组成。
AlexNet(2012):引入ReLU、Dropout、数据增强,深度学习里程碑。
VGG(2014):以重复的3×3卷积块构建深度网络(如VGG16、VGG19)。
视觉分层理论:从底层边缘/纹理到中层形状/部件再到高层语义对象逐步抽象。
理论与优化
学习表征:深度学习通过多层非线性变换自动学习层次化特征(浅层依赖人工特征工程)。
过拟合与欠拟合:过拟合:模型过度拟合训练数据,泛化能力差。
欠拟合:模型未能捕捉数据规律,需增加复杂度。
正则化方法:权重衰减(L2正则化)、暂退法(Dropout)。