tanh関数とは?シグモイドとの違いやニューラルネットワークでの役割をわかりやすく解説

tanh関数とは?

ディープラーニングや機械学習では、「活性化関数(Activation Function)」がニューラルネットワークの性能を大きく左右します。

その中でも、初期の深層学習で広く利用された代表的な関数の一つが「tanh関数(Hyperbolic Tangent Function)」です。

tanh関数は、シグモイド関数と似た滑らかなS字カーブを持ちながら、出力範囲が「-1〜1」である点が特徴です。

この性質によって、ニューラルネットワークの学習効率を改善できるため、長年にわたり重要な活性化関数として利用されてきました。

本記事では、tanh関数の仕組みや数式、シグモイド関数との違い、メリット・デメリット、そして現代AIにおける活用例までをわかりやすく解説します。

tanh関数とは?

tanh関数とは、「双曲線正接関数(Hyperbolic Tangent Function)」と呼ばれる数学関数です。

ニューラルネットワークでは、入力値に対して非線形変換を加える「活性化関数」として利用されます。

tanh関数の数式

tanh関数は以下の式で表されます。

を意味します。

tanh関数の特徴

出力範囲は-1〜1

tanh関数の最大の特徴は、出力値が「-1〜1」の範囲に収まることです。

具体的には、

  • 入力が大きい → 出力は1に近づく
  • 入力が小さい → 出力は-1に近づく
  • 入力が0 → 出力は0

となります。

S字型の滑らかな曲線

グラフはシグモイド関数と同様に、滑らかなS字型をしています。

ただし、原点を中心とした点対称になっている点が特徴です。

なぜ「双曲線正接関数」と呼ばれるのか?

tanh関数は、三角関数の「tan(タンジェント)」に対応する双曲線関数です。

数学では、

  • sinh(双曲線正弦)
  • cosh(双曲線余弦)
  • tanh(双曲線正接)

という関数群があります。

これらは、双曲線上の座標関係から定義されます。

ニューラルネットワークでの役割

ニューラルネットワークでは、単なる線形変換だけでは複雑な問題を学習できません。

そのため、各層で非線形変換を行う必要があります。

tanh関数は、この非線形性を与える活性化関数として利用されます。

活性化関数とは?

活性化関数とは、ニューロンが受け取った値を変換し、次の層へ渡すための関数です。

これによって、

  • 画像認識
  • 音声認識
  • 自然言語処理

などの複雑なパターンを学習できるようになります。

シグモイド関数との違い

tanh関数はシグモイド関数と非常によく似ています。

シグモイド関数は以下の式で表されます。

最大の違いは「ゼロ中心」

シグモイド関数

  • 出力範囲:0〜1
  • 中心値:0.5

tanh関数

  • 出力範囲:-1〜1
  • 中心値:0

ゼロ中心のメリット

tanh関数は出力の平均が0付近になりやすいため、学習効率が改善されることがあります。

これは、

  • パラメータ更新の偏りを減らす
  • 勾配の流れを安定化する

効果があるためです。

勾配消失問題との関係

初期のディープラーニングでは、シグモイド関数による「勾配消失問題」が大きな課題でした。

勾配消失問題とは?

バックプロパゲーションでは、各層の微分値を掛け合わせながら勾配を伝播します。

微分値が小さいと、

  • 勾配がどんどん小さくなる
  • 前半層が学習できなくなる

問題が発生します。

tanh関数は改善効果がある

tanh関数の微分値は最大1となります。

これは、シグモイド関数の最大微分値0.25より大きいため、勾配消失が比較的起きにくい特徴があります。

ただし完全には解決しない

tanh関数も入力値が極端に大きい場合、出力が±1付近に張り付く「飽和状態」になります。

この領域では微分値が小さくなるため、完全に勾配消失を防げるわけではありません。

現在はReLUが主流

現在の深層学習では、tanh関数よりもReLU系関数が主流になっています。

ReLU関数

ReLUは以下の式で表されます。

ReLUのメリット

ReLUは、

  • 計算が軽い
  • 勾配が消えにくい
  • 深いネットワークに強い

という特徴があります。

そのため、現在のCNNやTransformerなどではReLU系関数が広く利用されています。

tanh関数が現在も使われる場面

完全に使われなくなったわけではありません。

現在でも、

  • RNN
  • LSTM
  • GRU
  • 時系列モデル

などではtanh関数が利用されることがあります。

LSTMでの活用

LSTMでは、

  • 情報の保存
  • 状態更新

にtanh関数が利用されます。

特にセル状態の値を-1〜1に収める役割を担っています。

実務での利用例

tanh関数は以下のような分野で利用されます。

  • 音声認識
  • 翻訳AI
  • 時系列予測
  • 株価予測
  • センサーデータ解析

特に連続値や時系列を扱うモデルで活躍します。

まとめ

tanh関数(Hyperbolic Tangent Function)は、出力範囲が-1〜1のS字型活性化関数です。

シグモイド関数と似ていますが、

  • ゼロ中心
  • 勾配が比較的大きい

という特徴があり、ニューラルネットワークの学習効率改善に貢献しました。

現在ではReLU系関数が主流ですが、

  • RNN
  • LSTM
  • 時系列モデル

などでは今も重要な役割を果たしています。

tanh関数は、深層学習の進化の歴史を理解する上で欠かせない基本技術の一つです。

こちらもご覧ください:シグモイド関数とは?ニューラルネットワーク初期を支えた活性化関数をわかりやすく解説

Rate this post
Visited 2 times, 2 visit(s) today