恒等関数 (G検定)

恒等関数

1. 定義と概要

恒等関数とは、入力された値をそのまま出力する関数で、数式ではf(x)=xと表される、最も単純な活性化関数(各層に入ってきた信号の合計を、次の層へ渡す出力値に変換する関数)です。線形関数(入力を定数倍して足し合わせるだけの、まっすぐな関係を表す関数)の一種です。

入力された値に何の変換も加えないため、住宅価格や気温のような連続する数値を予測する回帰(住宅価格や気温のような連続する数値を予測するタスク)の出力層(ネットワークの最後にあり、最終的な予測結果を出す層)に用いられます。

ニューラルネットワーク(人間の脳の神経回路を模した、層状につながったノードの集合で予測や分類を行う仕組み)の出力層で使う活性化関数は、解こうとするタスクの種類によって決まります。回帰タスクでは予測したい数値をそのままの尺度で出力する必要があります。そのため、出力を特定の範囲に押し込めるシグモイド関数(入力値を0から1の範囲に変換する関数)やソフトマックス関数(複数の出力値を確率分布に変換する関数)ではなく恒等関数が使われます。

一方、活性化関数は本来、層を重ねるほど複雑な非線形の関係を学習できるようにする役割を担っています。恒等関数は非線形性を持たないため、入力層と出力層の間にある隠れ層(データの特徴を段階的に抽出・変換する層)で用いると層を重ねる意味が失われるという特性があります。

2. 試験対策ポイント

重要な論点になるのは、出力層とタスクの対応関係です。回帰タスクは恒等関数、2値分類(2つのカテゴリのどちらに当てはまるかを判定するタスク)はシグモイド関数(入力値を0から1の範囲に変換し、確率のように解釈できる出力にする関数)が使われます。多クラス分類(3つ以上のカテゴリの中からどれに当てはまるかを判定するタスク)ではソフトマックス関数(複数の出力値を、合計が1になる確率の形に変換する関数)が使われ、この組み合わせが柱になります。

出力層の選び方は、誤差関数(損失関数。予測値と正解値のズレの大きさを数値で表す関数)との組み合わせでも整理できます。恒等関数を使う回帰タスクでは、平均二乗誤差(予測値と正解値の差を2乗して平均した、回帰タスクで使う誤差の指標。MSE)が対になり、分類タスクで使う交差エントロピー誤差(分類タスクで、予測した確率と正解の差の大きさを測る指標)とは使い分けが異なります。

タスク・出力層の活性化関数・誤差関数の三つの対応を、まとめて並べると次のようになります。

タスク 出力層の活性化関数 対になる誤差関数
回帰 恒等関数 平均二乗誤差(MSE)
2値分類 シグモイド関数 交差エントロピー誤差
多クラス分類 ソフトマックス関数 交差エントロピー誤差

対応を入れ替えた選択肢に惑わされないよう、セットで整理しておくと安心です。

隠れ層に恒等関数だけを使うと、活性化関数を何層重ねても数学的には単層のネットワークと等価になり、層を深くする効果(多層化による表現力の向上)が失われるという関係にあります。そのため隠れ層にはReLU関数(入力が0以上ならそのまま出力し、0未満なら0を出力する、隠れ層でよく使われる関数)のような非線形関数(出力が入力に比例せず、グラフが直線にならない関数)が使われます。

恒等関数はf(x)=xという最も単純な線形関数であり、線形関数を活性化関数に使うと非線形性が失われるという一般的な性質の具体例として、恒等関数が取り上げられる点が試験対策の要点になります。

3. 関連概念との比較・相違点

シグモイド関数との最大の違いは、出力範囲とタスクの向き先にあります。恒等関数は入力をそのままの値で出力するため、任意の範囲の数値を扱える点で回帰タスクに向いています。

シグモイド関数は出力を0から1の範囲に変換して確率として解釈できるため、2値分類タスクに向いており、恒等関数とは設計思想が異なります。値の尺度を保つか、確率という限られた枠に押し込めるかという発想の違いが、両者を分ける軸になっています。

ソフトマックス関数との最大の違いは、出力の個数と形式です。恒等関数は1つの連続値をそのまま出力するのに対し、ソフトマックス関数は複数の出力値を合計が1になる確率分布に変換します。単一の数値を出すか、複数クラスの確率を出すかという役割の違いにあたり、多クラス分類タスクの出力層にはソフトマックス関数が使われます。

この2つの対比は、出力層の選び方を理解するうえでの土台になっています。恒等関数を基準にすると、シグモイド関数は「値を範囲に収める関数」、ソフトマックス関数は「複数の値を確率分布に束ねる関数」という位置づけの違いとして整理できます。

4. ビジネス・実務での活用シナリオ

不動産・金融の分野では、住宅価格や株価など連続する数値を予測するモデルの出力層に恒等関数が用いられ、予測値を円などの単位のままの尺度で出力します。0から1の範囲に変換するシグモイド関数を使ってしまうと、実際の価格とはかけ離れた数値しか得られなくなるため、出力層の選択がモデルの実用性を左右します。

小売・需要予測の分野では、来店者数や販売数量の予測モデルで恒等関数を出力層に使い、平均二乗誤差を最小化するように学習を進めます。予測値と実績値の差を数値としてそのまま扱えるため、発注量や人員配置の調整といった実務判断に直結する形で結果を使えます。

気象・エネルギーの分野でも、気温や電力需要のような連続値の予測に恒等関数が使われます。シグモイド関数のように出力範囲を制限しない設計であることが、氷点下の気温や需要のピーク値のような幅広い値を扱ううえで実務上重要になります。

5. 要点まとめ

  • 恒等関数はf(x)=xで表される、入力された値をそのまま出力する最も単純な活性化関数です。
  • 回帰タスクの出力層で使われ、誤差関数には平均二乗誤差が対になります。
  • 隠れ層で恒等関数だけを使うと非線形性が失われ多層化の意味がなくなるため、隠れ層にはReLU関数などの非線形関数が使われます。

6. 確認問題

問1恒等関数は入力された値をそのまま出力する関数であり、回帰タスクの出力層で用いられる。

解答・解説をみる

○ 正しい

恒等関数の定義そのものにあたります。f(x)=xの形で入力をそのまま出力するため、連続する数値を予測する回帰タスクの出力層に適しています。

問2隠れ層の活性化関数として恒等関数のみを使用した場合、層をいくつ重ねても数学的には単層のネットワークと等価になり、多層化の効果が失われる。

解答・解説をみる

○ 正しい

恒等関数は線形関数であり非線形性を持たないため、何層重ねても1つの線形変換と等価になります。層を重ねる意味を持たせるには、隠れ層に非線形関数(ReLU関数など)を使う必要があります。

問3恒等関数を出力層に用いる回帰タスクでは、誤差関数として交差エントロピー誤差が一般的に使われる。

解答・解説をみる

× 誤り

交差エントロピー誤差は分類タスクで使われる誤差関数です。恒等関数を用いる回帰タスクで対になるのは、予測値と正解値の差を2乗して平均する平均二乗誤差であり、誤差関数の対応関係を入れ替えた記述になっています。