我正在尝试导入已保存为.h5文件的keras模型。但是导入的第一行给我错误。这是出现错误的行
from keras.models import load_model
我检查了所有依赖关系,没关系。我有Keras 2.2.4。我收到的错误:
Using TensorFlow backend.
Traceback (most recent call last):
File "drive1.py", line 1, in <module>
from keras.models import load_model
File "E:\python3.6.6\lib\site-packages\keras\__init__.py", line 3, in <module>
from . import utils
File "E:\python3.6.6\lib\site-packages\keras\utils\__init__.py", line 6, in <module>
from . import conv_utils
File "E:\python3.6.6\lib\site-packages\keras\utils\conv_utils.py", line 9, in <module>
from .. import backend as K
File "E:\python3.6.6\lib\site-packages\keras\backend\__init__.py", line 89, in <module>
from .tensorflow_backend import *
File "E:\python3.6.6\lib\site-packages\keras\backend\tensorflow_backend.py", line 5, in <module>
import tensorflow as tf
File "C:\Users\Dhruv\AppData\Roaming\Python\Python36\site-packages\tensorflow\__init__.py", line 24, in <module>
from tensorflow.python import * # pylint: disable=redefined-builtin
File "C:\Users\Dhruv\AppData\Roaming\Python\Python36\site-packages\tensorflow\python\__init__.py", line 52, in <module>
from tensorflow.core.framework.graph_pb2 import *
File "C:\Users\Dhruv\AppData\Roaming\Python\Python36\site-packages\tensorflow\core\framework\graph_pb2.py", line 6, in <module>
from google.protobuf import descriptor as _descriptor
File "E:\python3.6.6\lib\site-packages\google\protobuf\__init__.py", line 37, in <module>
__import__('pkg_resources').declare_namespace(__name__)
File "E:\python3.6.6\lib\site-packages\pkg_resources.py", line 1479, in <module>
register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider)
AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'
我感觉有些软件包版本不匹配,但是不确定应该进一步检查什么。我正在使用pip来安装软件包。
答案 0 :(得分:1)
最后,从一些参考资料中我发现我的python和pip之间存在某些版本不匹配的情况。实际上,我本应该专注于以下错误消息:
__import__('pkg_resources').declare_namespace(__name__)
有帮助的是
python -m ensurepip --upgrade