1 導引
1.多視角推薦模型
推薦系統中常常面臨冷啟動和用戶互動資料稀疏的問題,解決這個問題的一個手段就是對用戶在多個領域(domain)的日志資料聯合起來進行建模,這里的多個領域的資料可以指用戶在諸如新聞App、音樂App、視頻App等多個軟體的日志資料(比如點擊的瀏覽新聞標題和描述等),這種聯合建模基于一個假設:用戶在不同領域也傾向于擁有相似的偏好,比如喜歡愛情電影的用戶也很可能喜歡言情小說,
而多視角(multi view)推薦模型[1]就是一種常見的跨領域資料聯合建模方式,它會將多個視角對應的特征映射到一個共享的隱空間(latent space),
上圖展示了對跨領域資料建模的多視角DNN,它基于深度結構化語意模型(Deep Structured Sematic Models, DSSM)的計算最大化用戶視角和多個物品視角對應隱向量的相似度,并按照相似度排序來推薦物品,圖中的User View對應的特征為用戶使用搜索引擎的查詢資訊,而其他的Item View對應的特征為用戶在其它App所點擊過的物品特征資料,該模型假定所有領域都對應著共同的用戶,它使用了DNN將多個視角對應的高維稀疏特征映射\(x_U, x_1, \cdots, x_D\)到共享隱空間中的低維稠密特征\(y_U, y_1, \cdots, y_D\),
之后可以計算用戶隱向量\(y_U\)和物品隱向量\(y_j(j=1,\cdots, D)\)的語意相似度:
\[\operatorname{cosine}\left(y_{U}, y_{j}\right)=\frac{y_{U}^{\top} y_{j}}{\left\|y_{U}\right\| \cdot\left\|y_{j}\right\|} \]這里假設用戶隱向量\(y_U\)和物品隱向量\(y_j(j=1,\cdots, D)\)相關,然后接下來的目標就是為每個視角都找到一個非線性的映射,以使\(y_U\)視角和其它物品視角\(y_1,\cdots,y_D\)在隱空間的相似度之和最大化:
\[p=\arg \max _{W_{U}, W_{1}, \ldots W_{D}} \sum_{i=1}^{N} \frac{e^{\gamma \cos \left(y_{i,U}, y_{i, a}\right)}}{\sum_{x_j \in \mathbb{R}^{d_{j}}} e^{\gamma \cos \left(y_{i,U}, f_j\left(x_j, W_j\right)\right)}} \]其中\(W_{U}, W_{1}, \ldots W_{D}\)為各個視角對應的權重引數,一共有個\(N\)用戶-物品對樣本和\(D\)個物品視角,其中每個物品視角\(x_j\)都有其單獨的輸入特征維度\(d_{j}\),
第\(i\)個用戶-物品對樣本擁有一個用戶視角的輸入特征\(x_{i, u}\)和其對應的物品視角特征\(x_{i, a}\),這里\(a\)是樣本\(i\)對應物品視角的索引,樣本\(i\)對應的其它物品視角的輸入\(x_{i,j \neq a}\)則設為\(0\)向量,\(\gamma\)為溫度系數,
如上文所述,跨領域推薦本質上是個遷移學習問題,它需要在多個領域異構資料的基礎上通過某種“橋梁”(bridge)來提高一個或多個目標域的推薦效果,這里的“橋梁”指不同領域之間的關聯專案,比如共同的用戶,共同的物品,共同的特征等,上面的多視角DNN模型就假定所有領域都對應著共同的用戶,
2. 聯邦多視角推薦模型
跨領域推薦在實際應用中常常面臨隱私性的挑戰,其一是不同用戶的資料難以合法地進行集中化收集;其二是其使用的遷移學習模型跨不同的域和資料集進行映射,這常常會關聯到不同的組織機構,同樣會面臨隱私問題[2],此時上面提到的需要將資料集中起來的多視角學習方法就不再行得通了,需要考慮在聯邦場景下的多視角推薦模型,
而聯邦場景下的多視角推薦模型根據其隱私保護的出發點不同,可大致分為以下三類:
-
保證用戶(client)之間的資料資料不共享,但多視角的資料是打通的(橫向),
-
可以將用戶的資料進行集中化收集,但多視角的資料不能共享(縱向),
-
不僅保證client之間的資料不共享,且多視角的資料也是不能共享的(橫向+縱向),
我個人覺得在保證隱私的條件下進行多視角之間的資訊共享(縱向/橫向+縱向)是最有意思的,其核心是聯邦遷移學習相關的理論:即在隱私保護的前提下,根據不同領域之間的關聯來生成共享表示,根據我閱讀過的大部分論文來看,如不同領域對應不同的組織機構,則它們的embeddings不能直接進行遷移,需要采取間接的遷移方法,這些方法具體來說就五花八門了,有用GAN來生成帶差分隱私保護的共享embeddings的(參見我上一篇博客《聯邦學習:聯邦場景下的多源知識圖譜嵌入》),有用另一個中間視角的資料來訓練共享子模型的[4],有用VAE來生成一個獨立于所有領域的共享embeddings的[5],有先對資料加以差分隱私保護再用自編碼器生成共享embeddings的[6],可以預見這在未來仍將是個熱點,
以下我們分別看下這三類所對應的相關論文,了解一下該領域的大致情況,
3. 論文閱讀
3.1 ECML-PKDD 2020《Federated multi-view matrix factorization for personalized recommendations》[3]
這篇論文提出了聯邦多視角矩陣分解分解演算法,因為其使用的多視角資料不涉及跨組織機構,故只需要保證用戶資料不共享即可,屬于前面所說的橫向型別,具體而言,在傳統的矩陣分解演算法中,常常只考慮用戶-物品矩陣,即所謂共現矩陣\(R\),通過分解該矩陣得到用戶的隱向量矩陣\(P\)和物品隱向量矩陣\(Q\):
\[R \approx PQ^T \]之后再基于用戶矩陣\(P\)和物品矩陣\(Q\)得到用戶\(u\)對物品\(i\)的預估評分:
\[\hat{r}_{i,j}= p_i q_j^T \]其中\(p_i\)是用戶\(i\)在用戶矩陣\(P\)中的對應行向量,\(q_j\)是物品\(j\)在物品矩陣\(Q\)中的對應行向量,
而所謂多視角矩陣分解,即包括以下三個視角:用戶-物品,用戶-特征,物品-特征,這三個視角分別對應用戶-物品矩陣\(R\in\mathbb{R}^{N_u\times N_v}\),用戶特征矩陣\(X\in \mathbb{R}^{N_u\times D_u}\),物品特征矩陣\(Y\in \mathbb{R}^{N_v\times D_v}\),這里\(N_v\)為用戶個數,\(N_v\)為物品個數,\(D_u\)和\(D_v\)分別為用戶和物品的特征維度,則多視角矩陣分解可表示為如下形式:
\[\begin{aligned} &R \approx P Q^{T} \\ &X \approx P U^{T} \\ &Y \approx Q V^{T} \end{aligned} \]如下圖所示:

其中\(P\in \mathbb{R}^{N_u\times K}\)是用戶隱向量矩陣,\(Q\in \mathbb{R}^{N_v\times K}\)是物品隱向量矩陣,\(U\in\mathbb{R}^{D_u\times K}\)是用戶特征隱向量矩陣,\(V\in \mathbb{R}^{D_v\times K}\)是物品特征隱向量矩陣,這里\(K\)是隱向量維度,
此時所要優化的目標函式可以寫為:
\[\begin{array}{r} J=\sum_{i} \sum_{j} c_{i, j}\left(r_{i, j}-p_{i} q_{j}^{T}\right)^{2}+\lambda_{1}\left(\sum_{i} \sum_{d_{u}}\left(x_{i, d_{u}}-p_{i} u_{d_{u}}^{T}\right)^{2}+\sum_{j} \sum_{d_{y}}\left(y_{j, d_{y}}-q_{j} v_{d_{y}}^{T}\right)^{2}\right) \\ \quad+\lambda_{2}\left(\sum_{i}\left\|p_{i}\right\|^{2}+\sum_{j}\left\|q_{j}\right\|^{2}+\sum_{d_{u}}\left\|u_{d_{u}}\right\|^{2}+\sum_{d_{y}}\left\|v_{d_{y}}\right\|^{2}\right) \end{array} \]這里\(c_{ij}=1+\alpha r_{ij}\),\(\alpha\)是一個表示隱式反饋不確定性的置信引數;\(\lambda_2\)是L2正則項;\(\lambda_1\)表示用戶-物品視角與其它視角間的資訊共享強度,若令\(\lambda_1=0\)則表示用戶-物品視角不與其它視角進行資訊共享,\(0\leqslant\lambda_1\leqslant 1\)可以根據資料生成程序的先驗知識選擇,也可以通過超引數優化來決定,
模型引數\(P, Q, U, V\)可以通過交替最小二乘法(Alternating Least Square, ASL)來求解,
下圖描述了在聯邦場景下用交替最小二乘法求解該問題的演算法,
如圖所示,用戶\(i\)和物品的互動資訊\(r(i)\)(用戶\(i\)在\(R\)中的對應行向量)及用戶\(i\)的特征向量\(x_i\)(用戶\(i\)在\(X\)中的對應行向量)只能在client \(i\)本地使用,物品的特征矩陣\(Y\)存盤在item server中,fl server會將\(Q, U\)分發給client(用戶),并將\(Q\)發往item server,
在每個client \(i\),用戶的隱向量\(p_i\)會在本地進行計算,其中會使用到該用戶與物品的互動資訊\(r(i)\)、該用戶的特征向量\(x_i\)與來自server的\(Q, U\),新的用戶隱向量\(p_i^*\)計算公式如下:
\[p_{i}=\left(r(i) \hat{C}^{(i)} Q+\lambda_{1} x_{i} U\right)\left(Q^{T} C^{(i)} Q+\lambda_{1} U^{T} U+\lambda_{2} I\right)^{-1} \]之后,client \(i\)按照下式計算\(f(j, i)\)(用于之后在fl server計算\(\partial J / \partial q_{j}\)以更新\(Q\)):
\[f(j, i)=\left[c_{ij}\left(r_{i, j}-p_{i} q_{j}^{T}\right)\right] p_{i} \]按照下式梯度\(f(i, d_u)\)(用于之后在fl server計算\(\partial J / \partial u_{d_u}\)以更新\(U\)):
\[f\left(i, d_{u}\right)=\left[\left(x_{i, d_{u}}-p_{i} u_{d_{u}}^{T}\right)\right] p_{i} \]上述計算完畢后將\(f(j, i),f(i, d_u)\)發往fl server,
與此同時,在item server,物品特征隱向量矩陣\(V\)也會得到更新(其中會用到物品特征),新的物品隱向量\(v^*_{d_y}\)計算方式如下:
\[v_{d_{y}}^{*}=\left(y_{d_{y}} Q\right)\left(Q^{T} Q+\frac{\lambda_{2}}{\lambda_{1}} I\right)^{-1} \]更新完成后,在此基礎上計算\(f(j, d_y)\)(用于之在fl server計算\(\partial J / \partial q_{j}\)以更新\(Q\)):
\[f\left(j, d_{y}\right)=\left[\left(y_{j, d_{y}}-v_{d_{y}} q_{j}^{T}\right)\right] v_{d_{w}} \]之后再將\(f(j ,d_y)\)發給fl server,
而在fl server接收\(f(j, i), f\left(i, d_{u}\right), f(j, d_y)\)后,按照下列兩個式子計算梯度并更新\(Q\)和\(U\):
\[\begin{aligned} \frac{\partial J}{\partial q_{j}} &=-2 \sum_{i} f(j, i)-2 \lambda_{1} \sum_{d_{y}} f\left(j, d_{y}\right)+2\lambda_{2} q_{j} \\ \frac{\partial J}{\partial u_{d_{u}}} &=-2 \lambda_1\sum_{i} f\left(i, d_{u}\right)+2 \lambda_{2} u_{d_{u}} \end{aligned} \]然后又將\(Q\)和\(U\)發往各client,將\(Q\)發往item server,以此回圈往復,
綜上,該篇論文按照損失函式\(J\)對多視角資料矩陣\(R, X, Y\)共同進行矩陣分解,以學習隱向量矩陣\(P, Q, U\)和\(V\),具體演算法采用了聯邦交替最小二乘法,可以注意到聯邦場景下對引數矩陣\(Q\)和\(U\)進行的更新并不需要對用戶資料進行聚合(雖然\(Q\)和\(U\)的更新依賴于用戶資料),
3.2 FTL-IJCAI21 《A federated multi-view deep learning framework for privacy-preserving recommendations》[4]
上面提到的是基于聯邦矩陣分解的推薦模型,而下面要介紹的是聯邦場景下基于內容的(content-based)推薦模型,它側重將用戶或者物品的特征資訊作為輸入特征來建模,具體的模型采用我們第1部分中所敘述的多視角DSSM模型,該模型同時滿足了多個client資料的隱私性和單個client中多視角資料的隱私性,屬于橫向+縱向型別,
不過本文與原始多視角模型中共享用戶視角的特征不同,本文共享的是物品視角的特征,設共有\(C\)個client,第\(c\)個client中的本地資料集表示為\(\mathcal{D}^c=\{x_I, x_1,\cdots x_D \}\),這里\(x_1,\cdots x_D(x_j\in\mathbb{R}^{d_{j}})\)為用戶在\(D\)個不同App中記錄的多視角特征資料,而物品視角資料集\(x_I\in \mathbb{R}^{d_I}\)從server下載,比如移動App的后端,DSSM模型將從各個App視角資料集\(x_I, x_1,\cdots x_D\)和物品資料集\(x_I\)中分別提取隱向量,演算法的目標是為每個視角學得一個非線性映射\(f(\cdot)\)以使物品視角隱向量和多個用戶視角隱向量相似度的和最大化,第\(c\)個client的目標定義如下:
\[p=\arg \max _{W_{I}, W_{1}, \ldots W_{D}} \sum_{i=1}^{N_c} \frac{e^{\gamma \cos \left(y_{i,I}, y_{i, a}\right)}}{\sum_{x_j \in \mathbb{R}^{d_{j}}} e^{\gamma \cos \left(y_{i,I}, f_j\left(x_j, W_j\right)\right)}} \]這里\(N_c\)表示client \(c\)中用戶-物品對的數量,第\(i\)個用戶-物品對樣本擁有一個物品視角的輸入特征\(x_{i, I}\)和其對應的用戶視角特征\(x_{i, a}\),這里\(a\)是樣本\(i\)對應用戶視角的索引,\(y\)表示\(f(\cdot)\)的映射結果,\(\gamma\)是溫度引數,
聯邦多視角DSSM模型(FL-MV-DSSM)求解演算法的架構如下所示:
(a)FL-MV-DSSM和(b)SEMI-FL-MV-DSSM 都以傳統的FedAvg演算法為基礎,且它們都需要server提供物品資料供所有client共享,不過在FL-MV-DSSM中每個client \(c\)中用戶子模型和物品子模型的梯度會根據本地用戶資料和本地物品資料進行計算,然后在server端對用戶和物品子模型的梯度進行聚合;而SEMI-FL-MV-DSSM則只會聚合物品子模型的梯度,而不會聚合用戶子模型的梯度,
注意,client在將梯度發往server前,會在本地先多個視角所算得的物品子模型梯度聚合(注意,\(D\)個用戶視角共享同一個物品特征,會總共算得\(D\)個物品子模型的梯度);而為了保護各視角梯度中蘊含的敏感資訊,FL-MV-DSSM使用差分隱私技術向各個視角所算得的物品子模型梯度中加入高斯噪聲,在本地聚合完成后,client又會再將前述物品子模型梯度同\(D\)個用戶子模型的梯度進行加密,然后發往server,
3.3 SIGIR21 《FedCT: Federated Collaborative Transfer for Recommendation》[5]
本論文提出的模型滿足了多個client資料的隱私性和單個client中多視角資料的隱私性,也屬于橫向+縱向型別,不過與前文采用的方法不同,本文提出的DUE(Decentralized User Encoding)模型并沒有利用一個中間視角的資料來訓練共享子模型,而是采用變分自編碼器(VAE)來生成一個單獨的用戶表示,該表示可以被所有視角共享,
上面的圖 (a) 中展示的為領域-領域兩兩間的知識遷移,而 (b) 則為本文提出的DUE模型中所采用的基于中間表示的遷移方式,用戶的表示\(X_{u}=\left[U_{u}^{\left(d_{1}\right)}, \ldots, U_{u}^{\left(d_{D}\right)}\right]\),事實上,(a) 中的這種方法直接遷移用戶表示有違隱私性,而且當領域數量增長時計算量會很大,而 (b) 則更能保證隱私性,而且其計算代價也不會隨領域數量快速增長,此外,(b) 這種方法可以隨時加入和減少領域,更具靈活性,
設領域集合為\(\mathcal{D}=\left\{d_{1}, \ldots, d_{D}\right\}\),對每個領域\(d\in \mathcal{D}\),將起對應的物品集合表示為\(I_d\)(大小為\(N_d\)),設領域之間的物品無重疊,即滿足\(\forall d, d^{\prime} \in \mathcal{D}, d \neq d^{\prime}, I_{d} \cap I_{d^{\prime}}=0\),設每個client對應一個用戶,一共有\(C\)個用戶,一個領域\(d\)可能只涉及到用戶集合的子集\(\mathcal{U}^{(d)} \subseteq \mathcal{U}\),一個用戶\(u \in \mathcal{U}\)也可能只涉及到領域集合的子集\(\mathcal{D}^{(u)} \subseteq \mathcal{D}\),每個領域都有對應的共現矩陣\(R_d\)及其協同過濾模型\(f_d\),\(f_d\)為一個給定用戶-物品對\((u, i)\)預測評分結果\(: \hat{r}_{u, i, d}=f_{d}\left(U_{u}^{(d)}, i\right)\)的函式,這里\(U_{u}^{(d)} \in \mathbb{R}^{L_{d}}\)表示用戶\(u\)在領域\(d\)的表示,\(L_d\)為用戶表示的維度,在本文的邊緣跨領域推薦場景下,\(f_d\)和\(U^{(d)}\)根據特定領域的協同過濾目標函式\(\mathcal{L}^{CF}_d\)進行預訓練,并作為該領域對應的本地預訓練模型使用,
加上server端,整體的聯邦跨領域遷移架構如下圖所示(圖中僅僅展示了單個用戶):
這里設\(\mathcal{S}_d\)為server端的領域服務商存盤空間(存有\(f_d\)和\(U_d\));\(\mathcal{E}_u\)為用戶在設備上所擁有的個人
存盤空間(任何領域都能對其進行訪問),用于存放共享表示\(z_u\);\(\mathcal{E}_{d,u}\)為領域服務商在用戶設備上的存盤空間,它能夠與\(S_d\)同步獲取預訓練模型并與用戶的個人存盤空間\(\mathcal{E}_u\)通信,正如圖中所示,對任意領域\(d\)和\(d^{\prime}\)而言,本文在設定上禁止\(\{\mathcal{S}_d, \mathcal{E}_{d, u}\}\)和\(\{\mathcal{S}_{d^{\prime}}, \mathcal{E}_{d^{\prime}, u}\}\)的資訊互動,不過,正如我們前面所說的,本文允許用戶個人存盤空間\(\mathcal{E}_u\)和client端任意領域存盤空間\(\mathcal{E}_{d,u}\)的資訊交換,這也就意味著用戶個人存盤空間充當了中間代理的作用,以協調間接性的知識遷移,
本文的最終目標是在為目標領域\(d_t\in\mathcal{D}\)的冷啟動用戶提供推薦(使用根據其它領域的用戶表示做為輔助資訊),給定多個領域的用戶表示做為訓練資料,則問題就成為了學習對用戶表示進行遷移的模型:\(g: \mathbb{R}^{L_{d_{1}}+L_{d_{2}}+\cdots+L_{d_{D}}} \rightarrow \mathbb{R}^{L_{d_{t}}}\),該模型將來自所有領域的用戶資訊映射到\(d_t\):
\[\widehat{U}_{u}^{\left(d_{t}\right)}=g\left(X_{u}\right) \]這里假定用戶的表示\(X_{u}=\left[U_{u}^{\left(d_{1}\right)}, \ldots, U_{u}^{\left(d_{D}\right)}\right]\)在優化和推斷的程序中是固定的,若是在中心化環境下,所有領域協作訓練一個共享的\(g\)是很容易的,但正如開頭所說,直接遷移emebddings會帶來隱私性的問題,而這就需要使用用戶存盤空間中的共享表示\(z_u\)這一中介了,
具體地,本文為每個領域\(d\)都設定了一個VAE \(g_d\)(包含編碼器和解碼器),如下圖所示,設\(z_u\in\mathbb{R}^{L_c}\),則\(g_d\)由一個編碼器\(\mathrm{ENC}_{d}: \mathbb{R}^{L_{d}} \rightarrow \mathbb{R}^{L_{c}}\)(引數為\(\Phi_d\),負責根據特定領域的用戶表示\(U^{(d)}\)生成\(z_u\))和一個解碼器\(\mathrm{DEC}_{d}: \mathbb{R}^{L_{c}} \rightarrow \mathbb{R}^{L_{d}}\)(引數為\(\Theta_d\),負責根據\(z_u\)生成\(\hat{U}^{(d)}\))組成,這里\(\mathrm{DEC}_d(\cdot)\)生成的\(\hat{U}_u^{(d)}\)含有來自所有領域的豐富資訊,將會被用于之后的推薦服務,另一方面,每個領域也會不斷更新自己的編碼器和解碼器,
3.4 WWW22 《Differential Private Knowledge Transfer for Privacy-Preserving Cross-Domain Recommendation》[6]
本文不考慮用戶間資料的隔離性,只考慮在兩個相互隔離的領域間進行知識遷移,屬于縱向型別,本文假定兩個領域(源域和目標域)之間有著相同的用戶,但是有著不同的用戶-物品共現矩陣,目標在于在保證資料隱私的情況下,利用原域的資料以提高目標域的推薦表現,本文基于Johnson-Lindenstrauss變換(JLT)將共現矩陣加以差分隱保護,然后使用深度自編碼器和深度學習網路來分別對源域和目標域中的共現矩陣進行建模,
本文采用的技術解決方案具體描述如下兩個階段:
在第一階段,先基于JLT變換將共現矩陣由高維空間映射到低維空間空間,能夠在夠保護資料隱私(即無法辨識出某個用戶的評分情況)的同時保持用戶間的幾何相似度(即相似評分的用戶有相似品味),此外本文還給出了考慮到稀疏情形的JLT(SJLT),能夠進一步減少JLT的計算復雜度并解決源域的資料稀疏性問題,其中使用了sub-Gaussian隨機矩陣和Hadamard變換,
在第二階段,本文提出了一個異構的跨領域推薦模型(HeteroCDR),該模型使用深度自編碼器和DNN來分別對差分隱私保護的源域共現矩陣和目標域共現矩陣進行建模,此外,論文對這兩個網路學得的用戶embeddings進行對齊,從而使知識能夠進行遷移,
論文采用JLT隨機變換以得到差分隱私保護的共現矩陣\(R^{\prime}\),JLT將一個來自\(\mathbb{R}^d\)的向量變換到\(\mathbb{R}^{d^{\prime}}\):\(\phi: x \rightarrow Mx\),這里\(M\sim \mathcal{N}(0, O_{d^{\prime}\times d})\),\(O_{d^{\prime}\times d}\)為所有元素為1的稠密矩陣,
而稀疏架構下的JLT和JLT的作用原理相似,也是定義一個從從高維到低維空間的映射,同時大概率保持變換后向量的\(l_2\)范數不變,將稀疏向量從\(\mathbb{R}^d\)轉換到\(\mathbb{R}^{d^{\prime}}\)的SJLT定義為:\(\psi: x \rightarrow Mx\),這里\(M=PHD\),\(P \in \mathbb{R}^{d^{\prime}\times d}\), \(H\in \mathbb{R}^{d\times d}\),\(D\in\mathbb{R}^{d\times d}\)
\[p_{i j}=\left\{\begin{array}{lll} 0 & \text { with probability } & 1-q_{;} \\ \xi \sim \mathcal{N}\left(0, q^{-1}\right) & \text { with probability } & q_{:} \end{array}\right. \]\(h_{i j}=d^{-1 / 2}(-1)^{(i-1, j-1)}\)是標準化后的Hadamard矩陣(每個元素都是 +1或?1且每行互相正交),這里\((i, j)=\sum_{k} i_{k} j_{k} \text{ mod } 2\)是一個按位運算并模2的內積,\(D\)是個隨機對角矩陣并滿足
\[d_{i i}=\pm 1 \text { with equal probability. } \]整個隱私保護下的跨領域推薦架構如下:
Johnson-Lindenstrauss變換(JLT)
如圖所示,將\(R^A\in \mathbb{R}^{m\times n_1}\)變換到\(R^{\prime}\in \mathbb{R}^{m\times n^{\prime}_1}\)后,會通過自編碼器來學習用戶的embeddings(用于源域和目標域的知識遷移),先通過編碼器獲取用戶embeddings:\(u_{i}^{A}=\text{ENC}\left(r_{(i)}^{\prime A}\right) \in \mathbb{R}^{h}\),這里\(h\)是用戶embeddings的維度;然后解碼器對共現矩陣進行重構:\(\hat{r}_{(i)}^{\prime A}=\text{DEC}\left(u_{i}^{A}\right) \in \mathbb{R}^{n_{1}^{\prime}}\),重構的loss為:
\[\mathcal{L}_{r e c}=\sum_{i=1}^{m} \mathcal{F} (r_{(i)}^{\prime A}, \hat{r}^{\prime A}_{(i)}) \]這里\(\mathcal{F}\)為均方誤差,
此外,論文對源域和目標域用戶embeddings進行對齊以完成知識遷移,在對齊模型中,論文將用戶embeddings的loss表示如下:
\[\mathcal{L}_{a l i}=\sum_{i=1}^{m}\left\|u_{i}^{A}-u_{i}^{B}\right\|^{2} \]在目標域\(B\)方面,采用深度矩陣分解模型來擬合用戶評分,其核心思想為最小化真實評分\(r^B_{ij}\)和預測評分\(\hat{r}^B_{ij}\)之間的交叉熵,這里預測評分由多層全連接網路輸出,該網路會先計算計算用戶和物品的隱向量\(u_{i}^{B} \in \mathbb{R}^{h}\)和\(v_{j}^{B} \in \mathbb{R}^{h}\)(\(h\)表示隱向量維度),然后計算用戶和物品的隱向量的余弦相似度做為評分預測值,即\(\hat{r}_{i j}^{B}=\left(u_{i}^{B}\right)^{T} v_{j}^{B}\),損失函式描述如下:
\[\left.\mathcal{L}_{r e g}=\sum_{i=1}^{m} \sum_{j=1}^{n_{2}}\left(\frac{r_{i j}^{B}}{\max \left(R^{B}\right)} \log \left(\hat{r}_{i j}^{B}\right)+\left(1-\frac{r_{i j}^{B}}{\max \left(R^{B}\right)}\right) \log \left(1-\hat{r}_{i j}^{B}\right)\right)\right) \]最終的完整損失函式為以上三個損失函式之和:
\[\mathcal{L}=\mathcal{L}_{r e c}+\mathcal{L}_{r e g}+\alpha \mathcal{L}_{a l i} \]參考
- [1] Elkahky A M, Song Y, He X. A multi-view deep learning approach for cross domain user modeling in recommendation systems[C]//Proceedings of the 24th international conference on world wide web. 2015: 278-288.
- [2] 楊強. 遷移學習[M]. 機械工業出版社, 2020.
- [3] Flanagan A, Oyomno W, Grigorievskiy A, et al. Federated multi-view matrix factorization for personalized recommendations[C]//Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Springer, Cham, 2020: 324-347.
- [4] Hao Li, Mingkai Huang, Bing Bai, et al. A federated multi-view deep learning framework for privacy-preserving recommendations[C]//FTL-IJCAI. 2021.
- [5] Liu S, Xu S, Yu W, et al. FedCT: Federated collaborative transfer for recommendation[C]//Proceedings of the 44th international ACM SIGIR conference on research and development in information retrieval. 2021: 716-725.
- [6] Chen C, Wu H, Su J, et al. Differential Private Knowledge Transfer for Privacy-Preserving Cross-Domain Recommendation[C]//Proceedings of the ACM Web Conference 2022. 2022: 1455-1465.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/501799.html
標籤:其他
上一篇:遞回回呼的實作
下一篇:漫談測驗成長之探索——測驗檔案
