深度学习工具箱

创建、分析和培训深度学习网络

深度学习工具箱™ (以前是神经网络工具箱™) 为设计和实现具有算法、预训练模型和应用程序的深层神经网络提供了框架。可以使用卷积神经网络(ConvNets,CNNs)和长期短期记忆(LSTM)网络对图像、时间序列和文本数据执行分类和回归。您可以使用自定义训练循环、共享权重和自动区分来构建高级网络体系结构,如生成性对抗网络(GANs)和暹罗网络。应用程序和绘图可以帮助您可视化激活、编辑和分析网络架构,以及监控培训进度。

可以用TensorFlow交换模型™ 和PyTorch通过ONNX格式从TensorFlow Keras和Caffe导入模型。工具箱支持使用万博1manbetx图书馆预训练的模型(包括NASNet、SqueezeNet、incep -v3和ResNet-101)。

您可以在单或多gpu工作站(使用并行计算工具箱™)上加速训练,或者扩展到集群和云,包括NVIDIA®GPU云和Amazon EC2®GPU实例(带MATLAB并行服务器商标)。

开始:

网络和体系结构

使用深度学习工具箱训练深度学习网络,对图像、时间序列和文本数据进行分类、回归和特征学习。

卷积神经网络

学习图像中的模式来识别物体、面孔和场景。构造和训练卷积神经网络(CNNs)进行特征提取和图像识别。

长短时记忆网络

学习序列数据(包括信号、音频、文本和其他时间序列数据)中的长期相关性。构建并训练长期短期记忆(LSTM)网络,以执行分类和回归。

与LSTMs合作。

网络体系结构

使用各种网络结构,包括有向无环图(DAG)和递归架构来构建您的深度学习网络。使用自定义的训练循环、共享的权重和自动区分来构建高级网络架构,如生成式对抗网络(GANs)和暹罗网络。

使用不同的网络架构。

网络设计与分析

使用交互式应用程序创建、编辑、可视化和分析深度学习网络。

设计深度学习网络

使用deep network Designer应用程序从头开始创建一个深度网络。导入一个预先训练好的模型,可视化网络结构,编辑层,调整参数。

分析深度学习网络

在培训之前,分析网络体系结构以检测和调试错误、警告和层兼容性问题。可视化网络拓扑并查看可学习参数和激活等详细信息。

分析了一种深度学习网络体系结构。

转移学习和预先训练的模型

将预训练好的模型导入MATLAB进行推理。

转移学习

访问预先训练过的网络,并将其作为学习新任务的起点,并使用较少的训练图像将学到的特性快速转移到新任务中。

Pretrained模型

用一行代码访问最新的预先训练过的网络。进口预训练模型包括incep -v3, SqueezeNet, NASNet和GoogLeNet。

深度神经网络模型分析。

可视化和调试

在一个深度学习网络中可视化训练进度和学习特征的激活。

培训进展

查看每个迭代中的培训进度,使用各种度量的图表。根据培训指标绘制验证指标,以可视化地检查网络是否过度拟合。

监控模型的训练进度。

网络激活

提取对应于层的激活,将学习到的特征可视化,并使用激活训练机器学习分类器。使用Grad-CAM方法来理解为什么深度学习网络会做出分类决策。

可视化激活。

框架互操作性

与MATLAB的深度学习框架互操作。

ONNX转换器

在MATLAB中导入和导出ONNX模型®用于与其他深度学习框架的互操作性。ONNX允许在一个框架中训练模型,并将其转移到另一个框架中进行推理。使用GPU编码器™生成优化的CUDA代码并使用MATLAB编码器™为进口商模型生成C++代码。

与深度学习框架的互操作。

TensorFlow-Keras进口国

将TensorFlow-Keras模型导入MATLAB进行推理和转移学习。使用GPU编码器生成优化的CUDA代码并使用MATLAB编码器为进口商模型生成C++代码。

咖啡馆进口商

从Caffe Model Zoo中导入模型到MATLAB中进行推理和转移学习。

将Caffe Model Zoo中的模型导入到MATLAB中。

训练加速

使用GPU、云和分布式计算加速深度学习训练。

GPU加速

使用高性能的NVIDIA gpu加速深度学习训练和推理。在一个工作站的GPU上执行训练,或者在数据中心或云上使用DGX系统扩展到多个GPU。你可以用MATLAB并行计算工具箱和大多数库达®已启用的NVIDIA GPU计算能力3.0或更高.

GPU加速。

云加速

使用云实例减少深度学习培训时间。使用高性能的GPU实例获得最佳结果。

利用并行计算工具箱和MATLAB并行服务器加速云端训练。

分布式计算

使用MATLAB并行服务器在网络上的多个服务器上的多个处理器上运行深度学习训练。

在并行和云计算中扩展深度学习。

代码生成和部署

将经过培训的网络部署到嵌入式系统中,或将它们与广泛的生产环境集成。

代码生成

使用GPU编码器从MATLAB代码生成优化的CUDA代码,用于深度学习、嵌入式视觉和自治系统。使用MATLAB编码器生成c++代码,部署深度学习网络到Intel®至强®和手臂®皮质®-处理器。

部署独立应用程序

使用MATLAB编译器™MATLAB编译器SDK™为了将训练有素的网络部署为c++共享库,微软®net程序集,Java®类和Python®包从MATLAB程序与深度学习模型。

与MATLAB编译器共享独立的MATLAB程序。

浅神经网络

使用多种有监督和无监督浅层神经网络结构的神经网络。

监督网络

训练有监督的浅层神经网络来建模和控制动态系统,分类有噪声的数据,并预测未来的事件。

浅神经网络。

无监督网络

通过让浅层网络不断调整自身以适应新的输入,查找数据中的关系并自动定义分类方案。使用自组织的、无监督的网络以及竞争性的层和自组织的地图。

自组织映射。

堆叠Autoencoders

通过使用自动编码器从数据集中提取低维特征来执行无监督特征转换。您还可以使用堆叠的自动编码器进行监督学习的训练和堆叠多个编码器。

堆叠自动编码器。

最新的特性

培训的灵活性

使用自定义训练循环、自动区分、共享权重和自定义丢失功能训练高级网络体系结构

深入学习网络

建立生成式对抗网络(GANs)、暹罗式网络、变分自编码器和注意力网络

数据预处理

使用多个数据规范化选项提高训练性能

可视化

基于遮挡敏感度的输入数据强激活特征映射

多输出网络

训练具有多个输入和多个输出的网络

长短时记忆(LSTM)网络

计算中间层激活

ONNX支万博1manbetx持

将结合CNN和LSTM层的网络以及包含3D CNN层的网络导出为ONNX格式

看到发布说明有关这些功能和相应功能的详细信息。

用于深度学习的MATLAB

设计、构建和可视化深度学习网络

有问题吗?

联系Shounak Mitra,深度学习工具箱技术专家