万能近似定理
万能近似定理(Universal approximation theorem)(Hornik et al., 1989; Cybenko, 1989) ネットワークが十分な数の隠れ層を持つ時、線形の出力層と、(ロジスティックシグモイド活性化関数のような)「押しつぶす」事ができる活性化関数を持つ隠れそうが少なくとも一つ含まれる順伝播型ネットワークはどんなボレル可測関数でも任意の精度で近似できる
『深層学習』- 6章「深層順伝播型ネットワーク」 - HackMD
万能近似定理(Universal Approximation Theorem)は、ニューラルネットワークや深層学習に関連する重要な数学的結果の一つです。この定理は、適切な条件下で、ニューラルネットワークが任意の連続関数を任意の精度で近似できることを示しています。
具体的には、万能近似定理は以下のような内容を主張します:
任意の連続関数:ある定義域から別の定義域への連続関数が与えられた場合、万能近似定理に基づいて、適切なニューラルネットワークアーキテクチャが存在するならば、その関数を任意の精度で近似できる。
隠れ層の多層構造:通常、万能近似定理を達成するためには、少なくとも1つ以上の隠れ層(中間層)を持つ多層のニューラルネットワークが必要です。隠れ層のユニット(ニューロン)の数や構造は、関数の複雑性に依存します。
任意の精度:近似の精度は、ネットワークの構造や学習アルゴリズムによって調整できます。言い換えれば、任意の誤差を許容する限り、適切なネットワークを見つけることができます。
この定理は、深層学習が多くの関数近似タスクで優れた性能を発揮する理由の一つです。深層学習モデルは、非線形関数近似の際に非常に柔軟で表現力豊かであり、多層の隠れ層を持つことで、複雑な関数をモデル化することができます。ただし、万能近似定理は理論上の結果であり、実際の問題では過学習の問題やデータ量の制約などに注意が必要です。また、実際には訓練アルゴリズムやハイパーパラメータの調整が必要なこともあります。
注意点
万能近似定理はトレインデータに対して、近似できるという定理であって、汎化誤差については考慮していません。
ボレル可測関数
ボレル可測関数(Borel measurable function)は、測度論や確率論の文脈で使われる用語です。ボレル可測関数は、ある測度空間から別の測度空間への写像で、特定の性質を持つ関数です。
以下にボレル可測関数の主要な特徴を説明します:
測度空間: ボレル可測関数は、2つの測度空間間で定義されます。一般的に、入力空間(定義域)と出力空間が含まれます。これらの空間は通常、ボレル σ-代数と呼ばれる特定のσ-代数を持つ。
ボレル σ-代数: ボレル σ-代数は、実数直線上の開集合を含むσ-代数で、その他の代数構造を含みます。ボレルσ-代数内の集合は、測度論的な操作に対して適切に扱える特性を持っています。
ボレル可測性: 関数がボレル可測であるとは、入力空間から出力空間への写像が、入力空間のボレルσ-代数の元を出力空間のボレルσ-代数の元に写像することを意味します。つまり、関数が測度論的に扱いやすい性質を持っていることを示します。
ボレル可測関数は、確率論や統計学において確率変数や確率分布の性質を議論する際に重要な役割を果たします。例えば、確率変数の関数がボレル可測である場合、その関数を用いて新たな確率変数を定義することができ、確率分布や期待値などを計算する際に便利です。
要するに
ボレル可測関数は、測度論の文脈で使われる関数で、入力空間から出力空間への写像であり、特定の性質を持つ関数です。この性質は、入力空間のボレルσ-代数の元を出力空間のボレルσ-代数の元に写像することを意味します。ボレル可測関数は、確率論や統計学などの分野で重要な役割を果たし、測度論的な操作を扱う際に便利です。
高校生が分かるように説明
これでもよくわからないという人も多いかと思います。もう少し優しく高校生向けにボレル可測関数をイメージしやすく説明します。
ボレル可測関数は、関数の特別な性質を示すものです。イメージとして、関数を工場の機械に例えてみましょう。工場にはさまざまな部屋があり、各部屋には異なる種類の機械があります。これらの機械は異なる仕事をすることがあります。
入力空間: 工場の中で機械を使う部屋と考えます。これは関数の入力となります。例えば、工場には様々な材料や製品が入ってくるでしょう。
出力空間: 各部屋で機械が作る製品や出力物を考えます。これは関数の出力です。
ボレルσ-代数: これは、工場の部屋における仕事のカテゴリーと考えることができます。ボレルσ-代数が特別なのは、ある仕事を別のカテゴリーに分けることができ、それぞれのカテゴリーに属するものを扱いやすくします。
ボレル可測関数: これは、工場の機械が部屋から部屋へ移動するように、入力空間から出力空間へ何らかの処理を行う関数です。この関数は、ボレルσ-代数の要件を満たすように動作します。つまり、どの部屋での作業もきちんとカテゴリーに分けられるように工夫されています。
ボレル可測関数は、特別な仕事の機械を使う工場で、作業が整然と進むようになっているイメージです。この性質は確率論や統計学で役立ち、関数がどのように振る舞うかを予測できます。
ディープラーニングではどの関数?
深層学習モデルにおいて、通常、ボレル可測関数の性質を持つ関数としては、活性化関数(activation functions)が該当します。活性化関数は、入力データに非線形性を導入し、ネットワークが非線形関数をモデル化できるようにします。深層学習モデルにおける活性化関数は、通常、ボレル可測性を持つものが選ばれます。
以下は、一般的に用いられるボレル可測性を持つ活性化関数の例です:
関数をカテゴリー化するという考えを踏まえて、続けて読んでみてください。
シグモイド関数(Sigmoid function): シグモイド関数は、入力データを[0, 1]の範囲にマッピングする非線形関数で、以下の式で表されます:
f(x) = 1 / (1 + exp(-x))
この関数はボレル可測性を持ちます。
ハイパボリックタンジェント関数(Hyperbolic Tangent function, Tanh): ハイパーボリックタンジェント関数は、入力データを[-1, 1]の範囲にマッピングする非線形関数で、以下の式で表されます:
f(x) = (exp(x) - exp(-x)) / (exp(x) + exp(-x))
この関数もボレル可測性を持ちます。
ReLU関数(Rectified Linear Unit): ReLU関数は、入力が正の値の場合にそのまま出力し、負の値の場合には0を出力する非線形関数です。ReLU関数もボレル可測性を持ちますが、注意が必要で、厳密な微分が存在しない点に留意する必要があります。
これらの活性化関数は深層学習モデル内で使用され、非線形性を導入して複雑な関数を近似できるようにします。深層学習において、ボレル可測性は一般的に用いられる活性化関数に関して満たされます。
深層学習教科書 ディープラーニング G検定(ジェネラリスト)公式テキスト 第2版 (EXAMPRESS) [ 一般社団法人日本ディープラーニング協会 ] 価格:3,080円 |