• ベストアンサー

ニューラルネットワークのシグモイド関数について

ニューラルネットワークにでてくるシグモイド関数 についてお聞きしたいのですが、文献によってこの シグモイド関数の式が、tanがあったり、expが使わ れていたりと、微妙に違っていていったいどの式が 正しいのかよくわかりません。 このシグモイド関数には決まった形とかは無いの でしょうか? 分かる方いたら教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

tanではなくてtanh(ハイパーボリックタンジェント)だと思います。シグモイド関数の一つの定義は  f(x)=1/(1+exp(-ax)) です。一方、tanhは、  tanh(x) = (exp(x)-exp(-x))/(exp(x)+exp(-x)) で定義されています。したがって  1+tanh(ax/2) =1+(exp(ax/2)-exp(-ax/2))/(exp(ax/2)+exp(-ax/2)) = 2exp(ax/2)/(exp(ax/2)+exp(-ax/2)) = 2/(1+exp(-ax)) なのでf(x)は  f(x)=(1/2)(1+tanh(ax/2)) と表わすこともできます。なお、  tanh(ix)= i tan(x) となります。

chanple
質問者

お礼

詳細な回答ありがとうございます。 expを使ったものもtanhで表されたものも 表し方がちがうだけで同じものだったんですね。 大変よくわかりました。ありがとうございました。

その他の回答 (1)

noname#108554
noname#108554
回答No.1

私は参考URLに出てくるようなものしか知りませんが。 具体的にどんな形があるんですか?

参考URL:
http://www.mathworks.com/access/helpdesk/jhelp/toolbox/fuzzy/sigmf.html
chanple
質問者

補足

具体的には、参考URLにあったものと次の、 (1/2)(1+tanh(ax/2)) という形のものがあったので、どちらが正しいもの なのかわからず質問しました。

関連するQ&A