機械学習の理論
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-[[戻る>機械学習(machine learning)]]
*目次 [#d85a8ac0]
#contents
*概要 [#ccd8f33a]
機械学習の理論
*詳細 [#ee071adc]
**情報理論 [#z83dd630]
-情報理論は数学を用いて「情報」の本質を明らかにする学問。
-応用先には効率の良い情報通信や通信時の情報誤りの訂正等が...
-ココでは機械学習の習得に必要な範囲の情報理論の習得する。
-機械学習において、情報理論を元にした手法
--[[ランダムフォレスト>統計解析#lcaf7a28]]~
ランダムに選択された説明変数のエントロピーを最小化~
するような閾値を決定し特徴量の重要度を自動で算出
--マルコフ確率場~
画像内のノイズ除去等に用いるグラフィカルモデルとして利用...
***自己情報量 [#q4dd5044]
-直感的に表現するとすれば「情報の珍しさ」の値
-「ある事象が起きた時にどのくらい珍しい事象か」という尺度
-確率の逆数(レア度)のlogで、~
情報が珍しいほど大きく珍しくないほど小さい
I(x) = log (1/P(x)) = -log P(x) ※ 0≦P(x)≦1
--確率を用いて表す。
--珍しい=確率が低い事ほど情報量が多い。
--実際、[[logのグラフ>E資格:試験対策#dadb2e77]]で見ると...
--複数の事象が起こる確率は積で計算されるが情報量は和で計算
***エントロピー [#g9e50597]
-「平均情報量」や「シャノン・エントロピー」とも呼ばれる。
-「[[自己情報量>#q4dd5044]]」の拡張で「事象の予想のし難さ」
-グラフは予想の難しい事象時に最大で非一様分布の方がエント...
-ある事象 X が起こったと分かった時に得られる[[情報量>#q4d...
-[事象の起こる確率]と[ [[自己情報量>#q4dd5044]] ]を掛け合...
H(x) = Σ-P(xi)logP(xi) = -ΣP(xi)logP(xi)
--複数の事象が起こる確率は積で計算されるが情報量は和で計算
--それぞれの事象の起こり易さを足し合わせた情報
--それぞれの事象の起こり難さの重み付けを行った上で計算
-結合エントロピー
H(x, y) = Σ -P(xi,yi)logP(xi,yi) = -Σ P(xi,yi)logP(xi,...
x,y x,y
-条件付きエントロピー
H(x|y) = H(x, y) - H(y)
-相互情報量
I(x;y) = H(x) + H(y) - H(x, y)
I(x;y) = H(x) - H(x|y)
I(x;y) = H(y) - H(y|x)
#ref(conditional_entropy.png,left,nowrap,30%)
***ダイバージェンス [#s8ca9e50]
-「相対エントロピー」や「KLダイバージェンス」「KL情報量」...
-異なる確率分布P(x), Q(x)にどれだけの差があるのか?を考え...
-二つの確率分布が一致するなら値は 0 になる(確率分布の差...
-データの分布とガウス分布の類似度をダイバージェンスの考え...
D(P||Q)=∫q(x) log(q(x) / p(x)) dx = ∫q(x) log q(x) - q(x...
-この式は機械学習を行うときの損失関数として用いられる。
-その際、この式の第1項が常に一定だから第2項のみを用いる。
※ KL:カルバック・ライブラー
***例題1 [#k9db7af5]
細工されたサイコロの出る目の確率分布表
|>|BGCOLOR(#d0d8e0):確率変数 X ...
|>|BGCOLOR(#d0d8e0):確率 P ...
|BGCOLOR(#d0d8e0): 確率変数 Y |BGCOLOR(#d0d8e0):1(X1=X2...
|~|BGCOLOR(#d0d8e0): 0(X1≠X2)...
※ ビットでの回答になる場合は、logの底は2となる。
-X=3の[[自己情報量>#q4dd5044]]
log(1 / 0.2) = -log0.2
-[[エントロピー=シャノン・エントロピー=平均情報量>#g9e5...
--エントロピー(H(X1))
= - (0.3 * log0.3) - (0.2 * log0.2)*3 - (0.1 * log0.1) =...
--エントロピー(H(Y))
...
-結合エントロピー(H(X1, Y))
= - {(0.21 * log 0.21) + (0.16 * log 0.16)*3 + (0.04 * l...
-条件付きエントロピー、相互情報量(I(X1;Y))~
...は以下で計算可能(H(Y)は与えられる、計算方法は?)。
I(X1;Y) = H(X1) + H(Y) - H(X1, Y)
***例題2 [#a8eec8d7]
**統計的機械学習 [#ibaa375a]
-[[統計解析]]、[[ベイズ統計]]などをベースにした計算統計学
-機械学習のうちデータの確率的な生成規則を学習するもの
-統計的機械学習のモデルは統計モデル・生成モデルとも呼ばれ...
***統計モデル [#e2f3af75]
-複数の変数同士の関係を定量的に表す。
-統計モデルでよく使われるのは回帰モデル
***確率的モデル [#faded404]
ある確率密度分布があって、その分布に従い、データが生まれ...
***生成モデル [#k88acab8]
データがある、ということは、そのデータを生成する原因があ...
-最尤法、ベイズ法で最適化されたモデルも生成モデルの可能性...
--最尤法では、パラメタの点推定を行い、固定された確率密度/...
--ベイズ法 では、パラメタ自体が確率分布となり、確率密度/...
-言語モデルが生成AIなのは、次単語予測などの学習は、最尤推...
***分類モデル(識別関数、識別モデル、生成モデル) [#p3f4e...
機械学習で分類問題を解く場合、
-識別関数~
確率は関係なく、入力空間に識別面を直接引く方法
--[[サポートベクターマシン(SVM)、k近傍法>機械学習(mach...
--識別関数に入力データを与えると、それが属すると予測され...
C = f(w, x)
pred
--確率値が出力値でないので、クラスの評価がどの程度正しい...
--SVMでは入力データの超次元空間に識別境界を描きクラスの分...
-識別モデル~
事後確率P(Ci|x)を直接モデル化する[[確率的モデル>#faded404...
--[[条件付き確率>ベイズ統計#v372de91]](Xが観測されたとき...
--入力データを与えると、各クラス毎にそれが属する条件付き...
C = argmax p(C|x)
pred c
--ロジスティック回帰、 DNNやCNNの2値分類、多値分類など。
---ロジスティック回帰分析ではSigmoid関数を使用している。
---DNN、CNNなどSigmoid関数、Softmax関数を使用している。
--確率に基づいた識別境界を設定することが可能。
--確率に基づいた閾値を設定し、閾値を下回った場合は回答し...
-[[確率的生成モデル>#qbf63bf2]]
***確率的生成モデル [#qbf63bf2]
-何らかの分布に基づいてデータが生成されると考える。
-データの生成過程を確率的にモデル化する。
--事前確率P(Ci)と確率密度関数P(x|Ci)をモデル化し、
--それからベイズの定理を使って事後確率P(Ci|x)を計算し、
--最も事後確率が高いクラスを識別したクラスとする方法
--つまり、与えられたデータセットの確率分布を推定し、その...
-入力データの分布(生成モデル)を学習する。
--データは背後にある確率分布から生成されたものと仮定。
--データの背後にある同時確率分布は生成モデルと呼ばれる。
--与えられているデータから未知の生成モデルを予測(モデル...
--学習と生成の間の2つの確率分布間の差異を[[数理最適化>#r...
--教師なし学習(外れ値検知、画像生成)などにも応用できる。
-生成タスクとは
--訓練データの分布を推論し、同じ分布のデータを生成する。
--潜在的空間を学習することによって、様々な表現を取ること...
-生成モデルでできること。
--生成モデルにより(クラスに属する)擬似的データを生成で...
--その他にも、ノイズ除去、異常検知などを行うことができる。
--画像生成系:[[VAE(Variational auto-encoder)>ニューラ...
***決定論的生成モデル [#b3636951]
-データの生成過程を確率的ではなく、通常は決定論的にモデル...
-つまり、生成されたデータは確率的ではなく、一意の出力が与...
-テキスト生成系:[[BERT(Bidirectional Encoder Representa...
**数理最適化 [#r91e67ac]
-機械学習の最適化とは「経験損失最小化」で純粋な最適化とは...
--本来は訓練データではなくデータ集合全体
--真のデータ分布を訓練データ集合の分布に置き換え損失関数...
--実用的な損失関数は簡単に最適化できないものもある。
--このため最適化が容易な代理損失関数を最適化する。
--早期終了があるという点でも一般的な最適化と異なる。
-以下のような方法で関数(的なモノ)の[[パラメタ>#bdce9b16...
***最小二乗法 [#k0b12fbe]
サンプル・データとの誤差が最小になる平均値を探す。
-説明変数から推定される目的変数と教師データの誤差を最小化...
損失関数を最小化する近似関数のパラメタのポイントを探る。
***最尤法 [#a78d0b4a]
最小二乗法の次なのに一気に難しくなる。ここが理解できたの...
-サンプル・データが得られる確率(尤度)が最大になる平均値...
-ダイバージェンスの最小化が、最尤推定と一致する場合がある。
-損失関数のかわりに尤度関数を使用する。尤度関数は損失最小...
-尤度関数は、初期値として仮定した確率分布に対応する確率密...
--尤度関数は、積の形にすることで、すべての観測データの条...
--尤度関数は、条件付き確率(説明変数に対する目的変数が特...
-この尤度関数を最大化するように、確率密度/質量関数の近似...
-分布→尤度→対数尤度(ΠをΣに変換、微分が楽になる)→ 対数尤...
-最尤法でロジスティク関数やソフトマックス関数を使用する分...
***ベイズ法 [#d1adc104]
簡単なベイズ更新のような仕組みでしか説明されていない。
-新しいデータが得られるたびに、事前分布から事後分布を求め...
**独立同時分布仮定 [#o0d1539c]
(IID仮定)
-学習データに対して置かれた仮定。
--各データのサンプルが互いに独立
--訓練データとテストデータが同一の分布に従う
-訓練データと検証データを同じモデルで扱うことができる。
-ただし、コレによって[[過学習>#l377f5cd]]が発生し得る。
*参考 [#a9dbdd0e]
https://www.osscons.jp/joho108j0-537/#_537
終了行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-[[戻る>機械学習(machine learning)]]
*目次 [#d85a8ac0]
#contents
*概要 [#ccd8f33a]
機械学習の理論
*詳細 [#ee071adc]
**情報理論 [#z83dd630]
-情報理論は数学を用いて「情報」の本質を明らかにする学問。
-応用先には効率の良い情報通信や通信時の情報誤りの訂正等が...
-ココでは機械学習の習得に必要な範囲の情報理論の習得する。
-機械学習において、情報理論を元にした手法
--[[ランダムフォレスト>統計解析#lcaf7a28]]~
ランダムに選択された説明変数のエントロピーを最小化~
するような閾値を決定し特徴量の重要度を自動で算出
--マルコフ確率場~
画像内のノイズ除去等に用いるグラフィカルモデルとして利用...
***自己情報量 [#q4dd5044]
-直感的に表現するとすれば「情報の珍しさ」の値
-「ある事象が起きた時にどのくらい珍しい事象か」という尺度
-確率の逆数(レア度)のlogで、~
情報が珍しいほど大きく珍しくないほど小さい
I(x) = log (1/P(x)) = -log P(x) ※ 0≦P(x)≦1
--確率を用いて表す。
--珍しい=確率が低い事ほど情報量が多い。
--実際、[[logのグラフ>E資格:試験対策#dadb2e77]]で見ると...
--複数の事象が起こる確率は積で計算されるが情報量は和で計算
***エントロピー [#g9e50597]
-「平均情報量」や「シャノン・エントロピー」とも呼ばれる。
-「[[自己情報量>#q4dd5044]]」の拡張で「事象の予想のし難さ」
-グラフは予想の難しい事象時に最大で非一様分布の方がエント...
-ある事象 X が起こったと分かった時に得られる[[情報量>#q4d...
-[事象の起こる確率]と[ [[自己情報量>#q4dd5044]] ]を掛け合...
H(x) = Σ-P(xi)logP(xi) = -ΣP(xi)logP(xi)
--複数の事象が起こる確率は積で計算されるが情報量は和で計算
--それぞれの事象の起こり易さを足し合わせた情報
--それぞれの事象の起こり難さの重み付けを行った上で計算
-結合エントロピー
H(x, y) = Σ -P(xi,yi)logP(xi,yi) = -Σ P(xi,yi)logP(xi,...
x,y x,y
-条件付きエントロピー
H(x|y) = H(x, y) - H(y)
-相互情報量
I(x;y) = H(x) + H(y) - H(x, y)
I(x;y) = H(x) - H(x|y)
I(x;y) = H(y) - H(y|x)
#ref(conditional_entropy.png,left,nowrap,30%)
***ダイバージェンス [#s8ca9e50]
-「相対エントロピー」や「KLダイバージェンス」「KL情報量」...
-異なる確率分布P(x), Q(x)にどれだけの差があるのか?を考え...
-二つの確率分布が一致するなら値は 0 になる(確率分布の差...
-データの分布とガウス分布の類似度をダイバージェンスの考え...
D(P||Q)=∫q(x) log(q(x) / p(x)) dx = ∫q(x) log q(x) - q(x...
-この式は機械学習を行うときの損失関数として用いられる。
-その際、この式の第1項が常に一定だから第2項のみを用いる。
※ KL:カルバック・ライブラー
***例題1 [#k9db7af5]
細工されたサイコロの出る目の確率分布表
|>|BGCOLOR(#d0d8e0):確率変数 X ...
|>|BGCOLOR(#d0d8e0):確率 P ...
|BGCOLOR(#d0d8e0): 確率変数 Y |BGCOLOR(#d0d8e0):1(X1=X2...
|~|BGCOLOR(#d0d8e0): 0(X1≠X2)...
※ ビットでの回答になる場合は、logの底は2となる。
-X=3の[[自己情報量>#q4dd5044]]
log(1 / 0.2) = -log0.2
-[[エントロピー=シャノン・エントロピー=平均情報量>#g9e5...
--エントロピー(H(X1))
= - (0.3 * log0.3) - (0.2 * log0.2)*3 - (0.1 * log0.1) =...
--エントロピー(H(Y))
...
-結合エントロピー(H(X1, Y))
= - {(0.21 * log 0.21) + (0.16 * log 0.16)*3 + (0.04 * l...
-条件付きエントロピー、相互情報量(I(X1;Y))~
...は以下で計算可能(H(Y)は与えられる、計算方法は?)。
I(X1;Y) = H(X1) + H(Y) - H(X1, Y)
***例題2 [#a8eec8d7]
**統計的機械学習 [#ibaa375a]
-[[統計解析]]、[[ベイズ統計]]などをベースにした計算統計学
-機械学習のうちデータの確率的な生成規則を学習するもの
-統計的機械学習のモデルは統計モデル・生成モデルとも呼ばれ...
***統計モデル [#e2f3af75]
-複数の変数同士の関係を定量的に表す。
-統計モデルでよく使われるのは回帰モデル
***確率的モデル [#faded404]
ある確率密度分布があって、その分布に従い、データが生まれ...
***生成モデル [#k88acab8]
データがある、ということは、そのデータを生成する原因があ...
-最尤法、ベイズ法で最適化されたモデルも生成モデルの可能性...
--最尤法では、パラメタの点推定を行い、固定された確率密度/...
--ベイズ法 では、パラメタ自体が確率分布となり、確率密度/...
-言語モデルが生成AIなのは、次単語予測などの学習は、最尤推...
***分類モデル(識別関数、識別モデル、生成モデル) [#p3f4e...
機械学習で分類問題を解く場合、
-識別関数~
確率は関係なく、入力空間に識別面を直接引く方法
--[[サポートベクターマシン(SVM)、k近傍法>機械学習(mach...
--識別関数に入力データを与えると、それが属すると予測され...
C = f(w, x)
pred
--確率値が出力値でないので、クラスの評価がどの程度正しい...
--SVMでは入力データの超次元空間に識別境界を描きクラスの分...
-識別モデル~
事後確率P(Ci|x)を直接モデル化する[[確率的モデル>#faded404...
--[[条件付き確率>ベイズ統計#v372de91]](Xが観測されたとき...
--入力データを与えると、各クラス毎にそれが属する条件付き...
C = argmax p(C|x)
pred c
--ロジスティック回帰、 DNNやCNNの2値分類、多値分類など。
---ロジスティック回帰分析ではSigmoid関数を使用している。
---DNN、CNNなどSigmoid関数、Softmax関数を使用している。
--確率に基づいた識別境界を設定することが可能。
--確率に基づいた閾値を設定し、閾値を下回った場合は回答し...
-[[確率的生成モデル>#qbf63bf2]]
***確率的生成モデル [#qbf63bf2]
-何らかの分布に基づいてデータが生成されると考える。
-データの生成過程を確率的にモデル化する。
--事前確率P(Ci)と確率密度関数P(x|Ci)をモデル化し、
--それからベイズの定理を使って事後確率P(Ci|x)を計算し、
--最も事後確率が高いクラスを識別したクラスとする方法
--つまり、与えられたデータセットの確率分布を推定し、その...
-入力データの分布(生成モデル)を学習する。
--データは背後にある確率分布から生成されたものと仮定。
--データの背後にある同時確率分布は生成モデルと呼ばれる。
--与えられているデータから未知の生成モデルを予測(モデル...
--学習と生成の間の2つの確率分布間の差異を[[数理最適化>#r...
--教師なし学習(外れ値検知、画像生成)などにも応用できる。
-生成タスクとは
--訓練データの分布を推論し、同じ分布のデータを生成する。
--潜在的空間を学習することによって、様々な表現を取ること...
-生成モデルでできること。
--生成モデルにより(クラスに属する)擬似的データを生成で...
--その他にも、ノイズ除去、異常検知などを行うことができる。
--画像生成系:[[VAE(Variational auto-encoder)>ニューラ...
***決定論的生成モデル [#b3636951]
-データの生成過程を確率的ではなく、通常は決定論的にモデル...
-つまり、生成されたデータは確率的ではなく、一意の出力が与...
-テキスト生成系:[[BERT(Bidirectional Encoder Representa...
**数理最適化 [#r91e67ac]
-機械学習の最適化とは「経験損失最小化」で純粋な最適化とは...
--本来は訓練データではなくデータ集合全体
--真のデータ分布を訓練データ集合の分布に置き換え損失関数...
--実用的な損失関数は簡単に最適化できないものもある。
--このため最適化が容易な代理損失関数を最適化する。
--早期終了があるという点でも一般的な最適化と異なる。
-以下のような方法で関数(的なモノ)の[[パラメタ>#bdce9b16...
***最小二乗法 [#k0b12fbe]
サンプル・データとの誤差が最小になる平均値を探す。
-説明変数から推定される目的変数と教師データの誤差を最小化...
損失関数を最小化する近似関数のパラメタのポイントを探る。
***最尤法 [#a78d0b4a]
最小二乗法の次なのに一気に難しくなる。ここが理解できたの...
-サンプル・データが得られる確率(尤度)が最大になる平均値...
-ダイバージェンスの最小化が、最尤推定と一致する場合がある。
-損失関数のかわりに尤度関数を使用する。尤度関数は損失最小...
-尤度関数は、初期値として仮定した確率分布に対応する確率密...
--尤度関数は、積の形にすることで、すべての観測データの条...
--尤度関数は、条件付き確率(説明変数に対する目的変数が特...
-この尤度関数を最大化するように、確率密度/質量関数の近似...
-分布→尤度→対数尤度(ΠをΣに変換、微分が楽になる)→ 対数尤...
-最尤法でロジスティク関数やソフトマックス関数を使用する分...
***ベイズ法 [#d1adc104]
簡単なベイズ更新のような仕組みでしか説明されていない。
-新しいデータが得られるたびに、事前分布から事後分布を求め...
**独立同時分布仮定 [#o0d1539c]
(IID仮定)
-学習データに対して置かれた仮定。
--各データのサンプルが互いに独立
--訓練データとテストデータが同一の分布に従う
-訓練データと検証データを同じモデルで扱うことができる。
-ただし、コレによって[[過学習>#l377f5cd]]が発生し得る。
*参考 [#a9dbdd0e]
https://www.osscons.jp/joho108j0-537/#_537
ページ名: