“indices 参数已被弃用,将在 0.17 版本中移除(默认视为 True)”是什么意思?

我刚开始学习 Python,如果这个问题/错误很基础,请原谅我。

我正在做 Kaggle 的生物反应教程。我遇到了这个错误

C:\Anaconda\lib\site-packages\sklearn\cross_validation.py:65: DeprecationWarning: The indices parameter is deprecated and will be removed (assumed True) in 0.17 stacklevel=1) 结果: 0.458614231133

有人知道这是什么意思吗?我已经在谷歌上搜索了很多次,但找不到答案。

我运行的脚本是:

from sklearn.ensemble import RandomForestClassifierfrom sklearn import cross_validationimport loglossimport numpy as npdef main():    #读取数据,并解析为训练和目标集    dataset = np.genfromtxt(open('train.csv','r'), delimiter=',', dtype='f8')[1:]    target = np.array([x[0] for x in dataset])    train = np.array([x[1:] for x in dataset])    #在这种情况下我们将使用随机森林,但这可以是任何分类器    cfr = RandomForestClassifier(n_estimators=100)    #简单的 K-Fold 交叉验证。5 折。    #(注意:在旧版本的 scikit-learn 中,"n_folds" 参数被命名为 "k"。)    cv = cross_validation.KFold(len(train), n_folds=5, indices=False)    #遍历训练和测试的交叉验证段,并    #在每个段上运行分类器,将结果聚合到一个列表中    results = []    for traincv, testcv in cv:        probas = cfr.fit(train[traincv], target[traincv]).predict_proba(train[testcv])        results.append( logloss.llfun(target[testcv], [x[1] for x in probas]) )    #打印出交叉验证结果的平均值    print "结果: " + str( np.array(results).mean() )if __name__=="__main__":    main()

我认为它调用的是这个:

__author__ = 'nickd'import scipy as spdef llfun(act, pred):    epsilon = 1e-15    pred = sp.maximum(epsilon, pred)    pred = sp.minimum(1-epsilon, pred)    ll = sum(act*sp.log(pred) + sp.subtract(1,act)*sp.log(sp.subtract(1,pred)))    ll = ll * -1.0/len(act)    return ll

再次,如果这是基础的东西,真的很抱歉。我确实以前从未做过这个。


回答:

这意味着当你使用 indices 关键字参数调用 cross_validation.KFold 时,未来版本将不再支持它:

cv = cross_validation.KFold(len(train), n_folds=5, indices=False)

根据错误消息,在 0.17 版本中,你将得到 indices=True 的效果。消息指出他们将移除这个关键字参数,很可能他们不会忽略未使用的关键字参数,因此,如果你继续尝试传入 indices,在 0.17 版本中可能会得到 TypeError 异常。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注