问题背景
目前深度学习多使用python实现。不过想要配置好一个python的深度学习环境有时却并不轻松,常常因为各个第三方库版本兼容性问题而失败。相比之下,matlab仅需一次安装简化了不少工作。这几年matlab的深度学习工具箱也是发展迅速。但我发现matlab的相关资料却比较少。因此,我探索了下如何用matlab搭建一个BiLSTM用于时序遥感数据的分类。
clc,clear;
%% Load the training data
% trainX: an array with shape of (n, c, t). n represents the number
% of training samples, c is the number of features, t is the
% length of time sequence.
% trainY: an array with shape of (n,). n represents the number of training
% samples.
rootDir = 'root_dir';
trainingData = importdata(fullfile(rootDir,'train.mat'));
trainX = trainingData.trainx;
trainY = trainingData.trainy+1;
Xtrain = cell({});
for i = 1:size(trainX,1)
Xtrain{i,1} = squeeze(trainX(i,:,:));
end
Ytrain = categorical(trainY');
%% Load the validation data
valData = importdata(fullfile(rootDir,'test.mat'));
valX = valData.testx