尝试使用GridSearchCV拟合神经网络分类器的值错误

时间:2017-08-16 12:20:30

标签: pandas numpy neural-network classification grid-search

我正在尝试使用GridSearchCV和MLPClassifier,以便使用最佳参数拟合一些训练数据:

 repositories {
     ...
     google()
 }

但是我得到以下错误/例外:

parameters={
    'learning_rate': ["constant", "invscaling", "adaptive"],
    'hidden_layer_sizes': [x for x in itertools.product((10,20,30,40,50,100),repeat=3)],
    'alpha': [10.0 **-np.arange(1, 7)],
    'activation': ["logistic", "relu", "Tanh"]
    }
ord_pred = MLPClassifier(hidden_layer_sizes = (100,1))
clf = GridSearchCV(estimator=ord_pred,param_grid=parameters,n_jobs=-1,verbose = 10)
    orders_prior1 = orders_prior.groupby('product_id').filter(lambda x: len(x) >= 3).fillna(0)
clf.fit(orders_prior1[['user_id','order_number','order_dow','order_hour_of_day','days_since_prior_order']]\
                      ,orders_prior1['product_id'], orders_prior1['user_order'])

很难发现这个的真正原因并且这种情况持续很长时间。也许它与alpha参数搜索的范围或其他东西有关。怎么修?感谢。

1 个答案:

答案 0 :(得分:0)

'alpha': [10.0 **-np.arange(1, 7)]更改为'alpha': 10.0 **-np.arange(1, 7) 如您在np.arrange()的文档中所见,函数本身已经返回了一个数组。将其放在方括号中(使它成为数组内部的数组)会导致GridSearch()引发异常。