Глоссарий

Tanh (гиперболический тангенс)

Открой для себя мощь функции активации Танха в нейронных сетях. Узнай, как она позволяет ИИ моделировать сложные данные с нулевой эффективностью!

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

Tanh, или гиперболический тангенс, - это широко известная функция активации, используемая в искусственном интеллекте (ИИ) и машинном обучении (МОО), в частности в нейронных сетях (НС). Подобно сигмоидной функции, Tanh имеет S-образную форму (сигмоидальную), но отображает входные значения в диапазон между -1 и 1. Эта характеристика делает ее нуль-центрированной, то есть ее выходы распределены вокруг нуля. Как и другие функции активации, Tanh вносит нелинейность в сеть, позволяя моделям глубокого обучения (DL) изучать сложные паттерны и взаимосвязи в данных, которые линейные модели не могут уловить. Она происходит от математической функции гиперболического тангенса.

Как работает Танх

Функция Tanh принимает любое вещественное значение на вход и сжимает его в диапазон (-1, 1). Входы, близкие к нулю, дают выходы, близкие к нулю. Большие положительные входы приводят к выходу, приближающемуся к 1, а большие отрицательные входы дают выход, приближающийся к -1. Ее нуль-центрированная природа часто считается преимуществом по сравнению с сигмоидальной функцией (которая выдает значения от 0 до 1), потому что она может помочь алгоритму оптимизации, такому как градиентный спуск, быстрее сходиться во время обучения модели. Это происходит потому, что градиенты, передаваемые обратно во время обратного распространения, с большей вероятностью будут иметь сбалансированные положительные и отрицательные значения, что потенциально может привести к более стабильному обновлению весов модели.

Преимущества и недостатки

Преимущества:

  • Нуль-центрированный выход: Выходы в диапазоне от -1 до 1 помогают центрировать данные, передаваемые последующим слоям, что может улучшить динамику обучения по сравнению с ненулевыми центрированными функциями вроде сигмоида.
  • Более сильные градиенты: По сравнению с Sigmoid, Tanh имеет более крутые градиенты в районе нуля, что может в некоторой степени смягчить проблему исчезающего градиента во время обучения, позволяя потенциально быстрее обучаться.

Недостатки:

  • Исчезающие градиенты: Как и сигмоид, Tanh по-прежнему страдает от проблемы исчезающего градиента. При очень больших положительных или отрицательных входах функция насыщается (ее выход становится очень близким к 1 или -1), и градиент становится очень маленьким, что мешает обновлению весов в более глубоких слоях.
  • Вычислительные затраты: Tanh включает в себя гиперболические вычисления, что делает его немного более вычислительно дорогим, чем более простые функции вроде ReLU (Rectified Linear Unit).

Tanh в сравнении с другими функциями активации

  • Tanh против Sigmoid: Оба являются сигмоидальными, но выходной диапазон Tanh - (-1, 1), а Sigmoid - (0, 1). Свойство Tanh с нулевым центром часто предпочитают использовать для скрытых слоев, в то время как Sigmoid обычно используется в выходных слоях для задач бинарной классификации, где нужна вероятность.
  • Tanh против ReLU: Выходы ReLU варьируются от 0 до бесконечности и очень эффективны с вычислительной точки зрения. ReLU избегает насыщения при положительных входах, но может страдать от проблемы "умирающего ReLU" (нейроны становятся неактивными). В то время как Tanh насыщается на обоих концах, его нуль-центрированная природа может быть выгодной. Однако ReLU и его варианты(Leaky ReLU, GELU, SiLU) в значительной степени заменили Tanh во многих современных архитектурах глубокого обучения, особенно в компьютерном зрении (КВ), благодаря лучшему градиентному потоку и эффективности. Ты можешь изучить различные функции активации в глубоком обучении.

Приложения в искусственном интеллекте и машинном обучении

Тан исторически был популярным выбором, особенно в:

  • Рекуррентные нейронные сети (РНС): Танх широко использовался в скрытых состояниях RNN и таких разновидностей, как сети с долговременной памятью (Long Short-Term Memory, LSTM), особенно в задачах по обработке естественного языка (NLP). Его ограниченный диапазон помогает регулировать поток информации внутри рекуррентных связей. Подробнее об этом читай в статье "Понимание LSTM".
  • Скрытые слои: Его можно использовать в скрытых слоях фидфорвардных сетей, хотя сейчас чаще встречаются варианты ReLU. Его можно выбрать, когда свойство нулевого центра особенно выгодно для конкретной задачи или архитектуры.
  • Анализ настроения: В старых моделях NLP Танх помогал сопоставлять признаки, извлеченные из текста (например, вкрапления слов, обработанные RNN), с непрерывным диапазоном, представляющим полярность настроения от негативного (-1) до позитивного (+1). Ресурсы таких организаций, как Stanford NLP Group, предоставляют информацию о подобных техниках.
  • Системы управления и робототехника: В Reinforcement Learning (RL) Tanh иногда используется в качестве конечной функции активации для политик, которые выдают непрерывные действия, ограниченные определенным диапазоном (например, управление крутящим моментом двигателя в диапазоне от -1 до +1). Такие фреймворки, как OpenAI Gym, часто используются в исследованиях RL.

В то время как современные архитектуры, такие как Ultralytics YOLO часто используют функции типа SiLU для таких задач, как обнаружение объектов, понимание Tanh остается ценным. Оно обеспечивает контекст для эволюции функций активации и может все еще проявляться в специфических дизайнах сетей или унаследованных системах. Такие фреймворки, как PyTorch и TensorFlow предоставляют реализацию Tanh. Ты можешь тренироваться и экспериментировать с различными функциями активации, используя платформы вроде Ultralytics HUB.

Читать полностью