1. 程式人生 > >【推薦系統】融合 MF 和 RNN 的電影推薦系統

【推薦系統】融合 MF 和 RNN 的電影推薦系統

來源:楊敏   PaperWeekly 

全標題:Leveraging Long and Short-term Information in Context-aware movie recommendation - 融合 MF 和 RNN 的電影推薦系統

介紹本期的工作之前,先打一個緊急的招生廣告,我們組現還有一個博士名額,想要來中科院深圳先進技術研究院讀博的同學可以聯絡我,主要做一些關於自然語言處理、資料探勘、計算機視覺、機器學習等的工作,報名結束日期是 2018 年 1 月 12 號。

聯絡方式和主頁地址如下:

郵箱:[email protected]

主頁:www.minyang.me

隨著網際網路技術飛速發展,線上資料越來越龐大,如何幫助使用者從海量資料中找到所需資訊是急需解決的問題。

個性化推薦系統能夠有效的解決資訊過載問題,推薦系統根據使用者的歷史偏好和約束為使用者提供排序的個性化物品(item)推薦列表,更精準的推薦系統可以提升和改善使用者體驗。所推薦的物品可以包括電影、書籍、餐廳、新聞條目等等。

本文主要針對電影推薦做了深入研究,但所提出的方法可以很方便地遷移到其他物品推薦中。

目前,協同過濾技術已成為最廣泛採用的推薦技術,已經被廣泛應用到了很多商業系統中,比較著名的有 Amazon、Netflix、淘寶等。

傳統的基於協同過濾的推薦系統是認為使用者偏好和電影屬性都是靜態的,但他們實質是隨著用時間的推移而緩慢變化的。例如,一個電影的受歡迎程度可能由外部事件(如獲得奧斯卡獎)所改變。

除了對時間演化進行建模的需求外,協同過濾方法使用了未來的評分來評估當前的喜好,這一定程度違背了統計分析中的因果關係。

另一方面,隨著深度學習應用的爆發式發展,特別是在計算機視覺、自然語言處理和語音方面的進展,基於深度學習的推薦系統越來越引發大家的關注。迴圈神經網路(RNN)理論上能夠有效地對使用者偏好和物品屬性的動態性進行建模,基於當前的趨勢,預測未來的行為。

為了有效地利用傳統協同過濾推薦技術(i.e., 矩陣分解)和深度學習方法(i.e., 迴圈神經網路)各自的優點,捕獲使用者和電影之間的長期(全域性)和短期(區域性)關聯,本文主要研究和探索矩陣分解(Matrix Factorization, MF)和迴圈神經網路(Recurrent Neural Network, RNN)在推薦系統上的互補性。

該項工作已經發表在 arXiv 上,更多細節可以點選本文底部的“閱讀原文”檢視原論文,我們會在論文發表後放出程式碼。

我們提出一種 LSIC 模型(Leveraging Long and Short-term Information in Context-aware movie recommendation),具體框架如下:

?

LSIC 模型採用了生成對抗網路(GAN)框架將基於 MF 和 RNN 的模型融合,同時捕獲使用者長期偏好和短期會話資訊,從而最大限度地提高推薦系統的最終效能,達到 state-of-the-art 的效果。我們介紹了 4 種方法來融合 MF 模型和 RNN 模型,具體如下:

?

LSIC-V1: Hard 機制

採用簡單的求和方法混合 MF 和 RNN 預測的分數,如圖 Figure2(a),公式如下:

?

LSIC-V2 

我們通過預訓練 MF 得到使用者和視訊的 latent factors,再初始化使用者 LSTM 和視訊 LSTM 的隱狀態,如圖 Figure2(b)。

LSIC-V3 

我們對 LSIC-V2 進展擴充套件,取樣 MF 得到的 latent factors 作為兩個 LSTM 的 static context vectors 加到每個時刻 t 的輸入中,如圖 Figure2(c)。

LSIC-V4 

我們採用 attention 機制動態調整 MF 和 RNN 的融合方式,如圖 Figure2(d),公式如下:

?

?

生成對抗網路:判別器嘗試區別視訊的真假,它是來自訓練集中的高分視訊還是生成器生成出來的偽高分視訊。生成器嘗試去生成真高分視訊來欺騙判別器。具體細節請參考【5】,我們以這篇工作為基礎做了許多改進,比如通過 GAN 有效結合使用者長期偏好的短期會話的模型等。

生成器:(Figure1 的左邊)類似於條件 GAN,我們的生成器 G 輸入使用者偏好資料和時刻 t,給使用者 i 生成推薦列表,具體公式如下:

?

其中,M 是視訊集合,m_(g, t) 是在 t 時刻生成的視訊 index。

判別器(Figure1 的右邊)我們採用 Siamese 網路構建判別器 D,並且以 pair-wise 的方法融合長短時模型。具體來說,判別器 D 有兩個對稱的 point-wise 網路,她們共享引數並且採用 pair-wise 的損失函式來更新。具體的目標函式如下:

?

U 是使用者集合,u_i 是使用者 i,m_+ 是高分視訊,m__ 是隨機從視訊集合中取樣出的低分視訊,最後我們採用 hinge 損失函式來優化判別器 D,具體公式如下:

?

強化學習:由於視訊取樣的過程是離散的,不能採用標準的 GAN 公式來優化。因此,我們採用 policy gradient 來優化生成器 G,使得 G 能生成高收益的推薦列表來欺騙判別器 D。具體來說,推導如下:

?

資料集:為了驗證我們模型的有效性,我們在兩個廣泛使用的資料集進行測試 Movielens100K 和 Netflix,為了評估模型的魯棒性,我們分別進行了 3 個月 Netflix 和全集 Netflix 的實驗,資料集細節如下:

?

對比演算法: 在實驗中,我們和一些 baseline 和 state-of-art 進行對比:BPR [1],PRFM [2],LambdaFM [3],RRN [4],IRGAN [5]。

實驗結果:

?

?

?

此外,我們還進行了 case study 的分析。我們從 Netflix 資料集中隨機選擇兩個使用者併為其生成推薦列表。LSIC 模型可以更有效的進行推薦。例如,使用者“8003”的電影“9 Souls”從排名5(LambdaFM)增加到排名 1(LSIC-V4)。

?

總結:我們提出了一種新穎的基於生成對抗網路的推薦系統,採用強化學習動態調整歷史長期偏好和短期會話的模型,此外,我們加入了封面圖片特徵進一步提升系統性能,最後在兩個資料集上做到 state-of-art 的效能。

參考文獻

1. Steffen Rendle, Christoph Freudenthaler, Zeno Gantner, and Lars SchmidtThieme. 2009. BPR: Bayesian personalized ranking from implicit feedback. InProceedings of the twenty- fth conference on uncertainty in articial intelligence. AUAI Press, 452–461.

2. Runwei Qiang, Feng Liang, and Jianwu Yang. 2013. Exploiting ranking factorization machines for microblog retrieval. In Proceedings of the 22nd ACM international conference on Conference on information & knowledge management. ACM, 1783–1788.

3. Fajie Yuan, Guibing Guo, Joemon M Jose, Long Chen, Haitao Yu, and Weinan Zhang. 2016. Lambdafm: learning optimal ranking with factorization machines using lambda surrogates. In Proceedings of the 25th ACM International on Conference on Information and Knowledge Management. ACM, 227–236.

4. Chao-YuanWu, Amr Ahmed, Alex Beutel, Alexander J Smola, and How Jing. 2017. Recurrent recommender networks. In Proceedings of the Tenth ACM International Conference on Web Search and Data Mining. ACM, 495–503.

5. Jun Wang, Lantao Yu, Weinan Zhang, Yu Gong, Yinghui Xu, Benyou Wang, Peng Zhang, and Dell Zhang. 2017. IRGAN: A Minimax Game for Unifying Generative and Discriminative Information Retrieval Models. In Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval. 515–524.

 640?wx_fmt=png

人工智慧賽博物理作業系統

AI-CPS OS

人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS:雲端計算+大資料+物聯網+區塊鏈+人工智慧)分支用來的今天,企業領導者必須瞭解如何將“技術”全面滲入整個公司、產品等“商業”場景中,利用AI-CPS OS形成數字化+智慧化力量,實現行業的重新佈局、企業的重新構建和自我的煥然新生。

AI-CPS OS的真正價值並不來自構成技術或功能,而是要以一種傳遞獨特競爭優勢的方式將自動化+資訊化、智造+產品+服務資料+分析一體化,這種整合方式能夠釋放新的業務和運營模式。如果不能實現跨功能的更大規模融合,沒有顛覆現狀的意願,這些將不可能實現。

領導者無法依靠某種單一戰略方法來應對多維度的數字化變革。面對新一代技術+商業作業系統AI-CPS OS顛覆性的數字化+智慧化力量,領導者必須在行業、企業與個人這三個層面都保持領先地位:

  1. 重新行業佈局:你的世界觀要怎樣改變才算足夠?你必須對行業典範進行怎樣的反思?

  2. 重新構建企業:你的企業需要做出什麼樣的變化?你準備如何重新定義你的公司?

  3. 重新打造自己:你需要成為怎樣的人?要重塑自己並在數字化+智慧化時代保有領先地位,你必須如何去做?

AI-CPS OS是數字化智慧化創新平臺,設計思路是將大資料、物聯網、區塊鏈和人工智慧等無縫整合在雲端,可以幫助企業將創新成果融入自身業務體系,實現各個前沿技術在雲端的優勢協同。AI-CPS OS形成的字化+智慧化力量與行業、企業及個人三個層面的交叉,形成了領導力模式,使數字化融入到領導者所在企業與領導方式的核心位置:

  1. 精細種力量能夠使人在更加真實、細緻的層面觀察與感知現實世界和數字化世界正在發生的一切,進而理解和更加精細地進行產品個性化控制、微觀業務場景事件和結果控制。

  2. 智慧:模型隨著時間(資料)的變化而變化,整個系統就具備了智慧(自學習)的能力。

  3. 高效:企業需要建立實時或者準實時的資料採集傳輸、模型預測和響應決策能力,這樣智慧就從批量性、階段性的行為變成一個可以實時觸達的行為。

  4. 不確定性:數字化變更顛覆和改變了領導者曾經仰仗的思維方式、結構和實踐經驗,其結果就是形成了複合不確定性這種顛覆性力量。主要的不確定性蘊含於三個領域:技術、文化、制度。

  5. 邊界模糊:數字世界與現實世界的不斷融合成CPS不僅讓人們所知行業的核心產品、經濟學定理和可能性都產生了變化,還模糊了不同行業間的界限。這種效應正在向生態系統、企業、客戶、產品快速蔓延。

AI-CPS OS形成的數字化+智慧化力量通過三個方式激發經濟增長:

  1. 創造虛擬勞動力,承擔需要適應性和敏捷性的複雜任務,即“智慧自動化”,以區別於傳統的自動化解決方案;

  2. 對現有勞動力和實物資產進行有利的補充和提升,提高資本效率

  3. 人工智慧的普及,將推動多行業的相關創新,開闢嶄新的經濟增長空間

給決策制定者和商業領袖的建議:

  1. 超越自動化,開啟新創新模式:利用具有自主學習和自我控制能力的動態機器智慧,為企業創造新商機;

  2. 迎接新一代資訊科技,迎接人工智慧:無縫整合人類智慧與機器智慧,重新

    評估未來的知識和技能型別;

  3. 制定道德規範:切實為人工智慧生態系統制定道德準則,並在智慧機器的開

    發過程中確定更加明晰的標準和最佳實踐;

  4. 重視再分配效應:對人工智慧可能帶來的衝擊做好準備,制定戰略幫助面臨

    較高失業風險的人群;

  5. 開發數字化+智慧化企業所需新能力:員工團隊需要積極掌握判斷、溝通及想象力和創造力等人類所特有的重要能力。對於中國企業來說,創造兼具包容性和多樣性的文化也非常重要。

子曰:“君子和而不同,小人同而不和。”  《論語·子路》雲端計算、大資料、物聯網、區塊鏈和 人工智慧,像君子一般融合,一起體現科技就是生產力。

如果說上一次哥倫布地理大發現,拓展的是人類的物理空間。那麼這一次地理大發現,拓展的就是人們的數字空間。在數學空間,建立新的商業文明,從而發現新的創富模式,為人類社會帶來新的財富空間。雲端計算,大資料、物聯網和區塊鏈,是進入這個數字空間的船,而人工智慧就是那船上的帆,哥倫布之帆!

新一代技術+商業的人工智慧賽博物理作業系統AI-CPS OS作為新一輪產業變革的核心驅動力,將進一步釋放歷次科技革命和產業變革積蓄的巨大能量,並創造新的強大引擎。重構生產、分配、交換、消費等經濟活動各環節,形成從巨集觀到微觀各領域的智慧化新需求,催生新技術、新產品、新產業、新業態、新模式。引發經濟結構重大變革,深刻改變人類生產生活方式和思維模式,實現社會生產力的整體躍升。

產業智慧官  AI-CPS

用“人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS:雲端計算+大資料+物聯網+區塊鏈+人工智慧)在場景中構建狀態感知-實時分析-自主決策-精準執行-學習提升的認知計算和機器智慧;實現產業轉型升級、DT驅動業務、價值創新創造的產業互聯生態鏈


640?wx_fmt=png

640?wx_fmt=png

長按上方二維碼關注微信公眾號: AI-CPS,更多資訊回覆:

新技術“雲端計算”、“大資料”、“物聯網”、“區塊鏈”、“人工智慧新產業:智慧製造”、“智慧農業”、“智慧金融”、“智慧零售”、“智慧城市、“智慧駕駛”新模式:“財富空間、“資料科學家”、“賽博物理”、“供應鏈金融”

官方網站:AI-CPS.NET

本文系“產業智慧官”(公眾號ID:AI-CPS)收集整理,轉載請註明出處!

產業智慧官(公眾號ID:AI-CPS推薦的文章,除非確實無法確認,我們都會註明作者和來源。部分文章推送時未能與原作者取得聯絡。若涉及版權問題,煩請原作者聯絡我們,與您共同協商解決。聯絡、投稿郵箱:[email protected]

相關推薦

推薦系統融合 MF RNN電影推薦系統

來源:楊敏   PaperWeekly 全標題:Leveraging Long and Shor

推薦系統詳解基於內容的推薦演算法

作者:章華燕編輯:田 旭前言在第一篇文章《推薦演算法綜述》中我們說到,真正的推薦系統往往是多個推

原創譯文基於DockerRancher的超融合容器雲架構

基於Docker和Rancher的超融合容器雲架構 ---來自Rancher和Redapt     超融合架構在現代資料中心是一項巨大的變革。Nutanix公司發明了超融合架構理論,自從我聽說他們的“iPhone資料中心”理論時,我便對此產生了極大興趣。在我以前任職Clo

js 基礎 作用域閉包

代碼 var 垃圾回收器 間接 undefined scrip 運行時 例子 解析 一、編譯過程 常見編譯性語言,在程序代碼執行之前會經歷三個步驟,稱為編譯。 步驟一:分詞或者詞法分析 將由字符組成的字符串分解成有意義的代碼塊,這些代碼塊被稱為詞法單元。 例子: v

雜題集51NOD 12674個數為0

www namespace quest color https question clas amp -a 4個數和為0 鏈接: 原題 題意: ... 這 思路: 由於(n=1000),O(n^2)的算法也可一試。

學習筆記C# 構造析構

成員 int 學習 pri [] func 釋放內存 ring 銷毀 構造方法 構造方法是一個特殊的方法,負責初始化對象 構造方法名必須和類名一致 構造方法沒有返回值,但可以有參數,能夠重載 構造方法可以不寫,系統會自動為類添加一個無參的默認構造 如果將構造方法設置為P

CentOS6.5MySQL安裝配置

配置 entos alt tro images .com centos ges mys 1./etc/my.cnf 這是mysql的主配置文件 2、數據存放位置 3、錯誤存放位置 【CentOS6.5】MySQL安裝和配置

Python之路第一篇:Python簡介入門

源碼 world 網絡服務 換行 編程風格 大小寫 utf8 編譯安裝 比較 python簡介: 一、什麽是python Python(英國發音:/ pa θ n/ 美國發音:/ pa θɑ n/),是一種面向對象、直譯式的計算機程序語言。 每一門語言都有自己的哲學: py

POJ 3233矩陣乘積 - 快速冪

table sam namespace ons element bug ssi set sin 題目介紹: Matrix Power Series Time Limit: 3000MS Memory Limit: 131072K Total Submissi

安規電氣間隙爬電距離如何確定

允許 註意 保持 試驗 內部 gpo 方法 查表 減少 1,確定電氣間隙步驟 確定工作電壓峰值和有效值; 確定設備的供電電壓和供電設施類別 ; 根據過電壓類別來確定進入設備的瞬態過電壓大小; 確定設備的汙染等級(一般設備為汙染等級2); 確定電氣間隙跨接的絕緣類型(功能絕

MySQL數據庫學習第二篇基本操作存儲引擎

my.cnf 默認 ctu 管理系 int 建立 系統 管理 種類型 一、知識儲備 數據庫服務器:一臺計算機(對內存要求比較高) 數據庫管理系統:如mysql,是一個軟件 數據庫:oldboy_stu,相當於文件夾 表:student,scholl,class_list,相

算法實現棧隊列

deque 錯誤 line b- 判斷 linked 元素 type file 棧(stack) 棧(stack)是一種後進先出(LIFO)的集合類型, 即後來添加的數據會先被刪除 可以將其類比於下面文件的取放操作:新到的文件會被先取走,這使得每

堆棧Java堆棧的區別

class 是否 基本類 直接 單位 自動 AI 和數 靈活性 1、概述 在Java中,內存分為兩種,一種是棧內存,另一種就是堆內存。 2、堆內存 1.什麽是堆內存? 堆內存是是Java內存中的一種,它的作用是用於存儲Java中的對象和數組,當我們n

POJ 1716Integer Intervals(差分約束系統

入門題 put AD edge ota 全部 lib 最小 最短 id=1716">【POJ 1716】Integer Intervals(差分約束系統) In

Java排序方法--List,數組,自定義繼承ComparableComparator

pri locale student ide abcdefg 接口 com main object (一)list和數組 ①List默認排序代碼: public static void main(String[] args) { List<String>

機器學習--LDA初始應用

alloc learn .get lis oca pat 文章 text 對應關系 一、前述 LDA是一種 非監督機器學習 技術,可以用來識別大規模文檔集(document collection)或語料庫(corpus)中潛藏的主題信息。它采用了詞袋(bag of word

JSON註解註解@JsonIgnoreProperties@JsonIgnore的另一個使用情況

影響 字段 註解 word repr 序列 什麽 反序列化 json序列化 之前關於這兩個註解,是用在JSON循環引用的情況上,那麽現在關於這兩個註解,還可以使用在另外一種情況上 即:   一般標記在屬性或者方法上,返回的json數據即不包含該屬性 關於這種情況在什麽時

Python求助在eclipsepycharm中,通過adb install安裝中文名字APK時老是報錯,如何解決

style com all auto RoCE mod python lin sage 1 # -*- coding: utf-8 -*- 2 import os 3 import sys 4 import subprocess 5 import time 6 from

小程序多選單選組件的封裝

代碼 下單 單選框 .text border event methods set ole 真正開發過小程序的開發者會發現,小程序裏面的單選框和多選框封封裝的實在不夠友好,一般與UI都會有比較大的出入,所以下面來探討一下單選框和多選框的封裝。 效果 比如我們要做一個這種

清華集訓小Y地鐵

減少 樹狀 時間 系統 nbsp 數組 技術 image 比較 題目: 小 $\rm Y$ 是一個愛好旅行的 $\rm OIer$。一天,她來到了一個新的城市。由於不熟悉那裏的交通系統,她選擇了坐地鐵。她發現每條地鐵線路可以看成平面上的一條曲線,不同線路的交點處一定會設有換