聊聊 AI 學習入門 - 數學和資訊理論

鼎叔發表於2024-07-19

這是鼎叔的第一百零三篇原創文章。行業大牛和剛畢業的小白,都可以進來聊聊。

歡迎關注本公眾號《敏捷測試轉型》,星標收藏,大量原創思考文章陸續推出。

當前,AI 大模型成為最熱門的概念時,每個公司都在學習和實踐 AI 技術,大家對於測試和效能工作的未來也產生了更多的暢想。

作為非 AI 專業的技術團隊負責人,如何幫助團隊成員邁出 AI 學習和實踐的第一步,是至關重要的。從實踐認知出發,我推薦負責人可以做好這幾方面的組織和指引:

營造機器學習/人工智慧的基礎理論學習氛圍。

蒐集和嘗試業界經典的機器學習工具箱。

蒐集可以供機器學習使用的業界或學界開放資料庫資源。

探討產品中可以引入機器學習的場景,如業務評測場景,測試活動場景,討論哪一種機器學習模型適合應用在此場景,猜想能獲得什麼樣的效果度量指標。

大膽鼓勵有機器學習經驗的同學進行上述場景的工程實驗,可以安排資深的自動化測試工程師搭配他一起工作。

網上相關的教程很多,上手難度通常都不低,希望有意向成為 AI 實踐高手的同學可以建立系統的長期學習和實驗計劃,欲速則不達。

下面按照機器學習不同的知識領域,先從數學和資訊理論開始,從經典理論和概念進行消化,簡單介紹下自己是如何學習和思考其本質的。受限於本人在該領域的知識淺薄,如有錯漏,敬請諒解。

高等數學相關知識

想學習 AI 的工程師,光有編碼能力是不夠的。數學,尤其是統計學是學習 AI 要跨過的門檻。學好統計學,不但有利於理解資料分析演算法,還有利於度量體系建立和問題挖掘,受益終生。

鼎叔雖然是 985 數學系科班出身,但是高等數學與統計學學得非常慚愧,尷尬了。

藉助從簡單到複雜的統計指標及公式,我們可以更準確生動地描述對於資料的判斷,憑此採取更優的改進措施。比如能反映樣本資料偏差的平均值、加權平均、標準差、歐氏距離,曼哈頓距離等指標。再比如反映資料變化的同比和環比,反映二八分佈原則的高斯分佈,反映特定範圍內隨機事件發生機率的泊松分佈,反映多次連續實驗事件的成功機率的伯努利分佈,等等。

貝葉斯定律

貝葉斯定理告訴我們,如果你看到一個人經常做好事,那他多半就是個好人,用數學語言表達就是:支援某屬性的事件發生得越多,則該屬性成立的機率就越大。貝葉斯定律體現了先驗機率的強大,條件機率很難顯著改變它。

我們可以透過已知事件發生的機率,來推測相關的未知事件發生的機率。貝葉斯定律可以幫助我們解決生活中經常出現的逆向機率問題,從結果中推測造成結果的可能原因,比如醫學診斷領域。

法國有個猜山羊和汽車的電視節目非常經典。舞臺上有三扇關閉的門,其中一扇門後面有一輛汽車,另外兩扇門後面各有一隻山羊。主持人是知道哪扇門後面有汽車的。當競猜者選定了一扇門但尚未開啟它的時候,節目主持人去開啟剩下兩扇門中的一扇,露出的是山羊。主持人會問參賽者要不要改猜另一扇未開啟的門。那麼,改猜另一扇未開啟的門是否比不改猜贏得汽車的機率要大?

正確的答案是:改猜能增大贏得汽車的機率,從原來的 1/3 增大為 2/3。這是因為競猜者選定的一扇門後面有汽車的機率是 1/3,在未選定的兩扇門後面有汽車的機率是 2/3,主持人開啟其中一扇門把這門後面有汽車給排除了,所以另一扇未開啟的門後面有汽車的機率是 2/3。

這個奧秘就在於一個事情被確認後就不再是未知的了,這個節目裡主持人已經確認了哪扇門背後有汽車,他的行為就影響了機率分佈。

貝葉斯分類演算法在機器學習資料集較大的情況下,表現出了較高的準確性,得益於堅實的數學基礎,避免了只使用先驗機率的主觀偏見,也避免了單獨使用樣本資訊的過擬合現象。

樸素貝葉斯演算法則進一步做了簡化,它假定資料集屬性之間是互相獨立的,這樣演算法的健壯性比較好,對於不同型別的資料集不會呈現出太大的差異性。

資料統計和真相

資料不能說明真相,它可能只代表了區域性資訊。我們可以看到企業報告裡,雖然資料圖表很清晰,但是真相可能被掩蓋了起來,資料圖表技巧成為強調虛假業績的幫兇。有些企業彙報高手很擅長在資料包表中掩蓋真相,比如用整體趨勢掩蓋分組趨勢,或者反之。

批判性思維這門課也告訴我們,很多媒體誤導群眾的觀點,利用了倖存者偏差和選擇性偏差。

前者是隻顯示了部分樣本,從而導致錯誤的推斷,比如對二戰飛機中彈後返航進行統計,發現彈孔都不在發動機位置,得到結論是 “應該對發動機以外的部位進行裝甲強化處理”。真實結果恰恰相反,能返航的飛機都是倖存者,而發動機中彈的飛機大部分都無法返航,所以結論應該是加強對發動機部位的裝甲強化。

選擇性偏差就是樣本不均衡,像有的問卷調查,持正面觀點的人可能就沒有興趣回答問卷,而有些地域特徵的問卷沒有發到對應地域的使用者手上,克服選擇性偏差就需要樣本足夠大,而且抽樣隨機。

對於大模型的訓練,資料的偏差更有危害性和隱蔽性,將來我們圍繞這點再深入分析。

有幾個常見的統計概念:均值,中位數(按排序的中間值),眾數(出現最多的值),用於不同場景需要謹慎挑選。比如評價工資水平,一般用中位數,因為低薪人員很容易被少量高薪人員把工資拉平均了。

人們拿到資料進行分析,最容易犯的錯誤就是混淆了相關性和因果性,因果性需要很強的證明過程,而相關性則不需要,因此會被別有用心的人濫用。

所謂資料,就是可被記錄和識別的有意義的符號,它可以連續也可以離散。資料可以有多個維度,出現的機率低並不代表風險低,因為人的動機和行為,預測結果往往會因為人而改變。

高等數學中的矩陣計算、微積分、向量、數值分析等知識,對於 AI 學習入門也是至關重要的。

比如向量就是各種特徵量資料的集合,多個向量排練一起就是矩陣,一次運算求解方程組就用了矩陣的性質。

資訊理論相關基礎

學習資訊理論,有利於深入理解大資料和 AI。資訊理論本來是用於數字通訊的,它研究如何打通數字世界和現實世界的計算模型,而人工智慧的目標也是獲取新的資訊結論。

資訊理論中最重要的是夏農定律、資訊量計算、資訊熵等概念。我們的大資料儲存和壓縮處理也是在去冗餘化和提高計算速度之間取得平衡。資訊保安知識也是重要的基礎內容,它有利於研究人工智慧程式設計的可靠性。

資訊

資訊,就是被消除的不確定性。當你有了批判性思維,就不容易被一篇網路文章消除不確定性(用人話說,就不容易盲信他人)。

鼎叔常掛在嘴邊的一個詞,就是” 資訊密度 “,一本書好不好,最重要的指標就是” 資訊密度 “高不高,但它和具體的人有關。看起來資訊密度很高的書,可能對我沒有太大啟發,因為大部分內容我已經習得了。

鼎叔從工作中得到的啟示是,測試工作的本質,也是獲得新的資訊(確定性),如果測試的目標只是儘快讓用例透過,那獲得的知識就無形之間被最小化了。

在網際網路時代,碎片化資訊更容易被獲得,但無形之中降低了人們掌握完整知識的效率。AI 非常擅長構建知識圖譜,但是缺乏常識,大模型的發展就是看 AI 如何更高效地掌握常識。

資訊編碼

影視劇裡最常見的就是摩斯編碼,它的原理就是把常見的字母用短編碼,不常見的字母用長編碼,儘量提高表達效率。

資訊量的大小和事件發生的頻繁程度是相反的。100% 會確定的事件,資訊含量就是 0,這也解釋了足球博彩中的一方越有確定無疑的優勢,賠率越高。機器學習的訓練過程,也是找到資訊熵變化最大的調整方法。

人的語言包含很多資訊,其中不少是冗餘的,雖然過程低效,但是冗餘會降低接收方產生錯誤理解的風險,在關鍵時候是可以救命的。

我們評價一個 AI 模型的泛化能力,就是看偏差、方差和噪音。偏差體現了客觀差距,方差體現了是集中還是分散。把噪音誤以為是資訊,就是過擬合;把資訊誤以為是噪音就是欠擬合。資訊和噪音的定義取決於具體場景,不同的目標下兩者是可以轉換的。

那麼,人工智慧與資訊理論之間的聯絡是啥?

人工智慧研究如何讓計算機具有類似人類智慧的能力,而資訊理論則關注資訊的傳輸、處理和表達方式。在過去的幾十年裡,這兩個領域在發展中一直存在著密切的聯絡。

資訊理論提供了一種理論框架,以便有效地學習,處理和傳輸資訊,也能有效地表示資訊。因此,資訊理論可以幫助人工智慧系統:

更好地完成大量的資訊處理,以便進行決策和預測;

將問題和解決方案表示為數字形式,以便進行計算;

從環境中學習資訊,以便進行適應和創新

暫無回覆。

相關文章