「形式ニューロン」の版間の差分
削除された内容 追加された内容
人工神経 2015年2月6日 (金) 14:19 から分割 |
|||
1行目: | 1行目: | ||
[[1943年]]、[[ウォーレン・マカロック]]と[[ウォルター・ピッツ]]が世界初の人工神経 Threshold Logic Unit を発表した<ref>{{Cite journal |
|||
#redirect [[人工神経]] |
|||
|author=Warren S. McCulloch |
|||
|author2=Walter Pitts |
|||
|title=A logical calculus of the ideas immanent in nervous activity |
|||
|journal=The bulletin of mathematical biophysics |
|||
|volume=5 |
|||
|issue=4 |
|||
|year=1943 |
|||
|month=December |
|||
|publisher=Kluwer Academic Publishers |
|||
|pages=115-133 |
|||
|doi=10.1007/BF02478259 |
|||
}}</ref>。これを'''形式ニューロン'''({{lang-en-short|formal neuron}})とも呼ぶ。伝達関数としては[[ヘヴィサイドの階段関数]]を使い、入出力の値は 0 または 1 の二値だけをとる。 |
|||
===擬似コード=== |
|||
以下の[[擬似コード]]はマカロックとピッツの形式ニューロンの実装例である。入力は[[真理値]](真または偽)、出力も真理値である。[[オブジェクト指向]]的モデルとなっている。トレーニング方法は定義されていない。関数型のモデルであれば、TLUクラスの代わりにTLUという関数が、入力ベクトルと重み付けベクトルとしきい値を引数とし、真理値を出力とするものになるだろう。 |
|||
'''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''' |
2015年2月6日 (金) 14:31時点における版
1943年、ウォーレン・マカロックとウォルター・ピッツが世界初の人工神経 Threshold Logic Unit を発表した[1]。これを形式ニューロン(英: formal neuron)とも呼ぶ。伝達関数としてはヘヴィサイドの階段関数を使い、入出力の値は 0 または 1 の二値だけをとる。
擬似コード
以下の擬似コードはマカロックとピッツの形式ニューロンの実装例である。入力は真理値(真または偽)、出力も真理値である。オブジェクト指向的モデルとなっている。トレーニング方法は定義されていない。関数型のモデルであれば、TLUクラスの代わりにTLUという関数が、入力ベクトルと重み付けベクトルとしきい値を引数とし、真理値を出力とするものになるだろう。
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
- ^ Warren S. McCulloch; Walter Pitts (December 1943). “A logical calculus of the ideas immanent in nervous activity”. The bulletin of mathematical biophysics (Kluwer Academic Publishers) 5 (4): 115-133. doi:10.1007/BF02478259.