[其他] 何謂"理解"了工程上的名詞或數學
想了很久如何下標題...因為問題範圍有點廣
不好意思, 先把常常寫在結尾的部分放到前面,
因為這些問題敘述起來比較沒有規則, 就是這幾年的工作遇到的困難跟經驗談
我身邊的朋友要馬就是純工程出身, 要馬就是純數繼續在學界,
或是學界轉業界後就不在乎這些事情了
因此我才會懷疑是否在工程上在乎跟理解這些事情是不需要的?
(可是又覺得不太可能如此, 如果不理解, 那怎麼知道什麼時候要採用/避免?
該不會又回到了"先加再說", 效果好再解釋?)
文末分享一個讓我PO這篇文的最後一根稻草...頻譜洩漏
或許板友們也可以分享如果是你遇到這個問題, 怎樣叫做理解了這個問題
或是說知道這個問題的答案是什麼(我就是查不到formal math definition...)
想聽聽看各位板友的看法, 謝謝!
======================================================================
大體來說, 我用以前在學界的"理解了"的標準來看待我工作上用到的名詞與數學
從一年多的深度學習到現在三年的訊號處理, 不論是paper/工程的書/網路資料
我覺得...好累...累到懷疑是不是我錯了 不該拿以前那套邏輯思維套用在實務上的討論
累的點完全不是在難, 而是在定義不清/不一致, 很多都是語言敘述或是舉例
導致花一堆時間在猜東西/定義以及自我給定義
然後逐個在猜測的定義下做推導, 看結果有沒有矛盾
很大的可能是跟例子A一致, 但是又跟例子B牴觸, 於是又修正定義, 一直loop
這些年有問過不少人的看法, 工程上的朋友給出的說法大致是:
1.本來就不會寫清楚, 之後被質疑才有解釋的空間
(這個好像蠻常遇到的, 明明傅立葉轉換家族的定義跟假設不一樣然後彼此互相幫忙,
數學上對於這個家族間的關係其實都要有嚴格的假設才能相同or逼近的)
2.實務上很多是try出有結果後才去補數學式
3.本來就沒有嚴格/一致定義
4.審paper的人不會驗證數學式, 敘述邏輯跟結果合理就好
...etc
這些說法每個都讓我大開眼界...
【工程paper】
舉工程paper的格式來說, 大致上是:
(1)介紹 (2)理論 (3)實作 (4)數據 (5)結論
數學paper只是少掉(3)跟(4)而已
接著以我的邏輯思維來說:((4),(5)不提了)
(1) 介紹: 問題是什麼, 以前的模型有什麼問題, 這篇解決了什麼
(2) 理論: 對這個問題的數學建模是什麼, 推導出什麼結果
(3) 實作: 用什麼方式達到理論數學式
以我看過的工程paper來說, (1)的內容多半是語言敘述, 這部分只要在(2)中
給了明確的數學定義, 那就沒問題, 但是有些給有些不給, 所以這裡就要猜了
再來猜最兇的就是(3)的部分, 幾乎沒有證明(2)跟(3)的關係, 僅口述說(3)實作(2)
所以我就在猜到底是:
(a) 確實(3)是在實作(2), 只是證明trivial
(b) 確實(3)是在實作(2), 只是證明很難
(c) 確實(3)是在實作(2), 只是他多假設了一些無法證明的東西
(比如期望值用移動平均實作, 假設這個方式可以逼近理論期望值)
(d) 當初是先有(3)發現效果好, 再去補(2)來發paper
然後前面(a)~(c)的猜測, 就要花我一堆時間, 涉及:
(i) 把實作部分還原成數學式
(ii) 把還原後的數學式跟理論數學式做比較(99%不相同)
(iii) 自己猜條件&假設, 盡量把(ii)控制在某個誤差範圍內
最後就不了了之, 因為原作者不在旁邊, 所有的一切只能自己猜跟驗證
【我認為的討論邏輯/何謂理解了某個東西】
今天要討論某個議題, 所有關於這個議題的辭彙都要有共識的定義,
才不會導致問題發散以及各說各話, 毫無交集
以數學例子來說, 要討論傅立葉轉換的話, 就必須涉及:
(1) 積分假設是什麼? 黎曼或是勒貝格
(2) 函數假設是什麼? 黎曼或是L^p
(3) 是否為等價定義? 若不L^p怎麼辦?
詳細可參考L大的 https://www.ptt.cc/bbs/Math/M.1641311400.A.DB4.html
也就是說, 以上每個詞彙都有定義, 只差有沒有時間自己證一次而已
我長年就是習慣這樣的思維(在學界跟教授與學生互動的經驗也支持這樣是對的)
所以如果這個議題有定義, 那就先確認彼此定義是什麼
如果沒有定義, 那我們先一起把它定義出來
以工程例子來說, 要討論取樣定理的話, 就必須涉及:
(1) 訊號假設?
(2) 何謂完美還原? 還原到誰? everywhere or almost everywhere?
(3) 雙向無窮級數的定義? 是採用左右對稱還是各自跑? 是否等價?
(4) 極限交換? 還是假設這函數很好, 在哪都可以交換?
而把這邏輯套到工程paper來說,
我就會先去抓該paper如何對問題做數學建模(數學目標式)
然後再看實作是如何逼近數學目標式
我要求的只有這樣 但是很多就是看不到或是加很多沒證明的因素
比如回聲消除(AEC)的數學建模是假設傳輸路徑是LTI系統, 並且是係數是有限長的(FIR)
然後實作(演算法)就是要幫忙算出這些係數
數學來說單純是做 f(w):= |Aw-b|^2 的梯度下降法而已
但是看了很多在做AEC的paper確實都用同一套理論建模
但是實作上卻各自加了很多因素, 聲稱可以幫助達到理論係數或是加速,
(block處理, 加入統計量動態改變學習率...但沒證明這樣能達到什麼效果)
但是要馬沒給證明, 要馬就是證明的內容跟實作不符
這時候我又花了不少時間在驗證上...
而且, 常常會發生語言敘述矛盾的地方
以AEC的論文為例, 常在介紹中提到"若在雙講情況時沒停止學習率更新, 係數會發散掉"
然後我用最純的梯度下降(沒加任何變因)做實驗時根本沒有發散掉, 只是收斂速度慢而已
然後我就卡住了, 不知道如何解決這個矛盾
這又是我另外一個不舒服的地方...因為工程paper的理論往往使用隨機過程建模
不是單純的"令x_n為定義在整數上的實數函數", 所以很容易覺得理論跟實作差很多
只能相信他的實作在逼近理論, 也因此遇到像上述實驗上的矛盾也無從檢驗
(因為任何的實驗只是一次隨機過程的取樣而已)
最後就覺得, 如果這些矛盾沒有釐清, 這篇paper到底帶給我什麼知識?
【何謂頻譜洩漏(Spectral leakage), 為何加特殊窗可以減少頻譜洩漏】
我這幾天去查相關資料, 9成都是用sine舉例的方式解釋, 參考wiki的第一張圖
https://en.wikipedia.org/wiki/Spectral_leakage (有藍紅線的那張)
然後我到處都查不到formal definition
可是接著想, 如果沒有定義, 那怎麼回答自己或是別人何謂頻譜洩漏...
如果有定義, 那我就可以驗證那些舉例是否符合定義, 以及加特殊窗是否會減少洩漏
(記得當線代助教時, 大一生在寫關於方陣AB=I則BA=I的證明時, 不少人就寫:
令A=I, B=I, 則因為AB=I, 所以BA=I...邏輯錯到傻住XD 舉例不能當作全部)
這邊題外話一下, 工程上的詞彙很容易遇到沒有正式定義, 但是可以瘋狂舉例
而在意定義的人, 只能從海量的例子去自我定義出一個說服自己的定義...
這個問題以我所謂"理解了"的標準, 就要涉及:
(縮寫: FT=連續傅立葉轉換, FS=傅立葉級數, DTFT=離散時間傅立葉轉換,
DFT=離散傅立葉轉換)
(1) 訊號假設? 是定義在整數x_n還是在實數x(t)? 是當作週期函數還是非週期函數?
非週期的話是假設有緊緻支撐還是沒有?
(2) 何謂頻譜? 是採用FT/DTFT/FS/DFT? 如果用FT, 如果不是L^1的話要採用分布理論?
(3) 何謂洩漏? 何謂降低洩漏?
(4) 何謂特殊窗函數?(以例子來看是那些頭尾遞減到0的緊緻支撐函數)
當以上都well defined後, 就要能證明加特殊窗函數後就能降低洩漏
當然啦, 我完全查不到(1)~(3)的定義, 查越多只是更多的舉例, 更遑論證明
因此我就試著自己定義這些東西, 參考wiki那張圖, 我馬上就卡住了, 涉及:
(a) wiki那張圖是對週期函數sine做FT, 這個用L^1的FT是不收斂的, 如果我要定義
就要針對不同函數空間的FT做定義?
(b) 洩漏如果定義在"頻譜"無法還原跟FT的結果一樣, 那所有函數都會洩漏
(c) 如果不是sine/cosine呢? 任何函數做週期延拓都是週期函數阿
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.225.191 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Math/M.1652296038.A.2F9.html
※ 編輯: znmkhxrw (59.102.225.191 臺灣), 05/12/2022 03:07:39
推
05/12 18:19,
1年前
, 1F
05/12 18:19, 1F
→
05/12 18:21,
1年前
, 2F
05/12 18:21, 2F
→
05/12 18:22,
1年前
, 3F
05/12 18:22, 3F
→
05/12 18:22,
1年前
, 4F
05/12 18:22, 4F
→
05/12 18:24,
1年前
, 5F
05/12 18:24, 5F
→
05/12 18:24,
1年前
, 6F
05/12 18:24, 6F
→
05/12 18:25,
1年前
, 7F
05/12 18:25, 7F
嗨V大~你的這些問號也是我的問號
我就是覺得今天任何一份"頻譜洩漏"的資料
他就要先給你那些問號是什麼, 也就是假設
可是我卻花很多時間一個一個測試他的敘述到底是基於哪些問號
就像是給一堆"x^n"的微分是"n*x^(n-1)"但是一直沒給微分的定義
然後我就要花時間自己去猜出微分的定義...這不合理吧
→
05/12 18:27,
1年前
, 8F
05/12 18:27, 8F
→
05/12 18:29,
1年前
, 9F
05/12 18:29, 9F
→
05/12 18:29,
1年前
, 10F
05/12 18:29, 10F
→
05/12 18:30,
1年前
, 11F
05/12 18:30, 11F
如果wiki講明"頻譜我們採取FT, 而且是採用定義在分布理論上的FT"
或是你講的用PV, 我都可以接受並且後續再驗證
→
05/12 18:31,
1年前
, 12F
05/12 18:31, 12F
→
05/12 18:32,
1年前
, 13F
05/12 18:32, 13F
→
05/12 18:32,
1年前
, 14F
05/12 18:32, 14F
→
05/12 18:33,
1年前
, 15F
05/12 18:33, 15F
就是因為他用sine舉例才"看起來"有洩漏的感覺
那其他週期函數如果有洩漏是怎樣呢?
這個問題也就是因為沒有定義洩漏
--------------------------------------------------------------------
V大針對你回的這些我想問一下, 為什麼歷史上這些詞彙就不能像
數學定義那樣寫成:(以下有加一些猜的東西)
<Definition> We say a function x:R→R has spectral leakeage
if: (1) x is periodic with period p > 0
(2) F{x}(f) (FT defined by distribution theory) exists
(3) by x_n:= f(nT), n = 0~N-1, T = p/N
X_k:= FFT{x_n}
we have X_k != F{x}(k*N*T)
就是類似寫成這樣, 那我就可以驗證是否加入窗函數就會降低洩漏
但是工程上的詞彙我很少看到這種寫法, 所以我就會花一堆時間在猜定義
原因就是目前根本沒有一致定義嗎?
推
05/12 22:04,
1年前
, 16F
05/12 22:04, 16F
→
05/12 22:06,
1年前
, 17F
05/12 22:06, 17F
→
05/12 22:08,
1年前
, 18F
05/12 22:08, 18F
→
05/12 22:09,
1年前
, 19F
05/12 22:09, 19F
→
05/12 22:10,
1年前
, 20F
05/12 22:10, 20F
→
05/12 22:11,
1年前
, 21F
05/12 22:11, 21F
→
05/12 22:12,
1年前
, 22F
05/12 22:12, 22F
→
05/12 22:14,
1年前
, 23F
05/12 22:14, 23F
→
05/12 22:15,
1年前
, 24F
05/12 22:15, 24F
→
05/12 22:15,
1年前
, 25F
05/12 22:15, 25F
→
05/12 22:17,
1年前
, 26F
05/12 22:17, 26F
→
05/12 22:17,
1年前
, 27F
05/12 22:17, 27F
推
05/12 22:21,
1年前
, 28F
05/12 22:21, 28F
→
05/12 22:22,
1年前
, 29F
05/12 22:22, 29F
V大你意思是說, 如果加窗函數y(t)=x(t)*w(t), 如果w(t)是恆為1的常數函數
那y(t)就恆等於x(t), 因此x跟y的FT會一樣, 就毫無洩漏
但是如果今天w(t)不是常數函數, 假設是有緊緻支撐的函數
那自然x跟y的FT會不一樣, 這就是所謂的洩漏
如果我沒有誤會你的意思的話, 直接你寫的標準差當定義, 馬上就遇到問題:
x(t)如果是週期函數, FT就是一個泛函, 這樣標準差定義也會well-defined?
即便這個問題解決了, 這也就是我所謂"猜"的一種方式
更何況像是wiki的圖畫出了FT, DTFT, DFT來解釋頻譜洩漏 不僅僅只用了FT
感覺就是每個人對於頻譜洩漏可能有各自的定義
但是直覺上好像都在表達一個無法有一致定義的自然現象?
推
05/12 22:34,
1年前
, 30F
05/12 22:34, 30F
→
05/12 22:40,
1年前
, 31F
05/12 22:40, 31F
→
05/12 22:43,
1年前
, 32F
05/12 22:43, 32F
→
05/12 22:45,
1年前
, 33F
05/12 22:45, 33F
→
05/12 22:49,
1年前
, 34F
05/12 22:49, 34F
→
05/12 22:51,
1年前
, 35F
05/12 22:51, 35F
→
05/12 22:53,
1年前
, 36F
05/12 22:53, 36F
→
05/12 22:55,
1年前
, 37F
05/12 22:55, 37F
嗨P大~對 我就是覺得不可能這幾百年只有我遇到這種數學與工程的銜接問題
所以都是以 "應該是對的 只是我證不出來/證錯" 繼續花時間找資料
但是幾年來做這些事 覺得好像越來越不是這樣
好像我在學界在乎跟使用的那套分析事務的邏輯在工程上不適用
但是上網查也沒有相關的討論...
於是才想說不再浪費時間了 問看看各位板友的意見
→
05/12 23:06,
1年前
, 38F
05/12 23:06, 38F
→
05/12 23:07,
1年前
, 39F
05/12 23:07, 39F
→
05/12 23:08,
1年前
, 40F
05/12 23:08, 40F
→
05/12 23:09,
1年前
, 41F
05/12 23:09, 41F
→
05/12 23:12,
1年前
, 42F
05/12 23:12, 42F
→
05/12 23:13,
1年前
, 43F
05/12 23:13, 43F
→
05/12 23:16,
1年前
, 44F
05/12 23:16, 44F
→
05/12 23:19,
1年前
, 45F
05/12 23:19, 45F
→
05/12 23:19,
1年前
, 46F
05/12 23:19, 46F
→
05/12 23:21,
1年前
, 47F
05/12 23:21, 47F
→
05/12 23:24,
1年前
, 48F
05/12 23:24, 48F
→
05/12 23:25,
1年前
, 49F
05/12 23:25, 49F
→
05/12 23:27,
1年前
, 50F
05/12 23:27, 50F
→
05/12 23:32,
1年前
, 51F
05/12 23:32, 51F
了解~舉例來說, 今天我在某個模型加入了一層f(x) = x^3, 然後實用效果變好了
paper中要寫到這一點時, 如果我能有一套完整的定義跟數學證明去說明, 那我就寫
如果沒有的話, 我就會寫我"認為"他在做什麼物理現象, 但是沒有定義跟證明
但是我遇到的敘述通常是:(舉例)
f(x)=x^3強化了訊號奇數頻的頻率, 因此辨識度變高
接著附上一些說明數學式子
然後我就非常不舒服
因為你有附數學式, 我就認為你這些式子100%在定義/說明你的敘述
因此我就從數學式或是敘述開始猜定義:
(1) 既然說奇數頻, 所以對方是用FS或是DFT, 就不是用FT或是DTFT了?
(2) 何謂強化? 增加Gain?
(3) 何謂辨識度變高?
諸如此類的猜測, paper沒寫, 我就從數學式撈
撈不到我就上網找
然後就導致這串葡萄越來越大串, 越來越模糊
→
05/12 23:42,
1年前
, 52F
05/12 23:42, 52F
→
05/12 23:43,
1年前
, 53F
05/12 23:43, 53F
→
05/12 23:45,
1年前
, 54F
05/12 23:45, 54F
→
05/12 23:48,
1年前
, 55F
05/12 23:48, 55F
→
05/12 23:56,
1年前
, 56F
05/12 23:56, 56F
→
05/12 23:57,
1年前
, 57F
05/12 23:57, 57F
推
05/12 23:57,
1年前
, 58F
05/12 23:57, 58F
→
05/12 23:57,
1年前
, 59F
05/12 23:57, 59F
→
05/12 23:58,
1年前
, 60F
05/12 23:58, 60F
→
05/12 23:59,
1年前
, 61F
05/12 23:59, 61F
→
05/13 00:00,
1年前
, 62F
05/13 00:00, 62F
→
05/13 00:01,
1年前
, 63F
05/13 00:01, 63F
→
05/13 00:02,
1年前
, 64F
05/13 00:02, 64F
→
05/13 00:15,
1年前
, 65F
05/13 00:15, 65F
→
05/13 00:16,
1年前
, 66F
05/13 00:16, 66F
嗨r大, 就是依據不同的假設去選用不同的window就是了
當然假設錯誤就很可能導致效果不好 此時再換假設與window 這些我都可以接受
我在意的點是, 如果你上面這段推文放在paper中, 並且他有附數學推導
我就認為他有義務先講清楚這些專有名詞所選用的定義, 諸如:
(1) 訊號離散或是連續? 訊號週期嗎?
(2) 採用FT/DTFT/FS/DFT? 不收斂怎麼辦? 假設只討論收斂的訊號?
(3) main lobe, side lobe, PSD, smoothed, SNR...
以上這些的數學定義陳述要給出來我才能學習跟檢驗他有沒有證錯
但是大多數沒有附, 我就上網找, 而我這幾年的經驗也知道這些名詞
很多時候在不同假設下有不同版本
比如光是SNR就有一堆版本了, 離散/連續/隨機變數...PSD也是
而如果你這段推文只是在描述某個沒有一致定義的大概, 我完全接受, 腦中也有圖形
如果作者本人都沒寫數學式了, 我也不想花時間去研究上述(1)~(3)是什麼情況
也就是說, 我認為當作者用數學式在佐證自己的物理論述時
就有義務要給出明確定義
不過這個"認為"也是在學界養成的習慣, 如果在工程上不是這樣我也接受了
※ 編輯: znmkhxrw (59.102.225.191 臺灣), 05/13/2022 01:34:07
→
05/13 03:01,
1年前
, 67F
05/13 03:01, 67F
→
05/13 03:04,
1年前
, 68F
05/13 03:04, 68F
→
05/13 03:05,
1年前
, 69F
05/13 03:05, 69F
→
05/13 03:06,
1年前
, 70F
05/13 03:06, 70F
→
05/13 03:07,
1年前
, 71F
05/13 03:07, 71F
→
05/13 03:09,
1年前
, 72F
05/13 03:09, 72F
→
05/13 03:10,
1年前
, 73F
05/13 03:10, 73F
→
05/13 03:12,
1年前
, 74F
05/13 03:12, 74F
→
05/13 03:13,
1年前
, 75F
05/13 03:13, 75F
→
05/13 03:14,
1年前
, 76F
05/13 03:14, 76F
r大你的意思是說, 比如我在查頻譜洩漏他寫了x_n但是沒寫條件, 我就假設不管x_n是隨
機過程/實數列/週期/緊緻支撐, 都會符合接下來的敘述
而只要寫到頻譜, 則不管是FT, DTFT, FS, DFT都會對(而DFT後相乘再做反DFT會變成循環
conv, 這個如果下面都沒提, 就當作線性或是循環conv都對?)
而像是我遇到週期函數的FT不收斂, 要用泛函來看他, 也就假設作者當他是泛函
如果是這樣的話, 不就變成留下模糊的空間隨時可以解釋了...
舉例如果我在某篇文章說絕對值的微分是階梯函數, 沒特別講0點怎麼處理, 讀者就要自
行假設我可能採用別的微分定義, 或是我只在乎almost everywhere, 或是我加個local的
mollifier
總之經驗論來說, 從我的分析跟邏輯方式在被高微奠基後, 遇到什麼問題先問定義, 一半
以上的模糊就是因為定義問題才導致的, 然後這套方法不論跟教授/學生/板友討論數學都
沒問題, 甚至之前跟聖容教授聊碩論時, 我講題目後她馬上問我定義...但是這套應對換
到工程上的數學就讓我處處碰壁...
→
05/13 14:06,
1年前
, 77F
05/13 14:06, 77F
→
05/13 14:11,
1年前
, 78F
05/13 14:11, 78F
→
05/13 14:11,
1年前
, 79F
05/13 14:11, 79F
→
05/13 14:33,
1年前
, 80F
05/13 14:33, 80F
→
05/13 14:33,
1年前
, 81F
05/13 14:33, 81F
→
05/13 14:33,
1年前
, 82F
05/13 14:33, 82F
→
05/13 14:33,
1年前
, 83F
05/13 14:33, 83F
→
05/13 14:33,
1年前
, 84F
05/13 14:33, 84F
→
05/13 14:33,
1年前
, 85F
05/13 14:33, 85F
→
05/13 15:11,
1年前
, 86F
05/13 15:11, 86F
→
05/13 15:11,
1年前
, 87F
05/13 15:11, 87F
→
05/13 15:15,
1年前
, 88F
05/13 15:15, 88F
嗨r大, 了解你的意思了, 就是工程上會默認一個大概念比如你說的F(xw)=F(x)*F(w)
但是這個式子的成立以及性質, 確實會隨著假設不同而有異同
不過不重要, 因為實務設計上有這個概念就足夠了
反而定義的嚴格沒有操作空間反而失去了彈性(?
※ 編輯: znmkhxrw (1.164.120.161 臺灣), 05/13/2022 15:36:41