% 设置参数
inputSize = 10; % 输入维度
hiddenSize = 20; % LSTM隐藏层大小
numClasses = 2; % 类别数量
maxEpochs = 100; % 最大迭代次数
miniBatchSize = 32; % mini-batch大小
% 生成随机数据
sequenceLength = 100;
numSequences = 1000;
data = randn(inputSize, sequenceLength, numSequences);
% 生成随机标签
labels = randi([1 numClasses], 1, numSequences);
% 创建BILSTM网络
layers = [
sequenceInputLayer(inputSize)
bilstmLayer(hiddenSize, ‘OutputMode’, ‘last’)
fullyConnectedLayer(numClasses)
softmaxLayer
classificationLayer
];
% 设置训练选项
options = trainingOptions(‘adam’, …
‘MaxEpochs’, maxEpochs, …
‘MiniBatchSize’, miniBatchSize, …
‘Verbose’, false);
% 训练BILSTM网络
net = trainNetwork(data, categorical(labels), layers, options);