本月主題:
一、線性代數(shù)與Netflix(奈飛、網(wǎng)飛)
二、“西雅圖數(shù)學狂歡節(jié)”報道
三、一場錯誤的喜劇?
作者:Tony Phillips(石溪大學數(shù)學教授)2025-2-19
譯者:zzllrr小樂(數(shù)學科普公眾號)2025-2-21
一、線性代數(shù)與Netflix(奈飛、網(wǎng)飛)
2007年之前,Netflix(奈飛、網(wǎng)飛)依靠用戶(訂閱者)評分和線性代數(shù)進行電影推薦。休斯頓大學的Kre?o Josi?在12月24日NPR節(jié)目《我們獨創(chuàng)力的引擎》中談到這項技術(完整音頻 https://www.houstonpublicmedia.org/articles/shows/engines-of-our-ingenuity/engines-podcast/2024/12/24/508878/the-engines-of-our-ingenuity-2514-linear-algebra-and-netflix/ )。盡管真實過程可能更復雜(Netflix研究說明 https://research.netflix.com/research-area/recommendations ),以下是核心思路:
Netflix允許用戶對影視作品評分。當前評分系統(tǒng)為“踩/贊/雙贊(意即喜愛這個、強烈推薦)”,而早期使用1-5星制。推薦算法試圖預測用戶對未觀看影片的評分。
用戶評分構成巨型矩陣:列代表影片,行代表用戶。大多數(shù)人僅對數(shù)百部影片評分,而Netflix有數(shù)萬選項,因此矩陣大部分元素為空。如何填補空缺?例如:如果你給《怪物史萊克》Shrek打4星,那么你會喜歡《閃靈》The Shining嗎?
Netflix的線索包括:
首先,即使你評分的所有電影都更像《怪物史萊克》,其中有些電影可能也有恐怖元素。你對這些電影的評分將反映出你對《閃靈》的興趣。
但同時,也可能有其他訂閱者與你有相似的品味,他們看過《閃靈》,或者至少看過其他一些類似《閃靈》的電影。
Josi?指出其中數(shù)學關鍵所在:“幾十種典型評分畫像”。這些畫像可視為“品味空間”的基向量(basis vector),如“西部片”、“歷史片”、“浪漫喜劇”(rom-com)、“有女演員X”、“武士片”、“無男演員Y”、“災難片”等。
你的獨特品味可能不符合這些典型特征之一,但很可能是這些特征的混合體,也就是說,你的偏好云可以用一個向量來近似,該向量在每個典型方向上都有分量。同樣,對于此分析,每部電影對觀眾的吸引力可以用一個特征向量來近似,該向量在每個方向(“西部片”、“歷史片”等)上都有分量。
如果知道這些向量,那么你就可以計算出這部電影的畫像與你自己品味的匹配程度。從數(shù)學上講,這是通過電影的特征向量和你的品味向量之間的角度來衡量的。夾角越小,這兩個向量越接近。
線性代數(shù)可以使用兩個向量之間的點積來計算這個角度。用戶向量s=(s?,…,s?)與影片向量m=(m?,…,m?)的點積s·m = s?m? + … + s?m?。
如何計算這些向量呢?我們知道的是,對于你看過的電影,品味特征點積應該接近你給這部電影的評分。這是矩陣中你的行與電影列相交處的元素。
Netflix的做法是,首先隨機將分量分給每個用戶的品味向量和每部電影的特征向量。通過迭代過程,這些分量會得到調整,以便它們的點積越來越接近實際評分。這個過程會反復進行,直到近似值足夠接近實際評分。
矩陣分解示意圖
設用戶i給電影j的評分為r_{ij}(綠框)。在藍色品味矩陣中,行向量 s_i 表示用戶i的品味;在黃色特征矩陣中,列向量m_j表示電影j的特征。
在迭代的每個步驟中,都會調整s_i和m_j的分量,以使點積s_i·m_j更接近實際評分r_{ij}。
如果恰好滿足r_{ij} = s_i·m_j ,則是藍色矩陣和黃色矩陣的乘積。因此,這個過程稱為矩陣分解(matrix factorization)。
圖源:Tony Phillips
改進猜測的標準方法是梯度下降(gradient descent)。在這種情況下,該方法告訴我們要進行哪些調整才能減少誤差函數(shù),我們按如下方式計算誤差(error)。對于矩陣中的每個非零項r_{ij},計算用戶i和電影j的品味特征點積 s_i·m_j。現(xiàn)在計算品味特征點積(此階段的預測評分)與給出的實際評分之間的差:
r_{ij} - s_i·m_j
為了得到總誤差,我們計算每個差的平方,然后相加:
Σ_{i,j}(r_{ij} - s_i·m_j)2
這就是我們的誤差函數(shù),我們稱之為E。之所以有這些平方,部分是為了避免不同評分之間的差被抵消。由于用戶和電影數(shù)量達數(shù)萬,調整E需要進行大量簡單的計算:這對于計算機來說是一項完美的工作。
為了理解梯度下降的工作原理,讓我們考慮一個不太實際的數(shù)值示例,其中單個用戶具有單個品味分量s,并且一部具有特征m的電影。假設我們最初的隨機品味賦值是品味分量s?=2,特征分量m?=3,而我們的用戶給出的實際評分是r=2。
根據(jù)上述計算,此選擇的誤差為E = (r-s?m?)2 = 16。我們希望朝著導致誤差最大程度減少的方向移動;讓我們按步長0.5進行。
梯度?E給出了E增長最快的方向。梯度下降法告訴我們朝著與梯度相反的方向移動。?E的分量是E對s和m的偏導數(shù):
?E(s,m)=(?E/?s,?E/?m)=(?2(r?sm)m,?2(r?sm)s)
所以?E(2,3)=(24,16)。相反方向的長度為0.5的向量大約為d?=(-0.42,-0.28)。從(2,3)采取這一步,我們得到(s?,m?)=(1.58,2.72)。這是我們的第一次迭代。計算誤差表明它已減少到E=5.28。
對于下一次迭代,我們在(s?,m?)處重復計算。那里?E(1.58,2.72)=(12.51,7.27)而 d?=(-0.43,-0.25)。第二步將我們引向(s?,m?)=(1.15,2.47)。誤差現(xiàn)在是 E(1.15,2.47)=0.71。
梯度下降的前兩步。在二維(s,m)(品味特征)空間中,我們從點(2,3) 開始,朝最大程度減少誤差的方向采取長度為0.5的步長(藍色箭頭)。我們的目標是粗橙色曲線,即軌跡sm=2;虛線是其他水平曲線sm=常數(shù)。箭頭垂直于水平曲線,因為?E平行于?(sm)=(m,s)。
圖源:Tony Phillips
根據(jù)Simon Funk的說法 https://sifter.org/simon/journal/20061211.html ,這種將數(shù)學應用于推薦問題的方法是響應Netflix于2006年10月提出的百萬美元懸賞,以尋找比他們現(xiàn)有算法好10%的算法。Funk(化名 http://sifter.org/~brandyn/resume6.html )是最終入圍者之一。
Dan Jackson有另一篇關于該競賽的最新報道 https://www.thrillist.com/entertainment/nation/the-netflix-prize 。他還告訴我們,Netflix已開始直接使用從其流媒體運營中獲得的數(shù)據(jù);了解人們實際在看什么比讀取他們的評分更有用。
如果想清晰、緩慢地展示該算法,我推薦Luis Serrano的半小時YouTube演示“Netflix如何推薦電影?矩陣分解” https://www.youtube.com/watch?v=ZspR5PZemcs 。
二、“西雅圖數(shù)學狂歡節(jié)”報道
Siobhan Roberts(西沃恩·羅伯茨)參加了今年在西雅圖舉行的聯(lián)合數(shù)學會議,并為《紐約時報》撰寫了她的觀察 https://www.nytimes.com/2025/01/28/science/mathematics-ai-conference-jmm.html 。
會議的官方主題是“AI時代的數(shù)學”。羅伯茨采訪了即將離任的AMS美國數(shù)學會主席Bryna Kra。“人工智能是我們生活中的一部分,現(xiàn)在是時候開始思考它如何影響你的教學、你的學生、你的研究了。……讓人工智能成為合著者意味著什么?這些都是我們必須努力解決的問題,”Kra說。
事實上,由于ChatGPT等大語言模型僅基于人們已經(jīng)在某個地方寫過的內(nèi)容,因此這種人工智能不太可能帶來數(shù)學上的真正進步。另一方面,Lean 等新編程語言(見下一篇文章)可以測試論據(jù)的有效性。
如果將這些與從自己的錯誤中學習的機器學習算法 https://www.ibm.com/think/topics/machine-learning 結合起來,我們可以設想計算機可以自行探索數(shù)學世界。我相信,這種組合,再加上現(xiàn)代計算機的驚人速度,有可能發(fā)現(xiàn)真正的新數(shù)學現(xiàn)象。
聯(lián)合會議有數(shù)學和藝術方面的會議,以及藝術展覽。會議包括Susan Goldstine(圣瑪麗學院)談論她的“龐加萊藍調”項目——一條用舊牛仔褲制成的牛仔裙,使用30°- 45°- 90°三角形(注意角度總和嚴格小于180°,這是負曲率的特征)密鋪龐加萊雙曲平面模型的圖案;Barry Cipra(明尼蘇達大學)展示了Max Bill的繪畫作品《Gelbes Feld》中隱藏的編碼幻方 https://kmw.zetcom.net/de/collection/item/418/ 。文章展示了藝術展覽中的兩個雕塑圖片;見下文。
Shiying Dong(董世英,音譯名)的“鞍形怪獸”(鉤針編織,直徑14英寸)。螺旋形鉤針編織的十二面體。
照片由Gregory Henselman-Petrusek拍攝,經(jīng)許可使用
羅伯特·法索爾(Robert Fathauer)的“雙曲螺旋面”(陶瓷,直徑約14 英寸,高7英寸)。
圖片由羅伯特·法索爾提供
三、一場錯誤的喜劇?
12月6日的《新科學家》報道(原文 https://www.newscientist.com/article/2461891-mathematicians-found-and-fixed-an-error-in-a-60-year-old-proof/ ):數(shù)學家發(fā)現(xiàn)并修復了60年前的證明錯誤。作者亞歷克斯·威爾金斯 (Alex Wilkins) 正在撰寫有關形式化驗證費馬大定理證明的項目。
費馬大定理斷言:對整數(shù)n>2,方程
x? + y? = z?
無非零整數(shù)解。1995年Andrew Wiles(安德魯·懷爾斯,1953 -)證明了該定理,即當n>2時,除了(0,0,0)無其他整數(shù)解。
數(shù)學界早已接受了懷爾斯的證明,但Kevin Buzzard(凱文·巴扎德,倫敦帝國理工學院)正在領導一項研究,試圖用一種計算機可檢查的編程語言Lean https://lean-lang.org/about/ 重新證明費馬大定理。該形式化工作由 Xena https://xenaproject.wordpress.com/what-is-the-xena-project/ 項目負責,涉及的證明方法與懷爾斯使用的證明方法不同。
據(jù)Buzzard稱,問題出現(xiàn)在今年夏天。正如他在12月11日的一篇博客文章 https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-its-going/ 中所寫,Lean“有時會做出令人惱火的事情”,拒絕接受部分論點。
Lean的難點在于已故法國數(shù)學家Norbert Roby的論證。經(jīng)過檢驗,該證明被確認是錯誤的。在轉錄Roby早期論文中的命題Γ?(M)?? R = Γ?(M?? R) 時,“其中一個張量積[?]意外脫落”,正如Buzzard所說,由此產(chǎn)生的錯誤恒等式是證明的一部分。
不用擔心。Buzzard從未認為Roby的引理是錯誤的,只是其證明需要修改。消息很快傳到了專家那里。其中一位專家 Brian Conrad(斯坦福大學)在1978年《晶體上同調注記》的附錄中 https://press.princeton.edu/books/hardcover/9780691648323/notes-on-crystalline-cohomology 發(fā)現(xiàn)了另一個論證。正如 Buzzard所說,“證明又回來了!”
更新:
《晶體上同調注記》由Arthur Ogus(加州大學伯克利分校)和已故的Pierre Berthelot(1943 - 2023)共同撰寫。Buzzard最近訪問了伯克利,并與Ogus共進午餐。他告訴Ogus他的附錄如何挽救了局面。Buzzard告訴我們,Ogus回答說:“哦!那個附錄有幾個錯誤!但沒關系,我想我知道如何修復它們。”
參考資料
https://mathvoices.ams.org/mathmedia/tonys-take-january-2025/
https://www.houstonpublicmedia.org/articles/shows/engines-of-our-ingenuity/engines-podcast/2024/12/24/508878/the-engines-of-our-ingenuity-2514-linear-algebra-and-netflix/
https://research.netflix.com/research-area/recommendations
https://sifter.org/simon/journal/20061211.html
http://sifter.org/~brandyn/resume6.html
https://www.thrillist.com/entertainment/nation/the-netflix-prize
https://www.youtube.com/watch?v=ZspR5PZemcs
https://www.nytimes.com/2025/01/28/science/mathematics-ai-conference-jmm.html
https://www.ibm.com/think/topics/machine-learning
https://kmw.zetcom.net/de/collection/item/418/
https://www.newscientist.com/article/2461891-mathematicians-found-and-fixed-an-error-in-a-60-year-old-proof/
https://lean-lang.org/about/
https://xenaproject.wordpress.com/what-is-the-xena-project/
https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-its-going/
https://press.princeton.edu/books/hardcover/9780691648323/notes-on-crystalline-cohomology
科普薦書
【更多讀者好評數(shù)學書單推薦、數(shù)學科普作家自薦、出版社書單推薦通道已陸續(xù)打開,敬請期待】
·開放 · 友好 · 多元 · 普適 · 守拙·
讓數(shù)學
更加
易學易練
易教易研
易賞易玩
易見易得
易傳易及
歡迎評論、點贊、在看、在聽
收藏、分享、轉載、投稿
查看原始文章出處
點擊zzllrr小樂
公眾號主頁
右上角
數(shù)學科普不迷路!
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.