深度学习

预先训练的深度学习模型

利用深度学习研究社区开发的模型体系结构。流行的模型提供了健壮的体系结构,并跳过了从头开始的需要。

选择模型的技巧

有许多预先训练的模型可供选择,每个模型都有权衡:

  • 大小:模型需要多少内存
    模型的最终位置将决定需要考虑的网络规模。
    当选择部署到低内存系统时,请选择专门为此任务设计的模型。
    请参阅边缘部署模型
  • 准确性:模型在再培训前的表现如何
    通常,对ImageNet数据集执行良好的模型表明该模型已经学习了信息特性,并且在新的类似任务中也可以执行良好。
    探索更高精度的模型
  • 预测速度:模型对新图像的预测速度
    虽然预测速度可能会根据许多因素(如硬件和批大小)而变化,但速度也会根据所选模型的架构和模型的大小而变化。
    将预测速度与简单的模型开始

在下面的部分中探索模型之间的权衡。

将任意模型导入MATLAB,其结构为:

>> net =网络名

即。

>> net = alexnet >> net = resnet50

如果模型尚未下载,将提供一个在MATLAB中下载模型的链接。

简单的模型开始

您可以在这些模型上快速迭代,并尝试不同的设置,如数据预处理步骤和训练选项。一旦你感觉哪种设置比较好,尝试一个更精确的网络,看看它是否能提高你的效果。

模型精度高

探索对基于图像的工作流程非常有效的模型,如图像分类、目标检测和语义分割。

对于对象检测工作流程:

DarkNet-19、DarkNet-53和ResNet-50通常被用作对象检测问题和YOLO工作流程的基础。参见使用对象检测的例子Yolov2Yolov3

对于语义分割工作流程:

使用任何预定义的网络体系结构都为训练语义分割网络提供了方便的起点。这些是用于语义分割问题的常用层架构:

  • segnetLayers
  • unetLayers
  • unet3dLayers
  • DeepLab v3 +

参见使用Deeplab v3+创建语义分割网络的更多内容在这里

在MATLAB中可用的模型的完整列表

新的深度学习模型和例子