推薦系統(tǒng)是互聯(lián)網(wǎng)時代極具商業(yè)價值的人工智能應(yīng)用之一,30 年來持續(xù)受到學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。本書作者以一線研發(fā)人員的視角和經(jīng)驗,對推薦系統(tǒng)進行總結(jié),嘗試從原理與實踐兩個角度為讀者剖析推薦系統(tǒng)。本書首先從原理上介紹各類經(jīng)典推薦算法及前沿的深度學(xué)習(xí)推薦算法,然后分析推薦系統(tǒng)領(lǐng)域發(fā)展的前沿話題和未來方向,最后結(jié)合微軟的開源項目Microsoft Recommenders 介紹推薦系統(tǒng)的實踐經(jīng)驗。讀者可以基于本書提供的源代碼,深入學(xué)習(xí)推薦算法的設(shè)計原理和實踐方式,并可以基于本書從零開始快速搭建一個準(zhǔn)確、高效的推薦系統(tǒng)。本書不僅適合互聯(lián)網(wǎng)、大數(shù)據(jù)等相關(guān)領(lǐng)域技術(shù)人員閱讀,也適合高等院校計算機、軟件工程、人工智能等專業(yè)的本科生和研究生參考。
李東勝,博士,微軟亞洲研究院(上海)高級研究經(jīng)理,復(fù)旦大學(xué)計算機學(xué)院客座教授、兼職博導(dǎo),中國計算機學(xué)會協(xié)同計算專業(yè)委員會委員。主要研究方向為機器學(xué)習(xí)理論及應(yīng)用,尤其是推薦算法的準(zhǔn)確性、泛化能力、可擴展性、安全與隱私等。近年來,在PNAS、Nature Cardiovascular Research、ICML、NIPS、ICLR、SIGIR、WWW、KDD等相關(guān)領(lǐng)域的會議和期刊上發(fā)表論文80余篇。長期擔(dān)任ICML、NIPS、ICLR、KDD、AAAI、IJCAI、CIKM等學(xué)術(shù)會議的程序委員。曾任IBM中國研究院高級研究員,于2016—2019年連續(xù)4年獲得IBM杰出技術(shù)成就獎,開發(fā)的認(rèn)知推薦引擎在2018年獲得IBM最高獎——IBM Corporate Award。練建勛,博士,畢業(yè)于中國科學(xué)技術(shù)大學(xué),現(xiàn)任微軟亞洲研究院主管研究員。研究方向主要包括推薦系統(tǒng)、用戶建模與深度學(xué)習(xí)相關(guān)技術(shù)。在KDD、IJCAI、WWW、SIGIR等多個國際頂級會議上發(fā)表了多篇論文,相關(guān)的研究成果應(yīng)用在必應(yīng)廣告、Xbox游戲和微軟新聞等多個推薦場景上,獲得了顯著的提升效果。張 樂,博士,人工智能架構(gòu)師/總監(jiān),主導(dǎo)面向金融應(yīng)用的人工智能和機器學(xué)習(xí)平臺開發(fā)。曾任微軟高級數(shù)據(jù)科學(xué)家,負(fù)責(zé)開發(fā)應(yīng)用于零售、媒體和娛樂行業(yè)的工業(yè)級推薦系統(tǒng)在Azure云平臺上的產(chǎn)品和解決方案。在人工智能及數(shù)據(jù)科學(xué)在多個行業(yè)的應(yīng)用項目中擔(dān)任主要開發(fā)和技術(shù)負(fù)責(zé)人。開源項目Microsoft Recommenders的主要參與者之一。曾在KDD、ICDM、WWW等多個人工智能學(xué)術(shù)會議上發(fā)表論文及演講。本科畢業(yè)于哈爾濱工業(yè)大學(xué),在新加坡南洋理工大學(xué)獲得博士學(xué)位,曾在美國普渡大學(xué)交流訪問。任 侃,博士,現(xiàn)就職于微軟亞洲研究院并擔(dān)任高級研究員。主要研究領(lǐng)域包括數(shù)據(jù)挖掘與機器學(xué)習(xí),特別是時空數(shù)據(jù)挖掘、序列建模與決策優(yōu)化方法,及其在推薦系統(tǒng)、醫(yī)療健康與金融等領(lǐng)域的應(yīng)用。在數(shù)據(jù)挖掘與機器學(xué)習(xí)領(lǐng)域頂級會議和期刊上發(fā)表了20余篇論文,包括TKDE、KDD、SIGIR、AAAI、ICLR、ICDM、WSDM、CIKM等。在浙江大學(xué)獲得計算機科學(xué)與技術(shù)工學(xué)學(xué)士學(xué)位,在上海交通大學(xué)獲得計算機科學(xué)與技術(shù)博士學(xué)位,并獲得上海交通大學(xué)優(yōu)秀博士學(xué)位論文提名。盧 暾,博士,復(fù)旦大學(xué)計算機科學(xué)技術(shù)學(xué)院教授,博士生導(dǎo)師,美國卡耐基梅隆大學(xué)(CMU)訪問學(xué)者。現(xiàn)任中國計算機學(xué)會(CCF)協(xié)同計算專委秘書長、大數(shù)據(jù)專家委員會通訊委員、高級會員。長期從事CSCW與社會計算、協(xié)同計算、推薦系統(tǒng)與人機交互等方面的研究。作為項目負(fù)責(zé)人承擔(dān)多項國家自然科學(xué)基金項目、科技部重點研發(fā)計劃課題、863課題和上海市項目。研究成果發(fā)表在CSCW、CHI、UbiComp、NIPS、WWW、SIGIR、IEEE TKDE等領(lǐng)域權(quán)威會議和期刊上。多次擔(dān)任CSCW、CHI等的AC,多個國內(nèi)外學(xué)術(shù)會議的PC Co-Chair,以及多個國內(nèi)外學(xué)術(shù)期刊的AE和GE。鄔 濤,博士,微軟Azure Gaming Services部門數(shù)據(jù)科學(xué)主管。其團隊專注于人工智能技術(shù)在游戲開發(fā)、內(nèi)容創(chuàng)作和運營中的應(yīng)用。領(lǐng)導(dǎo)開發(fā)的Microsoft Recommenders開源項目是GitHub上最受歡迎的推薦系統(tǒng)項目。在微軟、諾基亞研究中心和麻省理工學(xué)院計算機科學(xué)與人工智能實驗室(CSAIL)長期負(fù)責(zé)研發(fā)和團隊管理工作。謝 幸,博士,微軟亞洲研究院首席研究員,中國科學(xué)技術(shù)大學(xué)兼職博士生導(dǎo)師,微軟-中科大聯(lián)合實驗室主任,中國計算機學(xué)會普適計算專委會副主任。其團隊在數(shù)據(jù)挖掘、社會計算和普適計算等領(lǐng)域展開研究,在國際會議和學(xué)術(shù)期刊上發(fā)表了300余篇學(xué)術(shù)論文,共被引用4萬余次。他是中國計算機學(xué)會會士、IEEE會士、ACM杰出會員。
序
前言
第1 章推薦系統(tǒng)概述1
1.1 推薦系統(tǒng)發(fā)展歷史/2
1.1.1 基于內(nèi)容的推薦算法/2
1.1.2 基于協(xié)同過濾的推薦算法/3
1.1.3 基于深度學(xué)習(xí)的推薦算法/5
1.2 推薦系統(tǒng)原理/6
1.2.1 機器學(xué)習(xí)視角下的推薦系統(tǒng)/6
1.2.2 深度學(xué)習(xí)推薦系統(tǒng)新范式/12
1.2.3 推薦系統(tǒng)常見架構(gòu)/15
1.3 推薦系統(tǒng)應(yīng)用價值/17
1.3.1 推薦系統(tǒng)的業(yè)務(wù)價值/17
1.3.2 推薦、搜索與廣告/19
1.3.3 推薦系統(tǒng)的行業(yè)應(yīng)用/20
1.4 小結(jié)/22
第2 章經(jīng)典推薦算法/25
2.1 基于內(nèi)容的推薦算法/26
2.1.1 基于結(jié)構(gòu)化內(nèi)容的推薦/27
2.1.2 基于非結(jié)構(gòu)化內(nèi)容的推薦/33
2.1.3 基于內(nèi)容推薦的優(yōu)勢與局限/41
2.2 基于協(xié)同過濾的推薦算法/42
2.2.1 基于記憶的協(xié)同過濾算法/42
2.2.2 矩陣分解方法與因子分解機方法/50
2.3 小結(jié)/58
第3 章深度學(xué)習(xí)基礎(chǔ)/59
3.1 神經(jīng)網(wǎng)絡(luò)與前饋計算/60
3.2 反向傳播算法/61
3.3 多種深度神經(jīng)網(wǎng)絡(luò)/64
3.3.1 卷積神經(jīng)網(wǎng)絡(luò)/64
3.3.2 循環(huán)神經(jīng)網(wǎng)絡(luò)/68
3.3.3 注意力機制/72
3.3.4 序列建模與預(yù)訓(xùn)練/75
3.4 小結(jié)/78
第4 章基于深度學(xué)習(xí)的推薦算法/79
4.1 深度學(xué)習(xí)與協(xié)同過濾/80
4.1.1 基于受限玻爾茲曼機的協(xié)同過濾/80
4.1.2 基于自編碼器的協(xié)同過濾/82
4.1.3 深度學(xué)習(xí)與矩陣分解/84
4.1.4 基于鄰域的深度協(xié)同過濾/87
4.2 深度學(xué)習(xí)與特征交互/88
4.2.1 AFM 模型/88
4.2.2 PNN 模型/89
4.2.3 Wide & Deep 模型/91
4.2.4 DeepFM 模型/93
4.2.5 DCN 模型/94
4.2.6 xDeepFM 模型/96
4.2.7 AutoInt 模型/99
4.2.8 特征交互的其他思路/100
4.3 圖表示學(xué)習(xí)與推薦系統(tǒng)/100
4.3.1 圖嵌入和圖神經(jīng)網(wǎng)絡(luò)基礎(chǔ)/101
4.3.2 圖神經(jīng)網(wǎng)絡(luò)與協(xié)同過濾/106
4.3.3 圖神經(jīng)網(wǎng)絡(luò)與社會化推薦/110
4.4 序列與基于會話的推薦/114
4.4.1 序列推薦的動機、定義與分類/114
4.4.2 序列推薦算法的分類/117
4.4.3 基于循環(huán)神經(jīng)網(wǎng)絡(luò)的序列推薦/122
4.4.4 基于非自回歸神經(jīng)網(wǎng)絡(luò)的序列建模/125
4.4.5 基于自注意力機制的序列推薦/127
4.4.6 基于記憶神經(jīng)網(wǎng)絡(luò)的序列推薦/129
4.4.7 用戶、物品雙序列建模/133
4.5 結(jié)合知識圖譜的推薦系統(tǒng)/134
4.5.1 加強用戶--物品交互建模/135
4.5.2 圖譜建模與物品推薦的聯(lián)合學(xué)習(xí)/141
4.5.3 知識圖譜增強物品的表示/146
4.5.4 可解釋性/151
4.6 基于強化學(xué)習(xí)的推薦算法/158
4.6.1 基于多臂老虎機的推薦算法/160
4.6.2 強化學(xué)習(xí)基礎(chǔ)/162
4.6.3 基于強化學(xué)習(xí)的推薦算法/ 164
4.6.4 深度強化學(xué)習(xí)的建模與優(yōu)化/166
4.7 小結(jié)/170
第5 章推薦系統(tǒng)前沿話題/171
5.1 推薦算法研究熱點/172
5.1.1 基于對話的推薦/172
5.1.2 因果推薦/173
5.1.3 常識推薦/174
5.2 推薦系統(tǒng)應(yīng)用挑戰(zhàn)/175
5.2.1 多源數(shù)據(jù)融合/175
5.2.2 可擴展性/176
5.2.3 功能性評估/178
5.2.4 冷啟動問題/179
5.3 負(fù)責(zé)任的推薦/180
5.3.1 用戶隱私/180
5.3.2 可解釋性/183
5.3.3 算法偏見/187
5.4 小結(jié)/189
第6 章推薦系統(tǒng)實踐/191
6.1 工業(yè)級推薦系統(tǒng)實現(xiàn)與架構(gòu)/192
6.1.1 工業(yè)級推薦系統(tǒng)的基本特征/192
6.1.2 推薦系統(tǒng)的常見架構(gòu)/193
6.1.3 推薦系統(tǒng)的工業(yè)實現(xiàn)/196
6.2 推薦系統(tǒng)典型應(yīng)用實踐/198
6.2.1 數(shù)據(jù)管理與預(yù)處理/201
6.2.2 算法選擇與模型訓(xùn)練/208
6.2.3 評估指標(biāo)與評估方式/230
6.3 基于云平臺的推薦系統(tǒng)開發(fā)與運維/236
6.3.1 基于云平臺的推薦系統(tǒng)的優(yōu)點/236
6.3.2 基于云平臺的推薦系統(tǒng)開發(fā)與運維/237
6.4 總結(jié)/241
第7 章總結(jié)與展望/243
參考文獻247