我试图在java实时上下文中使用DNNRegressor模型,遗憾的是这需要无垃圾实现。看起来像tensorflow-light不提供GC免费实现。阻力最小的路径是提取权重并手动重新实现NN。有没有人尝试从回归模型中提取权重并手动实施回归,如果是这样,你能描述任何陷阱吗?
谢谢!
答案 0 :(得分:0)
我不确定你的结论是否
阻力最小的路径是提取权重并手动重新实施NN。
实际上是真的。听起来我想要在Android移动应用程序中使用经过训练的模型。我个人对此并不了解,但我确信有一些有效的方法可以做到这一点。
但是,假设您确实需要提取权重,则有多种方法可以执行此操作。
执行此操作的一种直接方法是使用Tensorflows低级API实现您想要的确切网络,而不是使用固定的DNNRegressor
类(不推荐使用btw。)。这可能听起来不必要地复杂,但实际上非常简单并且具有你完全控制的优点。
获取所有可训练变量的一般方法是使用Tensorflows trainable_variables方法。
或者this也许可以帮到你。
就陷阱而言,我并不相信有任何陷阱。在一天结束时,你只是存放一堆花车。您应该确保使用适当的文件格式,如hdf5和足够的浮点精度。