@pavlik321
Генератор случайных Q&A важных людям

Является ли испольщование разных функций активации на выходном слое нейросети плохой идеей?

Является ли использование разных функций активации на выходном слое нейросети плохой идеей? В интернете уже многие сказали, что комбинировать не надо в скрытом и входном, но если мне требуется их скомбинировать в выходном, то и от этого следует отказаться? Например, первый выход говорит о правде или лжи(сигмоида), второй управляет передвижением(tahn), третий - информация для следующего input(вообще линейна)
  • Вопрос задан
  • 25 просмотров
Пригласить эксперта
Ответы на вопрос 1
Maksim_64
@Maksim_64
Data Analyst
является ли использование разных функций активации на выходном слое нейросети плохой идеей?
Не часто используется, по сути на выходном слое у тебя будет более одного вектора, обычно они разных типов получаются, соответсвенно для каждой тебе нужно будет, своя функция потери. И общая оценка будет подразумевать оценку каждой функции потери. И ее влияния на общую систему, возможно придется вводить дополнительные веса для функций потерь. В общем рекомендую разделить архитектуру.

ДОПОЛНЕНИЕ к ответу
У нас по всей видимости недопонимание наблюдается.
1. Разные функции активации у скрытых слоев и выходного слоя дело обычное. Функция активации для выходного слоя определятся задачей которую ты решаешь, например хочу интерпретировать выходной вектор как вероятности ну и там сигмоид или софт max, или еще что то. В то время как например RELU была в скрытых. Это очень обычно и очень нормально. Когда ты говоришь о выходном слое ты спрашиваешь себя что и в каком виде мне будет выдавать.

2. Ты упомянул, разные функции активации внутри выходного слоя, обычная архитектура это одна функция активации для выходного слоя. Потому что нейронка решает или задачу классификации или регрессии или еще что то. Но существуют редко архитектуры с более чем одной функции активации то есть твоя нейронка будет решать более одного типа задачи. Это редкая практика и она ведет к серьезным усложнениям, во время тренировки тебя появляется несколько функций потерь при это а как оптимизировать? А как иметь дело с оверфитиингом. и т.д.

NEAT тут не причем. Ты делаешь нейронку которая решает несколько разных задач, этим обусловлено несколько функций активации на выходном слое. Например я хочу в ответе увидеть матрицу, первая колонка рост падение рынка вторая колонка цена акции. И у меня на выходном слое будет более одной фенкции активации. Так делать плохо, надо две отдельные нейронки и все.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы