每当我在终端上运行 tensorflow 时,sklearn 都会发出警告消息

Posted

技术标签:

【中文标题】每当我在终端上运行 tensorflow 时,sklearn 都会发出警告消息【英文标题】:sklearn warning message whenever I run tensorflow on terminal 【发布时间】:2017-11-30 15:54:39 【问题描述】:

每次我在终端上运行 tensorflow 文件时,都会在文件运行之前弹出此警告。我检查了我的 sklearn 版本,它是 0.18.1。您如何使此消息不出现?谢谢。

anaconda2/envs/tensorflow/lib/python2.7/site-packages/sklearn/cross_validation.py:44:DeprecationWarning:此模块在 0.18 版中已弃用,取而代之的是 model_selection 模块,其中所有重构的类和函数被移动。另请注意,新的 CV 迭代器的接口与此模块的接口不同。此模块将在 0.20 中删除。 "这个模块将在 0.20 中被移除。", DeprecationWarning)

【问题讨论】:

【参考方案1】:

这不是一条错误消息,它只是一个警告,模块 cross_validation 已从 sklearn.cross_validation 传输到 sklearn.model_selection.。这根本不是问题。

如果您仍然渴望修复它,那么您应该找出代码的 sn-p 尝试导入 sklearn.cross_validation 并将其更改为 sklearn.model_selection


如果您同时检查sklearn.cross_validationsklearn.model_selection,您会发现它们包含相同的方法。同样,这不是错误。

【讨论】:

我明白这一点。我在我的问题中称其为警告,错误地将其称为标题中的错误。你碰巧知道修复它的代码的 sn-p 吗?每次运行时看到它有点烦人.. 好的。您要么执行 explicitly 或隐式执行,即在引发警告弹出的导入 TensorFlow 模块之一中更改不正确的 import 谢谢。我只是好奇为什么会突然出现。我以前没有这个警告。由于另一个错误,我卸载并重新安装了 tensorflow,之后开始出现这种情况。我正在做的唯一导入是 import tensorflow as tf.我没有导入 sklearn。我想知道是否有一种方法可以永久修复它,而无需执行您提到的显式或隐式方法.. 如果只导入TensorFlow而弹出这个警告,说明import sklearn.cross_validation写在一个(或一堆)TensorFlow模块中.因此,通过隐式解决问题,我的意思是将该代码行更改为相应模块中的适当行。除了显式方法之外,没有其他方法可以解决此问题。或者您可以一直等到 TensorFlow 更新到新版本,其中修复了这个 import

以上是关于每当我在终端上运行 tensorflow 时,sklearn 都会发出警告消息的主要内容,如果未能解决你的问题,请参考以下文章

macOS终端登录用户名是一系列字母和数字

AoE 搭档 TensorFlow Lite ,让终端侧 AI 开发变得更加简单。

我已经安装了 tensorflow(CPU) 并为它创建了环境。我在 anacondaa 版本上运行代码,但运行代码时 spyder shwing 错误

TensorFlow——分布式的TensorFlow运行环境

在 ubuntu 的 gpu 上安装 tensorflow

当我在 mac 上安装了 python 3.5 时,终端运行 python 2.7。