2010-04-08 32 views
2

我使用ruby的ai4r gem,构建了一个神经网络。 gem版本1.1允许我简单地对文件执行Marshal.dump(网络),并且我可以随时加载网络,只要我想要。如何使用Ruby的ai4r gem保存神经网络文件?

几年后的版本1.9,我再也无法做到这一点。它会在我尝试时产生此错误:

no marshal_dump is defined for class Proc 

我知道错误的原因 - 元帅无法处理对象中的特效。很公平。

那么有没有内置到ai4r?我一直在搜索没有运气。我无法想象任何实际用途的神经网络,你必须从头开始重新构建,每次你想使用它。

回答

2

我刚解决这个问题。版本1.10应该可以正常工作。

但是,如果使用lambda函数自定义传播函数,则必须在加载实例后手动恢复它。 这是因为lambda函数无法序列化,因此实现将其重置为默认函数。 对不起,我没有尽早解决,但我一直在工作一些疯狂的月份。

干杯,

塞尔吉奥Fierens。