深度学习

预训练的深度学习模型

利用深度学习研究社区开发的模型架构。常见模型提供稳健的架构,无需从头开始。

获取预训练模型

与其从头开始创建深度学习模型,不如使用预训练模型。您可以将其直接应用或对其进行修改以适用于您的任务。

MATLAB 模型

浏览 MATLAB 深度学习模型中心,按类别访问最新模型并获取关于选择模型的提示。

使用命令行加载大多数模型。例如:

 net = darknet19;

开源模型

通过使用导入函数将 TensorFlow™、PyTorch® 和 ONNX™ 模型转换为 MATLAB 网络。例如:

 net = importTensorFlowNetwork("EfficientNetV2L") 

应用预训练模型

将预训练模型应用于图像分类、计算机视觉、音频处理、激光雷达处理和其他深度学习工作流。

  • 找到合适的预训练模型并将其直接应用于您的任务。
  • 通过调整预训练模型来适应新的任务或数据集,以执行迁移学习。更新和重新训练模型比从头开始创建模型更快,也更容易。
  • 通过将层激活作为特征使用预训练模型作为特征提取器。然后使用这些特征来训练另一个机器学习模型,例如支持向量机 (SVM)。
  • 使用预训练模型作为另一种模型的基础。例如,使用卷积神经网络作为创建目标检测或语义分割模型的起点。

图像分类

使用卷积神经网络,如 NASNet-MobileEfficientNet,执行图像分类任务。大多数 CNN 是基于 ImageNet 数据库训练的。

计算机视觉

使用目标检测 (YOLO)、语义/实例分割 (AdaptSeg/MASK R-CNN) 和视频分类 (SlowFast) 来分析图像和视频。

音频处理

使用 YAMNet 对声音进行定位和分类,使用 CREPE 估计音调,使用 VGGishOpenL3 提取特征嵌入。

激光雷达

使用分类 (PointNet)、目标检测 (PointPillars) 和语义分割 (PointSeg) 来分析点云数据。

选择模型的提示

有许多预训练模型可供选择,每种模型都有各自的优缺点:

速度

一开始可以选择一个速度更快的模型,例如 SqueezeNetGoogleNet。然后快速迭代,尝试不同的预处理和训练选项。

准确度

在了解哪些设置效果较好后,可以尝试更准确的模型,如 Inception-v3ResNet-50,看看这是否会改进您的结果。

大小

当需要部署到 Raspberry Pi® 或 FPGA 等边缘设备时,请选择低内存占用的模型,如 SqueezeNetMobileNet-v2

产品

了解深度学习模型使用的产品。