python - 如何在我的 LSTM 算法中使用 batch_size?
问题描述
我对 LSTM 算法中的批量大小有一些问题。我正在尝试使用 LSTM 实现 NLP,但我不知道如何在下面的代码中使用批量大小。谁能帮我这个?
在这段代码中,我有 mxn 输入矩阵和时间序列,我们可以说 n 个时间序列 (mx1) 向量和 1 个批次。但是我怎样才能实现更多的批量大小并根据批次更新重量?我会继续使用(batch * timeseries)时间进行前馈计算吗?另外,我将如何处理这些批次的反向传播部分?我需要为每批刷新单元格信息吗?
我现在不想使用 keras 或 tensorflow,我想设计自己的算法。
代码是 MATLAB 格式,但我会将其转换为 python 语言。
提前致谢。
%feed forward section (for 1 batch):
TimeSeries = 32;
for t=2:TimeSeries
a(:,t)=tanh(Wa*x(:,t)+Ua*out(:,t-1)+ba);
i(:,t)=SigFunc(Wi*x(:,t)+Ui*out(:,t-1)+bi);
f(:,t)=SigFunc(Wf*x(:,t)+Uf*out(:,t-1)+bf);
o(:,t)=SigFunc(Wo*x(:,t)+Uo*out(:,t-1)+bo);
state(:,t)=a(:,t).*i(:,t)+f(:,t).*state(:,t-1);
out(:,t)=tanh(state(:,t)).*o(:,t);
Delta(:,t)=out(:,t)-ResOut(:,t);
end
解决方案
推荐阅读
- javascript - Highcharts:如何将每列显示为单独的系列?
- jquery - 如何为多个表添加添加行、删除行
- s4sdk - S4 SDK 中 WorkforceTimesheet 中缺少类 TimeSheetEntryField
- bash - 使用 sed 和 grep 的脚本会产生意外的输出
- c++ - 错误 C2679:二进制“>>”:未定义采用“”类型右侧操作数的运算符(或没有可接受的转换)执行错误
- angular - 使用平台浏览器进行离子社交登录,我尝试在我的项目中使用 openfb 如何使用?
- mysql - 使用 MySQL 的 INSERT IGNORE 来防止重复条目(性能问题?)
- sql - Oracle / PLSQL:SELECT 语句出现 ORA-00933 错误
- python-3.x - 更改文本文档的值时遇到问题
- acumatica - 在 Acumatica 中使用自定义屏幕的批准