本月主題:
一、線性代數(shù)與Netflix(奈飛、網(wǎng)飛)
二、“西雅圖數(shù)學(xué)狂歡節(jié)”報(bào)道
三、一場(chǎng)錯(cuò)誤的喜???
作者:Tony Phillips(石溪大學(xué)數(shù)學(xué)教授)2025-2-19
譯者:zzllrr小樂(數(shù)學(xué)科普公眾號(hào))2025-2-21
一、線性代數(shù)與Netflix(奈飛、網(wǎng)飛)
2007年之前,Netflix(奈飛、網(wǎng)飛)依靠用戶(訂閱者)評(píng)分和線性代數(shù)進(jìn)行電影推薦。休斯頓大學(xué)的Kre?o Josi?在12月24日NPR節(jié)目《我們獨(dú)創(chuàng)力的引擎》中談到這項(xiàng)技術(shù)(完整音頻 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/ )。盡管真實(shí)過程可能更復(fù)雜(Netflix研究說明 https://research.netflix.com/research-area/recommendations ),以下是核心思路:
Netflix允許用戶對(duì)影視作品評(píng)分。當(dāng)前評(píng)分系統(tǒng)為“踩/贊/雙贊(意即喜愛這個(gè)、強(qiáng)烈推薦)”,而早期使用1-5星制。推薦算法試圖預(yù)測(cè)用戶對(duì)未觀看影片的評(píng)分。
用戶評(píng)分構(gòu)成巨型矩陣:列代表影片,行代表用戶。大多數(shù)人僅對(duì)數(shù)百部影片評(píng)分,而Netflix有數(shù)萬選項(xiàng),因此矩陣大部分元素為空。如何填補(bǔ)空缺?例如:如果你給《怪物史萊克》Shrek打4星,那么你會(huì)喜歡《閃靈》The Shining嗎?
Netflix的線索包括:
首先,即使你評(píng)分的所有電影都更像《怪物史萊克》,其中有些電影可能也有恐怖元素。你對(duì)這些電影的評(píng)分將反映出你對(duì)《閃靈》的興趣。
但同時(shí),也可能有其他訂閱者與你有相似的品味,他們看過《閃靈》,或者至少看過其他一些類似《閃靈》的電影。
Josi?指出其中數(shù)學(xué)關(guān)鍵所在:“幾十種典型評(píng)分畫像”。這些畫像可視為“品味空間”的基向量(basis vector),如“西部片”、“歷史片”、“浪漫喜劇”(rom-com)、“有女演員X”、“武士片”、“無男演員Y”、“災(zāi)難片”等。
你的獨(dú)特品味可能不符合這些典型特征之一,但很可能是這些特征的混合體,也就是說,你的偏好云可以用一個(gè)向量來近似,該向量在每個(gè)典型方向上都有分量。同樣,對(duì)于此分析,每部電影對(duì)觀眾的吸引力可以用一個(gè)特征向量來近似,該向量在每個(gè)方向(“西部片”、“歷史片”等)上都有分量。
如果知道這些向量,那么你就可以計(jì)算出這部電影的畫像與你自己品味的匹配程度。從數(shù)學(xué)上講,這是通過電影的特征向量和你的品味向量之間的角度來衡量的。夾角越小,這兩個(gè)向量越接近。
線性代數(shù)可以使用兩個(gè)向量之間的點(diǎn)積來計(jì)算這個(gè)角度。用戶向量s=(s?,…,s?)與影片向量m=(m?,…,m?)的點(diǎn)積s·m = s?m? + … + s?m?。
如何計(jì)算這些向量呢?我們知道的是,對(duì)于你看過的電影,品味特征點(diǎn)積應(yīng)該接近你給這部電影的評(píng)分。這是矩陣中你的行與電影列相交處的元素。
Netflix的做法是,首先隨機(jī)將分量分給每個(gè)用戶的品味向量和每部電影的特征向量。通過迭代過程,這些分量會(huì)得到調(diào)整,以便它們的點(diǎn)積越來越接近實(shí)際評(píng)分。這個(gè)過程會(huì)反復(fù)進(jìn)行,直到近似值足夠接近實(shí)際評(píng)分。
矩陣分解示意圖

設(shè)用戶i給電影j的評(píng)分為r_{ij}(綠框)。在藍(lán)色品味矩陣中,行向量 s_i 表示用戶i的品味;在黃色特征矩陣中,列向量m_j表示電影j的特征。
在迭代的每個(gè)步驟中,都會(huì)調(diào)整s_i和m_j的分量,以使點(diǎn)積s_i·m_j更接近實(shí)際評(píng)分r_{ij}。
如果恰好滿足r_{ij} = s_i·m_j ,則是藍(lán)色矩陣和黃色矩陣的乘積。因此,這個(gè)過程稱為矩陣分解(matrix factorization)。
圖源:Tony Phillips
改進(jìn)猜測(cè)的標(biāo)準(zhǔn)方法是梯度下降(gradient descent)。在這種情況下,該方法告訴我們要進(jìn)行哪些調(diào)整才能減少誤差函數(shù),我們按如下方式計(jì)算誤差(error)。對(duì)于矩陣中的每個(gè)非零項(xiàng)r_{ij},計(jì)算用戶i和電影j的品味特征點(diǎn)積 s_i·m_j?,F(xiàn)在計(jì)算品味特征點(diǎn)積(此階段的預(yù)測(cè)評(píng)分)與給出的實(shí)際評(píng)分之間的差:
r_{ij} - s_i·m_j
為了得到總誤差,我們計(jì)算每個(gè)差的平方,然后相加:
Σ_{i,j}(r_{ij} - s_i·m_j)2
這就是我們的誤差函數(shù),我們稱之為E。之所以有這些平方,部分是為了避免不同評(píng)分之間的差被抵消。由于用戶和電影數(shù)量達(dá)數(shù)萬,調(diào)整E需要進(jìn)行大量簡單的計(jì)算:這對(duì)于計(jì)算機(jī)來說是一項(xiàng)完美的工作。
為了理解梯度下降的工作原理,讓我們考慮一個(gè)不太實(shí)際的數(shù)值示例,其中單個(gè)用戶具有單個(gè)品味分量s,并且一部具有特征m的電影。假設(shè)我們最初的隨機(jī)品味賦值是品味分量s?=2,特征分量m?=3,而我們的用戶給出的實(shí)際評(píng)分是r=2。
根據(jù)上述計(jì)算,此選擇的誤差為E = (r-s?m?)2 = 16。我們希望朝著導(dǎo)致誤差最大程度減少的方向移動(dòng);讓我們按步長0.5進(jìn)行。
梯度?E給出了E增長最快的方向。梯度下降法告訴我們朝著與梯度相反的方向移動(dòng)。?E的分量是E對(duì)s和m的偏導(dǎo)數(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)。這是我們的第一次迭代。計(jì)算誤差表明它已減少到E=5.28。
對(duì)于下一次迭代,我們?cè)?s?,m?)處重復(fù)計(jì)算。那里?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)(品味特征)空間中,我們從點(diǎn)(2,3) 開始,朝最大程度減少誤差的方向采取長度為0.5的步長(藍(lán)色箭頭)。我們的目標(biāo)是粗橙色曲線,即軌跡sm=2;虛線是其他水平曲線sm=常數(shù)。箭頭垂直于水平曲線,因?yàn)?E平行于?(sm)=(m,s)。

圖源:Tony Phillips
根據(jù)Simon Funk的說法 https://sifter.org/simon/journal/20061211.html ,這種將數(shù)學(xué)應(yīng)用于推薦問題的方法是響應(yīng)Netflix于2006年10月提出的百萬美元懸賞,以尋找比他們現(xiàn)有算法好10%的算法。Funk(化名 http://sifter.org/~brandyn/resume6.html )是最終入圍者之一。
Dan Jackson有另一篇關(guān)于該競(jìng)賽的最新報(bào)道 https://www.thrillist.com/entertainment/nation/the-netflix-prize 。他還告訴我們,Netflix已開始直接使用從其流媒體運(yùn)營中獲得的數(shù)據(jù);了解人們實(shí)際在看什么比讀取他們的評(píng)分更有用。
如果想清晰、緩慢地展示該算法,我推薦Luis Serrano的半小時(shí)YouTube演示“Netflix如何推薦電影?矩陣分解” https://www.youtube.com/watch?v=ZspR5PZemcs 。
二、“西雅圖數(shù)學(xué)狂歡節(jié)”報(bào)道
Siobhan Roberts(西沃恩·羅伯茨)參加了今年在西雅圖舉行的聯(lián)合數(shù)學(xué)會(huì)議,并為《紐約時(shí)報(bào)》撰寫了她的觀察 https://www.nytimes.com/2025/01/28/science/mathematics-ai-conference-jmm.html 。
會(huì)議的官方主題是“AI時(shí)代的數(shù)學(xué)”。羅伯茨采訪了即將離任的AMS美國數(shù)學(xué)會(huì)主席Bryna Kra?!叭斯ぶ悄苁俏覀兩钪械囊徊糠?,現(xiàn)在是時(shí)候開始思考它如何影響你的教學(xué)、你的學(xué)生、你的研究了?!屓斯ぶ悄艹蔀楹现咭馕吨裁??這些都是我們必須努力解決的問題,”Kra說。
事實(shí)上,由于ChatGPT等大語言模型僅基于人們已經(jīng)在某個(gè)地方寫過的內(nèi)容,因此這種人工智能不太可能帶來數(shù)學(xué)上的真正進(jìn)步。另一方面,Lean 等新編程語言(見下一篇文章)可以測(cè)試論據(jù)的有效性。
如果將這些與從自己的錯(cuò)誤中學(xué)習(xí)的機(jī)器學(xué)習(xí)算法 https://www.ibm.com/think/topics/machine-learning 結(jié)合起來,我們可以設(shè)想計(jì)算機(jī)可以自行探索數(shù)學(xué)世界。我相信,這種組合,再加上現(xiàn)代計(jì)算機(jī)的驚人速度,有可能發(fā)現(xiàn)真正的新數(shù)學(xué)現(xiàn)象。
聯(lián)合會(huì)議有數(shù)學(xué)和藝術(shù)方面的會(huì)議,以及藝術(shù)展覽。會(huì)議包括Susan Goldstine(圣瑪麗學(xué)院)談?wù)撍摹褒嫾尤R藍(lán)調(diào)”項(xiàng)目——一條用舊牛仔褲制成的牛仔裙,使用30°- 45°- 90°三角形(注意角度總和嚴(yán)格小于180°,這是負(fù)曲率的特征)密鋪龐加萊雙曲平面模型的圖案;Barry Cipra(明尼蘇達(dá)大學(xué))展示了Max Bill的繪畫作品《Gelbes Feld》中隱藏的編碼幻方 https://kmw.zetcom.net/de/collection/item/418/ 。文章展示了藝術(shù)展覽中的兩個(gè)雕塑圖片;見下文。
Shiying Dong(董世英,音譯名)的“鞍形怪獸”(鉤針編織,直徑14英寸)。螺旋形鉤針編織的十二面體。

照片由Gregory Henselman-Petrusek拍攝,經(jīng)許可使用
羅伯特·法索爾(Robert Fathauer)的“雙曲螺旋面”(陶瓷,直徑約14 英寸,高7英寸)。

圖片由羅伯特·法索爾提供
三、一場(chǎng)錯(cuò)誤的喜???
12月6日的《新科學(xué)家》報(bào)道(原文 https://www.newscientist.com/article/2461891-mathematicians-found-and-fixed-an-error-in-a-60-year-old-proof/ ):數(shù)學(xué)家發(fā)現(xiàn)并修復(fù)了60年前的證明錯(cuò)誤。作者亞歷克斯·威爾金斯 (Alex Wilkins) 正在撰寫有關(guān)形式化驗(yàn)證費(fèi)馬大定理證明的項(xiàng)目。
費(fèi)馬大定理斷言:對(duì)整數(shù)n>2,方程
x? + y? = z?
無非零整數(shù)解。1995年Andrew Wiles(安德魯·懷爾斯,1953 -)證明了該定理,即當(dāng)n>2時(shí),除了(0,0,0)無其他整數(shù)解。
數(shù)學(xué)界早已接受了懷爾斯的證明,但Kevin Buzzard(凱文·巴扎德,倫敦帝國理工學(xué)院)正在領(lǐng)導(dǎo)一項(xiàng)研究,試圖用一種計(jì)算機(jī)可檢查的編程語言Lean https://lean-lang.org/about/ 重新證明費(fèi)馬大定理。該形式化工作由 Xena https://xenaproject.wordpress.com/what-is-the-xena-project/ 項(xiàng)目負(fù)責(zé),涉及的證明方法與懷爾斯使用的證明方法不同。
據(jù)Buzzard稱,問題出現(xiàn)在今年夏天。正如他在12月11日的一篇博客文章 https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-its-going/ 中所寫,Lean“有時(shí)會(huì)做出令人惱火的事情”,拒絕接受部分論點(diǎn)。
Lean的難點(diǎn)在于已故法國數(shù)學(xué)家Norbert Roby的論證。經(jīng)過檢驗(yàn),該證明被確認(rèn)是錯(cuò)誤的。在轉(zhuǎn)錄Roby早期論文中的命題Γ?(M)?? R = Γ?(M?? R) 時(shí),“其中一個(gè)張量積[?]意外脫落”,正如Buzzard所說,由此產(chǎn)生的錯(cuò)誤恒等式是證明的一部分。
不用擔(dān)心。Buzzard從未認(rèn)為Roby的引理是錯(cuò)誤的,只是其證明需要修改。消息很快傳到了專家那里。其中一位專家 Brian Conrad(斯坦福大學(xué))在1978年《晶體上同調(diào)注記》的附錄中 https://press.princeton.edu/books/hardcover/9780691648323/notes-on-crystalline-cohomology 發(fā)現(xiàn)了另一個(gè)論證。正如 Buzzard所說,“證明又回來了!”
更新:
《晶體上同調(diào)注記》由Arthur Ogus(加州大學(xué)伯克利分校)和已故的Pierre Berthelot(1943 - 2023)共同撰寫。Buzzard最近訪問了伯克利,并與Ogus共進(jìn)午餐。他告訴Ogus他的附錄如何挽救了局面。Buzzard告訴我們,Ogus回答說:“哦!那個(gè)附錄有幾個(gè)錯(cuò)誤!但沒關(guān)系,我想我知道如何修復(fù)它們?!?/p>
參考資料
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
科普薦書
【更多讀者好評(píng)數(shù)學(xué)書單推薦、數(shù)學(xué)科普作家自薦、出版社書單推薦通道已陸續(xù)打開,敬請(qǐng)期待】
·開放 · 友好 · 多元 · 普適 · 守拙·
讓數(shù)學(xué)
更加
易學(xué)易練
易教易研
易賞易玩
易見易得
易傳易及
歡迎評(píng)論、點(diǎn)贊、在看、在聽
收藏、分享、轉(zhuǎn)載、投稿
查看原始文章出處
點(diǎn)擊zzllrr小樂
公眾號(hào)主頁
右上角
數(shù)學(xué)科普不迷路!

熱門跟貼