|
在數(shù)學(xué)分析教科書中,以拉格朗日乘子(約束函數(shù)和問(wèn)題函數(shù)等高線的切點(diǎn)處的斜率)為線索,構(gòu)造了拉格朗日函數(shù)。在機(jī)器學(xué)習(xí)算法SVM中,也同樣把SVM基本型轉(zhuǎn)換為拉格朗日函數(shù)的方式加以求解。小白近日思索,拉格朗日函數(shù)本質(zhì)是對(duì)現(xiàn)實(shí)世界中,人的決策行為的一種巧妙的數(shù)學(xué)模擬,把待決策的問(wèn)題和解決問(wèn)題的前提和約束統(tǒng)一起來(lái)建立模型,并且拉格朗日函數(shù)內(nèi)部隱含了待決策問(wèn)題和約束對(duì)偶關(guān)系的本質(zhì)。下面小白一一道來(lái)。 第二十九篇 拉格朗日對(duì)偶模型的臆想來(lái)源于生活在日常生活中,人的行為通??梢悦枋鰹椋谝欢l件約束下,達(dá)成目標(biāo)(解決問(wèn)題)。人們需要更好的達(dá)成目標(biāo),因此,面臨抉擇(決策)。不同的決策,效果不同。因此,需要找到一種方法,能夠在一定的約束下,找到如何達(dá)到最優(yōu)的效果的方法。 舉個(gè)例子,'A擁有一家工廠,他現(xiàn)在有兩種獲利途徑,一是自己經(jīng)營(yíng),賣出產(chǎn)品獲得利潤(rùn);二是,出租收取租金'。 思考這個(gè)問(wèn)題,第一個(gè)途徑,A需要考慮,如何優(yōu)化組合自己工廠的資源(資源是有限的),生產(chǎn)更多產(chǎn)品,最大化利潤(rùn)。第二個(gè)途徑,出租自己工廠,租金必須至少大于途徑一之利潤(rùn)所得(注:這本質(zhì)是經(jīng)濟(jì)學(xué)中的成本思維,即,一個(gè)選擇的成本,就是放棄另一選擇的代價(jià))。 再思考這個(gè)問(wèn)題,若自己經(jīng)營(yíng),利潤(rùn)所得必須至少大于市場(chǎng)出租價(jià)格,才是最優(yōu)。而,如果出租,租金需高于經(jīng)營(yíng)所得才物有所值。因此,如何搭配組合工廠資源進(jìn)而利潤(rùn)最大化和如何對(duì)工廠資源進(jìn)行租金定價(jià),在數(shù)學(xué)上我們稱為一對(duì)'對(duì)偶問(wèn)題'。 再思考,上述對(duì)偶問(wèn)題的輸入是共同的,即工廠的資源。而輸出不同,前者是經(jīng)營(yíng)所生產(chǎn)所得之利潤(rùn),后者為出租所得之租金。在數(shù)學(xué)上,我們可以用'Z=f(X)'表示經(jīng)營(yíng)生產(chǎn)的過(guò)程,其中,X表示工廠的資源,Z表示所得利潤(rùn)。用'R=Q(X)'表示出租的過(guò)程,R表示獲得的租金,X表示工廠的資源。 再思考,現(xiàn)在對(duì)于問(wèn)題一(途徑一),A需要考慮如何組合工廠資源進(jìn)行經(jīng)營(yíng)。那么,此時(shí)出租就變成了對(duì)經(jīng)營(yíng)生產(chǎn)的約束。這個(gè)約束的表現(xiàn),我們可理解為,一個(gè)特定租金水平會(huì)對(duì)應(yīng)的資源,有多個(gè)不同資源的組合方式;在這些不同組合方式下,A進(jìn)行經(jīng)營(yíng)生產(chǎn),試圖利潤(rùn)最大化;對(duì)于問(wèn)題二(途徑二),A需要考慮如何決策自己租金水平。那么,此時(shí)經(jīng)營(yíng)生產(chǎn)就變成了對(duì)出租行為的約束。這個(gè)約束的表現(xiàn),我們可理解為,對(duì)于一個(gè)特定的利潤(rùn)水平,可以通過(guò)多個(gè)不同的資源組合經(jīng)營(yíng)所得,那么,我們需要找其中一組能夠租金最大化的資源組合進(jìn)行出租。因此,小白體會(huì),問(wèn)題和約束互為對(duì)偶,即f(X)和Q(X)互為對(duì)偶。 圖1 有了如上小白的臆想后,再次列出教科書中描述拉格朗日函數(shù)的描述,如圖1。我們可以理解,函數(shù)f(x,y)和條件C:的函數(shù)如果來(lái)源于現(xiàn)實(shí)世界的對(duì)偶問(wèn)題的話。那么,其實(shí)我們也可以理解為,對(duì)于現(xiàn)實(shí)世界中,如上的對(duì)偶問(wèn)題,我們?cè)跀?shù)學(xué)中,把問(wèn)題抽象為函數(shù),把對(duì)偶問(wèn)題抽象為條件。 總結(jié)下體會(huì) 現(xiàn)實(shí)世界中,我們時(shí)常面臨多個(gè)選擇,一旦我們決策了一個(gè)選擇,我們就會(huì)執(zhí)行這個(gè)選擇,這個(gè)選擇就變成一個(gè)問(wèn)題,而如何執(zhí)行選擇就變成了我們?nèi)绾谓鉀Q問(wèn)題。我們有多種解決問(wèn)題的方式,但得到結(jié)果不同。數(shù)學(xué)中,問(wèn)題被抽象為函數(shù),不同的結(jié)果就是問(wèn)題的解。而我們?nèi)绾谓鉀Q問(wèn)題,其實(shí)就是我們?nèi)绾握业阶顑?yōu)的解。而這時(shí),我們執(zhí)行的當(dāng)前的選擇所關(guān)聯(lián)的被放棄的其他的選擇,是當(dāng)前我們?cè)趫?zhí)行選擇的'對(duì)偶選擇'或'對(duì)偶問(wèn)題'。 對(duì)于'對(duì)偶問(wèn)題',我們選擇了放棄解決。但其實(shí),我們之所以放棄,是因?yàn)槲覀冊(cè)陬^腦中已經(jīng)模擬解決了它,并且我們得到一個(gè)解。這個(gè)解可能是一個(gè)確定的,也可能是一個(gè)解的范圍。并且,我們模擬解決之后所產(chǎn)生的'對(duì)應(yīng)這個(gè)解的資源組合',就變成了當(dāng)前我們現(xiàn)實(shí)中選擇去解決的問(wèn)題的約束。 比如:一個(gè)學(xué)生是選擇考研呢,還是選擇工作。假如,選擇了工作。其實(shí),他在頭腦里已經(jīng)模擬了選擇考研所投入的資源,比如:3年的時(shí)間,學(xué)費(fèi)。那么,這些時(shí)間,和學(xué)費(fèi),將成為他當(dāng)前選擇工作的約束。具體是,他需要考慮,把3年的時(shí)間以及學(xué)費(fèi)等資源進(jìn)行如何的組合,并投入到工作中,才能得到更好的結(jié)果,這個(gè)結(jié)果應(yīng)該是比考研更令他滿意的。 拉格朗日對(duì)偶模型的初步構(gòu)建0X(x,y)對(duì)偶問(wèn)題 的解0=Q(x,y)對(duì)偶問(wèn)題即對(duì)偶函數(shù)Q(x,y)也是約束函數(shù)資源投入組合即 函數(shù)自變量 變化范圍即 (x,y)滿足約束 C:0=Q(x,y)問(wèn)題即f(x,y)問(wèn)題 的解即Z= f(x,y)的極值 圖2 圖3 根據(jù)上面小節(jié)的描述,我們?cè)谧鴺?biāo)系中構(gòu)建出如上的示意圖,圖2。同時(shí),我們?cè)倭谐隼窭嗜蘸瘮?shù),圖3。通過(guò)對(duì)比,小白心中有兩點(diǎn)疑惑: 一是,拉格朗日函數(shù)為什么把'f(x,y)'和'Q(x,y)'進(jìn)行相'加'得到了'L'。這個(gè)'加'背后含義是什么?。 二是,在相加的時(shí)候引入一個(gè)新的變量(拉格朗日乘子),作為'Q(x,y)'的系數(shù),這個(gè)系數(shù)的含義是什么? 帶著這兩點(diǎn)疑惑,我們把圖2結(jié)合拉格朗日函數(shù)再改造一下,如下圖3。 圖3 由于約束函數(shù)的解是0,因此,拉格朗日L的解既是問(wèn)題函數(shù)f的解,因此,相加('+')的疑惑是容易理解的。 再思考,我們目標(biāo)是找到一個(gè)f的最優(yōu)解,也即是找到L的最優(yōu)解。我們知道L的解固然和X(x,y)有關(guān)系,關(guān)系是f。那么,L的解和約束C:Q()的關(guān)系如何體現(xiàn)的?即我們需要找到一個(gè)變量,用這個(gè)變量表達(dá)Q()對(duì)L的解的影響。下面,借助小白上篇文章《對(duì)矩陣的線性臆想》來(lái)思考這個(gè)問(wèn)題。 問(wèn)題函數(shù)是一個(gè)映射,假如其是線性映射,因此,我們可以認(rèn)為其是一個(gè)線性變換矩陣'B',不妨稱其為問(wèn)題矩陣。而資源的組合我們可以看成是向量'X',因此,f(X)可看成BX,即問(wèn)題矩陣和資源向量的乘積。那么,假如f的解由m變?yōu)閚,相當(dāng)于BX乘以'n/m'(即n=m*(n/m)) 。因此,我們得到一種理解,我們?cè)趯ふ襢的解的過(guò)程,就是用不同'數(shù)(n/m)'和BX乘積的過(guò)程。 再來(lái)思考,問(wèn)題矩陣B左乘資源向量X(x,y),相當(dāng)于在B的線性空間里來(lái)觀察X。而,我們知道線性矩陣有兩個(gè)特征,一個(gè)是伸縮特征,即特征值,還有一個(gè)旋轉(zhuǎn)特征,即特征向量。因此,用一個(gè)數(shù)(標(biāo)量)和BX的乘積,相當(dāng)于對(duì)B的伸縮特征進(jìn)行縮放。但是,我們知道問(wèn)題函數(shù)映射原則沒(méi)有變,即B不會(huì)變。所以這個(gè)標(biāo)量我們可以看作是資源向量X在各維度上等比例的膨脹。但是此時(shí)我們應(yīng)得到了一種理解:?jiǎn)栴}的解的變化,可以看作是問(wèn)題映射矩陣伸縮特征的變化,也可看作資源向量在維度上等比例的縮放,兩者是對(duì)等的。 再來(lái)思考剛才我們提出的問(wèn)題,L的解和約束Q(X)的關(guān)系如何體現(xiàn)?那么現(xiàn)在,前方答案的輪廓似乎清晰了一些。那就是,Q(X)對(duì)L的解的影響,可以看作是Q(X)對(duì)資源向量X等比例變化的影響。而此時(shí),假如,我們把Q也看作是線性矩陣,那么,這種影響也可以對(duì)等的看作約束矩陣的伸縮。因此,我們此時(shí)得到一種理解,約束函數(shù)如果看作線性變化的時(shí)候,那么,約束對(duì)L的影響,可以看作約束線性變換矩陣(約束函數(shù))的伸縮。這個(gè)伸縮,就是拉格朗日乘子。 拉格朗日乘子臆想的否定回頭看剛才的臆想推導(dǎo)過(guò)程,關(guān)鍵問(wèn)題在于理解拉格朗日乘子在拉格朗日函數(shù)中的含義。結(jié)論是,拉格朗日乘子體現(xiàn)了,約束函數(shù)(即對(duì)偶函數(shù)) 對(duì)問(wèn)題解的影響。但,似乎小白剛才過(guò)程似乎繞了遠(yuǎn)路,而且似乎有一點(diǎn)不準(zhǔn)確。 所謂'繞了遠(yuǎn)路',其實(shí)小白應(yīng)該直接從約束函數(shù)通過(guò)對(duì)資源向量的約束,進(jìn)而影響問(wèn)題的解著手,則更有效率。但剛才的'遠(yuǎn)路',至少使小白體會(huì)到,如果從線性約束,線性問(wèn)題的角度上看,拉格朗日很容易理解。 而所謂'有一點(diǎn)不準(zhǔn)確',是因?yàn)?,在上述過(guò)程中,是在假設(shè)問(wèn)題函數(shù)和對(duì)偶函數(shù)都為線性變換的前提下,借助X的等比例變化來(lái)臆想推導(dǎo)。而小白此刻思考,既然分析約束函數(shù)對(duì)L的影響,即約束函數(shù)對(duì)資源向量X的影響,應(yīng)該在X不變的前提下(讀者可以體會(huì),此處的'不變',就是把問(wèn)題函數(shù)看作約束,不變意為特定的約束,比如'f(X)=0'對(duì)應(yīng)的一個(gè)特性的'不變'的X約束空間),分析約束函數(shù)的影響(讀者可以體會(huì),把約束看作問(wèn)題,就是在分析對(duì)偶問(wèn)題)。 否定之后的分析 再來(lái)回顧下,前面小白關(guān)于拉格朗日乘子文章,拉格朗日乘子本質(zhì)是約束函數(shù)和問(wèn)題函數(shù)等高線切點(diǎn)的斜率,如圖4。結(jié)合對(duì)應(yīng)今日小白上述關(guān)于對(duì)偶模型的理解,某一個(gè)特定的登高線就是對(duì)偶問(wèn)題(讀者可以體會(huì),此處對(duì)偶問(wèn)題指的是約束函數(shù))的約束。因此,針對(duì)特性的登高線(即特定的約束),對(duì)偶問(wèn)題對(duì)解的影響在于對(duì)偶問(wèn)題的等高線(下圖的曲線) 和特性的約束登高線(閉環(huán)線)相切。因此,對(duì)于切點(diǎn)的斜率,即為對(duì)偶問(wèn)題對(duì)解的影響。 圖4 此刻,我們應(yīng)該產(chǎn)生兩點(diǎn)理解,如本節(jié)描述,若假設(shè)對(duì)偶問(wèn)題為線性函數(shù)的話,拉格朗日乘子可理解為對(duì)應(yīng)線性空間的伸縮;若拋開線性函數(shù)的假設(shè),拉格朗日乘子可理解為切點(diǎn)的斜率。 拉格朗日對(duì)偶模型的進(jìn)一步臆想如下圖,拉格朗日函數(shù)中的問(wèn)題函數(shù)和約束函數(shù)是對(duì)偶的,約束函數(shù)可以稱之為對(duì)偶問(wèn)題。對(duì)應(yīng)一個(gè)特定問(wèn)題解的自變量的集合(資源向量X集合)可看作是對(duì)偶問(wèn)題的約束,這種約束體現(xiàn)在:對(duì)偶問(wèn)題隨著解(對(duì)偶問(wèn)題的解)變化,解對(duì)應(yīng)的自變量空間在變化,這個(gè)變化體形象的理解為對(duì)偶問(wèn)題對(duì)應(yīng)的登高線的移動(dòng)(假如登高線是閉環(huán),可以形象的看到閉環(huán)的伸縮),而這個(gè)移動(dòng)是有邊界的,這個(gè)邊界(邊界指的是'對(duì)應(yīng)一個(gè)特定問(wèn)題解的自變量的集合')就是約束的體現(xiàn)。 0x對(duì)偶問(wèn)題約束下資源向量空間X(x,y)的集合(對(duì)偶問(wèn)題解變化對(duì)應(yīng)的資源向量的集合)問(wèn)題解變化對(duì)應(yīng)的資源向量X(x,y)的集合(特性問(wèn)題約束下的資源向量集合)yZX(x,y)切點(diǎn)就是最優(yōu)解 小白此處又臆想到一點(diǎn)理解,上面章節(jié)中,把拉格朗日乘子理解為約束線性空間的伸縮是不準(zhǔn)確的,但小白臆想到此處,應(yīng)該否定之否定。其實(shí)線性約束空間的伸縮等同于拉格朗日乘子,因?yàn)?,線性空間的伸縮,空間邊界的斜率不變(沒(méi)有旋轉(zhuǎn),特征向量方向不變),但是點(diǎn)到線性函數(shù)的函數(shù)距離變化了(線性空間下點(diǎn)的度量變化了)。那么,約束等高線和函數(shù)的距離也變化了,這種變化可形象化的體現(xiàn)為線性超面的平移和延伸。而如果約束空間是非線性的(彎曲的),那么,非線性空間的膨脹,導(dǎo)致切點(diǎn)的變化,對(duì)于非線性空間,切點(diǎn)的變化,通常斜率會(huì)發(fā)生變化。 因此,小白理解:拉格朗日乘子的其本質(zhì)在于描述對(duì)偶問(wèn)題所關(guān)聯(lián)的對(duì)偶函數(shù)空間彼此膨脹(彼此約束)的數(shù)學(xué)建模。對(duì)于線性函數(shù),建??尚蜗蠡癁榫€性空間的伸縮,具體體現(xiàn)為線性空間的邊界直線的平移延伸后,和對(duì)偶邊界交點(diǎn)的向量的各分解維度坐標(biāo)的等比變化(這個(gè)等比變化即空間邊界的斜率不變);對(duì)于非線性函數(shù),可形象化為非線性空間彎曲邊界的伸縮,具體體現(xiàn)為伸縮后和對(duì)偶邊界的交點(diǎn)的向量各分解維度坐標(biāo)的非等比變化(這個(gè)非等比變化體現(xiàn)為空間邊界交點(diǎn)的斜率變化了)。 對(duì)偶即'陰陽(yáng)'小白臆想,這個(gè)拉格朗日對(duì)偶模型似乎是數(shù)學(xué)世界里的太極圖,問(wèn)題和對(duì)偶問(wèn)題即為陰陽(yáng)。問(wèn)題空間和約束空間此消彼長(zhǎng)。當(dāng)下是'陰',是現(xiàn)實(shí),是約束,是對(duì)偶問(wèn)題;未來(lái)是陽(yáng),是現(xiàn)實(shí),是我們要面對(duì)的。我們需要結(jié)合現(xiàn)實(shí),充分利用現(xiàn)實(shí)的邊界,能夠在未來(lái)達(dá)到最優(yōu)解。而到了未來(lái)。最優(yōu)解已定,變成了現(xiàn)實(shí),問(wèn)題變成約束,陽(yáng)轉(zhuǎn)為陰。但,新的未來(lái)又會(huì)出現(xiàn),新的問(wèn)題又會(huì)出現(xiàn)。時(shí)間不止,陰陽(yáng)迭代,對(duì)偶永恒。 |
|
|
來(lái)自: taotao_2016 > 《數(shù)學(xué)》