無論我們使用 Spotify、亞馬遜、Netflix 還是 Instagram,我們每天都會遇到向我們推薦內容或產品的演算法。2017 年,Netflix 聲稱其使用者發現的節目中約有 80% 是透過演算法推薦。但是,當我檢視這個流媒體平臺為我提供的內容時,我常常只是適度地感到興奮。例如,電視劇《環法腳踏車賽:解封》的匹配度為 98%,即使我對體育紀錄片或腳踏車運動不感興趣。在 Spotify、亞馬遜或 Twitter(現在的 X)上,我也不斷對演算法向我展示的內容感到困惑。
然而,當我想到我需要一件新的雨衣時,我就會收到雨衣的廣告。如果我允許,線上公司將收集各種各樣的資料,包括我的網路衝浪行為和位置,他們會利用這些資料向我提供產品。所涉及的系統在不斷改進。但是它們實際上是如何工作的呢?
許多連線可以用來生成推薦。例如,我喜歡慢跑,所以跑鞋和運動服適合我。但是產品之間的關係也很重要:手機殼與手機相關,同一型別的電影或同一作者的書籍也是如此。最後,使用者之間可能存在聯絡。如果我和其他人一樣喜歡《神探夏洛克》系列,那麼我也可能喜歡他們喜歡的其他內容。
[閱讀更多關於人工智慧演算法的內容]
關於支援科學新聞報道
如果您喜歡這篇文章,請考慮透過以下方式支援我們屢獲殊榮的新聞報道 訂閱。透過購買訂閱,您正在幫助確保有關塑造我們當今世界的發現和想法的具有影響力的故事的未來。
為了讓推薦演算法檢查這些關係,它們需要大量資料。因此,許多提供商,例如 Netflix、亞馬遜和 Spotify,要求使用者對內容進行評分。但由於並非總是可靠地完成這項工作,因此一些演算法也會訪問其他資訊——例如,具體的產品描述和客戶資料,包括年齡、性別和位置。
有了足夠的資料,基本上有兩種方法可以進行推薦。第一種是“協同過濾”,它基於行為相似的其他使用者的評分。第二種是基於內容的:使用者收到與其先前正面評價過的專案相似的專案的推薦。兩者都有優點和缺點,可以結合起來以獲得更好的結果。
協同過濾
假設您想構建一個迷你 Netflix 平臺,其中包含六部不同的電影和五個使用者。使用者已經觀看並對其中一些電影進行了評分,評分範圍從一到五(五分表示非常喜歡;一分表示非常討厭)。您現在可以使用協同過濾系統來決定推薦哪些電影。您將評分寫在一個表格中,其中列對應於電影,行對應於使用者。在數學中,這種具有數值條目的列表狀結構稱為矩陣。
此矩陣顯示了五個使用者對一個假設的流媒體平臺上六部電影的評分。來源:Spektrum der Wissenschaft/馬農·比肖夫,由 Amanda Montañez 設計
由於並非每個人都看過所有六部電影,因此許多欄位都是空的。這是推薦演算法最掙扎的地方:它們必須根據稀疏的資料得出儘可能準確的結論。例如,要為使用者 1 提供推薦,您可以嘗試選擇另一個口味相似的使用者。但是您如何確定這種相似性呢?為了定義兩個人偏好的遠近程度,您可以求助於測度論的數學學科。
在日常生活中,有幾種方法可以指定距離。例如,您可以透過在地圖上繪製連線兩個城市的直線並測量其長度來計算兩個靠近的城市之間的距離。為了測量更長的距離,您可以將線纏繞在地球儀上,這樣最短的路線就是一條曲線——畢竟,地球不是平坦的。或者,要從一個地方旅行到另一個地方,您可能需要考慮街道和道路來計算步行距離。
當您必須遍歷網格(例如紐約市縱橫交錯的街道形成的網格)時,曼哈頓距離是指定兩點之間距離的一種方法。來源:Psychonaut/公共領域 由 Amanda Montañez 設計
各種各樣的度量和相似性度量可以為各種各樣的目的定義,包括基因或單詞的相似性。對於您的迷你 Netflix 系統,您可以為每個使用者分配一個包含其相應評分的數字列表(稱為向量)。這樣,您就有了五條直線,每個使用者一條,位於六維空間中(每個電影一個維度)。確定兩個向量的相似性就是確定它們彼此之間的夾角。這個量稱為餘弦相似度。
為了在數學上確定兩個人之間的口味相似性,可以將每個使用者視為一個向量,並且可以將相似性度量為這些直線之間的夾角。來源:Amanda Montañez
在上面的示例中,使用者 1 和使用者 2,以及使用者 1 和使用者 3 可以進行比較,因為他們對一些相同的電影進行了評分。使用者 1 和使用者 2 都對奧本海默給予了很好的評價。另一方面,使用者 1 和使用者 3 對星際穿越和奪寶奇兵得出了不同的結果。要計算兩個向量之間的夾角,您可以使用標量積將它們相乘,然後除以兩個向量的長度。對上面的示例執行此操作表明,使用者 1 和使用者 2 之間的夾角小於使用者 1 和使用者 3 之間的夾角。簡而言之,使用者 1 和使用者 2 的口味似乎比使用者 1 和使用者 3 更相似。由於使用者 2 喜歡芭比,而使用者 1 尚未看過這部電影,因此您可以向用戶 1 推薦它。
當然,當 Netflix 這樣做時,有更多的使用者具有相似的口味。因此,對個人的推薦會結合來自多個人的資料。
稀疏資料問題
協同過濾系統最嚴重的缺點是資料不足。這就是為什麼 Netflix 通常會在您註冊時要求您對已經看過的內容進行評分。但即使是這種方法也有其缺陷:僅僅因為我喜歡奧本海默並不意味著我喜歡所有歷史電影,而另一個奧本海默的粉絲可能就是這種情況。此外,一些平臺使用其他資料——例如年齡、性別或線上行為——來篩選相似的興趣。例如,一些提供商會跟蹤使用者檢視某些內容的時間或人們訪問的其他網站。
此資訊會生成一個巨大的、不斷變化的矩陣,該矩陣隨著每個新使用者或產品的增加而增長。為了獲得最佳結果,您必須不斷重新評估矩陣。這項任務甚至對 Netflix 和亞馬遜等大型公司也造成了計算能力限制。
為了發現海量資料中的模式,公司使用了來自線性代數的常用方法,例如 奇異值分解 或主成分分析。其思想是將矩陣表示為更簡單矩陣的乘積——類似於數字的素因數分解。更簡單的矩陣還包含有關使用者偏好的資訊,這些資訊更容易訪問。透過這種方法,人們可以將與矩陣中小數值相對應的非必要資訊近似為零。將近似的簡單矩陣重新相乘在一起會產生一個新矩陣,該矩陣與原始矩陣相似,但形狀更簡單。計算機可以更好地處理它以發出推薦。
人工智慧模型越來越多地用於處理這些資料。自學習演算法經過訓練可以識別資料中的模式,因此它們也可以預測一個人可能喜歡的內容。公司通常將此類系統與一種稱為強化學習的技術結合使用:模型透過使用者反饋不斷發展。例如,如果向您推薦了新電影芭比,但您的評分很差,則系統會從中學習,以便在將來為您提供更好的建議。
基於內容的推薦
除了將使用者彼此關聯之外,您還可以將產品與其他產品關聯。亞馬遜在 2003 年 推出了這樣的系統。要在此原則上構建迷你 Netflix 平臺,您需要反轉表格:行對應於電影,列對應於使用者。要新增缺失的評分——例如,“使用者 1 會喜歡芭比嗎?”——請查詢相似的電影。例如,如果其他使用者對奧本海默和沙丘的評分與芭比相似,則可以認為這些內容相似。
亞馬遜已經發現這個系統取得了成功,並繼續開發它。產品之間的關係至關重要:例如,跑鞋通常與運動服和水瓶相關聯。將其與其他方法結合使用,可以在網站上產生更強大的預測。
雖然協同方法依賴於大量使用者資料,但基於內容的推薦側重於被推薦的產品。人們可以按型別、導演、演員、時長等對電影進行分類。此步驟是部分自動化的。透過比較使用者對相關類別的偏好,可以快速提出建議。如果一個人觀看科幻電影星際穿越,然後觀看由演員瑞恩·高斯林聯合主演的芭比,則基於內容的系統可能會推薦銀翼殺手 2049,這是一部由高斯林主演的科幻電影。您還可以使用餘弦相似度來比較您已經看過的內容與其他產品。
這種方法的優點是您不需要明確地對使用者進行評分。更重要的是正確地描述產品——演算法可以接管的任務。
現在大多數推薦演算法都使用由協同系統和基於內容的系統組成的混合方法。Netflix 根據使用者行為和與其他使用者的相似性提出建議,但它也考慮了型別、演員、發行年份和其他屬性方面的偏好。此外,該平臺還會評估您喜歡使用它的時間、您喜歡使用它的時長以及您使用的裝置。但是“推薦系統不包括人口統計資訊(例如年齡或性別)作為決策過程的一部分”,Netflix 宣告。
這些系統應該有多透明?
推薦演算法是許多社交媒體平臺的核心——因此,公司希望對其保密也就不足為奇了。中國影片入口網站 TikTok 之所以如此受歡迎,主要是因為它非常擅長向用戶推薦有趣的內容。2023 年 3 月,Twitter(現稱為 X)在 GitHub 上公佈了其推薦演算法,並解釋了系統的工作原理:為了使內容出現在個人的時間線上,首先收集來自各種“推薦來源”的最佳推文,然後由人工智慧模型對其進行評估。來自被遮蔽的人或已經看過的推文將被過濾掉。
但是,IT 開發人員托馬斯·迪姆森(Thomas Dimson)寫道,釋出推薦演算法的原始碼實際上並不能提高流程的透明度,他領導了 Instagram 原始評分演算法的設計,在現已倒閉的科技新聞網站 Future 上的一篇文章中。“它們有數十億個權重,這些權重以微妙的方式相互作用以做出最終預測;檢視它們就像希望透過檢查單個腦細胞來理解心理學,”迪姆森認為。
然而,使演算法完全透明可能會產生其他問題。例如,2006 年,Netflix 向提交最佳推薦演算法的開發人員提供了 100 萬美元。該流媒體服務提供了包含 100,480,507 個評分的訓練資料,這些評分是 480,189 名使用者為 17,770 件內容提交的。2008 年,儘管資料是匿名化的,但德克薩斯大學奧斯汀分校的兩名研究人員能夠根據他們在電影資料庫 IMDb 上的評分識別出一些使用者。
這就是為什麼 Facebook 和 Instagram 背後的公司 Meta 正在採取不同的透明度方法,解釋為什麼會出現某些內容。Meta 在 2023 年 6 月宣佈,它將使用巨大的人工智慧模型,“甚至比當今使用的最大語言模型還要大”,用於其推薦。它還將 Instagram 第一季度花費的時間增加了 24% 歸功於其對人工智慧模型的使用,這要歸功於 TikTok 風格的人工智慧 Reels 推薦。
鑑於人工智慧的最新進展,尤其是語言模型的進展,推薦演算法的精度很可能在未來得到提高。然而,隨著模型尺寸的增加,透明度會降低——並且演算法使用哪些使用者相關資料仍然不清楚。並非每個人都對當前的進展印象深刻。記者 Devin Coldewey 在 TechCrunch 上寫道,Meta 想要“在我瀏覽網路尋找新雨衣時監視我,並表現得好像第二天為我提供雨衣廣告是先進人工智慧的壯舉。”
的確,推薦演算法有助於解釋為什麼我們中的許多人感覺我們的智慧手機在監視我們。如果您與某人談論雨衣,片刻之後,該商品就會出現在 Instagram 或 Facebook 上,這不是因為您被錄音了。相反,Meta 正在非常精確地分析您的聯絡人、您的位置和您的線上行為。結果是複雜的推薦,不涉及任何非法竊聽。
本文最初發表於《科學世界》雜誌,並經許可轉載。
