LSTM (Core ML) 的处理顺序

Process sequence by LSTM (Core ML)

我已经通过 coremltools 将带有 LSTM 的 Caffe 模型转换为 CoreML。现在我正在尝试执行它。但是,我找不到处理整个序列的方法

np.ndarray( (7, #sequence
             1, # batch
             120, 1, 1)) #items dims

因为我找不到只设置隐藏状态的首字母 (LSTM_1_c_in) 和初始历史 (LSTM_1_h_in) 和 自动 在处理序列的下一项时使用前一个 states/result。

通过手动重启方法 'predict' 手动设置 LSTM_1_c_inLSTM_1_h_in来自之前的输出(模型分别返回 LSTM_1_h_outLSTM_1_c_out)。

是否可以通过 1 运行 处理 整个 序列?

P.S。使用 Swift 的方式也是可以接受的。

例如,LSTM num_outputs 等于 3。

  • 如果 lstm 获得初始历史和状态 np.ndarray((1,1,3)) 它将只处理序列的一个元素。 这是我的错误

  • 如果 lstm 获得初始历史和状态 np.ndarray((3)) 它将处理 整个 序列(但它 returns 只是结果处理没有完整历史记录的最后一个元素)。