讀天才與演算法:人腦與AI的數學思維筆記04_演算法

躺柒發表於2024-04-20

1. 演算法

1.1. 當下,我們的生活完全依賴於演算法

1.1.1. 上網搜尋內容

1.1.2. 使用GPS導航

1.1.3. 觀看由奈飛公司(Netflix)推薦的電影

1.1.4. 線上預約

1.2. 演算法正在引導我們進入數字時代,但很少有人意識到在計算機誕生之前,演算法作為數學的核心已存在了數千年

1.2.1. 自古希臘以來,演算法的身影一直伴隨著數學的誕生與發展

1.2.2. 歐幾里得除了證明素數有無窮多個外,還發現了一個方法,按照這個方法就能解決最大公約數等問題

1.2.2.1. 在歐幾里得的演算法中,任何階段都不存在歧義

1.2.3. 類似於“如果……那麼……”的條件判斷句式,這是演算法的典型特徵,也是計算機程式中演算法的妙趣所在

1.3. 任何演算法都應該具備的四個關鍵特徵的核心

1.3.1. 它應該由一組精確的陳述和明確的指令組成

1.3.2. 無論輸入的引數如何,這個過程都應該完成(不應該進入無限迴圈)

1.3.3. 它應該給輸入演算法的任何引數以答案

1.3.4. 在理想情況下,它的執行速度應該很快

1.3.4.1. 演算法的執行時間與問題的規模成正比,數字越大,耗時越長

1.4. “演算法”這一名詞

1.4.1. 穆罕默德·阿爾·花拉子密(Muhammad Al-Khwarizmi)是巴格達智慧館(great House of Wisdom)的首批負責人之一,他負責將古希臘數學原著翻譯成阿拉伯文

1.4.2. “演算法”是拉丁文對他名字的翻譯

1.4.3. 圖片並不是一種嚴謹的數學方法,你需要的是代數的語言,即一個字母可以作為變數代表任何數字,而這正是花拉子密的發明

1.5. 演算法已成為我們這個時代通行的“貨幣”,因為它們是計算機系統的完美素材

1.5.1. 演算法利用我們解決問題的模式,反過來引導我們去找到解決問題的方案

1.5.2. 計算機不需要思考,它只要不停地遵循演算法、執行指令即可,就像變魔術一樣,答案自己就會蹦出來

1.6. 一個優秀的演算法存在的價值:從足球到《權力的遊戲》,它在多種不同的應用場景中都能發揮作用

1.7. 我們的生活對演算法的依賴越多,對演算法的工作原理及執行過程的深入理解就變得越重要

1.7.1. 否則,你很可能會被演算法“坑”了

1.8. 演算法的問題在於,有時會產生一些讓人意想不到的結果

1.8.1. 人類能察覺到怪異,而演算法只知執行,它才不管結果是否謬以千里、荒誕不經

1.8.2. 演算法可能導致意想不到的後果,是人們對先進技術存在恐懼的主要原因之一

1.9. 演算法是基於數學的,在某種程度上,它們就是數學運算

1.9.1. 它們並沒有真正創造性地擴充應用它們的領域,所以在數學界,沒有人會覺得自己受到了特別的威脅

1.9.2. 後來出現了一種新演算法,這個演算法可以在與資料互動時做出動態調整,執行一段時間後,它的程式設計師就可能弄不太明白他的演算法為什麼會做出這樣或那樣的選擇了

1.9.2.1. 這就是DeepMind團隊所使用的新演算法,這個演算法使機器在圍棋領域中戰勝了人類,開創了機器學習的新紀元

2. 荒島演算法

2.1. 當代最非凡的演算法莫過於每天幫助數百萬人瀏覽網際網路的搜尋演算法

2.2. 1996年拉里·佩奇(Larry Page)和謝爾蓋·布林(Sergey Brin)把新演算法命名為“網路爬蟲”(Backrub),但最終還是決定叫“谷歌”(Google),其靈感來自1後面的100個零

2.2.1. 他們的目標是找到一種對網際網路上所有的頁面進行排序的方法,以幫助大家在這個不斷增長的海量資料庫中進行檢索,所以起這個代表巨大數字的名字似乎特別貼切,而且也很酷炫

2.3. 搜尋詞出現頻率最高的網站會被放在最頂部

2.4. 如果一個網站有很多連結指向它,就暗示著其他網站認為這個網站值得訪問

2.4.1. 其原理是透過其他網站的評估去衡量某個網站的重要性,或者說該網站的訪問價值

2.4.2. 這種方式也有可能被駭客攻擊,比如只需偽造出有1000個網站的連結指向這個花店就行了,這樣也會使其被納入搜尋名錄

2.4.2.1. 為了防止這種情況出現,他們決定給那些獲得廣泛好評,深受信賴的網站賦予更高的權重

2.5. 需要找到一種方法,透過觀察網路的連通性來分配球

2.5.1. 異常情況:如果存在未連結其他網站的孤立網站,它的球會無法重新分配

2.5.2. 矩陣的特徵向量是在數學和其他科學領域中非常有效的一種工具

2.5.2.1. 是量子物理中用來計算粒子能級的秘密武器

2.5.2.2. 可以用於研究旋轉流體的穩定性(比如旋轉的恆星或者病毒的繁殖率)

2.5.2.3. 可以用於研究素數在所有數字中是怎樣分佈的問題

2.6. 基礎引擎是公開的,但演算法內部的一些重要引數還是保密的,並且隨著時間的推移不斷髮展變化、更新換代,這些在一定程度上使得演算法難以被破解

2.6.1. 定期在網際網路上搜羅網站資訊並更新網站連結的統計點選量,這個工具叫作“谷歌蜘蛛俠”(Google spiders)

2.7. 谷歌演算法最吸引人的地方在於它本身的健壯性和防止欺騙的策略

2.7.1. 一個網站很難在自己的網站上做手腳來提高排名,它必須依靠其他網站來提升自己的排名

2.7.2. 如果你關注一下谷歌搜尋,就會發現排名很靠前的網站主要都是新聞媒體網站和大學官方網站,比如牛津大學、哈佛大學的官網

2.7.3. 當牛津大學網路中的任何一個網站連結到外部網站時,該連結將提升其所連結的外部網站的排名,這意味著牛津大學認可與該網站共享其巨大的聲望

2.8. 谷歌的演算法再強大,也不可避免地被那些瞭解數學原理的人用更加聰明的辦法攻擊並加以利用

2.8.1. 另類的搜尋結果的峰值會透過演算法本身而不是人工干預進行降級,並被演算法慢慢剔除

2.8.2. 谷歌不喜歡扮演“上帝”,但從長遠來看,它相信的是數學的力量

2.9. 評估網路節點的方法也可以應用於其他“類網路”領域

2.9.1. 與美國許多依靠資料分析發展起來的體育專案不同,足球需要經過一段時間的積累才能利用數學和資料統計挖掘比賽背後隱藏的規律

2.9.2. 以最終勝者西班牙隊的資料來說,經過演算法統計分析,西班牙隊中沒有明顯的核心球員,這反映了整個球隊很好地貫徹了“全攻全守”“快速短傳”的戰術思想,這最終促成了西班牙隊走上冠軍領獎臺

2.10. 網路分析還應用於文學領域

2.10.1. 一個不理解劇本內容的計算機演算法也能分析出跟人相同的結論

2.10.2. 事實證明,演算法對於這個劇情網路更加微妙的分析揭示出了劇中真正的主角

3. 穩定婚姻問題

3.1. 史上第一個獲得諾貝爾獎的演算法

3.1.1. 1962年,由兩位數學家大衛·蓋爾(David Gale)和勞埃德·沙普利(Lloyd Shapley)共同提出使用了一個匹配演算法來解決“穩定婚姻問題”

3.1.2. 這個演算法不僅對人際關係問題的研究具有重要意義,對一些社會問題,包括醫療資源和學校招生名額分配等,也具有重大價值

3.2. 穩定的婚姻關係意味著使所有的人獲得較為滿意的伴侶,不應該有任何一位成員因不滿意演算法分配的伴侶而選擇在某個時刻離開,與其他人私奔

3.2.1. 利用多輪分析找到最終的穩定配對

3.3. 在蓋爾和沙普利研究的基礎模型上,我們建立了婚戀交友網站用於配對分析的現代演算法

3.3.1. 從某種程度上講,這些演算法選擇的結果會比我們自己去相親的結果更好

3.4. 這個演算法目前在世界各地廣泛使用

3.4.1. 在丹麥用於小朋友匹配幼兒園

3.4.2. 在匈牙利用於學生擇校

3.4.3. 在紐約用於給猶太教堂分配拉比

3.4.3.1. 拉比在猶太文化中,這是對有學識的人的尊稱

3.4.4. 在中國、德國和西班牙用於大學招生和學生擇校

3.4.5. 在英國被英國國家醫療服務體系(National Health Service)用於病人與器官捐贈配對,挽救了許多病人的生命

3.4.6. 在美國用於給醫學院的畢業生分配工作

4. 書商之戰

4.1. 《製造蒼蠅》這本書二手書的價格大致在40美元

4.2. 一個商家profnath對這本書開價1 730 045.91美元,並且還不包郵

4.3. 一個商家bordeebook在做打折活動,但是價格更高,打完折要2 198 177.95美元,居然也不包郵(需要額外支付3.99美元運費)

4.3.1. bordeebook的演算法也挺有特點,檢測競爭對手的價格變化情況,並將對手價格乘以1.270 59作為自己的售價

4.3.2. bordeebook實際上就沒有這本書

4.3.3. 其實就是倒買倒賣而已

4.4. 《製造蒼蠅》這本書的錯誤定價並沒有給任何人帶來重大影響,但演算法的錯誤是可能導致重大後果的

4.4.1. 如果將這樣的演算法用於股票期權定價將導致股市崩盤

相關文章