Python 3.x 为什么我在Jupyter的TensorFlow有问题?

Python 3.x 为什么我在Jupyter的TensorFlow有问题?,python-3.x,tensorflow,keras,jupyter-notebook,Python 3.x,Tensorflow,Keras,Jupyter Notebook,我在Jupyter笔记本上运行python代码已经有一段时间了。然而,我最近选择了风格转换与深度学习的兴趣。我为练习而获得的代码要求我将TensorFlow降级到较低的版本。幸运的是,这是可行的,但不幸的是,我开发了几个月的所有其他代码(需要TensorFlow后端)都停止了工作。我试着使用JupyterLab,有时,他们工作,而大多数时候,我得到相同的错误,就像在Jupyter笔记本。现在,唯一的办法就是把我的代码移到Spyder(这很令人沮丧)。 每次运行代码时,都会出现以下错误: Attr

我在Jupyter笔记本上运行python代码已经有一段时间了。然而,我最近选择了风格转换与深度学习的兴趣。我为练习而获得的代码要求我将TensorFlow降级到较低的版本。幸运的是,这是可行的,但不幸的是,我开发了几个月的所有其他代码(需要TensorFlow后端)都停止了工作。我试着使用JupyterLab,有时,他们工作,而大多数时候,我得到相同的错误,就像在Jupyter笔记本。现在,唯一的办法就是把我的代码移到Spyder(这很令人沮丧)。 每次运行代码时,都会出现以下错误:

AttributeError                            Traceback (most recent call last)
<ipython-input-2-6d5587dfcc0c> in <module>
  1 # import all libraries
----> 2 import keras
  3 from keras.models import Sequential
  4 from keras.layers import Dense, Activation, Dropout
  5 from keras.layers.convolutional import Conv1D

~\Miniconda3\envs\tensorflow\lib\site-packages\keras\__init__.py in <module>
  1 from __future__ import absolute_import
  2 
----> 3 from . import utils
  4 from . import activations
  5 from . import applications

~\Miniconda3\envs\tensorflow\lib\site-packages\keras\utils\__init__.py in <module>
  4 from . import data_utils
  5 from . import io_utils
----> 6 from . import conv_utils
  7 
  8 # Globally-importable utils.

~\Miniconda3\envs\tensorflow\lib\site-packages\keras\utils\conv_utils.py in <module>
  7 from six.moves import range
  8 import numpy as np
----> 9 from .. import backend as K
 10 
 11 

~\Miniconda3\envs\tensorflow\lib\site-packages\keras\backend\__init__.py in <module>
 87 elif _BACKEND == 'tensorflow':
 88     sys.stderr.write('Using TensorFlow backend.\n')
---> 89     from .tensorflow_backend import *
 90 else:
 91     # Try and load external backend.

~\Miniconda3\envs\tensorflow\lib\site-packages\keras\backend\tensorflow_backend.py in <module>
  3 from __future__ import print_function
  4 
----> 5 import tensorflow as tf
  6 from tensorflow.python.framework import ops as tf_ops
  7 from tensorflow.python.training import moving_averages

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\__init__.py in <module>
 22 
 23 # pylint: disable=g-bad-import-order
---> 24 from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
 25 
 26 try:

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\__init__.py in <module>
 86 # Bring in subpackages.
 87 from tensorflow.python import data
---> 88 from tensorflow.python import keras
 89 from tensorflow.python.feature_column import feature_column_lib as feature_column
 90 from tensorflow.python.layers import layers

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\__init__.py in <module>
 23 
 24 from tensorflow.python.keras import activations
---> 25 from tensorflow.python.keras import applications
 26 from tensorflow.python.keras import backend
 27 from tensorflow.python.keras import callbacks

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\applications\__init__.py in 
<module>
 23 
 24 from tensorflow.python.keras import backend
---> 25 from tensorflow.python.keras import engine
 26 from tensorflow.python.keras import layers
 27 from tensorflow.python.keras import models

 ~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\engine\__init__.py in 
 <module>
 21 # TODO(fchollet): Remove hourglass imports once external code is done importing
 22 # non-public APIs.
---> 23 from tensorflow.python.keras.engine.base_layer import InputSpec
 24 from tensorflow.python.keras.engine.base_layer import Layer
 25 from tensorflow.python.keras.engine.input_layer import Input

 ~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\engine\base_layer.py in 
 <module>
 37 from tensorflow.python.keras import initializers
 38 from tensorflow.python.keras import regularizers
---> 39 from tensorflow.python.keras.utils import generic_utils
 40 from tensorflow.python.keras.utils import tf_utils
 41 # A module that only depends on `keras.layers` import these from here.

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\utils\__init__.py in <module>
 30 from tensorflow.python.keras.utils.generic_utils import Progbar
 31 from tensorflow.python.keras.utils.generic_utils import serialize_keras_object
---> 32 from tensorflow.python.keras.utils.io_utils import HDF5Matrix
 33 from tensorflow.python.keras.utils.layer_utils import convert_all_kernels_in_model
 34 from tensorflow.python.keras.utils.layer_utils import get_source_inputs

~\Miniconda3\envs\tensorflow\lib\site-packages\tensorflow\python\keras\utils\io_utils.py in <module>
 27 
 28 try:
---> 29   import h5py
 30 except ImportError:
 31   h5py = None

~\Miniconda3\envs\tensorflow\lib\site-packages\h5py\__init__.py in <module>
 32         raise
 33 
---> 34 from . import version
 35 
 36 if version.hdf5_version_tuple != version.hdf5_built_version_tuple:

~\Miniconda3\envs\tensorflow\lib\site-packages\h5py\version.py in <module>
 15 
 16 from collections import namedtuple
---> 17 from . import h5 as _h5
 18 import sys
 19 import numpy

h5py\h5.pyx in init h5py.h5()

AttributeError: type object 'h5py.h5.H5PYConfig' has no attribute '__reduce_cython__'
AttributeError回溯(最近一次调用)
在里面
1#导入所有库
---->2进口干酪
3来自keras.models的导入顺序
从keras.4层导入致密、活化、脱落
5来自keras.layers.Conv1D卷积输入
~\Miniconda3\envs\tensorflow\lib\site packages\keras\\uuuuu init\uuuuuuuuu.py in
1来自未来导入绝对导入
2.
---->3从。导入UTIL
4来自。导入激活
5从。导入应用程序
中的~\Miniconda3\envs\tensorflow\lib\site packages\keras\utils\\uuuuuu init\uuuuuuuuuu.py
4来自。导入数据工具
5从。导入io_utils
---->6从。导入conv_utils
7.
8#全球重要UTIL。
中的~\Miniconda3\envs\tensorflow\lib\site packages\keras\utils\conv\u utils.py
7从6.5移到进口范围
8作为np进口numpy
---->9从。。将后端导入为K
10
11
中的~\Miniconda3\envs\tensorflow\lib\site packages\keras\backend\\uuuuu init\uuuuuuuuuu.py
87 elif\u后端=='tensorflow':
88 sys.stderr.write('使用TensorFlow后端。\n')
--->89来自tensorflow_后端导入*
90其他:
91#尝试加载外部后端。
中的~\Miniconda3\envs\tensorflow\lib\site packages\keras\backend\tensorflow\u backend.py
3来自未来导入打印功能
4.
---->5导入tensorflow作为tf
6从tensorflow.python.framework将ops导入为tf_ops
7从tensorflow.python.training导入移动平均值
~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\\uuuuu init\uuuuuuuuu.py in
22
23#pylint:disable=g-bad-import-order
--->24从tensorflow.python导入pywrapu tensorflow35; pylint:disable=未使用的导入
25
26尝试:
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\\uuuu init\uuuuuu.py
86#带上分装。
87从tensorflow.python导入数据
--->88从tensorflow.python导入keras
89从tensorflow.python.feature_column导入feature_column_lib作为feature_column
90从tensorflow.python.layers导入图层
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\\uuuuu init\uuuuuu.py
23
24来自tensorflow.python.keras导入激活
--->25来自tensorflow.python.keras导入应用程序
26从tensorflow.python.keras导入后端
27从tensorflow.python.keras导入回调
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\applications\\uuuuu init\uuuuuu.py
23
24从tensorflow.python.keras导入后端
--->25来自tensorflow.python.keras导入引擎
26从tensorflow.python.keras导入层
27来自tensorflow.python.keras导入模型
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\engine\\uuuu init\uuuu.py
21#TODO(fchollet):完成外部代码导入后删除沙漏导入
22#非公共API。
--->23来自tensorflow.python.keras.engine.base\u层导入InputSpec
24来自tensorflow.python.keras.engine.base_层导入层
25来自tensorflow.python.keras.engine.input\u层导入输入
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\engine\base\u layer.py
37从tensorflow.python.keras导入初始值设定项
38从tensorflow.python.keras导入正则化器
--->39从tensorflow.python.keras.utils导入通用\u utils
40从tensorflow.python.keras.utils导入tf_utils
41#一个只依赖于“keras.layers”的模块从这里导入这些。
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\utils\\uuuuu init\uuuuu.py
30来自tensorflow.python.keras.utils.generic\u utils导入程序栏
31从tensorflow.python.keras.utils.generic\u utils导入序列化\u keras\u对象
--->32从tensorflow.python.keras.utils.io_utils导入HDF5矩阵
33从tensorflow.python.keras.utils.layer\u utils导入转换所有内核
34从tensorflow.python.keras.utils.layer\u utils导入获取\u源\u输入
中的~\Miniconda3\envs\tensorflow\lib\site packages\tensorflow\python\keras\utils\io\u utils.py
27
28尝试:
--->29进口h5py
30除恐怖主义外:
31 h5py=无
~\Miniconda3\envs\tensorflow\lib\site packages\h5py\\uuuuu init\uuuuuuuuu.py in
32提高
33
--->34来自。导入版本
35
36如果version.hdf5\u version\u tuple!=version.hdf5\内置\版本\元组:
中的~\Miniconda3\envs\tensorflow\lib\site packages\h5py\version.py
15
16从集合导入名为tuple的
--->17来自。将h5作为h5进口
18进口系统
19进口货币
初始化h5py.h5()中的h5py\h5.pyx
AttributeError:类型对象“h5py.h5.H5PYConfig”没有属性“\uuu reduce\u cython\uuu”
我如何纠正这种情况?
非常感谢期待您的建议。

什么是
tf.\uuuuu版本\uuuuuu
以Jupyter和Spyder打印出来的?这是预期的tensorflow版本吗?你能通过导入h5py重现问题吗?@mirekphd,我不明白你的问题很简单,如果导入h5py,你会得到同样的错误吗?@Dean:那么tensorflow版本在工作(Spyder,Lab)和故障(笔记本)设置中是相同的吗?奇怪的是,我认为笔记本电脑的python内核有一个错误升级的TF版本。。。