python predict 返回_在Python中获取对应的类到predict_proba(GridSearchCV sklearn)

我正在使用GridSearchCV和一个管道来分类som文本文档.下面插入了一个代码段

clf = Pipeline([('vect', TfidfVectorizer()), ('clf', SVC())])

parameters = {'vect__ngram_range' : [(1,2)], 'vect__min_df' : [2], 'vect__stop_words' : ['english'],

'vect__lowercase' : [True], 'vect__norm' : ['l2'], 'vect__analyzer' : ['word'], 'vect__binary' : [True],

'clf__kernel' : ['rbf'], 'clf__C' : [100], 'clf__gamma' : [0.01], 'clf__probability' : [True]}

grid_search = GridSearchCV(clf, parameters, n_jobs = -2, refit = True, cv = 10)

grid_search.fit(corpus, labels)

我的问题是,当使用grid_serach.predict_proba(new_doc),然后想要找出概率与grid_search.classes_对应的类时,我得到以下错误

AttributeError: ‘GridSearchCV’ object has no attribute ‘classes_’

我错过了什么?我认为如果管道中的最后一个“步骤”是分类器,那么GridSearchCV的返回也是一个分类器.因此,可以使用该分类器的属性,例如, classes_

提前致谢!

正如上面的注释中所提到的,grid_search.best_estimator_.classes_返回了一条错误消息,因为它返回一个没有属性.classes_的管道.但是,通过首先调用管道的步骤分类器,我可以使用classes属性.这是解决方案

grid_search.best_estimator_.named_steps['clf'].classes_

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值