本發(fā)明涉及個(gè)性化推薦技術(shù)領(lǐng)域,尤其涉及一種采用深度特征匹配的推薦方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)的逐漸普及和網(wǎng)絡(luò)信息資源的日益豐富,人們逐漸從信息匱乏時(shí)代走進(jìn)信息過(guò)載時(shí)代,信息量的不斷增大使得無(wú)論是信息生產(chǎn)者還是信息消費(fèi)者都遇到了很大的困難和挑戰(zhàn):從海量的信息里找到自己需求的信息已經(jīng)變得越來(lái)越困難。與此同時(shí),想讓產(chǎn)品在眾多信息中脫穎而出,得到消費(fèi)者的關(guān)注也越來(lái)越困難。以前常用的方法是讓用戶(hù)自己輸入關(guān)鍵詞搜索,搜索引擎會(huì)根據(jù)用戶(hù)所提交的關(guān)鍵詞在數(shù)據(jù)庫(kù)里遍歷,以找到合適的信息進(jìn)行推薦。這種方法的缺點(diǎn)是:需要用戶(hù)明確自己的需求,而且需要用戶(hù)主動(dòng)檢索。
為了高效率、快速、主動(dòng)給用戶(hù)提供推薦信息,從海量數(shù)據(jù)中挖掘到用戶(hù)所需信息并向用戶(hù)推薦,節(jié)省用戶(hù)獲取有用信息的時(shí)間,個(gè)性化推薦服務(wù)應(yīng)運(yùn)而生,個(gè)性化推薦服務(wù)首先會(huì)根據(jù)用戶(hù)行為數(shù)據(jù)進(jìn)行相應(yīng)的用戶(hù)行為偏好分析,常用的方法是通過(guò)用戶(hù)行為分析建立一個(gè)用戶(hù)偏好模型,將用戶(hù)的行為轉(zhuǎn)換為用戶(hù)的偏好。目前對(duì)用戶(hù)行為偏好建模多是在信息搜索引擎、網(wǎng)購(gòu)平臺(tái)等對(duì)用戶(hù)信息搜索關(guān)鍵字、搜索信息,網(wǎng)購(gòu)商品信息、網(wǎng)購(gòu)評(píng)價(jià)信息等方面進(jìn)行偏好分析。這種推薦方法只利用了較少的用戶(hù)和資源信息,并沒(méi)有深度挖掘用戶(hù)和資源的潛在特征,所以推薦的個(gè)性化程度和質(zhì)量非常有限。
在大體量多維度的用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)情況下,如何綜合利用跨領(lǐng)域數(shù)據(jù),進(jìn)行深度挖掘并匹配用戶(hù)及資源的特征,精確辨識(shí)某一用戶(hù)對(duì)某一資源的感興趣程度,提高推薦系統(tǒng)的個(gè)性化程度、資源推薦質(zhì)量以及用戶(hù)的滿(mǎn)意度顯得尤為重要。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的是提供一種采用深度特征匹配的推薦方法,能夠精確確定某一用戶(hù)對(duì)某一資源的偏好程度,并能大幅度提高推薦系統(tǒng)的個(gè)性化程度、資源推薦質(zhì)量以及用戶(hù)的滿(mǎn)意度。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種采用深度特征匹配的推薦方法,包括如下步驟:
s1:通過(guò)用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型,模型包括若干個(gè)層。
s2:定義模型的層數(shù),每一層的神經(jīng)元數(shù)目、每一層之間的連接方式、運(yùn)算方法。
s3:通過(guò)將用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)進(jìn)行訓(xùn)練,得到每一層之間的連接權(quán)值。
s4:通過(guò)輸入用戶(hù)數(shù)據(jù)、資源數(shù)據(jù),采用模型計(jì)算,得到用戶(hù)對(duì)于資源的相似度量。
與現(xiàn)有技術(shù)相比,本發(fā)明公開(kāi)的推薦方法,通過(guò)建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型處理跨領(lǐng)域的用戶(hù)數(shù)據(jù)、資源數(shù)據(jù),通過(guò)該模型的多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行特征學(xué)習(xí),深度地挖掘了用戶(hù)和資源的特征;并通過(guò)該模型進(jìn)行訓(xùn)練,確定了每一層與上一層次神經(jīng)元之間的連接權(quán)值,從而得到該推薦方法的匹配模型,通過(guò)深度學(xué)習(xí)使得通過(guò)該模型計(jì)算得到某一用戶(hù)對(duì)于某一方面的資源的相似度量更加精確,提高了推薦系統(tǒng)的個(gè)性化程度、資源推薦質(zhì)量以及用戶(hù)的滿(mǎn)意度。
根據(jù)本發(fā)明另一具體實(shí)施方式,在步驟s1中,進(jìn)一步包括步驟s11:
將用戶(hù)數(shù)據(jù)轉(zhuǎn)換為n維的數(shù)值向量x1、x2…xn,n≥1,將資源數(shù)據(jù)轉(zhuǎn)換為m維的數(shù)值向量y1、y2…ym,m≥1。
將數(shù)值向量x1、x2…xn,y1、y2…ym分別轉(zhuǎn)換為二維矩陣形式的數(shù)值熱度圖,數(shù)值熱度圖為模型的輸入。
根據(jù)本發(fā)明另一具體實(shí)施方式,在步驟s1中,運(yùn)算方法包括加權(quán)運(yùn)算、非線(xiàn)性運(yùn)算。
根據(jù)本發(fā)明另一具體實(shí)施方式,用戶(hù)數(shù)據(jù)包括用戶(hù)的性別、年齡、行業(yè)、瀏覽記錄和購(gòu)買(mǎi)記錄;資源數(shù)據(jù)包括資源的內(nèi)容、主題、新穎度、好評(píng)度、訪(fǎng)問(wèn)量和購(gòu)買(mǎi)量。
根據(jù)本發(fā)明另一具體實(shí)施方式,步驟s3包括如下步驟:
s31:對(duì)用戶(hù)數(shù)據(jù)或資源數(shù)據(jù)進(jìn)行逐層地編碼,并將用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)映射到一個(gè)相同長(zhǎng)度的數(shù)值向量所表示的特征空間。
s32:采用有監(jiān)督式的學(xué)習(xí)方法進(jìn)行訓(xùn)練,通過(guò)相似度量的運(yùn)算單元,確定頂層的用戶(hù)特征空間和資源特征空間的重合度。
根據(jù)本發(fā)明另一具體實(shí)施方式,在步驟s31中,通過(guò)堆疊式的稀疏自編碼器或受限玻爾茲曼機(jī),對(duì)用戶(hù)數(shù)據(jù)或資源數(shù)據(jù)進(jìn)行逐層地編碼,并將用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)映射到一個(gè)相同長(zhǎng)度的數(shù)值向量所表示的特征空間。
根據(jù)本發(fā)明另一具體實(shí)施方式,模型包括用戶(hù)數(shù)據(jù)的網(wǎng)絡(luò)結(jié)構(gòu)、資源數(shù)據(jù)的網(wǎng)絡(luò)結(jié)構(gòu),用戶(hù)數(shù)據(jù)的網(wǎng)絡(luò)結(jié)構(gòu)、資源數(shù)據(jù)的網(wǎng)絡(luò)結(jié)構(gòu)均包括卷積層、池化層、全連接層,卷積層至少包括第一卷積層和第二卷積層,池化層至少包括第一池化層和第二池化層,全連接層至少包括第一全連接層、第二全連接層。
根據(jù)本發(fā)明另一具體實(shí)施方式,第一卷積層、第二卷積層的卷積核的數(shù)目為10-60個(gè),第一卷積層、第二卷積層的卷積核的大小為1-10,第一卷積層、第二卷積層的卷積跨度為1-3單元。
根據(jù)本發(fā)明另一具體實(shí)施方式,第一池化層、第二池化層的核的大小為1-5,第一池化層、第二池化層的跨度為1-3單元。
根據(jù)本發(fā)明另一具體實(shí)施方式,第一全連接層、第二全連接層的神經(jīng)元數(shù)目為50-100個(gè)。
本發(fā)明公開(kāi)的采用深度特征匹配的推薦方法,通過(guò)建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型處理跨領(lǐng)域的用戶(hù)數(shù)據(jù)、資源數(shù)據(jù),通過(guò)該模型的多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行特征學(xué)習(xí),深度地挖掘了用戶(hù)和資源的特征;并通過(guò)該模型進(jìn)行訓(xùn)練,確定了每一層與上一層次神經(jīng)元之間的連接權(quán)值,從而得到該推薦方法的匹配模型,使得通過(guò)該模型計(jì)算得到某一用戶(hù)對(duì)于某一方面的資源的相似度量更加精確,提高了推薦系統(tǒng)的個(gè)性化程度、資源推薦質(zhì)量以及用戶(hù)的滿(mǎn)意度。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
附圖說(shuō)明
圖1是實(shí)施例1中推薦方法的流程圖;
圖2是實(shí)施例1中人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型的示意圖;
圖3是實(shí)施例2中人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型的結(jié)構(gòu)框圖。
具體實(shí)施方式
實(shí)施例1
參見(jiàn)圖1,是本實(shí)施例提供的采用深度特征匹配的推薦方法的流程圖。該推薦方法包括步驟s1-s4:
s1:通過(guò)用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型,模型包括若干個(gè)層。
該步驟用于初步建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型。參見(jiàn)圖2,為本實(shí)施例中人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型的示意圖。用戶(hù)數(shù)據(jù)包括但不限于用戶(hù)的性別、年齡、行業(yè)、瀏覽記錄和購(gòu)買(mǎi)記錄;資源數(shù)據(jù)包括資源的內(nèi)容、主題、新穎度、好評(píng)度、訪(fǎng)問(wèn)量和購(gòu)買(mǎi)量。具體的,在該步驟中,通過(guò)步驟s11得到該模型的輸入。
s11:將用戶(hù)數(shù)據(jù)轉(zhuǎn)換為n維的數(shù)值向量x1、x2…xn,n≥1,將資源數(shù)據(jù)轉(zhuǎn)換為m維的數(shù)值向量y1、y2…ym,m≥1;
將數(shù)值向量x1、x2…xn,y1、y2…ym分別轉(zhuǎn)換為二維矩陣形式的數(shù)值熱度圖,數(shù)值熱度圖為模型的輸入。
s2:定義模型的層數(shù),每一層的神經(jīng)元數(shù)目、每一層之間的連接方式、運(yùn)算方法。
該步驟用于確定該模型的具體層數(shù),以及每一層的神經(jīng)元個(gè)數(shù),及每一層的每一神經(jīng)元與上一層神經(jīng)元之間的連接方法及運(yùn)算方法。
轉(zhuǎn)換的數(shù)值向量x1、x2…xn,n≥1;y1、y2…ym,m≥1;分別轉(zhuǎn)換為二維矩陣形式的數(shù)值熱度圖,并將數(shù)值熱度圖作為用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)的人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型的輸入,神經(jīng)網(wǎng)絡(luò)每一層的加權(quán)運(yùn)算和非線(xiàn)性運(yùn)算將把用冗長(zhǎng)數(shù)值所描述的用戶(hù)特征空間或資源特征空間映射到另一個(gè)更為緊湊和抽象的特征空間。
s3:通過(guò)將用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)進(jìn)行訓(xùn)練,得到每一層之間的連接權(quán)值。
該步驟用于確定該模型的每一層的每一神經(jīng)元與上一層各神經(jīng)元之間的連接權(quán)值。具體的,該步驟包括步驟s31-s32:
s31:對(duì)用戶(hù)數(shù)據(jù)或資源數(shù)據(jù)進(jìn)行逐層地編碼,并將用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)映射到一個(gè)相同長(zhǎng)度的數(shù)值向量所表示的特征空間。
具體的,在該步驟中,通過(guò)堆疊式的稀疏自編碼器或受限玻爾茲曼機(jī),對(duì)用戶(hù)數(shù)據(jù)或資源數(shù)據(jù)進(jìn)行逐層地編碼,并將用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)映射到一個(gè)相同長(zhǎng)度的數(shù)值向量所表示的特征空間。
s32:采用有監(jiān)督式的學(xué)習(xí)方法進(jìn)行訓(xùn)練,通過(guò)相似度量的運(yùn)算單元,確定頂層的用戶(hù)特征空間和資源特征空間的重合度。
s4:通過(guò)輸入用戶(hù)數(shù)據(jù)、資源數(shù)據(jù),采用模型計(jì)算,得到用戶(hù)對(duì)于資源的相似度量。
本實(shí)施例公開(kāi)的推薦方法,通過(guò)建立人工神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型處理跨領(lǐng)域的用戶(hù)數(shù)據(jù)、資源數(shù)據(jù),通過(guò)該模型的多層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行特征學(xué)習(xí),深度地挖掘了用戶(hù)和資源的特征;并通過(guò)該模型進(jìn)行訓(xùn)練,確定了每一層與上一層次神經(jīng)元之間的連接權(quán)值,從而得到該推薦方法的匹配模型,使得通過(guò)該模型計(jì)算得到某一用戶(hù)對(duì)于某一方面的資源的相似度量更加精確,提高了推薦系統(tǒng)的個(gè)性化程度、資源推薦質(zhì)量以及用戶(hù)的滿(mǎn)意度。
實(shí)施例2
參見(jiàn)圖3,是本實(shí)施例的推薦方法中建立的模型的結(jié)構(gòu)框圖,該模型包括卷積層、池化層、全連接層、精確度計(jì)算單元、損失值計(jì)算單元,具體的,用戶(hù)數(shù)據(jù)的人工神經(jīng)網(wǎng)絡(luò)包括第一卷積層、第二卷積層,第一池化層、第二池化層,第一全連接層、第三全連接層;資源數(shù)據(jù)的人工神經(jīng)網(wǎng)絡(luò)包括第三卷積層、第四卷積層,第一池化層、第二池化層,第二全連接層、第三全連接層;其中,第三連接層為用戶(hù)數(shù)據(jù)、資源數(shù)據(jù)的人工神經(jīng)網(wǎng)絡(luò)共有的。
本實(shí)施例中,第一卷積層的規(guī)模為20個(gè)不同的卷積核,每個(gè)卷積核的大小為5,卷積跨度為1個(gè)單元;第一池化層為最大值池化方式,核大小為2,跨度為2個(gè)單元;第二卷積層的規(guī)模為50個(gè)不同的卷積核,每個(gè)卷積核的大小為5,卷積跨度為1個(gè)單元;第二池化層為最大值池化方式,核大小為2,跨度為2個(gè)單元。
本實(shí)施例中,第三卷積層的規(guī)模為20個(gè)不同的卷積核,每個(gè)卷積核的大小為5,卷積跨度為1個(gè)單元;第三池化層為最大值池化方式,核大小為2,跨度為2個(gè)單元;第四卷積層規(guī)模為50個(gè)不同的卷積核,每個(gè)卷積核的大小為5,卷積跨度為1個(gè)單元;第四池化層為最大值池化方式,核大小為2,跨度為2個(gè)單元。
本實(shí)施例中,用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)分別經(jīng)過(guò)卷積層和池化層的數(shù)據(jù)降維后,接著再分別通過(guò)第一全連接層和第二全連接層做進(jìn)一步的數(shù)據(jù)降維和特征空間映射,維度皆為60維,即全連接層和的輸出神經(jīng)元數(shù)都是60個(gè)。用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)分別通過(guò)各自網(wǎng)絡(luò)獲得的特征數(shù)值再作為第三全連接層的輸入,維度為9維。而網(wǎng)絡(luò)的參數(shù)將通過(guò)有標(biāo)簽的訓(xùn)練數(shù)據(jù)集來(lái)訓(xùn)練網(wǎng)絡(luò)所獲得,標(biāo)簽為用戶(hù)與資源各方面匹配度標(biāo)簽。本實(shí)施例中,損失值計(jì)算單元使用“softmaxwithloss”計(jì)算損失值,反向傳播(bp)的優(yōu)化算法將以迭代的方式調(diào)節(jié)網(wǎng)絡(luò)參數(shù)以降低損失函數(shù)的值,從而使得第三全連接層的輸出擬合匹配度的標(biāo)簽,以達(dá)到將用戶(hù)數(shù)據(jù)和資源數(shù)據(jù)映射到一個(gè)共同特征空間的目的。
應(yīng)該理解,此處的配置和方法在本質(zhì)上是示例性的,并且這些具體實(shí)施例或示例不應(yīng)被認(rèn)為是局限性的,因?yàn)槎鄠€(gè)變體是可能的。此處的具體例程或方法可表示任何數(shù)量的處理策略中的一個(gè)或多個(gè)。例如,提取用戶(hù)數(shù)據(jù)特征的網(wǎng)絡(luò)和提取資源特征的網(wǎng)絡(luò)都可以有不同的層級(jí)數(shù)和不同的層類(lèi)型組合。輸入單元的個(gè)數(shù),各隱藏層單元的個(gè)數(shù)與連接方式,以及輸出單元的個(gè)數(shù)也可以根據(jù)不同的應(yīng)用場(chǎng)景調(diào)整變化。
雖然本發(fā)明以較佳實(shí)施例揭露如上,但并非用以限定本發(fā)明實(shí)施的范圍。任何本領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的發(fā)明范圍內(nèi),當(dāng)可作些許的改進(jìn),即凡是依照本發(fā)明所做的同等改進(jìn),應(yīng)為本發(fā)明的范圍所涵蓋。