【问题标题】:Change in running behavior of sklearn code between laptop and desktop笔记本电脑和台式机之间 sklearn 代码运行行为的变化
【发布时间】:2016-07-22 06:14:24
【问题描述】:

我正在尝试在我的笔记本电脑上完美运行的一些 Sklearn 代码中调试 Fortran 警告......但是在转移到我的桌面(这是一个新的 Ubuntu 15.10、新的 Pycharm 和新的 Anaconda3)后,我得到以下信息运行时出错sklearn.cross_validation.cross_val_score:

/anaconda3/lib/python3.5/site-packages/sklearn/externals/joblib /hashing.py:197: DeprecationWarning: 改变非 C 连续的形状 排列方式 描述符分配已弃用。维护 多维 Fortran 的 Fortran 连续性 数组,请改用 'a.T.view(...).T' obj_bytes_view = obj.view(self.np.uint8)

我提交给cross_val_score的命令是:

test_results = cross_val_score(learner(**learner_args),data,y=classes,n_jobs=n_jobs,scoring='accuracy',cv=LeaveOneOut(data.shape[0]))

迭代器是 sklearn 交叉验证对象......没有其他特别的事情发生。这里会发生什么?我错过了一些安装步骤吗?

【问题讨论】:

  • 这是否可能一直是一个问题,现在才被报告,因为您正在运行引发弃用警告的更新代码?
  • @bordeo 对此有何更新?我面临同样的问题。将 joblib 更新到最新版本也无济于事。
  • @SrikarAppal 我实际上只是做了import warnings 然后warnings.filterwarnings("ignore"),因为我的截止日期是今晚......但我会确保发布我遇到的任何东西......
  • @bordeo 在警告 scikit 只是“挂起”之后。你说忽略警告解决了你的问题?
  • @SrikarAppal 是的,忽略它解决了它......

标签: python scipy fortran scikit-learn


【解决方案1】:

仅供像我这样通过 Google 找到此 SO 帖子的人记录,这已记录为问题 #6370 用于 scikit-learn。

如上所述:

此问题已在 joblib master 中修复。它不会在 scikit-learn 中修复,直到:

1) 我们发布了一个新的 joblib

2) 我们更新 scikit-learn master 以拥有新的 joblib 版本

3) 如果你使用的是 scikit-learn 的发布版本,我猜你是,你将不得不等到有新的 scikit-learn 版本发布

我能够从@bordeo 使用上述解决方法:

import warnings
warnings.filterwarnings("ignore")

【讨论】:

    猜你喜欢
    • 2011-04-25
    • 2011-01-18
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 2011-12-22
    • 1970-01-01
    • 2020-09-10
    • 1970-01-01
    相关资源
    最近更新 更多