梁婷婷, 李麗琴
(廣西民族師范學(xué)院 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院, 廣西 崇左 532200)
在大數(shù)據(jù)環(huán)境下,網(wǎng)絡(luò)學(xué)習(xí)環(huán)境存在著“信息過(guò)載”和“信息迷航”的問(wèn)題。在線學(xué)習(xí)過(guò)程中,與傳統(tǒng)的標(biāo)準(zhǔn)化服務(wù)方式不同,若能獲得有智能化的、具有針對(duì)性、個(gè)性化的學(xué)習(xí)資源推薦服務(wù),將大大提高學(xué)習(xí)者的學(xué)習(xí)效率和學(xué)習(xí)體驗(yàn)。個(gè)性化學(xué)習(xí)資源推薦技術(shù)逐漸成為教育領(lǐng)域與智能信息處理領(lǐng)域的一個(gè)重要研究課題。
近年來(lái),深度學(xué)習(xí)算法在人工智能相關(guān)熱門(mén)應(yīng)用中發(fā)揮了重要作用,在廣泛領(lǐng)域中大大提升原有算法的性能。將深度學(xué)習(xí)與推薦算法結(jié)合也成為近幾年的研究熱點(diǎn)。ACM RecSys是一個(gè)推薦系統(tǒng)的專(zhuān)門(mén)會(huì)議,特別開(kāi)設(shè)了深度學(xué)習(xí)與推薦系統(tǒng)討論組。深度學(xué)習(xí)在推薦系統(tǒng)中的應(yīng)用領(lǐng)域包括構(gòu)建特征、生成推薦候選集合、以及預(yù)測(cè)推薦分值等。
主流的推薦算法包括:基于知識(shí)推薦、基于內(nèi)容推薦、協(xié)同過(guò)濾算法和組合推薦。其各自的優(yōu)缺點(diǎn)比較見(jiàn)表1。深度學(xué)習(xí)的主要模型有神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、自動(dòng)編碼機(jī)等[1]。本文著重使用了幾個(gè)相關(guān)算法,下面簡(jiǎn)要描述其特點(diǎn)。
基于協(xié)同過(guò)濾的推薦算法又可分為兩大類(lèi):基于內(nèi)存和基于模型的協(xié)同過(guò)濾?;趦?nèi)存的協(xié)同過(guò)濾再細(xì)分為基于用戶(hù)和基于項(xiàng)目的協(xié)同過(guò)濾。前者適用于用戶(hù)數(shù)遠(yuǎn)小于項(xiàng)目數(shù)的系統(tǒng),后者則適用于項(xiàng)目數(shù)遠(yuǎn)小于用戶(hù)數(shù)的系統(tǒng)。比如在新聞推薦系統(tǒng)中,新聞的類(lèi)別(項(xiàng)目)就只分為有限幾類(lèi),如財(cái)經(jīng)、軍事、體育等,則適用于基于項(xiàng)目的協(xié)同過(guò)濾。對(duì)于整體來(lái)說(shuō),第一類(lèi)的計(jì)算量過(guò)大。第二類(lèi)會(huì)為數(shù)據(jù)事先設(shè)計(jì)好一個(gè)訓(xùn)練模型,用戶(hù)和項(xiàng)目數(shù)據(jù)都隱藏在該低維度結(jié)構(gòu)的模型中,每次計(jì)算都基于該模型進(jìn)行,從而提高了算法準(zhǔn)確度、運(yùn)算速度與系統(tǒng)伸縮性。
表1 各推薦算法的優(yōu)缺點(diǎn)
推薦算法本質(zhì)上屬于機(jī)器學(xué)習(xí)。深度學(xué)習(xí)也是機(jī)器學(xué)習(xí)的一種,深度學(xué)習(xí)起源于人工神經(jīng)網(wǎng)絡(luò),模擬人腦的機(jī)制來(lái)解釋數(shù)據(jù),其通過(guò)組合低層特征,形成更加抽象的高層表示,發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。深度學(xué)習(xí)為理解圖像、聲音等數(shù)據(jù)的意義,進(jìn)行多層次的表示和抽取的學(xué)習(xí),逐層學(xué)習(xí),每一層提取數(shù)據(jù)的一個(gè)或多個(gè)不同方向的特征,每一層學(xué)習(xí)到的知識(shí)(特征)作為下一層的輸入,逐層學(xué)習(xí)的次數(shù)就是學(xué)習(xí)的深度。
卷積神經(jīng)網(wǎng)絡(luò)CNN是一種深度前饋人工神經(jīng)網(wǎng)絡(luò),具有兩層基本結(jié)構(gòu),一為特征提取層,二是特征映射層,可隱式地從訓(xùn)練數(shù)據(jù)中進(jìn)行并行學(xué)習(xí)。循環(huán)神經(jīng)網(wǎng)絡(luò)RNN是一種節(jié)點(diǎn)定向連接成環(huán)的人工神經(jīng)網(wǎng)絡(luò)。處理單元之間既有內(nèi)部的反饋連接又有前饋連接,可以展示動(dòng)態(tài)時(shí)序行為,比前饋神經(jīng)網(wǎng)絡(luò)具有更強(qiáng)的動(dòng)態(tài)行為和計(jì)算能力。
推薦算法是個(gè)性化資源推薦服務(wù)技術(shù)中的核心,很大程度上決定了推薦服務(wù)性能的優(yōu)劣。
討論結(jié)合深度學(xué)習(xí)與推薦系統(tǒng)的問(wèn)題,始于2013年K.Georgiev等人的基于受限玻爾茲曼機(jī)的協(xié)同過(guò)濾算法(RBM-CF)[2]。2015年,S.Sedhain等人提出在實(shí)驗(yàn)中表現(xiàn)良好的基于自動(dòng)編碼機(jī)的協(xié)同過(guò)濾推薦模型(AutoRec算法)[3]。這兩者中使用了全新的推薦框架,但更多的信息較難融入其中,擴(kuò)展性弱。
針對(duì)解析多媒體資源的能力問(wèn)題,很多學(xué)者提出了一些基于內(nèi)容的推薦算法,改進(jìn)傳統(tǒng)的矩陣分解模型表達(dá)能力弱的特點(diǎn),實(shí)驗(yàn)效果良好,提高了推薦效果。如:FuZheng Zhang等采用CKE算法無(wú)監(jiān)督的自動(dòng)編碼器與卷積自動(dòng)編碼器對(duì)各種信息進(jìn)行特征提取,多維度地分析了推薦對(duì)象的結(jié)構(gòu)化信息、文本和圖片等[4]。Oord Aaron等利用深度卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)音樂(lè)的語(yǔ)音信息進(jìn)行分析(DeepMusic算法)[5];WangHao等利用自動(dòng)編碼機(jī)分析資源中的文本信息(CDL算法)[6]。
Wayn等人在產(chǎn)品推薦系統(tǒng)中,通過(guò)電商網(wǎng)站和社交網(wǎng)站中建立一座連接橋梁,將社交網(wǎng)絡(luò)上用戶(hù)特征映射為電商網(wǎng)站產(chǎn)品推薦中的特征表示,利用RNN與電商網(wǎng)上的用戶(hù)數(shù)據(jù),訓(xùn)練用戶(hù)與產(chǎn)品的特征表示[7]。Covington等人推薦視頻的研究中,利用DNN來(lái)學(xué)習(xí)和表示用戶(hù)的視頻觀看歷史記錄和關(guān)鍵字搜索記錄,用戶(hù)個(gè)人信息也輸入進(jìn)DNN中,學(xué)習(xí)用戶(hù)的潛在特征向量表示[8]。
在企業(yè)級(jí)的推薦系統(tǒng)應(yīng)用中,音樂(lè)平臺(tái)Spotify利用循環(huán)神經(jīng)網(wǎng)絡(luò)來(lái)對(duì)用戶(hù)的行為進(jìn)行預(yù)測(cè),利用深度學(xué)習(xí)分析歌曲風(fēng)格,根據(jù)音樂(lè)風(fēng)格進(jìn)行推薦[5];Netflix 和Google公司將深度神經(jīng)網(wǎng)絡(luò)RNN成功應(yīng)用到其視頻推薦系統(tǒng)[8]中;而微軟公司將深度學(xué)習(xí)應(yīng)用于應(yīng)用程序和新聞的推薦,都取得了較好的結(jié)果。
筆者以“深度學(xué)習(xí)”、“個(gè)性化推薦”為關(guān)鍵字,在中國(guó)知網(wǎng)(CNKI)中針對(duì)主題進(jìn)行檢索,共檢出34篇文章,發(fā)表時(shí)間為2015年1月至2018年9月,每年分別發(fā)表4、5、8、17篇,呈逐年上升的趨勢(shì)。其中,結(jié)合深度學(xué)習(xí)和個(gè)性化推薦算法應(yīng)用在視頻、論文、圖書(shū)館、游戲、電商、學(xué)習(xí)資源等領(lǐng)域。
隨著分布式技術(shù)的發(fā)展,提升大數(shù)據(jù)處理能力,深度學(xué)習(xí)得到了更加廣泛的應(yīng)用。相較于傳統(tǒng)的個(gè)性化推薦算法,與深度學(xué)習(xí)結(jié)合的算法,具有對(duì)多源數(shù)據(jù)的優(yōu)秀表達(dá)能力,自動(dòng)提取抽象特征、挖掘用戶(hù)的興趣偏好等優(yōu)勢(shì)。
在學(xué)習(xí)資源個(gè)性化推薦服務(wù)中,學(xué)習(xí)者和學(xué)習(xí)資源的特點(diǎn)為:學(xué)習(xí)資源一般存儲(chǔ)在在線課程學(xué)習(xí)平臺(tái)上,平臺(tái)上的學(xué)習(xí)者一般具有較為詳細(xì)的個(gè)人信息和學(xué)習(xí)目的,學(xué)習(xí)者訪問(wèn)的學(xué)習(xí)資源往往和學(xué)習(xí)者本身屬性相關(guān),如專(zhuān)業(yè)、職業(yè)目標(biāo)等。但是學(xué)習(xí)者訪問(wèn)學(xué)習(xí)資源時(shí),可能并不是自己最喜歡的,而可能是僅僅和自己本身專(zhuān)業(yè)相關(guān)。學(xué)習(xí)資源之間會(huì)有彼此的關(guān)聯(lián)性,資源的知識(shí)內(nèi)容有一定的連貫性,下一次學(xué)習(xí)的內(nèi)容可能與上一次訪問(wèn)的資源存在著依賴(lài)。也就是說(shuō),學(xué)習(xí)資源的訪問(wèn)順序也應(yīng)該是推薦算法所要考慮的范圍,即考慮學(xué)習(xí)者興趣變換的時(shí)間因素。然而目前的協(xié)同過(guò)濾方法鮮少考慮到學(xué)習(xí)者隨時(shí)間變化的興趣趨向。循環(huán)神經(jīng)網(wǎng)絡(luò)算法RNN已被證明對(duì)序列模型有效。
通過(guò)上訴的特點(diǎn)分析,本文結(jié)合神經(jīng)網(wǎng)絡(luò)算法,改進(jìn)基于模型的協(xié)同過(guò)濾推薦算法,額外考慮學(xué)習(xí)者信息、學(xué)習(xí)資源序列信息、學(xué)習(xí)者興趣變換的時(shí)間因素等,推薦框架如圖1所示。
圖1 結(jié)合深度學(xué)習(xí)的協(xié)同過(guò)濾推薦框架
Fig.1Collaborativefilteringrecommendationframeworkwithdeeplearning
該框架的數(shù)據(jù)處理流程大致如下:提取學(xué)習(xí)者的屬性特征,包括用戶(hù)ID、資源ID、學(xué)習(xí)者專(zhuān)業(yè)、學(xué)習(xí)資源大類(lèi)、資源小類(lèi)等,作為模型的輸入;第一個(gè)神經(jīng)網(wǎng)絡(luò)CNN根據(jù)目標(biāo)學(xué)習(xí)者與其它學(xué)習(xí)者的相似度,生成相似度靠前的學(xué)習(xí)資源推薦列表作為候選列表;與學(xué)習(xí)者訪問(wèn)學(xué)習(xí)資源的順序序列的特征一起,作為第二個(gè)神經(jīng)網(wǎng)絡(luò)RNN的輸入,最終輸出符合下一個(gè)短期事件主題的排名靠前的n個(gè)推薦資源給學(xué)習(xí)者。
結(jié)合深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)算法和協(xié)同過(guò)濾推薦算法的框架,針對(duì)在短期推薦系統(tǒng)的學(xué)習(xí)者最近學(xué)習(xí)行為的現(xiàn)象,提高預(yù)測(cè)精度。傳統(tǒng)的協(xié)同過(guò)濾算法中存在“冷啟動(dòng)”的問(wèn)題,在下一步,可利用卷積神經(jīng)網(wǎng)絡(luò)依據(jù)學(xué)習(xí)資源中的文本信息進(jìn)行基于內(nèi)容的個(gè)性化推薦,從而提高針對(duì)新用戶(hù)的精準(zhǔn)推薦。