当我按如下方式运行python代码时,为什么管道GridSearchCV没有结果?

问题描述

最近我在python代码上遇到了如下问题:

import pandas as pd
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.decomposition import LatentDirichletAllocation
from sklearn.pipeline import Pipeline
from sklearn.model_selection import gridsearchcv
from sklearn.naive_bayes import MultinomialNB
import datetime

time_stamp_start = datetime.datetime.Now()
print('Starting time is: {}'.format(time_stamp_start.strftime('%Y.%m.%d-%H:%M:%s')))

data = pd.read_csv('Train_movie.csv')
X_train = data.Message
y_train = data.label

Count = CountVectorizer(stop_words = 'english')
# stop_words,ngram_range=(1,1),max_df=1.0,max_features=None
lda = LatentDirichletAllocation()
#n_components=10,learning_method='batch',learning_decay=.7,learning_offset=10.
mbb = MultinomialNB()
#Before Process
print('Processing Before...')
#Processing
ppl_bayes = Pipeline([('count',Count),('lda',lda),('mbb',mbb)])
param_grid = [{'count__ngram_range':[(1,(1,2),(2,2)],'count__max_df':[0.1,0.5,0.9],'lda__n_components':[7,10,12],'lda__learning_method':['online'],'lda__learning__decay':[.7,.9],'mbb__alpha':[1.0]},{'count__ngram_range':[(1,'lda__learning_method':['batch'],'mbb__alpha':[1.0]}]
print('Processing Now...')
gs_ppl_bayes = gridsearchcv(estimator = ppl_bayes,param_grid = param_grid,scoring = 'accuracy',cv = 5,n_jobs = -1)

print('Processing done!!')
gs_ppl_bayes.fit(X_train,y_train)

print('Mission processing...')
print(gs_ppl_bayes.best_params_)
time_stamp_end = datetime.datetime.Now()
print('Ending time is: {}'.format(time_stamp_end.strftime('%Y.%m.%d-%H:%M:%s')))

我想使用gridsearchcv调整我最好的超参数。很好地显示这些结果:

Starting time is: 2020.08.31-15:15:06
Processing Before...
Processing Now...
Processing done!!    

但是,等待了大约4个小时之后,没有其他后续结果!!!有什么问题?我要疯了。

提前谢谢!!伙计们!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)