Pythonでニューラルネットワークの活性化関数シグモイド関数を実装

Share

こんにちは!!ようこそ、当ブログgcbgardenへ。管理人のsakurabaaa(@sakurabaaa_g)です。

機械学習の手法であるロジスティック回帰やニューラルネットワークでよく使われるシグモイド関数Pythonnumpymatplotlibを用いて記述したコードと、出力結果(グラフ)をまとめています。

シグモイド関数の微分もコードと合わせて紹介します。

※本プログラムは、数値計算ライブラリNumpyや描画ライブラリmatplotlibを使いJupyter Notebookでコードを実行しています。いますぐコードを実行し、結果をみてみたい方は「Jupyter Notebook」にアクセスし、「Try it in your browser」で実践してみてください。
スポンサーリンク

Pythonでシグモイド関数

シグモイド関数は次式です。

$$f(x)=\frac{1}{1+e^{-x}}$$

シグモイド関数 コード

      

出力したグラフ

Pythonでシグモイド関数の微分

シグモイド関数の微分は次式です。

$$f'(x)=(1-f(x))・f(x)$$

シグモイド関数の微分 コード

      

シグモイド関数の微分 グラフ

最大値が0で0.25となっています。

まとめ

シグモイド関数はニューラルネットワークの活性化関数でよく使われています。

ソースコードはコピペで利用できるので実際に出力させてみてください!!

作業環境の構築はAnacondaがおすすめです。

参考AnacondaでPythonの環境(Jupyter notebook)を構築する

もっとくわしく勉強したい人は、以下のリンクページで自分にあった書籍を見つけることができると思います。

この記事を書いた人。
1992年生まれ。フリーなエンジニア。書きたいことを気ままに書いてます!
好きなことは夏の神宮でビール片手に野球観戦、Appleオタ
趣味は、ゴールデン街散策・Web・IT・ものつくりの開発・勉強などなど

スポンサーリンク

Share

Follow