ValueError: MLP hidden_layer_sizes invalid
7 Dec 2025
1 min read
ValueError: invalid hidden_layer_sizes
$ python -c "from sklearn.neural_network import MLPClassifier; MLPClassifier(hidden_layer_sizes=0).fit([[0],[1]], [0,1])"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ValueError: hidden_layer_sizes must be a tuple of positive integers
Why this happens
Non-tuple or non-positive integers are invalid.
Fix
Use, for example, (100,) or (64,32).
Wrong code
from sklearn.neural_network import MLPClassifier
MLPClassifier(hidden_layer_sizes=0)
Fixed code
from sklearn.neural_network import MLPClassifier
MLPClassifier(hidden_layer_sizes=(100,))