跑程序遇到load_weight未定义skip_mismatch关键字、no attributu 'leaky_relu'两个报错

源头

事情的开始是这样的:  想要跑一个yolo v3的baseline程序,但是使用服务器上的环境总是跑不通,服务器环境为 tensorflow gpu==1.3,keras==2.1.1。

问题

在跑程序时候老是遇到两个问题,第一个问题是 “AttributeError: module ‘tensorflow.python.ops.nn’ has no attribute ‘leaky_relu”,网上给出的答案是升级为keras ==2.1.2,tensorflow-gpu==1.2.1,但是当我升级之后遇到报错“load_weights()中的未定义skip_mismatch关键字”,网上给出的答案是升级keras ==2.1.5,但是当升级后,又遇到错“AttributeError: module ‘tensorflow.python.ops.nn’ has no attribute ‘leaky_relu”,这就搞得就像死循环一样,升级kreas版本到2.1.5报错,降低到2.1.2也报错,两个不一样的错,搞得不知道怎么办。

解决

最后的解决方法是不对keras调整,而是对tensorflow-gpu版本进行调整,可能上面问题的根本还是在这里,将其升级为tensorflow-gpu==1.4就能跑成功程序了,但是要注意keras版本应该跟tensorflow-gpu版本是配套的,不然以后也可能出现一些问题。

 

心得

1.注意tensorflow-gpu和cuda、cudnn之间的版本匹配,tensorflow和keras之间的版本匹配。

2.注意因为版本的问题会导致运行别人的源码容易报错,这个得注意修改,还有要尽量进行版本的更新,因为很多很功能都是在新版本中更新的,比如这里强大的leaky_relu激活函数很明显就是在tensorflow-GPU 1.3版本没有,在1.4版本新加入的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值