Matlab一直以来都有着神经网络工具箱,而从2016的版本开始,提供深度神经网络的相关工具。而到现如今2017的版本,功能更加完善,因此本人在此总结Matlab 2017所包含的深度学习的功能。
如今版本的Matlab已经包含的如下功能:
Ø 获取已经训练好的神经网络
Ø 提供了方便的窗口式的神经网络工具箱
Neural Newwork Time Series Tool神经网络时间序列工具,可训练RNN
Neural Pattern Recognition app 神经网络特征识别工具
Neural Fitting app 神经网络拟合工具
Nerual Clustering app 神经网络聚类工具
Ø 特征网络可视化
Ø 在个人电脑或者云端使用CPU、GPU、多个GPU加速训练
当前版本GPU计算性能高于2.0的都使用GPU加速
Ø 提供了经典的神经网络应用例子与教程(附代码)
例如,MNIST手写体识别,Deep Dream、Fast-RCNN物体检测等
Ø 提供了官方的Caffe接口
Ø 提供了一系列预处理工具
表1 Matlab 2017支持的层与网络(在matlab命令行中输入doc+类名可查看使用方法)
类型 |
类名(构造方法) |
含义 |
||
层 |
inputLayer |
图像输入层 |
||
convolutional2dLayer |
2D卷基层 |
|||
reluLayer |
ReLU层 |
|||
crossChannelNormalizationLayer |
归一化层(batch normalization) |
|||
AveragePooling2DLayer |
平均Pooling层 |
|||
MaxPooling2DLayer |
Max Pooling层 |
|||
FullyConnectedLayer |
全连接层 |
|||
DropoutLayer |
Dropout层(防止过拟合) |
|||
SoftmaxLayer |
Softmax层 |
|||
ClassificationOutputLayer |
分类输出层(默认损失函数为交叉熵) |
|||
RegressionOutputLayer |
回归输出层(默认损失函数为MSE) |
|||
Autoencoder |
自编码层 |
|||
时序网络 |
timedelaynet |
时间延迟神经网络 |
||
layrecnet |
循环神经网络 |
|||
narnet |
非线性自回归神经网络 |
|||
narxnet |
具有外部输入的非线性自回归神经网络 |
|||
distdelaynet |
分布式延迟网络 |
|||
回归网络 (MSE) |
cascadeforwardnet |
级联神经网络 |
||
feedforwardnet |
前馈神经网络 |
|||
fitnet |
函数拟合神经网络 |
|||
识别分类网络 |
lvqnet |
学习向量量化神经网络 |
||
patternnet |
模式识别网络 |
|||
神经网络聚类 |
selforgmap |
自组织网络 |
||
competlayer |
竞争层 |