仅供个人学习用
算法
- CNN:卷积神经网络 Convolutional neural network
- RNN:循环神经网络 Recurrent neural networks
- LSTM:长短期记忆 Long short term memory
- GRU : 门循环单元 Gated recurrent units
- FFNN:前馈神经网络 Feed forward neurral network
- BP:反向传播 Backpropagation
- RBFN:径向基函数网络 Radial basis function network
- HN:霍普菲尔网络 Hopfield network
- MC:马尔可夫链 Markov Chain
- BM:玻尔兹曼机 Boltzmann machine
- RBM:受限玻尔兹曼机 Restricted Boltzmann machine
- GAN:生成式对抗网络 Generative adversarial networks
- AE:自动编码器 Autoencoder
- SAE:稀疏自编码机 Sparse autoencoders
- VAE:变分自编码机 Variational autoencoders
- DAE:去噪自编码机 Denoising autoencoders
- DBN:深度信念网络 Deep belief networks
- SVM:支持向量机 Support vector machines
CNN:卷积神经网络
擅长领域:图像处理。目前 CNN 已经得到了广泛的应用,比如:人脸识别、自动驾驶、美图秀秀、安防等很多领域。
CNN 有2大特点:
- 能够有效的将大数据量的图片降维成小数据量
- 能够有效的保留图片特征,符合图片处理的原则
CNN 的基本原理:
- 卷积层 – 主要作用是保留图片的特征
- 池化层 – 主要作用是把数据降维,可以有效的避免过拟合
- 全连接层 – 根据不同任务输出我们想要的结果
CNN 的实际应用:
- 图片分类、检索
- 目标定位检测
- 目标分割
- 人脸识别
- 骨骼识别
RNN:循环神经网络
RNN的独特价值在于:它能有效的处理序列数据。比如:文章内容、语音音频、股票价格走势…。
RNN用在序列数据,比如语音文本。CNN用在图像或类似数据。视频是把每一帧图像用CNN处理下,再用RNN窜起来。
之所以他能处理序列数据,是因为在序列中前面的输入也会影响到后面的输出,相当于有了“记忆功能”。但是 RNN 存在严重的短期记忆问题,长期的数据影响很小(哪怕他是重要的信息)。于是基于 RNN 出现了 LSTM 和 GRU 等变种算法。这些变种算法主要有几个特点:
- 长期信息可以有效的保留挑选重要信息保留,不重要的信息会选择“遗忘”
RNN的应用:
- 文本生成
- 语音识别
- 机器翻译
- 生成图像
- 描述视频标记
LSTM:长短期记忆
Long Short Term Memory网络是一种 RNN 特殊的类型,它有效地解决了RNN在训练时出现的梯度问题。
FFNN:前馈神经网络
前馈神经网络(Feedforward Neural Network),简称前馈网络,是人工神经网络的一种。在此种神经网络中,各神经元从输入层开始,接收前一级输入,并输出到下一级,直至输出层。整个网络中无反馈,可用一个有向无环图表示。
前馈神经网络采用一种单向多层结构,其拓扑结构如图1所示。其中每一层包含若干个神经元,同一层的神经元之间没有互相连接,层间信息的传送只沿一个方向进行。其中第一层称为输入层。最后一层为输出层.中间为隐含层,简称隐层。隐层可以是一层。也可以是多层
常见前馈神经网络:
- 感知器网络:是最简单的前馈网络,它主要用于模式分类,也可用在基于模式分类的学习控制和多模态控制中。感知器网络可分为单层感知器网络和多层感知器网络。
- BP网络:BP网络是指连接权调整采用了反向传播(Back Propagation)学习算法的前馈网络。与感知器不同之处在于,BP网络的神经元变换函数采用了S形函数(Sigmoid函数),因此输出量是0~1之间的连续量,可实现从输入到输出的任意的非线性映射。
- RBF网络:RBF网络是指隐含层神经元由RBF神经元组成的前馈网络。RBF神经元是指神经元的变换函数为RBF(Radial Basis Function,径向基函数)的神经元。典型的RBF网络由三层组成:一个输入层,一个或多个由RBF神经元组成的RBF层(隐含层),一个由线性神经元组成的输出层。
BP:反向传播
BP神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。具体来说,对于如下的只含一个隐层的神经网络模型:BP神经网络的过程主要分为两个阶段,
- 第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;
- 第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。
GAN:生成式对抗网络
生成式对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。
GAN 主要包括了两个部分,即生成器 generator 与判别器 discriminator。
- 生成器主要用来学习真实图像分布从而让自身生成的图像更加真实,以骗过判别器。
- 判别器则需要对接收的图片进行真假判别。在整个过程中,生成器努力地让生成的图像更加真实,而判别器则努力地去识别出图像的真假,这个过程相当于一个二人博弈,随着时间的推移,生成器和判别器在不断地进行对抗,最终两个网络达到了一个动态均衡:生成器生成的图像接近于真实图像分布,而判别器识别不出真假图像,对于给定图像的预测为真的概率基本接近 0.5(相当于随机猜测类别)。
参考资料:
- https://blog.csdn.net/kwame211/article/details/76618527
- https://blog.csdn.net/kwame211/article/details/78211254
- https://www.jianshu.com/p/3192e884e18d
- https://3g.163.com/money/article_cambrian/ELM7U3DB05326R1Q.html
- https://www.jianshu.com/p/0bc5aacdd168
- https://baike.baidu.com/item/%E5%89%8D%E9%A6%88%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/7580523?fr=aladdin
- https://baijiahao.baidu.com/s?id=1599324254427961220&wfr=spider&for=pc