美文网首页
2018-06-29《keras版本问题》

2018-06-29《keras版本问题》

作者: 布口袋_天晴了 | 来源:发表于2018-06-29 21:32 被阅读60次

任务一:自己的情感理解:

训练模型的输入:question(问题)、answer_good(好的回答)、answer_bad(不好的回答)、feature(个性特征)

最终结果:代码能在本机上无bug、跑通,存在的问题是自己的电脑内存不够,所以epoch=1,train=一小部分训练集,运行起来都比较困难。

只迭代训练了一次

关于keras版本问题

由于keras在不断的升级版本,所以存在很多废弃的掉的API或者是名字更换。以下是一些关于keras更新的一部分资料搜集。keras2.0的更新文档的链接:  https://github.com/fchollet/keras/wiki/Keras-2.0-release-notes  这个链接里面有很多别名更换的说明,对于修改keras API的参数名,很有帮助。

我电脑上的keras版本

问题1:警告:UserWarning: Update your `Conv1D` call to the Keras 2 API: `Conv1D(activation="tanh", filters=500, kernel_size=1, padding="same")`

解决办法:

解决办法 keras版本2中一些别名,替换了版本1中的名字

其实最好的办法是跳转到出错的最终模块中去,仔细阅读新模块给出的注释说明,其次的方法是新旧文档对比查看。

问题2:警告:UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.

keras2.1.5版本中的 merge(mode='contact')都还支持mode参数,但到keras版本2.2.0中,merge的mode参数不支持了。

以前的mode参数表示:合并模式,如果为字符串,则为下列值之一{“sum”,“mul”,“concat”,“ave”,“cos”,“dot”}

mode: String or lambda/function. If string, must be one of: 'sum', 'mul', 'concat', 'ave', 'cos', 'dot', 'max'.

If lambda/function, it should take as input a list of tensor and return a single tensor.

mode参数还可以是一个lambda/function功能函数。mode参数用起来挺强大的。

警告显示,merge这个功能已经被切分了,并且2017.08就移除了merge这个功能函数,取而代之的是keras.layers.merge,里面直接包含了add,concatenate功能。    意思就是不在支持mode这个参数了!!!!如果还要使用的话,就得自定义了。

参考文章:

【1】解决UserWarning: Update your `Conv2D` call to the Keras 2 API问题

【2】How to “Merge” Sequential models in Keras 2.0?


相关文章

网友评论

      本文标题:2018-06-29《keras版本问题》

      本文链接:https://www.haomeiwen.com/subject/osvoyftx.html