一文講解聯邦學習與推薦系統是什麼關係?

購物是我們日常生活的一部分,我們過去常在實體店購買商品,並諮詢我們信任的人,如朋友、家人或店員。互聯網徹底改變了我們的購物方式,線上購物如今變得稀鬆平常。只需點擊搜索按鈕,數以千計的相關商品便會立即彈出來。在這個過程中,無論我們是否意識到,我們都正在使用推薦系統(Recommendation System,RS)。事實上,推薦系統是無處不在的。當我們在淘寶或京東上購買家電,在攜程上搜尋旅店,在微博上瀏覽相片,我們都在使用推薦系統,並在同時爲推薦算法做出貢獻。

推薦系統到底是什麼?

簡單地說,推薦系統是一種信息過濾工具,可以利用整個社區的用戶畫像和習慣給特定用戶呈現其可能感興趣的最相關內容。一個有效的推薦系統包含三個主要功能:

• 克服信息過載問題。隨着互聯網上信息的爆炸式增長,用戶不可能瀏覽所有的內容。推薦系統可以過濾掉低價值的信息,從而節省用戶的時間。

• 提供定製化推薦。具有特定偏好的用戶通常難以找到他們喜愛的商品。推薦系統應該幫助用戶更好地根據自己的品味找到真正感興趣的商品。

• 合理利用資源。根據長尾效應,最受歡迎的商品吸引了最多的注意力,而不那麼受歡迎的商品,也就是其他大部分商品,將很少有人光顧。這是一種極大的資源浪費。推薦系統應該平衡受歡迎程度和實用性,讓人們對這些不那麼受歡迎的商品給予更多關注。

一個高效的推薦系統對平臺和公司都有好處。用戶更有可能根據他們的偏好來點擊或購買被推薦的商品,並且會重新訪問那些更瞭解他們的網站。總之,推薦系統在各種信息檢索系統中都發揮着至關重要的作用,可以促進業務的發展和決策的制定。

然而,在推薦系統中,仍然有許多尚未解決的問題,冷啓動和用戶數據隱私是其中的兩個主要問題。用聯邦學習同時解決這兩個問題是可行的。假設我們正通過聯邦學習,用多方數據來訓練一個全局模型。對於冷啓動問題,我們可以從其他參與方借鑑相關信息和知識,以幫助對新商品進行評分或對新用戶進行預測。對於數據隱私問題,用戶的私有數據被保存在客戶端設備中,只有更新的模型纔會通過安全協議上傳。此外,聯邦學習將模型的學習過程分佈到各個客戶端上,大大降低了中央服務器的運算壓力。

推薦模型

在詳細介紹聯邦推薦系統之前,我們首先介紹現有的推薦模型。一般來說,推薦模型可以分爲四種:協同過濾、基於內容的推薦系統、基於模型的推薦系統和混合推薦系統。

1. 協同過濾(Collaborative Filtering,CF)

它通過對用戶與商品的歷史互動進行建模來實現推薦。也就是說,基於用戶-商品矩陣,協調過濾會給同一位用戶推薦類似的商品,或者給類似的用戶推薦同一商品。然而,在實際生活中,每一位用戶通常只會與幾件商品有交互,這使得用戶-商品矩陣高度稀疏。低秩因子分解方法(Low-rank factorization),也稱爲矩陣因子分解,已被證明是解決稀疏性問題的一種有效方法。

2. 基於內容的推薦系統(Content-based Recommendation System)

它對商品的描述和用戶的畫像進行匹配來進行推薦。其核心思想是,如果一位用戶喜歡一件商品,也會喜歡相似的商品。在基於內容的推薦系統裏,商品由若干個關鍵詞進行標記,而用戶畫像由描述該用戶喜歡的商品種類的關鍵詞組成。模型通過關鍵詞對齊方法,推薦商品描述與用戶畫像相匹配的商品。

3. 基於模型的推薦系統(Model-based Recommendation System)

它使用機器學習和深度學習技術,對用戶-商品關係進行直接建模。該方法有若第 8 章 聯邦學習與計算機視覺、自然語言處理及推薦系統 121幹優點:與前兩種線性方法相比,這種方法適用於對非線性關係進行建模;深度學習模型可以學習文本、圖像及音頻等異構信息的潛在表徵,從而得到更好的推薦模型;RNN 等深度學習模型能夠對序列數據進行處理,適用於如預測下一商品等序列模式挖掘任務。

4. 混合推薦系統(Hybrid Recommendation System)

它是指集成兩個或多個推薦策略的模型,通常被認爲是更有效的。一種簡單的混合方法是,先分別進行基於內容過濾預測和協同過濾預測,再將二者的結果聚合在一起。以電影推薦爲例,混合模型基於與被推薦用戶相似的用戶的電影觀看和搜索記錄(協同過濾),以及與被推薦用戶喜歡的電影類似的電影(基於內容過濾),來爲用戶進行電影推薦。

聯邦推薦系統

在本節中,我們將會使用聯邦協同過濾作爲例子,簡要描述聯邦推薦系統是如何工作的。假設一個電子商務公司想要訓練一個協同過濾(CF)模型,讓用戶可以根據個人喜好和商品流行程度來找到想要的商品。由於數據的隱私安全問題等原因,無法直接收集到用戶的原始數據,因此可以利用聯邦學習訓練協同過濾模型。通常,一個協同過濾模型可以表示爲,由多個用戶因子向量(每個向量表示一個用戶)組成的用戶因子矩陣(user factor matrix)、由多個商品因子向量(每個向量表示一件商品)組成的商品因子矩陣 (item factor matrix) 的組合。聯邦協同過濾由所有用戶共同地學習這兩個矩陣得到,如圖 8–4 所示。包含以下五個步驟:

步驟1:1 每一個客戶 (例如,用戶的本地設備) 從服務器下載全局商品因子矩陣。該矩陣可以是隨機初始化的模型或預訓練模型。

步驟2:每一個客戶聚合顯式數據和隱式數據。顯式數據包括用戶的反饋,例如對商品的評分和評論。隱式數據由用戶訂單歷史、購物車清單、瀏覽歷史、點擊歷史、搜索日誌等信息組成。

步驟3:每一個客戶使用本地數據和全局商品因子矩陣對本地用戶因子向量進行更新。

步驟4:每一個客戶使用本地數據和本地用戶因子向量,計算全局商品因子矩陣的本地更新,並通過一個安全協議將更新上傳至服務器。

步驟5:服務器通過聯邦加權算法(如聯邦平均算法[13])聚合從各個客戶端上傳的本地模型更新。並使用聚合的結果對全局商品因子矩陣進行更新。之後,服務器將全局商品因子矩陣發送給各個客戶。

上述過程是聯邦協同過濾的一般情況。我們可以利用更強大的模型來代替協同過濾模型,如深度因子分解機(Factorziation Machine, FM)模型以進一步提高性能。除了定製化的推薦任務,聯邦推薦系統還可以利用來自不同參與方的不同特徵提高推薦的精確度。

挑戰與展望

我們可以看到,研究人員在結合聯邦學習和推薦系統等方面進行了一些創新性的研究工作,但這個領域仍有許多空白需要填補。一個普遍的問題是:建立實用的隱私保護和安全的推薦系統需要什麼?我們怎樣才能建立這些系統?該問題可以進一步細分爲幾個具體的方面:如何在保護數據安全和隱私的同時,達到高準確度和低通信成本?我們應該選擇哪種安全協議?哪種推薦算法更適用於聯邦學習?

這裏提出了一些未來可能的研究方向。首先,不完整的數據會在多大程度上影響推薦系統的性能?換句話說,我們需要從用戶那裏收集多少數據,才能建立一個精準的推薦系統。其次,傳統的推薦器會利用用戶的社交數據、時空數據等,然而目前還124不清楚這些數據中哪一部分更有用。最後,聯邦學習框架與傳統的推薦系統的設定有很大不同。因此,如何在聯邦學習框架下,設計高效並且精確的推薦算法也是一項很有挑戰性的研究工作。如何學習聯邦學習首部全面、系統論述聯邦學習的中文著作《聯邦學習》現已上市,可以作爲廣大學習者入門和探究聯邦學習的第一本書!

本書詳細描述了聯邦學習如何將分佈式機器學習、密碼學、基於金融規則的激勵機制和博弈論結合起來,以解決分散數據的使用問題。介紹不同種類的面向隱私保護的機器學習解決方案以及技術背景,並描述一些典型的實際問題解決案例。

作者團隊

楊強 / 微衆銀行的首席人工智能官(CAIO),香港科技大學(HKUST)計算機科學與工程系講席教授。

劉洋 / 微衆銀行AI 項目組的高級研究員。

程勇 / 微衆銀行AI 項目組的高級研究員。

康焱 / 微衆銀行AI 項目組的高級研究員。

陳天健 / 微衆銀行AI 項目組的副總經理。

於涵 / 新加坡南洋理工大學(NTU)計算機科學與工程學院助理教授,微衆銀行特聘顧問。

購買地址:https://u.jd.com/wn8iSN

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章