形式ニューロンとは
形式ニューロンは、
1943年に神経生理学者ウォーレン・マカロックと
論理学者ウォルター・ピッツによって提唱されたモデルです。彼らは論文『A Logical Calculus of the Ideas Immanent in Nervous Activity』において、ニューロンの概念を明確化し、計算要素としての役割を強調しました。これによって、今後の人工知能や
ニューラルネットワークの研究において基盤となる理論が築かれました。
このモデルは、特に線形非分離問題を扱う能力を持ち、多層構造を通じてXOR演算のような複雑な論理演算を実現できることを示しています。これらの特性は、計算理論において重要な意味を持ち、後に
チューリングマシンと同等の計算能力を持つシステムの可能性を示唆しました。この概念は、
チャーチ=チューリングのテーゼによって更に重要視されました。
形式ニューロンの基本構造
形式ニューロンの基本的な機能は、入力信号を受け取り、一定のしきい値に基づいて出力信号を生成することです。次の要素から成り立っています:
- - w: 重みづけ(実数)
- - x: 入力信号(0 または 1)
- - h: しきい値(実数)
- - H: ヘヴィサイドの階段関数(出力は 0 または 1)
この場合、出力は次のように定義されます:
$$
H(\sum_{i=1}^{N}w_{i}x_{i} - h)
$$
この式を利用することで、単純な論理ゲートから複雑な関数を実現することが可能です。
論理ゲートの例
形式ニューロンの実際のアプリケーションの例として、基本的な論理ゲートの動作を示しましょう。これらのゲートは、入力に基づいて特定の出力を生成します。
1.
ANDゲート:
$$
H(x_{1} + x_{2} - 1.5)
$$
- 入力が両方とも1の場合のみ、出力は1になります。
2.
ORゲート:
$$
H(x_{1} + x_{2} - 0.5)
$$
- いずれかの入力が1の場合に出力は1となります。
3.
NOTゲート:
$$
H(-x_{1} + 0.5)
$$
- 入力が1の時に出力は0、入力が0の時に出力は1となります。
4.
XORゲート:
$$
H(x_{1} + x_{2} - 2H(x_{1} + x_{2} - 1.5) - 0.5)
$$
- 入力が異なる場合にのみ出力が1です。これは3層の構造を持ちます。
以下に、形式ニューロンモデルを表現するための簡単な
擬似コードを示します。
オブジェクト指向プログラミングの観点から、入力と出力は論理値となる形式の例です。トレーニングの方法については明示的に記述されていません。
```plaintext
class TLU defined as:
data member threshold : number
data member weights : list of numbers of size X
function member fire(inputs : list of booleans of size X) : boolean defined as:
variable T : number
T ← 0
for each i in 1 to X:
if inputs(i) is true:
T ← T + weights(i)
end if
end for each
if T > threshold:
return true
else:
return false
end if
end function
end class
```
このように形式ニューロンは、高度な計算機能を持つシステムの基盤として位置づけられ、人工知能分野における重要な研究課題となっています。