FutureWarning:不建议将issubdtype的第二个参数从float转换为np.floating
numpy
python
tensorflow
15
0

更新我的NumpyTensorflow我得到了这类警告。我已经尝试过这些 ,但是没有任何效果,每条建议都将不胜感激。

FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters
2018-01-19 17:11:38.695932: I C:\tf_jenkins\home\workspace\rel-win\M\windows\PY\36\tensorflow\core\platform\cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2
参考资料:
Stack Overflow
收藏
评论
共 8 个回答
高赞 时间 活跃

这可能是您的情况,也可能不是,但是从h5py软件包中也发出了同样的警告:

/home/user/bin/conda3/lib/python3.6/site-packages/h5py/__init__.py:34的第二个参数从floatnp.floating 。不建议使用float 。将来,它将被视为np.float64 == np.dtype(float).type 。从._conv导入register_converters作为_register_converters

对于任何遇到 问题的人来说,这是一个已知的h5py问题 ,由numpy 1.14引入。如开发人员所述:

您可以忽略该警告,此警告暂时不会引起任何问题,但是当h5py可用时,您应该升级到下一个版本。

...所以它是无害的。该修补程序刚刚合并到母版中。但是在发布更新之前,解决方法是将numpy降级为以前的版本:

pip install numpy==1.13.0

更新h5py 已发布带有此修复程序的RC版本。以下命令应执行此操作:

pip install h5py==2.8.0rc1

更新(FINAL) :现在有完整版本。因此,您可以简单地运行:

pip install --upgrade h5py
收藏
评论

您可以升级H5PY

pip install --upgrade h5py
收藏
评论

这是由于h5py和numpy之间的版本冲突。您需要做的就是通过如下命令降低numpy版本:

pip install numpy==1.13.0
收藏
评论

将此警告升级为scipy。为此,您可以使用pip升级scipy。

**sudo pip install --upgrade scipy**
收藏
评论

我尝试过这些,它为我解决了同样的问题,只需将它们放在您的代码顶部

import os
os.environ["TF_CPP_MIN_LOG_LEVEL"]="3"
收藏
评论

在我的情况下,上述方法均无效,并且我不想降级任何软件包。

Github上有一个简单的解决方案,只需取消警告即可:

import warnings
with warnings.catch_warnings():
    warnings.filterwarnings("ignore",category=FutureWarning)
    import numpy as np
    import tensorflow as tf
    import h5py as h5py

然后在with语句的范围内导入导致错误的任何软件包( numpy, tensorflow, h5py

收藏
评论

以前我遇到相同的错误,我只是用过warnings()模块。在您所有导入之后,我都使用了这些代码,

import warnings
warnings.filterwarnings('ignore', '.*do not.*',)
收藏
评论

您还可以使用以下代码通过在代码开头使用以下行来从终端删除警告行。

带有警告的代码:

import numpy as np, sys, tensorflow as tf print('\nStart of Code...\n')

输出:

FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type. from ._conv import register_converters as _register_converters

Start of Code...

删除警告的代码:

import numpy as np, sys, tensorflow as tf for i in range(3): # Add this for loop. sys.stdout.write('\033[F') # Back to previous line. sys.stdout.write('\033[K') # Clear line.

print('\nStart of Code...\n')

输出:

Start of Code...

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号