深度学习在MATLAB
深度学习是什么?
深度学习是机器学习的一个分支,教计算机做什么是自然对人类:从经验中学习。深度学习使用神经网络来学习有用的功能直接从数据表示。神经网络结合多个非线性处理层,使用简单的元素和灵感来自生物神经系统并行操作。深度学习模型可以实现先进的对象分类的准确性,有时超过人类层面的表现。
深度学习MATLAB工具箱™提供简单®命令用于创建和连接的层深的神经网络。例子和pretrained网络使它容易使用MATLAB进行深度学习,即使没有先进的计算机视觉算法或神经网络的知识。
自由实践介绍实际深度学习方法,明白了深度学习斜坡弯道。快速开始深度学习,明白了试着深入学习MATLAB的10行代码。
开始使用转移学习深度学习更快
在深度学习应用程序转移学习是常用的。pretrained网络,可以使用它作为一个起点,学习一个新任务。微调和转移网络学习是快得多,也更容易比从头开始训练。您可以快速使网络学习新的任务使用较少的训练图像。转移的优势学习是pretrained网络已经学会了一组丰富的特性,可以应用于广泛的其他类似的任务。一个交互式的例子,请参阅转移学习与深层网络设计师。一个编程的例子,看到火车深入学习网络对新图像进行分类。
选择是否使用pretrained网络或创建一个新的网络,考虑在这个表的场景。
学习使用Pretrained网络传输 | 创建一个新的网络 | |
---|---|---|
训练数据 | 对成千上万的标签数据(小) | 数以千计数以百万计的标记数据 |
计算 | 中计算(GPU可选) | 计算密集型(需要GPU速度) |
培训时间 | 秒到几分钟 | 几天到几周的实际问题 |
模型的准确性 | 好,取决于pretrained模型 | 高,但可以overfit较小的数据集 |
探索pretrained网络,选择使用深层网络设计师。
深度学习工作流程
了解更多关于深学习应用领域,明白了应用程序。
域 | 示例工作流 | 了解更多 | |
---|---|---|---|
图像分类、回归、加工 |
|
深度学习应用于图像数据的任务。 例如,使用深度学习的图像分类和回归。 |
|
序列和时间序列 |
|
深度学习应用到序列图和时间序列的任务。 例如,使用深度学习序列分类和时间序列预测。 |
|
计算机视觉 |
|
深度学习应用于计算机视觉应用。 例如,使用深度学习语义分割和对象检测。 |
开始使用语义分割使用深度学习(计算机视觉工具箱) 识别、目标检测和语义分割(计算机视觉工具箱) |
音频处理 |
|
深度学习应用于音频和语音处理应用程序。 例如,使用深度学习说话人识别,语音命令识别,和声学场景识别。 |
深入学习音频应用程序(音频工具箱) |
自动驾驶 |
|
深度学习应用于自动驾驶的应用程序。 例如,使用深度学习车辆检测和语义分割。 |
|
信号处理 |
|
深度学习应用于信号处理应用程序。 例如,使用深度学习波形分割,信号分类,和去噪语音信号。 |
|
无线通信 |
|
深度学习应用于无线通信系统。 例如,使用深度学习的定位,光谱传感、autoencoder设计和数字预失真(DPD)。 |
三维室内定位802.11 az指纹和深度学习(WLAN工具箱) |
强化学习 |
|
火车深层神经网络代理与未知的动态环境中交互。 例如,使用强化学习培训政策来实现控制器和决策等复杂应用程序的资源分配算法,机器人技术,和自治系统。 |
|
计算金融 |
|
应用深度学习金融工作流。 例如,使用深度学习的应用程序包括仪器定价、交易和风险管理。 |
|
激光雷达处理 |
|
深入学习算法适用于处理激光雷达点云数据。 例如,使用深度学习的语义分割,目标检测组织三维激光雷达点云数据。 |
|
文本分析 |
|
深入学习算法应用于文本分析应用程序。 例如,使用深度学习用于文本分类、语言翻译和文本的一代。 |
|
预见性维护 |
|
深度学习应用于预测维护应用程序。 例如,使用深度学习故障检测和剩余使用寿命的评估。 |
深度学习的应用
处理数据、可视化和培训网络,跟踪实验和数字转换网络交互地使用应用程序。
之前你可以处理数据训练使用应用程序标签地面实况数据。选择标签应用程序的更多信息,请参阅选择一个应用程序标签地面实况数据。
的名字 | 描述 | 了解更多 | |
---|---|---|---|
深层网络设计师 |
|
构建、可视化编辑和火车深度学习网络。 | |
实验管理器 |
|
下创建深度学习实验训练网络多个初始条件和比较结果。 | |
深层网络量化器 |
|
减少内存需求的深层神经网络权重量化,偏见,和激活卷积层8位整数数据类型。 | |
强化学习设计(强化学习工具箱) |
|
设计、训练和模拟强化学习代理。 | 设计和使用强化学习培训代理设计师(强化学习工具箱) |
图片标志(计算机视觉工具箱) |
|
标签地面实况数据图像的集合。 | 开始使用图像贴标签机(计算机视觉工具箱) |
贴标签机视频(计算机视觉工具箱) |
|
标签地面实况数据的视频中,在一个图像序列,或自定义数据源的读者。 | 贴标签机开始使用视频(计算机视觉工具箱) |
地面实况贴标签机(自动驾驶工具箱) |
|
标签地面实况数据在多个视频,图像序列,或激光雷达点云。 | 开始标签与地面真理(自动驾驶工具箱) |
激光雷达贴标签机(激光雷达工具箱) |
|
标签点云中的对象或一个点云序列。应用程序读取从厚度点云数据,PCAP,拉斯维加斯,有没有,ROS和PCD文件。 | 开始使用激光雷达贴标签机(激光雷达工具箱) |
信号贴标签机(信号处理工具箱) |
|
标签信号进行分析或用于机器学习和深度学习应用。 | 使用信号贴标签机应用(信号处理工具箱) |
火车从Pretrained网络分类器使用的特性
特征提取允许您使用pretrained网络的力量没有投资时间和精力投入到训练。特征提取可以使用深度学习的最快途径。你提取从pretrained网络学习特性,利用这些特性来训练一个分类器,例如,一个支持向量机(SVM -需要统计和机器学习的工具箱™)。金宝app例如,如果一个SVM训练使用alexnet
可以达到准确率> 90%在你的训练和验证集,然后微调转移学习可能不值得付出努力获得一些额外的准确性。如果你对小数据集进行微调,那么你也可能造成过度拟合。如果支持向量机不能达到足够精度对于您的应用程序,然后微调值得努力寻求更高的精度。
例如,看到的使用Pretrained网络提取图像特征。
深度学习与大数据在cpu、gpu并行,在云上
培训深网络是计算密集型和可以花许多小时的计算时间;然而,神经网络固有的并行算法。您可以使用并行计算工具箱™利用这种并行使用高性能处理器和计算机集群并行运行。更多地了解并行深度学习,在云中,或使用GPU,明白了并行扩展深度学习,在gpu上,在云端。
在MATLAB数据存储®是一个方便的工作方式和代表太大的数据集合的一次装入内存。更多地了解与大型数据集深度学习,明白了与大数据深度学习。
深度学习使用仿真软件金宝app
在仿真软件中实现深度学习功能金宝app®从深层神经网络模型,利用块块库,包括在深度学习工具箱™,或通过使用深学习对象探测器块分析&增强块库包含在计算机视觉的工具箱™。
有关更多信息,请参见深度学习与仿真软件金宝app。
深度学习可解释性
深入学习网络常常被描述为“黑匣子”,因为网络的原因使某一决策并不总是显而易见的。您可以使用可解释性技术网络行为转化为输出,一个人可以解释。这可说明的输出可以回答关于网络的预测问题。
深度学习工具箱提供了几个深学习可视化方法帮你调查和理解网络行为。例如,gradCAM
,occlusionSensitivity
,imageLIME
。有关更多信息,请参见深度学习可视化方法。
深度学习定制
你可以训练和定制深以各种方式学习模型。例如,您可以使用内置的构建一个网络层或自定义层。你可以训练你的网络使用内置的培训功能trainNetwork
或深学习模型定义为一个函数,使用自定义训练循环。帮助决定使用哪种方法,请参考下表。
方法 | 用例 | 了解更多 |
---|---|---|
内置的培训和层 | 适用于大多数深度学习任务。 | |
自定义图层 | 如果深度学习工具箱不提供层你需要你的任务,你就可以创建一个自定义层。 | |
自定义训练循环 | 如果你需要额外的定制,您可以构建和训练你的网络使用自定义训练循环。 |
有关更多信息,请参见火车深度学习模型在MATLAB。
深度学习进出口
可以导入神经网络和图层图表来自TensorFlow™2, TensorFlow-Keras PyTorch®,ONNX™(打开神经网络交换)模型格式。您还可以导出深度学习神经网络工具箱和图表TensorFlow 2层和ONNX模型格式。
导入功能
外部深度学习平台和模型格式 | 导入模型作为神经网络 | 导入模型层图 |
---|---|---|
TensorFlow神经网络在SavedModel 格式 |
importTensorFlowNetwork |
importTensorFlowLayers |
TensorFlow-Keras HDF5或JSON格式的神经网络 | importKerasNetwork |
importKerasLayers |
追踪PyTorch模型.pt 文件 |
importNetworkFromPyTorch |
不适用 |
神经网络在ONNX模型格式 | importONNXNetwork |
importONNXLayers |
的importTensorFlowNetwork
和importTensorFlowLayers
函数是推荐的importKerasNetwork
和importKerasLayers
功能。有关更多信息,请参见推荐功能导入TensorFlow模型。
的importTensorFlowNetwork
,importTensorFlowLayers
,importNetworkFromPyTorch
,importONNXNetwork
,importONNXLayers
当你导入一个函数创建自动生成自定义层模型TensorFlow层,PyTorch层,或ONNX运营商MATLAB层不能转换为内置函数。函数将自动生成自定义层保存到一个包在当前文件夹。有关更多信息,请参见自动生成自定义层。
导出功能
出口神经网络或层图 | 外部深度学习平台和模型格式 |
---|---|
exportNetworkToTensorFlow |
在Python中TensorFlow 2模型®包 |
exportONNXNetwork |
ONNX模型格式 |
的exportNetworkToTensorFlow
节省了深度学习神经网络工具箱函数或层图TensorFlow模型在Python包。有关如何加载导出模型的更多信息并将其保存在一个标准TensorFlow格式,看看负载输出TensorFlow模型和在标准格式保存导出TensorFlow模型。
通过使用ONNX作为中间格式,您可以与其他深度学习互操作框架,支持ONNX模型导出或导入。金宝app