我正在训练一个网络,以使用adapt_universal_transformer
和tensor2tensor
框架预测时间序列分类。每个目标时间戳都是一个分类,与上一个时间戳无关。我使用py_func
接收要素,然后在自定义指标函数中打印预测和输入。 t2t_decode
和t2t_eval
的预测在t2t_datagen
创建的相同测试数据集之间是不同的。我检查了输入是否相同。评估结果比预测结果准确得多。
如果t2t_train
和t2t_eval
中的评估结果是基线,则预测来自decode_from_dataset
和t2t_decoder
中estimator.evaluate
的结果,该结果来自定制的生成器tensor2tensor.utils.decoding.make_input_fn_from_generator
中的错误。
我已经在自定义指标函数中检查了features['inputs']
,predictions
,labels
中的每一个,features['inputs']
相同,但预测却不同。
我该如何解决问题?还是如何在不更改tensor2tensor
代码的情况下获得渴望执行的结果?