Deep Learning

Pretrained Deep Learning Models

Take advantage of model architectures developed by the deep learning research community. Popular models offer a robust architecture and skip the need to start from scratch.

Get Pretrained Models

Instead of creating a deep learning model from scratch, get a pretrained model, which you can apply directly or adapt to your task.

MATLAB models

Explore MATLAB Deep Learning Model Hub to access the latest models by category and get tips on choosing a model.

Load most models at the command line. For example:

net = darknet19;

Open-source models

Convert TensorFlow™, PyTorch®, and ONNX™ models to MATLAB networks by using an import function. For example:

net = importTensorFlowNetwork("EfficientNetV2L")

Apply Pretrained Models

Apply pretrained models to image classification, computer vision, audio processing, lidar processing, and other deep learning workflows.

  • Find the right pretrained model and apply it directly to your task.
  • Perform transfer learning by adapting a pretrained model to a new task or dataset. Updating and retraining a model is faster and easier than creating it from scratch.
  • Use a pretrained model as a feature extractor by using the layer activations as features. Then use these features to train another machine learning model, such as a support vector machine (SVM).
  • Use a pretrained model as the foundation for another type of model. For example, use a convolutional neural network as a starting point to create an object detection or a semantic segmentation model.

Image classification

For image classification tasks, use a convolutional neural network such as NASNet-Mobile and EfficientNet. The majority of CNNs is trained on the ImageNet database.

Computer vision

Analyze images and videos using object detection (YOLO), semantic/instance segmentation (AdaptSeg/MASK R-CNN), and video classification (SlowFast).

Audio processing

Locate and classify sounds with YAMNet, estimate pitch with CREPE, and extract feature embeddings with VGGish or OpenL3.

Lidar

Analyze point cloud data using classification (PointNet), object detection (PointPillars), and semantic segmentation (PointSeg).

Natural Language Processing

Leverage the natural language capabilities of large language models (LLMs). To use LLMs, connect MATLAB to the OpenAI™ Chat Completions API or load a built-in model (BERT).

Tips to Select Models

There are many pretrained models to choose from, and each model has tradeoffs:

Speed

To get started, choose one of the faster models, such as SqueezeNet or GoogLeNet. Then iterate quickly and try different preprocessing and training options.

Accuracy

Once you understand which settings work well, try a more accurate model, such as Inception-v3 or ResNet-50, and see if that improves your results.

Size

When you deploy to edge devices such as Raspberry Pi® or FPGAs, choose a model with a low memory footprint, such as SqueezeNet or MobileNet-v2.

Products

Learn about the products used with deep learning models.