在自定义类__init__方法中创建TensorFlow Keras模型遇TypeError求助
解决Keras模型创建时的TypeError问题
问题代码
self.model = keras.Sequential([ keras.layers.Dense(1, input_dim=self.degree), keras.layers.Dense(1) ]) self.model.compile(optimizer=optimizer, loss=loss) self.model.summary()
报错信息
self.model = keras.Sequential([ ^^^^^^^^^^^^^^^^^^ File "C:\Python311\Lib\site-packages\tensorflow\python\trackable\base.py", line 205, in _method_wrapper result = method(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python311\Lib\site-packages\keras\utils\traceback_utils.py", line 70, in error_handler raise e.with_traceback(filtered_tb) from None File "C:\Python311\Lib\site-packages\tensorflow\python\ops\variables.py", line 285, in __call__ return cls._variable_v1_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: VariableMetaclass._variable_v1_call() got an unexpected keyword argument 'experimental_enable_variable_lifting'
环境版本
Name: tensorflow Version: 2.12.0rc1 Summary: TensorFlow is an open source machine learning framework for everyone. Home-page: https://www.tensorflow.org/ Author: Google Inc. Author-email: packages@tensorflow.org License: Apache 2.0 Location: C:\Python311\Lib\site-packages Requires: tensorflow-intel Required-by:
解决思路
- 切换到TensorFlow稳定版:你当前使用的是2.12.0rc1候选版本,这类预发布版本通常存在未修复的兼容性bug。卸载现有版本后安装正式稳定版,执行命令:
pip uninstall tensorflow tensorflow-intel pip install tensorflow==2.12.0 - 统一Keras导入方式:确保从TensorFlow内部导入Keras,避免混用独立Keras包导致版本不匹配,导入代码改为:
from tensorflow import keras - 清理缓存后重装:如果卸载重装后问题仍存在,删除项目下的
__pycache__文件夹,再重新安装对应版本的TensorFlow。 - 检查Python版本适配性:TensorFlow 2.12.x对Python 3.11的初期支持可能存在适配问题,可尝试降级到Python 3.10版本后再搭配稳定版TensorFlow使用。
内容的提问来源于stack exchange,提问作者Devharsh Trivedi
相关产品推荐
相关产品推荐

