- 二値分類のための線形モデル
- 証明
- eはネイピア数 = 2.71821...
- xは総入力
import numpy as np
def sigmoid(x):
return 1.0 / (1.0 + np.exp(-x))
- 活性化関数
- 滑らかであり、線が切れていないので微分可能
- データ点が特定のクラスに所属している確率を予測すること
- あらゆる入力値を0.0~1.0の範囲の数値に変換して出力する関数
- 単調増加関数
S (x + a) > s(x)
Qiita参照
1.正規分布を例にすると、正規分布の確率密度関数は
こうなる。
尤度関数の基本概念は、「サンプリングしてデータが観測された後、そのデータは元々どういうパラメーターを持つ確率分布から生まれたものだったか?」と言う問いに答えるためのもの
ここで、標本が10個手に入り、それが正規分布に従うことは分かっているが、平均、標準偏差がわからない時に、その標本がそれぞれ独立
していると仮定する。
独立であるため、Pは確率密度の積になる。
P(X1, X2,,,,,,) = p(X1) * P(X2)……..
これはすべて正規分布であるので、確率密度関数をぶちこむ。
P(X1, X2,,,,,,) = f(X1) * f(X2)……..
ただ、平均、標準偏差を求めたいので、左辺を変更する。
これは正規分布のものであるため、ロジスティック回帰Ver.でする
前にやった誤差平方和のコスト関数
wは重みを表す
(3.3.7)
まず、ロジスティック回帰モデルの構築時に最大化したい尤度Lを定義
(上の尤度に置き換える)
(3.3.8)
実際にはこの式の自然対数を取って、それを最大化する。L(w)を最大化する重みwを最大化するために、偏微分を行う。(=対数尤度)
(3.3.9)
ちょっとこの先難しすぎるのでパス。p60-64 数学を勉強したらもう一回やる。
訓練データではうまく機能するモデルがテストデータではうまく汎化できないという問題である。
バリアンスが高いと言われ、データに対してモデルが複雑すぎるのが原因であるとされる。
- 学習不足 モデルの複雑さが十分ではなく、テストデータに対する性能が低い
極端なパラメーターの重みにペナルティを課すため、バイアスを導入 詳細