takataka/note/2015-03-09
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*春休みの宿題その6 [#hw06]
春休みの宿題一覧 [[b/2015/spring]]
//&color(red){工事中};
質問があれば,または課題ができたら,takatakaにメイルして...
**ロジスティック回帰と2クラス識別 [#b05bb4b8]
&mathjax{D};次元特徴ベクトルで与えられるデータを「ほげク...
ある2次元データを &mathjax{ \bm{x} = (x, y) }; とする.こ...
学習データとして,&mathjax{N};個の特徴ベクトル &mathjax{ ...
#mathjax( h_n = -t_n\log z_n - (1-t_n)\log ( 1 - z_n) )
というものを考える.今の問題では &mathjax{t_n}; が 0 か 1...
#mathjax( H = \sum_{n=1}^{N} h_{n} )
である.この &mathjax{H}; を最小化するようにパラメータ &m...
**最急降下法による交差エントロピー最小化 [#z80ac0b5]
&mathjax{H}; を最小にするパラメータ &mathjax{a,b,c}; を求...
&mathjax{H}; のパラメータ &mathjax{\theta}; (&mathjax{a,...
#mathjax( \frac{\partial H}{\partial \theta} = \sum_{n=1}...
だから,前回求めたように式で表せる.この値は現在のパラメ...
#mathjax( \begin{align} \theta^{\rm new} &= \theta + \Del...
とする.&mathjax{ \eta }; は正の定数である.このような計...
**人工データの識別実験 [#n9ce98d2]
***データ生成プログラム [#m267cb4e]
https://gist.github.com/takatakamanbou/f63475d23351cc27ba...
$ ipython
In [1]: %run getdata0309.py
このプログラムでは3クラスのデータを2次元の正規分布で生成...
#pre{{
import getdata0309
X_org, lab_org, t_org = getdata0309.getData()
idx01 = lab_org != 2
X, lab, t = X_org[idx01], lab_org[idx01], t_org[idx01, 0]
print X.shape, lab.shape, t.shape
}}
lab[:10] と t[:10] を眺めてみるとわかりますが,t は「ラベ...
***実験 [#qa15f049]
上記プログラムで得られる2クラスのデータを学習データとして...
こんな感じ
+ パラメータを適当に初期化
+ 全学習データに対して &mathjax{z}; を求める
+ パラメータを更新する
+ 2,3 を適当な回数繰り返す
- 繰り返しのたびに &mathjax{H}; と,学習データの識別率(&...
- 上記では &mathjax{H}; をそのまま用いる学習則を書いてい...
- とりあえず &mathjax{\eta}; は 0.1 とか 0.01 とかくらい...
- getdata0309.getData は引数なしでは毎回乱数の種が異なっ...
- &mathjax{z = 0.5 \Leftrightarrow ax+by+c = 0 }; だから...
#pre{{
学習データの散布図を描く
xx = np.asarray( plt.xlim() )
yy = -( a * xx + c ) / b # 本当は b → 0 の...
line = matplotlib.lines.Line2D( xx, yy )
ax.add_line( line )
fig.show()
}}
終了行:
*春休みの宿題その6 [#hw06]
春休みの宿題一覧 [[b/2015/spring]]
//&color(red){工事中};
質問があれば,または課題ができたら,takatakaにメイルして...
**ロジスティック回帰と2クラス識別 [#b05bb4b8]
&mathjax{D};次元特徴ベクトルで与えられるデータを「ほげク...
ある2次元データを &mathjax{ \bm{x} = (x, y) }; とする.こ...
学習データとして,&mathjax{N};個の特徴ベクトル &mathjax{ ...
#mathjax( h_n = -t_n\log z_n - (1-t_n)\log ( 1 - z_n) )
というものを考える.今の問題では &mathjax{t_n}; が 0 か 1...
#mathjax( H = \sum_{n=1}^{N} h_{n} )
である.この &mathjax{H}; を最小化するようにパラメータ &m...
**最急降下法による交差エントロピー最小化 [#z80ac0b5]
&mathjax{H}; を最小にするパラメータ &mathjax{a,b,c}; を求...
&mathjax{H}; のパラメータ &mathjax{\theta}; (&mathjax{a,...
#mathjax( \frac{\partial H}{\partial \theta} = \sum_{n=1}...
だから,前回求めたように式で表せる.この値は現在のパラメ...
#mathjax( \begin{align} \theta^{\rm new} &= \theta + \Del...
とする.&mathjax{ \eta }; は正の定数である.このような計...
**人工データの識別実験 [#n9ce98d2]
***データ生成プログラム [#m267cb4e]
https://gist.github.com/takatakamanbou/f63475d23351cc27ba...
$ ipython
In [1]: %run getdata0309.py
このプログラムでは3クラスのデータを2次元の正規分布で生成...
#pre{{
import getdata0309
X_org, lab_org, t_org = getdata0309.getData()
idx01 = lab_org != 2
X, lab, t = X_org[idx01], lab_org[idx01], t_org[idx01, 0]
print X.shape, lab.shape, t.shape
}}
lab[:10] と t[:10] を眺めてみるとわかりますが,t は「ラベ...
***実験 [#qa15f049]
上記プログラムで得られる2クラスのデータを学習データとして...
こんな感じ
+ パラメータを適当に初期化
+ 全学習データに対して &mathjax{z}; を求める
+ パラメータを更新する
+ 2,3 を適当な回数繰り返す
- 繰り返しのたびに &mathjax{H}; と,学習データの識別率(&...
- 上記では &mathjax{H}; をそのまま用いる学習則を書いてい...
- とりあえず &mathjax{\eta}; は 0.1 とか 0.01 とかくらい...
- getdata0309.getData は引数なしでは毎回乱数の種が異なっ...
- &mathjax{z = 0.5 \Leftrightarrow ax+by+c = 0 }; だから...
#pre{{
学習データの散布図を描く
xx = np.asarray( plt.xlim() )
yy = -( a * xx + c ) / b # 本当は b → 0 の...
line = matplotlib.lines.Line2D( xx, yy )
ax.add_line( line )
fig.show()
}}
ページ名: