Tensorflow 2.16.0+在PyCharm中找不到keras的报错解决

在PyCharm(2024.2版本)中,直接使用from tensorflow import keras会提示"Cannot find reference 'keras' in 'init .py' ",找不到keras,如下图所示。

查阅相关资料,可以发现在tf2.16之后,默认的keras后端升级为了3.0,且直接引用即可。

参考链接:PyCharm cannot parse any content under tensorflow.keras 2.16.2 #73110

以及:Introducing Keras 3.0

TF 2.15: Keras2.0

python 复制代码
import tensorflow as tf
from tensorflow import keras

TF 2.16: Keras 3.0

python 复制代码
import tensorflow as tf
import keras

reddit上也有人讨论:

Because in the old days Keras was entirely separate to Tensorflow. It had a backend for Theano and maybe some other stuff. Then Francois and the TF team at Google decided to bring Keras into TF as their main high level API, trying to address the fragmentation that had been created in TF land. Since TF usage is dwindling in research, and possibly showing signs of similar in industry, Keras is now multi-backend again, supporting TensorFlow, PyTorch, and JAX.

  1. Very old code will import keras directly, and be referring to Keras 1. This code will usually use > Theano or TensorFlow 1.x as well.
  2. More recent code will import tensorflow.keras and be referring to Keras 2. This is the majority of the code you'll find.
  3. Very recent code (i.e. this year I think) will import keras directly again, or maybe keras_core, and be referring to Keras 3, the latest version.

也就是说,在最新版(2.16.0+)的Tensorflow中,只需要直接引用import keras即可正常使用keras3.0。经测试,使用keras.modelskeras.layers均可正常使用,也会有代码补全。

相关推荐
程序员三明治4 小时前
Python编辑器的安装及配置(Pycharm、Jupyter的安装)从0带你配置,小土堆视频
python·pycharm·编辑器
piaopiaolanghua1 天前
PyCharm旧版本下载地址
ide·python·pycharm
临风.1 天前
使用Pycharm进行远程ssh(以Featurize为例)
ide·pycharm·ssh·featurize
小叶lr1 天前
python 从pycharm部署到新环境
开发语言·python·pycharm
Dan.Qiao1 天前
pycharm如何处理python项目间引用
ide·python·pycharm
小叮当⇔2 天前
PYcharm——pyqt音乐播放器
ide·pycharm·pyqt
lianghaibos2 天前
虚拟环境下,pythonDjango项目配置pycharm运行/debugger运行
ide·python·pycharm
楼田莉子2 天前
Python学习——字典和文件
开发语言·python·学习·pycharm
胡乱编胡乱赢2 天前
关于在pycharm终端连接服务器
人工智能·深度学习·pycharm·终端连接服务器
盼小辉丶2 天前
DenseNet详解与实现
深度学习·keras·tensorflow2