TensorFlow1.0版本与2.0版本对应

1. 问题

在调试Bert的时候,总是出现以下报错,基本上都是TensorFlow版本过高的原因:

AttributeError: module 'tensorflow' has no attribute 'xxxx'

如果已经安装了高版本tensorflow,不想降低版本,可以采取以下办法
 
 

2. 解决方法

TensorFlow官网

以前傻乎乎一个个百度,效率慢。直接进官方文档查询更快。
 
 

3. 示例

报错:AttributeError: module ‘tensorflow’ has no attribute ‘assert_less_equal’
查询官网:(侧边框输入函数名或者部分模块名,函数名一般不会变化)在这里插入图片描述

  • 第一个结果:tf.compat.v1.assert_less_equal:tf保留的1.0版本函数。一般不会出错
  • 第二个结果:tf.debugging.assert_less_equal:tf2.0版本函数(重新放置到其他版块)可能会更改
     
    一般来说,两个途径都可以用,基本上区别不大。有些时候,函数会被优化,选择v1版的少些麻烦。
     
     

4. 附加一个官网查不到的对应情况 tf.contrib.layers.layer_norm

layer_norma = tf.keras.layers.LayerNormalization(axis = -1)
layer_norma(input_tensor)

如果需要更改bert的modeling.py,参考下面的链接👇
来源:layer_norm2.0版本

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值