我尝试使用CNTK和TF在一个虚拟数据集上实现char-LSTM分类模型,两个模型在一个完美的数据集上都达到了100%的准确率(我现在不担心过度拟合)。你知道吗
然而,一旦训练完成,模型被保存到一个文件中并恢复,模型似乎忘记了训练,在同一个数据集上的性能很差。你知道吗
我比较了训练后和恢复后LSTMs和稠密层的权重和偏差,它们非常匹配。我觉得还有一些东西需要恢复(可能是LSTM状态?)使模型重新准确运行。你知道吗
恢复后的LSTM模型是否需要以某种方式“启动”,然后才能再次满负荷运行?你知道吗
代码和数据集可用here。你知道吗
Tags:
此问题与保存/加载LSTM无关。你知道吗
在Python中,将集合转换为列表时,结果不会排序,并且不同于运行:
因此,在您的代码中,不同的字符在向量中的位置会因运行而异,因此性能只是随机的。你知道吗
只需将
all_chars = list(set(all_chars))
更改为all_chars = sorted(set(all_chars))
就可以解决这个问题(我只验证了CNTK脚本)。你知道吗相关问题 更多 >
编程相关推荐