initialization of _pywrap_checkpoint_reader raised unreported exception

#import tensonflow
#CNN

img

img

img


在利用tensorflow搭建cnn时,import tensorflow还是keras都出现了initialization of _pywrap_checkpoint_reader raised unreported exception这个错误

可能是tensorflow和keras版本不兼容
tensorflow 1.x:keras是tensorflow 1.x的一部分,可以直接与tensorflow 1.x一起使用。具体来说,对于tensorflow 1.13 – 1.15,keras的版本应该在2.2.4 – 2.3.1之间。

tensorflow 2.0 – 2.4: tensorflow 2.0及以上版本的keras已经被作为最初的api。keras的2.3.0 版本及更高版本均支持tensorflow 2.0 – 2.4。

keras 2.4.0 及以上版本兼容 tensorflow 2.4 版本。

tensorflow 2.5版本需要使用keras的版本为2.5.0 或者更高。

你的TensorFlow和Keras是否安装正确,是不是最新版本,操作系统和相关库(如CUDA和cuDNN)的配置是否正确,或者重启python环境试试。

TensorFlow版本问题

重新搭建,手把手教你使用Keras和TensorFlow构建自己的CNN模型
非常详细,可以跟着一步步来

问题点:版本差异导致的问题
需要事先确定需要的Python、Keras以及TensorFlow版本。
构建自己的CNN模型,而且需要使用一些TensorFlow 2.3版本以后才支持的API,
那么目前来说(2022.3.16)得需要Python 3.7以上的版本。

发生这个错误,应该是Keras以及TensorFlow版本不对,或者这两个库所依赖其它库的版本不对,比如依赖numpy这个库,而你电脑上安装的这个numpy的版本和要求的不怕匹配。那这个时候你就需要更新numpy解决,具体不指定哪个版本,可以一个版本一个版本更。

通常是由于TensorFlow或Keras的版本不兼容导致的。
请确保正在使用最新版本的TensorFlow和Keras。

pip install --upgrade tensorflow
pip install --upgrade keras

也可能是计算机上缺少某些依赖项或库。

可以尝试卸载它们并重新安装:


pip uninstall tensorflow keras
pip install tensorflow keras

版本兼容问题~~~或者缺少依赖,加载checkpoint时可能需要依赖其他库或组件,建议你换个tensorflow版本,做适配的话改动太大了~

版本不兼容导致的,重新安装匹配的版本

以下答案参考newbing,回答由博主波罗歌编写:
这个错误可能是由于TensorFlow库与其他库或Python环境的冲突引起的。以下是一些可能的解决方法:

  1. 检查TensorFlow和相关库的版本兼容性。确保使用最新版本的TensorFlow并且与其他库版本兼容。可以通过卸载现有的TensorFlow版本,然后重新安装最新版本来实现。

  2. 如果你使用的是GPU版本的TensorFlow,确保安装了正确的CUDA和cuDNN版本。你可以根据TensorFlow的文档或者你使用的版本查找正确的CUDA和cuDNN版本。

  3. 检查是否有其他库与TensorFlow冲突。尝试禁用其他库并重新导入TensorFlow。如果问题解决,逐一启用其他库并检查冲突。

  4. 清除Python环境缓存。有时,缓存可能导致问题。你可以通过删除Python环境缓存文件或尝试在新的Python虚拟环境中安装TensorFlow来解决问题。

  5. 如果你是在Jupyter Notebook或其他集成开发环境中运行代码,尝试重新启动内核或重新启动整个开发环境。

下面是一个简单的CNN示例代码:

import tensorflow as tf
from tensorflow.keras import datasets, layers, models

# 加载数据集
(train_images, train_labels), (test_images, test_labels) = datasets.cifar10.load_data()
# 标准化像素值
train_images, test_images = train_images / 255.0, test_images / 255.0

# 构建CNN模型
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10))

# 编译和训练模型
model.compile(optimizer='adam',
              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
              metrics=['accuracy'])

history = model.fit(train_images, train_labels, epochs=10, 
                    validation_data=(test_images, test_labels))

请注意,代码仅供参考,你可能需要根据你的数据集和需求进行适当的修改。
如果我的回答解决了您的问题,请采纳!