matlab - Matlab trainNetwork 的问题。格式化观察的正确方法是什么?
问题描述
我正在尝试在 Matlab 中使用深度神经网络。但是,我收到错误:使用 trainNetwork 时出错(第 165 行)X 和 Y 中的观察数不一致。
以下是我当前的实现:
size(XX) % ans = 120000 36
size(YY) % ans = 120000 24
%% Train a Deep Neural Network
layers = [
imageInputLayer([1 36]); % Input is an "Image" 1x36 floating point vector
fullyConnectedLayer(200);
reluLayer();
fullyConnectedLayer(100);
reluLayer();
fullyConnectedLayer(50);
reluLayer();
fullyConnectedLayer(24);
regressionLayer();
];
if ~exist(checkpoint_directory_name,'dir')
mkdir(checkpoint_directory_name)
end
options = trainingOptions('sgdm', ...
'MaxEpochs', num_epochs, ...
'InitialLearnRate', 0.0001, ...
'CheckpointPath', checkpoint_directory_name, ...
'MiniBatchSize', batch_size ...
);
t = tic;
[net, info] = trainNetwork(XX, YY, layers, options);
fprintf('Trained in in %.02f seconds\n', toc(t));
我能做些什么来解决这个错误?
解决方案
我还不是深度学习工具箱方面的专家,但是,我的感觉是大小应该是:
size(XX) % answer = 36 120000;
size(YY) % answer = 24 120000;
这有帮助吗?
推荐阅读
- c++ - 从 Windows 应用程序调用 linux docker 容器
- jupyter-lab - 突出显示 Jupyterlab 3 中的事件
- php - 为什么我放 SSL 证书时 Socket.io 无法连接?
- maven - gcloud AR 无法解决依赖关系
- python - 如何保护将分发给客户端的应用程序中的 API 密钥
- angular - 如何过滤在其嵌套项目列表中包含“电视”项目的发票列表 - 使用 TypeScript
- r - 使用 dplyr、cross()、where() 和 if_else() 函数将 NA 替换为数字
- r - 用索引的名称替换字符串中的字母
- powershell - 将 CSV 文件与 Active Directory 用户进行比较并提供域
- angular - 直接 URL 路由工作正常,但不适用于域名