Какой тип активации используется MLPClasssifier ScikitLearn в выходном слое?
В настоящее время я работаю над задачей классификации с заданными метками классов 0 и 1. Для этого я использую ScikitLearn's MLPClassifier
предоставляя вывод 0 или 1 для каждого примера обучения. Однако я не могу найти какую-либо документацию, что именно делает выходной слой MLPClassifier (какая функция активации "кодировка").
Так как есть выход только одного класса, я предполагаю, что используется что-то вроде One-hot_encoding. Это предположение верно? Есть ли документация по этому вопросу для MLPClassifier
?
3 ответа
out_activation_
Атрибут даст вам тип активации, используемый в выходном слое вашего MLPClassifier.
out_activation_: string Имя выходной функции активации.
activation
Параметр просто устанавливает функцию активации скрытого слоя.
активация: {'identity', 'logistic', 'tanh', 'relu'}, по умолчанию 'relu' Функция активации для скрытого слоя.
Выходной слой определяется внутри этого фрагмента кода.
# Output for regression
if not is_classifier(self):
self.out_activation_ = 'identity'
# Output for multi class
elif self._label_binarizer.y_type_ == 'multiclass':
self.out_activation_ = 'softmax'
# Output for binary class and multi-label
else:
self.out_activation_ = 'logistic'
Следовательно, для двоичной классификации это будет logistic
и для мультикласса это будет softmax
,
Чтобы узнать больше об этих активациях, смотрите здесь.
У вас есть большая часть информации в документах. MLP - простая нейронная сеть. Он может использовать несколько функций активации, по умолчанию relu
,
Он не использует горячую кодировку, скорее, вам нужно y
(целевой) вектор с метками классов.
Насколько я понимаю, последней функцией активации является логистическая функция, и выход устанавливается равным 1, если вероятность>0,5, и равным 0 в противном случае.
Однако вы можете вывести вероятность, если хотите.