本書除了介紹推薦系統(tǒng)的一般框架、典型應(yīng)用和評(píng)測(cè)方法外,還圖文并茂地介紹了各種典型推薦系統(tǒng)與算法的思想、原理、設(shè)計(jì)、實(shí)現(xiàn)和應(yīng)用場(chǎng)景。除了介紹基于協(xié)同過濾的推薦、基于內(nèi)容的推薦、基于知識(shí)的推薦等經(jīng)典推薦系統(tǒng)與算法外,還介紹了基于排序?qū)W習(xí)的推薦、基于異質(zhì)信息網(wǎng)絡(luò)的推薦、基于圖神經(jīng)網(wǎng)絡(luò)的推薦等新型推薦系統(tǒng)與算法。此外,為便于讀者快速入門并開展相關(guān)工程實(shí)踐,本書還提供了配套的講解視頻和實(shí)驗(yàn)內(nèi)容。
本書可作為計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程、數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)、人工智能等專業(yè)高年級(jí)本科生和研究生的推薦系統(tǒng)、數(shù)據(jù)挖掘、人工智能等相關(guān)課程的教材或參考書,也可作為從事推薦系統(tǒng)、搜索引擎、數(shù)據(jù)挖掘等研發(fā)工作相關(guān)人員的參考書。
本書配有電子課件、源代碼等教學(xué)資源,歡迎選用本書作教材的老師登錄www.cmpedu.com注冊(cè)后獲取。
本書遵循教指委相關(guān)指導(dǎo)文件和高等院校學(xué)生學(xué)習(xí)規(guī)律編寫而成。踐行四新理念,融入思政元素,注重理論與實(shí)踐相結(jié)合。
由于具有廣泛的應(yīng)用價(jià)值同時(shí)又面臨諸多挑戰(zhàn),推薦系統(tǒng)一直備受各界關(guān)注。自本書第1版出版以來,收到了很多讀者和授課老師的積極反饋和寶貴建議。在此基礎(chǔ)上,結(jié)合我們多年的教學(xué)與科研積累,從主體內(nèi)容、內(nèi)容組織與表現(xiàn)形式、配套資源等多方面對(duì)本書進(jìn)行了修訂和升級(jí)。
在主體內(nèi)容方面,通過對(duì)各種推薦系統(tǒng)的思想、原理和實(shí)現(xiàn)進(jìn)行系統(tǒng)性抽象與總結(jié),提煉出了推薦系統(tǒng)的統(tǒng)一框架,包括用戶建模(畫像)、項(xiàng)目建模(畫像)、推薦算法等主要模塊。在第1版重點(diǎn)介紹各種推薦算法的基礎(chǔ)上,進(jìn)一步給出了各種典型推薦系統(tǒng)中用戶畫像和項(xiàng)目畫像的思路與方法,并相應(yīng)地給出各種實(shí)用推薦系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。此外,還增加了一些近年提出并被學(xué)界認(rèn)可或業(yè)界應(yīng)用驗(yàn)證的推薦算法與框架,例如融合深度神經(jīng)網(wǎng)絡(luò)與因子分解機(jī)的推薦算法、基于注意力機(jī)制的推薦算法、基于圖神經(jīng)網(wǎng)絡(luò)的推薦框架等。
在內(nèi)容組織與表現(xiàn)形式方面,采用問題引導(dǎo)與示例展示相結(jié)合的方式,增加大量可視化圖表,通過原理示意圖、系統(tǒng)框圖、業(yè)務(wù)流程圖等可視化方式直觀展示各種推薦算法與系統(tǒng)的思想、設(shè)計(jì)、實(shí)現(xiàn)和應(yīng)用;引導(dǎo)讀者層層遞進(jìn)地深入思考問題,不斷優(yōu)化解決方案,以培養(yǎng)其精益求精的工匠精神。
在配套資源方面,錄制了配套的講解視頻,并在中國大學(xué)MOOC、學(xué)堂在線等平臺(tái)上開設(shè)了免費(fèi)在線課程,便于讀者線上線下聯(lián)合學(xué)習(xí),進(jìn)一步提升學(xué)習(xí)效率。此外,為配合國務(wù)院、等部門發(fā)布的關(guān)于新工科建設(shè)的多項(xiàng)規(guī)劃,開發(fā)并開源了書中各種算法、系統(tǒng)和實(shí)驗(yàn)配套的源代碼,便于讀者開展相關(guān)的課程實(shí)驗(yàn)和工程實(shí)踐活動(dòng),以幫助讀者快速入門并不斷提高實(shí)踐動(dòng)手能力。
本書在編寫和相關(guān)配套資源的建設(shè)過程中,得到了多方支持并獲得了一些榮譽(yù),包括獲得產(chǎn)學(xué)合作協(xié)同育人項(xiàng)目資助,榮獲北京大學(xué)教學(xué)成果獎(jiǎng),入選首批工程類專業(yè)在線示范課程,入選中國機(jī)械工業(yè)教育協(xié)會(huì)十四五普通高等教育規(guī)劃教材等。
在本書的編寫過程中,操懿、杜鷹鵬、王新陽等幾位北京大學(xué)研究生幫助完成了部分資料的整理工作,在此對(duì)他們表示感謝。此外,還要感謝使用本書作為教材或參考書的各位老師以及他們所提出的寶貴意見與建議。
由于學(xué)識(shí)水平有限,書中難免有一些不足之處,敬請(qǐng)廣大讀者批評(píng)指正。
目錄
第2版前言
第1版前言
第1章概述1
1.1推薦系統(tǒng)簡(jiǎn)介1
1.1.1信息超載1
1.1.2長尾效應(yīng)2
1.1.3推薦系統(tǒng)的價(jià)值3
1.2推薦系統(tǒng)的發(fā)展歷史4
1.3典型應(yīng)用場(chǎng)景5
1.3.1電商5
1.3.2新聞6
1.3.3音樂7
1.4推薦系統(tǒng)框架8
1.4.1用戶畫像9
1.4.2項(xiàng)目畫像10
1.5推薦算法分類11
1.5.1基于算法思想的分類11
1.5.2基于應(yīng)用問題的分類14
習(xí)題15
第2章基于鄰域的協(xié)同過濾16
2.1協(xié)同過濾簡(jiǎn)介16
2.1.1基本思想16
2.1.2算法分類17
2.1.3一般流程17
2.2基于用戶的協(xié)同過濾18
2.2.1TopN推薦20
2.2.2評(píng)分預(yù)測(cè)23
2.3基于項(xiàng)目的協(xié)同過濾25
2.3.1TopN推薦26
2.3.2評(píng)分預(yù)測(cè)29
2.4基于距離的相似度度量30
2.5鄰域的選取32
2.6Slope One算法33
2.7基于二部圖的協(xié)同過濾34
2.7.1激活擴(kuò)散模型35
2.7.2物質(zhì)擴(kuò)散模型37
2.7.3熱傳導(dǎo)模型39
2.7.4基于圖擴(kuò)散的推薦系統(tǒng)42
習(xí)題43
第3章基于模型的協(xié)同過濾44
3.1基于關(guān)聯(lián)規(guī)則的協(xié)同過濾44
3.1.1基本概念45
3.1.2關(guān)聯(lián)規(guī)則度量45
3.1.3Apriori關(guān)聯(lián)規(guī)則挖掘算法47
3.1.4關(guān)聯(lián)規(guī)則的相關(guān)分析48
3.1.5基于關(guān)聯(lián)規(guī)則的推薦系統(tǒng)49
3.2基于矩陣分解的評(píng)分預(yù)測(cè)50
3.2.1奇異值分解50
3.2.2隱語義模型52
3.2.3概率矩陣分解57
3.2.4SVD 模型61
3.3基于矩陣分解的TopN推薦62
3.3.1基于正樣本過采樣的矩陣分解62
3.3.2基于負(fù)樣本欠采樣的矩陣分解63
習(xí)題64
第4章基于內(nèi)容和知識(shí)的推薦65
4.1基于內(nèi)容的推薦系統(tǒng)框架65
4.2基于詞向量空間模型的文本表示67
4.2.1詞袋模型67
4.2.2TFIDF模型68
4.2.3模型改進(jìn)71
4.2.4向量相似度度量71
4.3基于語義的內(nèi)容相似度72
4.3.1基于本體的文本相似度72
4.3.2基于網(wǎng)絡(luò)知識(shí)的文本相似度73
4.3.3基于語料庫的文本相似度75
4.4基于知識(shí)的推薦77
4.4.1基于約束的推薦78
4.4.2基于效用的推薦81
4.4.3基于實(shí)例的推薦82
4.4.4基于知識(shí)庫的推薦84
習(xí)題86
第5章混合推薦系統(tǒng)87
5.1混合推薦實(shí)例Netflix百萬美金公開賽87
5.2混合/組合推薦的動(dòng)機(jī)89
5.2.1實(shí)踐經(jīng)驗(yàn)89
5.2.2理論依據(jù)90
5.3混合/組合方法分類92
5.3.1有監(jiān)督組合和無監(jiān)督組合92
5.3.2基推薦器間依賴關(guān)系93
5.4并行式混合推薦94
5.4.1加權(quán)式混合94
5.4.2切換式混合95
5.4.3排序混合96
5.5串行式混合推薦97
5.5.1級(jí)聯(lián)過濾97
5.5.2級(jí)聯(lián)學(xué)習(xí)98
5.6整體式混合推薦99
5.6.1特征組合99
5.6.2特征擴(kuò)充100
5.6.3基于圖模型的混合100
習(xí)題102
第6章推薦系統(tǒng)評(píng)測(cè)103
6.1評(píng)測(cè)視角103
6.2實(shí)驗(yàn)方法104
6.2.1在線實(shí)驗(yàn)104
6.2.2用戶調(diào)查105
6.2.3離線實(shí)驗(yàn)106
6.3評(píng)分預(yù)測(cè)評(píng)價(jià)指標(biāo)107
6.3.1MAE和MSE107
6.3.2RMSE、NMAE和NRMSE108
6.4TopN推薦評(píng)價(jià)指標(biāo)109
6.4.1分類準(zhǔn)確度指標(biāo)109
6.4.2ROC曲線和AUC值111
6.4.3基于排序的評(píng)價(jià)指標(biāo)113
6.4.4其他常用評(píng)價(jià)指標(biāo)115
6.5公開實(shí)驗(yàn)數(shù)據(jù)集116
習(xí)題118
第7章基于排序?qū)W習(xí)的推薦119
7.1排序?qū)W習(xí)模型分類119
7.2對(duì)級(jí)排序?qū)W習(xí)模型121
7.2.1基本框架121
7.2.2貝葉斯個(gè)性化排序123
7.2.3協(xié)同對(duì)級(jí)排序?qū)W習(xí)125
7.3列表級(jí)排序?qū)W習(xí)模型129
7.3.1PPush CR算法129
7.3.2CofiRank算法131
習(xí)題133
第8章基于情境感知的推薦134
8.1情境信息的定義134
8.2情境信息的獲取136
8.3基于情境感知的推薦系統(tǒng)框架136
8.3.1數(shù)據(jù)立方體137
8.3.2基于樹的層次信息表達(dá)138
8.4融合情境信息的推薦模型139
8.4.1情境預(yù)過濾140
8.4.2情境后過濾141
8.5情境建模141
8.5.1基于鄰域的方法142
8.5.2基于模型的方法143
習(xí)題146
第9章基于時(shí)空信息的推薦147
9.1基于時(shí)間信息的推薦147
9.1.1最近最熱門推薦算法148
9.1.2基于時(shí)間的項(xiàng)目協(xié)同過濾148
9.1.3基于時(shí)間的用戶協(xié)同過濾149
9.1.4基于會(huì)話的推薦150
9.2基于序列感知的推薦151
9.2.1基于馬爾可夫模型的序列預(yù)測(cè)152
9.2.2基于循環(huán)神經(jīng)網(wǎng)絡(luò)的序列預(yù)測(cè)155
9.2.3基于注意力機(jī)制的序列預(yù)測(cè)157
9.3基于空間信息的推薦160
9.3.1位置信息的獲取與推理161
9.3.2基于位置信息的推薦161
9.3.3融合其他信息的推薦163
習(xí)題163
第10章基于社交關(guān)系的推薦164
10.1社交關(guān)系數(shù)據(jù)164
10.2基于鄰域的社交化推薦166
10.2.1基于用戶的協(xié)同過濾166
10.2.2基于圖擴(kuò)散的推薦167
10.3基于模型的社交化推薦169
10.3.1基于潛在社交因子學(xué)習(xí)的推薦169
10.3.2基于顯式社交關(guān)系的推薦171
10.4基于社會(huì)曝光的協(xié)同過濾174
習(xí)題176
第11章基于異質(zhì)信息網(wǎng)絡(luò)的推薦177
11.1基本概念177
11.2基于鄰域的HIN推薦算法178
11.2.1基于隨機(jī)游走的相關(guān)度度量178
11.2.2基于元路徑的相關(guān)度度量179
11.2.3基于元路徑和隨機(jī)游走混合的相關(guān)度度量183
11.3基于模型的HIN推薦算法183
11.3.1兩階段融合模型183
11.3.2端到端的學(xué)習(xí)模型188
習(xí)題191
第12章基于圖神經(jīng)網(wǎng)絡(luò)的推薦192
12.1圖神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介192
12.1.1任務(wù)分類與定義193
12.1.2一般流程與框架194
12.1.3采樣模塊195
12.1.4池化模塊196
12.1.5傳播模塊198
12.2圖神經(jīng)網(wǎng)絡(luò)典型算法202
12.2.1GCN算法202
12.2.2GraphSAGE算法204
12.2.3GAT算法205
12.3基于圖神經(jīng)網(wǎng)絡(luò)的推薦算法207