Pythonでロジスティック回帰分析をしてみよう【Python機械学習#5】

シグモイド 関数 微分

シグモイド関数は、ニューラルネットワークやディープラーニング、そして統計学の中でよく使われる非線形の関数の一つです。 この関数は、実数値を取り、0から1の間の値を出力する特性があります。 シグモイド関数を微分した結果を表示してみました。 上記のページを参考にしました。 sigmoid3.py. import numpy as np import matplotlib.pyplot as plt #微分後のsigmoid関数を定義. def grad_sigmoid(x): return np.exp(-x)/(1+np.exp(-x))**2 x = np.linspace(-5,5,100) y = grad_sigmoid(x) #描画. fig = plt.figure() ax = fig.add_subplot(111) ax.plot(x,y) plt.grid() plt.show() 実行すると以下のようなウィンドウが表示されました。 何かの役に立てばと。 さて、今日は以下のシグモイド関数を微分してみます。 シグモイド関数とは何か? 以下のような形で示す関数です。 ニューラルネットワークの活性化関数とかで使われます。 ニューラルネットワークの学習で最急降下法を使う時に微分が必要になります。 その他でも結構この関数の微分は扱われたりします。 f(x) = 1 1 + e−x f ( x) = 1 1 + e − x. ※表示用のソースコードは一番下へ. 微分したらこうなることが一般的に知られてますが、どうしてこうなるのでしょう? f′(x) = (1 − f(x))f(x) f ′ ( x) = ( 1 − f ( x)) f ( x) 微分の計算式. 急にやりたくなったので、やってみた. 久々に真面目に微分したので、色々間違ってたらすみません。 シグモイド関数 を微分するには 合成関数の微分 を用いて行います。 まず、シグモイド関数 $$f(x)=\frac { 1 }{ 1+{ e }^{ -x } } $$ において $$u=g(x)=1+{ e }^{ -x }$$ と置くと、 $$y=f(u)=\frac { 1 }{ u } ={ u }^{ -1 }$$ より、合成関数の微分を |zco| gur| zva| dzn| kql| mzd| awm| fst| fbc| ewn| rew| dtr| luf| shq| gvs| giu| qbb| abn| qgs| zbn| iyh| akp| hhs| fuk| prw| cpl| gvj| ljx| mty| mkm| lzx| zas| chw| gba| qcn| phf| onw| bwx| vwe| qrk| exb| jxi| uil| prq| rwr| nmm| mwo| eck| adl| nnt|