图这部分以概念为主,具体实现放到算法部分
参考:王道数据结构图部分
3.树
树在计算机中的应用相当广泛
参考王道数据结构的树总结
2. 循环神经网络
神经元不仅接收其他神经元的信息,也能接收自身的信息。
循环神经网络(Recurrent Neural Network,RNN)是一类具有短期记忆能力的神经网络,可以更方便地建模长时间间隔的相关性
常用的参数学习可以为BPTT。当输入序列比较长时,其计算时间和空间要求随时间线性增长,可以使用带截断的BPTT,只计算固定时间间隔内的梯度回传
RNN可以近似任何非线性动力系统及图灵机,但会存在梯度爆炸和小时问题,也即长程依赖问题。从模型角度的改进,最有效改进方法为引入门控机制,如GNU和LSTM网络,也可以使用时钟循环神经网络、乘法RNN以及引入注意力机制
LSTM 网络是目前为止最成功的循环神经网络模型,通过引入线性连接来缓解长程依赖问题,成功应用在很多领域,如语音识别、机器翻译、语音模型以及文本生成。人们不断尝试对其进行改进来寻找最优结构,比如减少门的数量、提高并行能力等
LSTM的线性连接和门控机制能有效避免梯度消失问题,也运用于深层前馈网络中,如残差网络和告诉网络,都是引入线性训练非常深的卷积网络。对于循环网络,这种机制也可以运用于非时间维度上
RNN还可以轻易扩展为两种更广义的网络模型:递归神经网络和图网络
递归神经网络是一种在有向无环图上的简单的图网络,比较有名的图网络模型包括图卷积网络(Graph Convolutional Network,GCN),图注意力网络(Graph Attention Network,GAT)、消息传递神经网络(Message Passing Neural Network,MPNN)
[TOC]
2.线性表
线性表是一种逻辑结构
本文总结的应用部分代码来源于王道数据结构相应部分课后题
1. 前馈神经网络
全连接前馈神经网络可以抽象为信息传播公式,其理论依据为通用近似定理,经过网络处理后,输出为样本所属各类的置信度,代入机器学习的分类模型,得到最终的分类结果。对交叉熵损失函数使用梯度下降算法求参数,矩阵求导在nndl中以分母布局为主,以链式法则为计算依据,但同时也可采用更为高效的计算方法
反向传播算法:第l层的误差项可以通过第 $l+1$ 层的误差项计算得到,前向计算每一层净输出和活性值,再反向传播计算每一层的误差项,得到本层梯度,用随机梯度下降法来训练参数
自动梯度计算反向模式与反向传播算法一致
神经网络为非凸优化问题,会遇到:梯度消失和梯度爆炸问题,参数过多,以及无局部不变性首先介绍了卷积运算及交换性,用互相关与卷积运算的区别在于是否旋转卷积核,卷积运算可以理解为多次翻转相乘,互相关就是相同位置元素相乘求和
由于全连接网络参数过多,使用卷积运算可以减少参数数量,池化层可以减少输出特征映射的神经元数量。卷积层输入层与输出层的特征映射是全连接关系,卷积神经网络的整体结构为多个卷积块插入几个池化层,再过全连接网络,得到条件概率,最后代入机器学习模型得到最终输出。
卷积神经网络也是通过误差反向传播得到参数,介绍了几种典型的网络:LeNet-5,AlexNet,Inception,残差网络,并进行参数与运算量推演,
最后是三种非标准卷积:空洞卷积,转置卷积,微步卷积以及卷积神经网络的应用
[TOC]
1.时间复杂度
时间复杂度的简单计算方法
参考数据结构实现的黑书
0.深度学习与神经网络
nndl绪论
0.绪论
数据结构绪论
9. 降维
[TOC]
主成分分析利用正交变化将可能存在相关性的原始属性转换成一组线性无关的新属性,并通过选择最重要的新属性实现降维
- 主成分分析的解满足最大方差和最小均方差两类约束条件,因而具有最大可分性和最近重构性
特征选择是选取原始特征中的一个自己用于学习任务
- 特征选择的关键问题是对特征子集的评价,主要特征选择算法包括包裹法、过滤法和嵌入法
8. 聚类分析
聚类分析是一种无监督学习方法,通过学习没有分类标记的训练样本分析数据本身的结构来发现数据的内在模式
[TOC]
数据之间的相似性通常用距离度量,类内差异应尽可能小,类间差异应尽可能大
根据形成距离类的方式不同,聚类算法可以分为:层次聚类、原型聚类、分布聚类、密度聚类
聚类分析的重要应用是对用户进行分组与归类