General Deep LearningOne of the new things which deserves attention is Custom Training Loops and Auto Differentiation (Autodiff). This allows for new features such as GANs and Siamese Networks to be available in MATLAB! There are new examples to explore these more advanced concepts:
|This example shows how to train a generative adversarial network (GAN) to generate images.||This example shows how to train a Siamese network to identify similar images of handwritten characters.|
VisualizationMore and more, people want to understand why a deep learning model is making a certain prediction. These new examples offer new ways to gain more insight into your model.
- Grad-CAM Reveals the Why Behind Deep Learning Decisions
- Understand Network Predictions Using Occlusion
- View Network Behavior Using tsne
- Visualize Activations of LSTM Network
Computer Vision & Image Processing19b was a good release for data preprocessing for deep learning. Here is a nice reference example showing the specifics of data preprocessing for many different applications: Semantic Segmentation, Object Detection, Image Classification, and more.
- Preprocess Data for Domain-Specific Deep Learning Applications - I think of this example as a document you can print and refer to when you are doing data preparation for deep learning, and I would recommend starting here.
Deep Learning on Large Images
- Deep Learning Classification of Large Multiresolution Images - One of the new features for image processing is about large images, including bigImage. This example walks you through these new features.
More AugmentationWhile these can be thought of as more advanced features, augmenting images and bounding boxes are great way to increase the robustness of your dataset and potentially increase the accuracy of your model.
- Augment Pixel Labels for Semantic Segmentation
- Augment Images for Deep Learning Workflows Using Image Processing Toolbox If you want details on image preprocessing options, this is a nice example showing all the augmentations that you can do.
- Augment Bounding Boxes for Object Detection
- Train an object detector using YOLO - This example show how you can use all the new augmentation features to train a detector , and it conveniently shows the whole workflow
Deep Learning Classification of Large Images, is especially useful Medical Imaging, where images can easily be so large as to not fit in memory.
Code GenerationEvery release, keep an eye on new features and functions supported with Code Generation. A complete list of features can be found here, but of note this release is CUDA code generation of deep learning networks such as MobileNet-v2 and DeepLab-v3+. There are new functions from Image Processing and Computer Vision, and you can generate code for LSTM networks. There are a few more examples than this, but here are some highlights:
- Generate C++ Code for Object Detection Using YOLO v2 and Intel MKL-DNN (MATLAB Coder)
- Code Generation and Deployment of MobileNet-v2 Network to Raspberry Pi (MATLAB Coder)
- Code Generation for a Sequence-to-Sequence LSTM Network (GPU Coder)
Reinforcement LearningReinforcement learning is a hot topic right now, especially in the research community. Reinforcement Learning Toolbox, first released in 19a, gives you access to the complete RL workflow: from creating an environment, to training and deployment. In R2019b we added some new exciting examples:
- Quadruped Robot Locomotion Using DDPG Agent - This example is an extension of the two-legged walking robot example that was released in R2019a to quadruped robots. Have a look to see how you can teach robots like Spot from Boston Dynamics to walk!
- Imitate MPC Controller for Lane Keep Assist - If you already have a working decision-making system that you want to build on, why reinvent the wheel? This example shows how you can exploit an existing controller for lane keep assist to warm-start reinforcement learning training.
- Create Agent Using Deep Network Designer and Train Using Image Observations -If you are looking for a simple example to get started, then check out this one. While this isn't technically new this release, it’s based on a simple pendulum environment and shows how you can put together neural network architectures interactively with Deep Network Designer.
Audio and Signal Processing
Signal:A new highlight of this release in signal is automated labeling. You can create your own labeling algorithm and bring it into the labeling apps. These two examples will show details on implementing this:
|Label QRS Complexes and R Peaks of ECG Signals Using Deep Network||Label Spoken Words in Audio Signals Using External API|
Audio:For those developing audio and speech applications we've introduced new functionality for data augmentation and feature extraction. You can now set up pipelines of randomly-parametrized audio effects for augmenting data, including pitch and time stretching.
- Keyword Spotting in Noise Using MFCC and LSTM Networks This example shows audio augmentation in practice.
- Sequential Feature Selection for Speech Emotion Recognition - An example of speech emotion recognition using audio files.
Wavelets:There are also two new examples for wavelets: Wavelet Time Scattering for Music Genre Classification & Spoken Digit Recognition. You can automatically extract features using wavelet time scattering on GPUs. This release includes these new examples that demonstrate how to use this new capability for signal classification.
Data Synthesis for TrainingWe also added some new examples that show how you can synthesize radar and communications data to train your networks.
- Pedestrian and Bicyclist Classification Using Deep Learning
- Radar Waveform Classification Using Deep Learning
To leave a comment, please click here to sign in to your MathWorks Account or create a new one.