Matlab深度学习基础笔记-1

2018-05-19  本文已影响0人  SuperZ2017

笔记来源于matlab官网,不足之处还请提出。


1.使用预训练网络


1.1加载并查看图像

    使用imread函数导入图像,支持GIF,JPEG,PNG等,如将png格式的图像读入到变量I中。

                                                    I = imread('filename.png');

    使用imshow函数显示变量中的图像。

                                                    imshow(I);


1.2使用alexnet做预测(alexnet是基于CNN的模型,已经训练好的神经网络)

    创建alexnet的副本。

                                                    net = alexnetnet;

    使用classify预训练alexnet网络对图像img进行预测,将预测结果存入变量pred1中。效果如下图。

                                                    pre1 = classify(net,img);


识别效果图

1.3CNN架构

AlexNet图层

使用deepnet(如1.2中的net)表示深度卷积网络,通过Layers使用索引引用变量的属性来检查网络的各个层次:

variable.Property,效果如下,ly是一个网络层数组:

                                                                ly=deepnet.Layers


Layers

可以使用常规的matlab数组检索单个图层,如将网络的第一个(输出)层提取到inlayer变量中:

                                                                    inlayer = ly(1);

得到的输出层属性

使用属性InputSize可以得到图层的输入层所需要的图像大小,如提取第一层(存储在变量inlayer中)的图像大小属性,并将结果存储在变量insz:

                                                            insz = inlayer.InputSize;


图像size 图像尺寸

提取输出层到变量outlayer中,因为layer共25层,所以:

                                                            outlayer = ly(25);


输出层属性

输出层属性ClassName,用于给出网络被训练预测的类别的名称,如:

                                        categorynames = outlayer.ClassNames;


上一篇下一篇

猜你喜欢

热点阅读