2023年12月2日 星期六

梯度下降與柯西不等式

 好奇點入@黃光文在台南夢n的演講

https://www.youtube.com/watch?v=ZL_tQKjzj04


光文老師提供了一些有別於一般柯西不等式的教學活動

突然有感而發:

諸葛亮也要學會和臭皮匠一起合作,才能獲得更高的效率


來看看下面的例子

在山頂往下走時,理想狀況假設

每往東1步高度下降 30cm(斜率=30)

每往南1步高度下降 40cm(斜率=40)


假設每回合移動可以選擇往東走dx步 

      再往南走dy步

因體力有限,限制(dx,dy)這個向量的長度為50
   (dx^2 + dy^2)^0.5 = 50 ,dx,dy >= 0

dx,dy為多少的時候可以得到本回合移動的最大的下降高度?


現實狀況中也當我們發現往南的效率比較好時,就會把資源全部壓在往南走

==> dx=0步  dy = 50步


但這樣選擇效率真的會比較好嗎?

至少數學上不是


不過這樣的場景發生在大大小小的生活場景中,

分組作業時,能力強的同學扛下大部分工作、

買食物的時候只買了自已最喜歡吃的品項、

讀書時只讀自己最喜歡的科目 ...


但其實分組時合作才創造更高的效率

買食物的時候要廣泛選擇才能營養均衡

讀書時要把時間分配給各科才能得到較高的分數(理論上啦)


這也可能是為什麼職業選擇多元的今日,

許多人會開始斜摃多項職業的原因,

回到上面下山的例子, 

根據柯西不等式

dx=30步 dy =40步 可以在一樣的限制底下得到最大的下降高度 

這其實就是在神經網路訓練階段中

用來調整模型參數的知名演算法「梯度下降法」為何可行的數學証明

這題的 dx 和 dy 的最佳比例剛好就可以視為

對x方向偏微之導函數值(x方向斜率)及

對y方向偏微之導函數值(y方向斜率)

之間的比例


以前學工程數學的時候就納悶這個方法的物理意義到底是什麼?

為什麼對各參數進行偏微之後的導函數值形成的向量是最大下降的方向?

直到最近幾年開始看神經網路相關內容的時候才發現,原來是用柯西不等式証明的

或許如果我高中就被@黃光文那麼可以啟發學生的數學老師教到的話

當下就能自己想通了也說不定 ~