matplotlibでシグモイド関数を描画する
開発環境はWindows7 Professional(32bit)+ActivePython 2.7.10.12。
事前にnumpyとmatplotlibをインストールしておくこと。
シグモイド関数は、-∞~∞の値を0~1の範囲内で表すことができる特徴があります。
# -*- conding:utf-8 -*- import numpy as np import matplotlib.pyplot as plt x = np.arange(-6,6,0.1) y = np.zeros(len(x)) # 値を入れるために初期化しておく for i in range(len(x)): y[i] = 1.0 / (1.0 + np.exp(-x[i])) plt.plot(x,y) plt.show()
描画した画像↓
np.arangeの-6~6の幅をどんどん伸ばしていくほど、中央部分の曲線が、ステップ関数のように、直角になっていく。-6~6を-150~150にすると、
形状を変えないで、データ量を増やしたい場合は、np.arangeの第3引数の0.1の部分を、0.01,0.001などとより細かく刻むことで、形状は変わらずに、データ量は増やせる。
参考リンク
シグモイド関数 - Wikipedia