首页 > 解决方案 > 收敛警告:随机优化器:达到最大迭代次数 (200),优化尚未收敛

问题描述

这是一个使用ANN.

我现在申请MLPClassifier下面的训练集。

D1= {D1+={(6,2), (6,-2), (12,2), (12,-2)}, D1-={(2,0), (0,-2), (0,2), (-2,0)}}

D2= {D2+={(4,2), (4,-2), (-4,2), (-4,-2)}, D2-={(2,1), (2,-1), (-2,1), (-2,-1)}}

并使用以下代码:

x = [[6,-2],[6,2],[12,-2],[12,2],[2,0],[0,-2],[0,2],[-2,0]]

y = [1,1,1,1,-1,-1,-1,-1]

from sklearn import neural_network
clf = neural_network.MLPClassifier(solver='adam',alpha=0.0001,hidden_layer_sizes=(5,2), random_state=1, batch_size='auto')

clf.fit(x,y)

predicted = clf.predict([[0,0],[8,3]])

print(predicted)

尝试更改分类器但失败导致以下错误:

c:\users\asuspc\appdata\local\programs\python\python36-32\lib\site-packages\sklearn\neural_network\multilayer_perceptron.py:564: ConvergenceWarning: Stochastic Optimizer: 达到最大迭代次数 (200) 并且优化尚未还没收敛。% self.max_iter, ConvergenceWarning)

我应该怎么办?

标签: pythonscikit-learnjupyter

解决方案


我通过设置 max_iter=2000 解决了这个问题,它需要更长的时间来处理,但渲染一个更好的图形会处理 PyCharm 中的警告。


推荐阅读