MATLAB与深度学习(一)— Deep Learning Toolbox

MATLAB与深度学习(一)— Deep Learning Toolbox

最近,我在学习基于matlab的深度学习的内容,并整理出如下学习笔记。本文借鉴和引用了网上许多前辈的经验和代码,如有冒犯,请及时与我联系。

1. MATLAB与深度学习的简介

  • 使用应用程序和可视化工具创建、修改和分析深度学习架构。
  • 使用应用程序预处理数据,并自动对图像、视频和音频数据进行真值标注 。
  • 在 NVIDIA® GPU、云和数据中心资源上加速算法,而无需专门编程。
  • 与基于 TensorFlow、PyTorch 和 MxNet 等框架的使用者开展协作。
  • 使用强化学习仿真和训练动态系统行为。
  • 从物理系统的 MATLAB 和 Simulink® 模型生成基于仿真的训练和测试数据。

2. MATLAB构建深度学习模型相关的工具包
MATLAB与深度学习(一)— Deep Learning Toolbox_第1张图片
3. 初识Deep Learning Toolbox

Deep Learning Toolbox™ 提供了一个用于通过算法、预训练模型和应用程序来设计和实现深度神经网络的框架。

我们可以使用卷积神经网络(ConvNet、CNN)和长短期记忆 (LSTM) 网络对图像、时序和文本数据执行分类和回归。

对于小型训练集,我们可以使用预训练深度网络模型(包括 SqueezeNet、Inception-v3、ResNet-101、AlexNet、GoogLeNet 和 VGG-19)以及从 TensorFlow®-Keras 和 Caffe 导入的模型执行迁移学习。

要加速对大型数据集的训练,我们可以将计算和数据分布到桌面计算机上的多核处理器和 GPU 中(使用 Parallel Computing Toolbox™),或者扩展到群集和云,包括 Amazon EC2® P2、P3 和 G3 GPU 实例(使用 MATLAB® Distributed Computing Server™)。

扩展:官网资料.

4.Deep Learning Toolbox的安装
(1)官方途径
打开MATLAB软件,在附加功能资源管理器上安装。
MATLAB与深度学习(一)— Deep Learning Toolbox_第2张图片
(2)偷懒途径
官网下载安装又慢又卡,直接下载相应文件资源,放在指定路径更便捷。

  • 资源在本博客CSDN下载上自行下载,解压之后放在如下路径就可以:

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\

MATLAB与深度学习(一)— Deep Learning Toolbox_第3张图片

  • 在MATLAB上添加路径如下:

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\supportpackages\vgg16

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\supportpackages\resnet50

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\supportpackages\googlenet

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\supportpackages\caffe_importer

C:\ProgramData\MATLAB\SupportPackages\R2018a\toolbox\nnet\supportpackages\alexnet

  • 下面代码运行不报错,说明安装正确:
nnet = alexnet; % 加载神经网络

安装成功之后,我们就可以运行下面示例了。

5.AlexNet
用一百多万张图像训练好的 CNN。AlexNet 最常用于图像分类。它可将图像划分为 1000 个不同的类别,包括键盘、鼠标、 铅笔和其他办公设备,以及各个品种的狗、猫、马和其他动物,AlexNet 于2012 年首次发布,已成为研究团体中众所周知的模型。

测试代码:

clear all;close all; clc;
picture = imread('1.jpg');
nnet = alexnet; % 加载神经网络 
figure,imshow(picture);
picture = imresize(picture,[227,227]);  % 调整图片大小
label = classify(nnet, picture);  % 对图片分类 image(picture); % 显示图片 title(char(label)); % 显示标签
title(char(label)); 

测试结果:
MATLAB与深度学习(一)— Deep Learning Toolbox_第4张图片
测试代码:

clear all;close all;clc
% Access the trained model 
net = googlenet; 
% See details of the architecture 
net.Layers 
% Read the image to classify 
I = imread('peppers.png'); 
% Adjust size of the image 
sz = net.Layers(1).InputSize 
I = I(1:sz(1),1:sz(2),1:sz(3)); 
% Classify the image using GoogLeNet 
label = classify(net, I) 
% Show the image and the classification results 
figure,imshow(I); 
text(10,20,char(label),'Color','white');

测试结果:
MATLAB与深度学习(一)— Deep Learning Toolbox_第5张图片

你可能感兴趣的:(深度学习)