解决:AttributeError: module ‘tensorflow_probability‘ has no attribute ‘optimizers‘

目录

一、问题

二、解决办法

 三、解决过程

四、怎么想到的?

五、关于Python运行环境的一些尝试

六、在github上自己提了问题,自己给出了解决方案


一、问题

import tensorflow as tf
import tensorflow_probability as tfp

x = tf.Variable(0.)
loss_fn = lambda: (x - 5.)**2

##convergence_criteria
losses = tfp.math.minimize(
  loss_fn, num_steps=1000, optimizer=tf.optimizers.Adam(learning_rate=0.1),
  convergence_criterion=(
    tfp.optimizers.convergence_criteria.LossNotDecreasing(atol=0.01)))

 这个代码是官网(tfp.math.minimize)提供的示例,并且显示Last updated 2023-10-03 UTC.

结果出现如下错误:

二、解决办法

tfp.optimizers.convergence_criteria.LossNotDecreasing修改为tfp.python.optimizer.convergence_criteria.LossNotDecreasing

注意:这里使用加粗来直观表示二者的区别,让读者可以快速看到二者的区别。

实际上,删掉中间的python也是可以的,原来运行不出来的代码optimizers中多了一个字母s,删掉这个字母s即可。

x = tf.Variable(0.)
loss_fn = lambda: (x - 5.)**2
losses = tfp.math.minimize(
  loss_fn, num_steps=1000, optimizer=tf.optimizers.Adam(learning_rate=0.1),
  convergence_criterion=(
    tfp.python.optimizer.convergence_criteria.LossNotDecreasing(atol=0.01)))
print("optimized value is {} with loss {}".format(x, losses[-1]))

 三、解决过程

在Github(https://github.com/tensorflow/probability/releases/tag/v0.22.0)上找到最新版本Tensorflow-probability的源代码。

下载后,可以看到

 

四、怎么想到的?

 在必应上找了许多类似的问题,虽然都是基于tensorflow的(我们的报错信息是基于tensorflow-probability)。例如:

(1)解决AttributeError: module ‘tensorflow‘ has no attribute ‘histogram_summary‘-CSDN博客

(2) 关于tensorflow 中module ‘tensorflow‘ has no attribute ‘xxx‘问题的根本解决方法

 

 

 

(3)ModuleNotFoundError: No module named ‘keras.optimizers.optimizer_experimental‘ 

这个帖子,告诉我optimizers是个文件夹,之前一直以为是module,从尝试安装这个module来着。但是报错:No module named 'optimizers'。于是在必应中搜索这个错误,就搜索到上面的这个博客。

当然还有还看了其他的一些博客和stackoverflow,相关性不大,没在这里展示了。

五、关于Python运行环境的一些尝试

最开始遇到这个问题的时候,我以为是python运行环境的问题,于是尝试改变python运行环境:

  1. 在RStudio中运行python代码(通过miniconda安装python)【攻略:在R中搭配 Python环境-饮食有度的元气少女的博客
  2. 下载Python解释器,创建Python虚拟环境。【攻略:安装python虚拟环境-CSDN博客
  3. 在coLab上运行python代码(该平台已经提前安装好了tensorflow和tensorflow-probability无需安装)(https://colab.sandbox.google.com/

在这三个平台上运行了,官网提供的示例代码,结果仍是报错。

真的差点要通过Python+PyCharm的安装步骤,来安装Python-IDE环境。(只不过下载Python3.9.13,可能服务器的网络不好,下载速度挺慢的,大概30mins。到这个问题解决了,Python3.9.13还没有下载好。于是没有尝试安装Python+PyCharm)。

六、在github上自己提了问题,自己给出了解决方案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值