MATLAB卷积神经网络代码
时间: 2025-01-03 18:08:20 浏览: 9
MATLAB是一种强大的数值计算环境,也可以用于深度学习和卷积神经网络(CNN)的开发。以下是一个简单的例子,展示如何使用MATLAB的Deep Learning Toolbox创建并训练一个基本的卷积神经网络模型:
```matlab
% 导入所需库
clear; close all; clc;
fprintf('Loading Deep Learning Toolbox...\n');
net = 'convnet'; % 使用预定义的卷积网络模板
layers = [
imageInputLayer([32 32 3]) % 输入层,假设输入图片是32x32 RGB图像
convolution2dLayer(5,20) % 卷积层,5x5滤波器,20个通道
reluLayer % 激活函数,如ReLU
maxPooling2dLayer(2,'Stride',2) % 最大池化层,2x2窗口,步长为2
fullyConnectedLayer(10) % 全连接层,10个节点(对于MNIST数据集,最终输出10分类)
softmaxLayer % 输出层,概率分布
classificationLayer]; % 分类层
% 设置学习参数
options = trainingOptions('adam', ... % 使用Adam优化器
'MaxEpochs',10, ... % 总训练轮数
'MiniBatchSize',64, ... % 批量大小
'Verbose',false); % 静默模式
% 训练网络
fprintf('Training the Convolutional Neural Network...\n');
net = trainNetwork(trainData, layers, options);
% 测试模型
testLoss = loss(net, testData);
fprintf('Test Loss: %f\n', testLoss);
%
阅读全文