mxnet:如何使用经过训练的 RNN 模型进行预测

mxnet : how to make prediction using a trained RNN model

我正在测试 mxnet 的 RNN 模型。教程 here 不起作用,错误消息说许多函数已被弃用。我没有找到 RNN 的最新教程。 mxnet项目中还有一些例子。但对于 RNN,examples 仅显示如何使用训练集训练模型。他们没有展示如何使用经过训练的模型进行进一步的预测。训练代码如下:

model.fit(
    train_data          = data_train,
    eval_data           = data_val,
    eval_metric         = mx.metric.Perplexity(invalid_label),
    kvstore             = args.kv_store,
    optimizer           = args.optimizer,
    optimizer_params    = { 'learning_rate': args.lr,
                            'momentum': args.mom,
                            'wd': args.wd },
    initializer         = mx.init.Xavier(factor_type="in", magnitude=2.34),
    num_epoch           = args.num_epochs,
    batch_end_callback  = mx.callback.Speedometer(args.batch_size, args.disp_batches))

有人知道如何使用经过训练的 RNN 模型 进行推理或预测吗?

我必须澄清一下,我正在寻找如何使用 RNN 模型 进行预测,而不是 CNN 或其他模型。

非常感谢您对我的帮助!!!

通常模型是扩展 BaseModel class. And BaseModel has the method predict。该方法可以使用与 fit 方法使用的相同类型:DataIter,只有一个区别,它不需要 train_data,只需要 eval_data。所以实际的预测过程可以这样简单的实现:

result = mod.predict(dataiter.next)