mf模型 svd++_序列推薦模型(一): FPMC

8ee37c396063b000b1c96e25cb003e2d.png

Factorizing Personalized Markov Chains for Next-Basket Recommendation

摘要和介紹

這篇文章發表于 WWW2010,當時主流的推薦方法是MF和MC

  1. MF(Matrix Factorization) : 用于建模用戶與物品的偏好。給定已知用戶和物品的交互,來預測矩陣中其他未知位置的用戶偏好,方法有SVD分解,隱變量模型和基于優化/學習的方法等。
  2. MC(Markov Chain): 用于建模用戶與商品交互的序列信息。MC方法基于轉移矩陣,通過上一時刻的交互來預測下一個時刻的用戶交互。

FPMC(Factorizing Personalized Markov Chains for Next-Basket Recommendation):

MF方法適合于建模personalized的推薦場景,MC方法適合于建模sequential的推薦場景,那么在Next-Basket Rec的任務中,如果既想考慮user-taste,又想考慮sequential信息,應該怎么做?

作者想了一個很自然的方法,那就是給每一個user建模一個markov transition matrix。也就是建模一個

的transition tensor,來融合序列和個性化兩方面的信息。由于我們多考慮了一個user的維度,所以數據更加稀疏,為了應對數據稀疏,導致的不容易估計的問題,作者建立了一個分解模型來做分解。

任務介紹

首先為了說明MF和MC方法各有優缺點,Rendle舉了兩個例子:

  1. 有一個小伙平時愛看科幻電影,比如星戰之類的。有一天陪女朋友看了泰坦尼克號,MC模型傾向于下一個推薦浪漫電影,而MF是global recommender,MF傾向于推薦科幻片。這說明MC模型容易受到最近交互的噪聲影響。
  2. 有一個小伙買了camera,MF模型可能會繼續推薦電子產品,MC模型會推薦膠片之類的"配件"。這說明MF這種全局建模u-i關系的難以利用序列化信息,做next item的預測。

FPMC的任務:

已知用戶列表

,物品列表
和每一個用戶的歷史交互序列
, 注意,這里的
不是單個的物品,而是物品的basket。去求解一個排序問題:
, 也就是說對每一個用戶的每一個時間形成一個item的排序。

方法

核心問題在于如何估算transition tensor的參數:

方法1: MLE 和 full parametrization

這是極大似然的估計方法,由于tensor的每一個位置都需要估算,所以又是一個全參數估計的方法。這種方法計算簡單,但是面臨一個問題, 就是每一個

的共現只是對
有貢獻,這造成了本來稀疏的信息更加利用不完全,最后矩陣中出現大量的0。如果我們考慮u,這種問題尤為嚴重,因為要
三者的共現才能做出有效的估計,而這樣的共現對是稀疏的。

方法2:tensor分解

根據上面的分析,單獨考慮每一個user->item, 和 item->item之間的轉移概率估計,不能完全利用信息,這說明u-i和i-i之間的信息應該可以share。全參數的估計面臨稀疏性的問題,希望得到低秩表示。

Tucker分解:

顯然有如下的關系式:

考慮最簡單的單位tensor分解核:

通過上面的式子,可以看到這其實是向量內積做矩陣分解的tensor分解版本。

由于數據是稀疏的,Rendle 提出了下面的pairwise interaction的tensor分解:

對user,current item和next item 三者的pair關系設置兩方面的embedding,通過點積的和來估算:

這樣做的好處:

  1. 降低計算復雜度,相比較TD分解,這種分解方法參數量有所降低(因為沒有三維的core),分解和推斷的代價都會降低。
  2. 個人理解: 因為數據是稀疏的,TD分解想要降低復雜度,就只能使得core tensor更加稀疏,一個極端的情況,使用單位core tensor,這樣變成三個embedding的element-wise的乘法,如果數據(embedding)稀疏, 按位置乘法就有可能造成0位置過多。
  3. 顯式建模pairwise的interaction信息,可能更為直接。

回到MC:

這種建模方法比方法1的全參數建模參數量更少,而且解決了數據稀疏的問題。

訓練方法

對于序列中的每一個轉移,都可以采集作為偏序關系的學習樣本。

從t-1 -> t, 的轉移過程采用BPR優化器訓練,學習偏序關系。序列中的BPR優化方法被作者命名為S-BPR。

和MF/MC方法的關系

注意到在訓練的過程中,并沒有對current-item做負采樣,也就是說這個打分和括號里面和U,L相關的項,對于訓練過程都是一樣的,做差之后就抵消了,完全沒有影響。

所以在BPRloss下可以簡化為:

顯然前一項是描述U-I的關系的,可以視為MF項,后一項是描述I-I關系的,可以視為FMC項。

值得注意的是: 并不能將FPMC視為 簡單的MF,FMC線性相加。理由如下:

  • 訓練是聯合的,不是單獨訓練拼起來
  • 這是建立在優化器和采樣方法對U-L之間的關系沒有感知的基礎上
  • 采用pairwise interaction的tensor分解方法才可能出現這種情況

所以應該將FMC+MF視為一種退化的解。

結果和啟示

  • FMC和MC相比克服了數據稀疏的問題,而且這種低秩估計的分解方法不容易overfit。
  • MF和FMC相比,在dense數據上MF更好,因為user相關的信息比較多。FMC在sparse數據上更好,因為這時沒有足夠的信息來學習用戶的偏好,反而是最后一項物品更重要。
  • 無論在dense還是sparse,FPMC都比FMC和MF好。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534700.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534700.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534700.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

科學計算機怎么算四分位數,83939數理分析網

【www.shanpow.com--節日作文】第一篇83939數理分析網:手機號碼數理分析手機號碼數理分析手機是大家日常生活中最常用的東西,手機號碼也暗喻數理卦象玄機,有些人甚至比姓名更看重,畢竟換手機號碼比改名字簡單。互聯網上有很多可以測試的網站&…

使用python讀取iphone文件_如何在連接的iPhone上用Python從windows7訪問照片?

當我將iPhone連接到windows7系統時,Windows資源管理器會打開DCIM內容的虛擬文件夾。我可以通過Pywin32(218)訪問shell庫接口,如下所述:Can I use library abstractions in python?給定在Windows資源管理器中工作的面向用戶的編輯路徑(SIGDN_…

離人愁有用計算機怎么寫歌詞,離人愁歌詞是什么意思 今兩股癢癢什么意思

最近《離人愁》這首富含古風的歌曲可是大火,既然是古風,里邊的歌詞也是讓大多網友不理解其中表達什么意思,進而不能好好體會作者寫這首歌的意圖,其實每個人對于這首歌曲還是有很多自己的理解的,現在小編就來介紹這首歌…

手機耗電統計app_華為手機有哪些功能關掉比較好?

閱讀本文前,請您先點擊上面的藍色字體“野趣說”,再點擊“關注”,這樣您就可以繼續免費收到文章了。每天都有分享,完全是免費訂閱,請放心關注!現在的手機使用一年半左右就會出現卡頓的情況,這也…

北京航空航天大學計算機科學與工程系,北航鄭征主頁 北京航空航天大學教師個人主頁系統...

[1].教育部學位與研究生教育發展中心評審專家[2].IEEE Transactions on Dependable and Secure Computing客座編輯[3].國際SCI期刊Knolwedge-based Systems副主編[4].國際會議ISSRE2020程序委員會共同主席(International Symposium on Software Reliability Engineering-CCF B)…

3種團隊分組適應項目_團隊類型

展開全部根據團隊存在的目的和擁有自主權的大小可將團隊分成四種類型:問題解決型團隊、自我32313133353236313431303231363533e59b9ee7ad9431333431363635管理型團隊、多功能型團隊、虛擬型團隊。1、問題解決型團隊問題解決型團隊是指組織成員就如何改進工作程序、方…

制作html彈窗,js制作一個簡單的div彈窗:

/p>"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">彈出層.black_overlay{display: none;position: absolute;top: 0%;left: 0%;width: 100%;height: 100%;background-color: black;z-index:1001;-moz-opacity: 0.8;opacity:.80;filter: alpha(op…

太原冶金技師學院計算機系,山西冶金技師學院2021年招生簡章

山西冶金技師學院2021年招生簡章隨著考試的落幕,很多學生都比較關注一些學校的招生信息,其中山西冶金技師學院就受到很多學生關注,學校的專業專業設置也比較多,那么在今年,該學校的招生簡章有什么要求呢?學校的專業招…

netty獲取玩家chanel_Netty4.X 獲取客戶端IP

最近使用netty-4.0.23.Final 版本編寫服務端代碼,有個獲取客戶端代碼的小需求,以前使用servlet開發時很機械的就:String ipAddr"0.0.0.0";if (reqest.getHeader("X-Forwarded-For") null) {ipAddr reqest.getRemoteAddr();}else{i…

html高度沒有滾動條,Div擴展了頁面高度,但沒有滾動條

我在頁面左側有一個div用于導航鏈接。點擊標題可展開鏈接的子集。我將此div設置為頁面高度的100%,以便列占據頁面的整個左側。當所有子類別都展開時,會出現問題。 div的內容在頁面底部運行,但不添加滾動條。Div擴展了頁面高度&…

es 刪除重復數據_怎么標識并刪除SPSS數據庫里的“重復個案”?

背景:測試學生體質數據時,由于部分學生第1次測試成績不合格,讓他們進行了補測。但是,錄入數據時,沒有替換,造成這部分學生有2個體測成績,現在需要找到這些重復個案并刪除較差的成績。1. 數據概覽…

計算機視覺sci需要什么水平論文,計算機視覺博士一般幾篇論文_林達華博士_林達華視覺...

2019年,計算機視覺領域,你推薦哪些綜述性的文章?...期待更多CVer在FGIA領域作出有影響力的工作,更多FGIA信息可參見也歡迎相關領域同學進入 曠視南京研究院 參與相關課題的研究...如何讀一篇優秀的計算機論文?轉載一個…

上海大學計算機考研試題,08-09上海大學計算機考研試卷.doc

08-09上海大學計算機考研試卷第 頁 共 頁 第 頁 共 頁第 頁 共 頁 第 頁 共 頁上海大學2008~2009學年 秋季學期研究生答題卷課程名稱:計算機視覺基礎 課程編號: 0座機電話號碼 學 分: 4 考試日期: 2008年11月23日應試人…

python logging模塊的作用及應用場景_Python常用模塊功能簡介(三)logging

logging基本介紹先介紹一下我們為什么要使用日志,平常我們編寫程序為了驗證程序運行與debug,通常會使用print函數來對一些中間結果進行輸出驗證,在驗證成功后再將print語句注釋或刪除掉。這樣做在小型程序中還比較靈活,但是對于大…

計算機科技文獻中 CAM,計算機輔助設計、制造(CAD、CAM)和《機械制圖》 課程的結合、探索與實踐研究...

王建臣摘要:隨著我國科學技術的迅猛發展,計算機技術也隨之得到大范圍推廣,并迎來跨越式的發展,在機械行業中,管理、設計、制造都已經逐漸換裝計算機來進行。計算機機械制圖作為機械專業的基礎課程,肩負著培…

docker linux 快速開窗口_Linux搭建docker環境并簡單實用

記錄生活:配置阿里云鏡像源docker YUM[rootcentos-linux ~]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2[rootcentos-linux ~]# sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo安裝…

清華計算機接口原理,微機原理與接口技術課后習題答案清華大學

微機原理與接口技術課后習題答案清華大學 微機原理與接口技術課后部分習題參考答案 第一章 2. 第 3項任務,根據狀態標志位的狀態決定轉移方向。 3. 程序存儲是將要執行的程序的全部指令存儲到存儲器中,程序控制指程序開始執行后,通過指令流控…

vf求計算機系統當前日期的年份數,計算機二級VF常用函數列表

數值函數:1.絕對值和符號函數格式:ABS()SIGN()例如:ABS(-5)5,ABS(4)4,SIGN(8)1,SIGN(-3)-1,SIGN(0)02.求平方根表達式格式:SQRT()例如:SQRT(16)4,它與開二分之一次方等同。3.圓周率函數格式:PI()4.求整數函…

element走馬燈自動_詳細element-ui的走馬燈carousel輕松實現自適應全屏banner詳細過程...

div部分CSS部分.bannerImg{width: 100%;height: inherit;min-height: 600px;min-width: 1400px;}vue.JS部分var vm new Vue({el : #apptwo,data : {bannerHeight:"",BannerImg:["${request.contextPath}/statics/BCHimg/b6.png","${request.contextP…

4n35光耦引腳圖_光耦繼電器的主要特點以及輸入特性!先進光半導體

光耦合器是一種電光電轉換設備,可將電信號作為介質傳輸。它由兩部分組成:光源和光接收器。發光源和光接收器被組裝在同一氣密殼體中,并通過透明絕緣體彼此隔開。發光源的引腳為輸入端子,光接收器的引腳為輸出端子,公共…