機(jī)器學(xué)習(xí)——最大熵
????先來說一下系統(tǒng)的信息熵,如下所示,對于某一個系統(tǒng)中的所有隨機(jī)事件而言,對應(yīng)事件的概率乘以信息量,就是系統(tǒng)的信息熵。當(dāng)系統(tǒng)中每個事件的概率值相等時系統(tǒng)的信息熵最大。

????在一個未知系統(tǒng)中,對于所有可能發(fā)生的隨機(jī)事件通常的做法是將其設(shè)置成相同的概率pi,均分,此時系統(tǒng)的信息熵最大,這個也就是最大熵原則,表示系統(tǒng)的混亂程度也就越大。
????在機(jī)器學(xué)習(xí)的假設(shè)前提中,只有部分已知事實,也就是訓(xùn)練用的數(shù)據(jù)集,需要去預(yù)測真實的未知的系統(tǒng),這個時候就要用到最大熵原則進(jìn)行估計。
????所謂的最大熵原理其實就是指包含已知信息,不做任何未知假設(shè),把未知事件當(dāng)成等概率事件處理。
????接下來說說具體的求解過程。

????統(tǒng)計學(xué)中的N階矩的概念如上所示,變量X的冪次項的期望可以作為統(tǒng)計的特征值進(jìn)行分析。

????向量P(x)的組成是N階矩,特征函數(shù)φx(t)是一個對復(fù)數(shù)e^itx求期望,然后進(jìn)行泰勒展開,得到N階矩的表達(dá)形式。任何概率分布都可以使用這個特征函數(shù)給表示出來,一個概率分布模型就對應(yīng)一個特定的特征數(shù),二者之間是一一對應(yīng)的關(guān)系。
????也就是說可以通過求特征函數(shù)的方式來求出特定的概率分布模型,在泰勒展開式中的例子里面可以發(fā)現(xiàn),特征函數(shù)是向量P(x)的線性表達(dá)形式,這也說明通過比較兩個不同的數(shù)據(jù)集之間的向量P(X)是否相同就能得到背后的概率分布模型是否相同,不用計算出集體的概率分布模型,只用計算階矩是否相同就行了。
????關(guān)于為什么特征函數(shù)能和概率分布模型一一對應(yīng)的關(guān)系,首先求特征函數(shù)φ與對應(yīng)模型的概率密度函數(shù)f(x)乘積的積分,然后概率分布模型的密度函數(shù)f(x)的傅里葉變換與φ共軛,也就是一一對應(yīng)的關(guān)系,而密度函數(shù)與概率分布模型也是一一對應(yīng)的關(guān)系,所以特征函數(shù)φ結(jié)合概率分布模型就通過密度函數(shù)作為橋梁實現(xiàn)了一一對應(yīng)的關(guān)系。

????我們的目標(biāo)是讓機(jī)器學(xué)習(xí)模型從給定的訓(xùn)練數(shù)據(jù)樣本中總結(jié)出一個概率分布模型,這個模型能和真實環(huán)境下的概率分布模型相同,也就是能在真實環(huán)境下準(zhǔn)確預(yù)測。這個相同就是通過比較二者的特征函數(shù)來實現(xiàn),也就是比較N階矩向量是否完全相同。

????經(jīng)驗概率就是在數(shù)據(jù)樣本空間上采樣得到的頻率,使用滿足某一個要求事件樣本頻率來近似替代概率。

????機(jī)器學(xué)習(xí)模型的設(shè)計目標(biāo)是使得在滿足x的條件下,結(jié)論y的概率越大越好,在真實環(huán)境下輸入某一個樣本數(shù)據(jù)x,目標(biāo)y的概率也就是機(jī)器學(xué)習(xí)模型的預(yù)測目標(biāo),這個也就是條件概率模型,根據(jù)貝葉斯公式變形成聯(lián)合概率分布的形式。使用經(jīng)驗概率來近似替代聯(lián)合概率。

????將訓(xùn)練樣本數(shù)據(jù)空間上的經(jīng)驗概率對應(yīng)的概率分布模型作為真實模型的近似。對于未知的部分則使用最大熵原則,將其概率均分,作為未知數(shù)據(jù)樣本的假設(shè)估計。

????在求經(jīng)驗概率對應(yīng)的分布模型時,如果概率分布模型復(fù)雜的話,需要一直計算考慮到N階矩才能確定對應(yīng)的概率分布。這個計算過程很復(fù)雜,為了簡化就設(shè)計了一個隨機(jī)變量Xm,當(dāng)樣本數(shù)據(jù)(x,y)滿足某一個要求時就將函數(shù)值設(shè)計為1,其余情況均為0,m覆蓋訓(xùn)練樣本中所有可能出現(xiàn)的事件。
????在這樣簡化操作之和,Xm就是滿足伯努利分布了,每一個事件對應(yīng)的數(shù)學(xué)期望也就是其概率值。只用討論1階矩,也就是概率值期望便能歸納出對應(yīng)的概率分布模型。
????對兩個模型進(jìn)行降維(降維后兩個概率模型依舊一致),由于降維后的兩個伯努利概率模型只有一階矩不為零,可以產(chǎn)生一個條件用于后面的計算:降維后樣本模型與目標(biāo)模型的一階矩相等。

????條件熵的定義是一個事件A在對應(yīng)Xi的條件下,不同的Yi的概率值乘以信息熵的和,然后再把所有的事件A B C D………的系統(tǒng)熵疊加起來就是條件熵的定義。每一個事件ABCD就是對應(yīng)一個樣本數(shù)據(jù),Xi就是輸入值,Yi就是結(jié)果的分類。

????經(jīng)驗概率值是根據(jù)訓(xùn)練數(shù)據(jù)樣本得到的,是一個固定值,求出條件概率極值就能表示出最大熵了。

轉(zhuǎn)化為對偶問題,著重分析關(guān)于條件概率P的最值問題,通過求偏導(dǎo)數(shù)得到結(jié)果

將指數(shù)項變成向量的乘法,η乘以f函數(shù)值。中間因為所以那一步,就是把分子項疊加求和就變化成分母項了。

在滿足降維后樣本模型與目標(biāo)模型的一階矩相等的條件后,可大膽的地將目標(biāo)概率模型的條件熵轉(zhuǎn)換公式用樣本概率模型的經(jīng)驗概率替換,然后計算目標(biāo)概率模型的條件熵最大值(即滿足最大熵原理)

????當(dāng)然現(xiàn)在是不會使用手動選擇特征之類的去構(gòu)建F(x,y)函數(shù),直接使用多個隱藏層的神經(jīng)網(wǎng)絡(luò)自動去構(gòu)建,這個文章推導(dǎo)的基本思路是機(jī)器學(xué)習(xí)模型的基本原則——最大熵原則的由來,以及與激活函數(shù)softmax之間的關(guān)系。
????在拉格朗日乘數(shù)法中,我們只推導(dǎo)了條件概率P的最值,用于確定概率分布模型的形式,關(guān)于具體的概率分布模型參數(shù)λ的最值則是通過神經(jīng)網(wǎng)絡(luò)梯度下降法來得到確定。