本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種文本資訊的推薦方法及系統(tǒng)。
背景技術(shù):
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,網(wǎng)絡(luò)資訊的數(shù)量不斷增長(zhǎng)。這給網(wǎng)絡(luò)用戶(hù)獲取資訊帶來(lái)了便利,同時(shí)也造成了信息過(guò)載的問(wèn)題。如何在海量信息中快速有效地查找并定位到需要的信息成為當(dāng)前互聯(lián)網(wǎng)發(fā)展中的突出問(wèn)題,也是網(wǎng)絡(luò)信息檢索研究的熱點(diǎn)。
為解決上述問(wèn)題,很多新聞網(wǎng)站通過(guò)諸如“相關(guān)新聞”、“相關(guān)閱讀”、“更多新聞”、“相關(guān)推薦”、以及“延伸閱讀”之類(lèi)的資訊推薦方式向用戶(hù)推薦與用戶(hù)終端上當(dāng)前顯示的新聞相關(guān)的其他資訊,作為擴(kuò)展閱讀。目前對(duì)于資訊的推薦大多是基于文本TAG的推薦方式,通過(guò)提取資訊文本的關(guān)鍵詞并按照關(guān)鍵詞作為索引來(lái)聚合文章,進(jìn)行資訊推薦時(shí)根據(jù)關(guān)鍵詞索引對(duì)應(yīng)的文章,這種推薦方式存在如下問(wèn)題:
1.無(wú)法解決相關(guān)資訊的語(yǔ)義歧義與語(yǔ)義相關(guān)問(wèn)題。例如,“富士蘋(píng)果真好,趕快買(mǎi)”和“蘋(píng)果iphone6真好,趕快買(mǎi)”,兩條資訊雖然在詞意上存在相關(guān)性,但其語(yǔ)義卻并不相關(guān),再例如“如果時(shí)間回到2006年,馬云和楊致遠(yuǎn)的手還會(huì)握在一起嗎”和“阿里巴巴集團(tuán)和雅虎就股權(quán)回購(gòu)一事簽署了最終協(xié)議”,兩條資訊雖然在詞意上并不相關(guān),但其語(yǔ)義卻存在相關(guān)性。
2.未能考慮資訊熱度和實(shí)時(shí)性,用戶(hù)體驗(yàn)差。例如,“84歲默多克與59歲前超模訂婚”與“普莉希拉效應(yīng)VS鄧文迪法則,一定要有真正的邂逅”以及“資產(chǎn)保全Ι鼎元傳承FO揭秘:鄧文迪也扳不倒的家族信托”,而后兩條資訊在當(dāng)前情況下明顯與“默多克”不相關(guān)。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供一種文本資訊的推薦方法及系統(tǒng),該方法和系統(tǒng)可以解決資訊推薦時(shí)相關(guān)資訊的語(yǔ)義歧義與語(yǔ)義相關(guān)的問(wèn)題,并考慮了資訊熱度和實(shí)時(shí)性,提升了用戶(hù)點(diǎn)擊率。
本發(fā)明實(shí)施例提供的一種文本資訊的推薦方法,包括:建立資訊推薦池;獲取需要推薦資訊文章的文本內(nèi)容;將需要推薦資訊的文章切分為多個(gè)詞;根據(jù)LDA模型庫(kù)中詞的多維topic分布預(yù)測(cè)需要推薦資訊文章的多維topic分布;計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性;根據(jù)資訊相關(guān)性的計(jì)算結(jié)果對(duì)資訊推薦池中的相關(guān)資訊進(jìn)行排序;根據(jù)排序結(jié)果輸出推薦資訊。
本發(fā)明實(shí)施例提供的一種文本資訊的推薦系統(tǒng),包括:資訊推薦池,其內(nèi)存儲(chǔ)有多篇資訊文本;資訊文本獲取模塊,用于獲取需要推薦資訊文章的文本內(nèi)容;分詞工具,用于將需要推薦資訊的文章切分為多個(gè)詞;LDA模型庫(kù),其內(nèi)存儲(chǔ)有多個(gè)詞的多維topic分布;LDA預(yù)測(cè)模塊,用于根據(jù)文章中詞的多維topic分布預(yù)測(cè)文章的多維topic分布;資訊相關(guān)性計(jì)算模塊,用于根據(jù)文章的多維topic分布計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性;資訊排序模塊,用于根據(jù)資訊相關(guān)性的計(jì)算結(jié)果對(duì)資訊推薦池中的相關(guān)資訊進(jìn)行排序;結(jié)果輸出模塊,用于根據(jù)排序結(jié)果輸出推薦資訊。
本發(fā)明實(shí)施例提供的文本資訊的推薦方法及系統(tǒng),在計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)不僅針對(duì)文章中的所有關(guān)鍵詞,通篇考慮了文章的上下文語(yǔ)境來(lái)計(jì)算,解決了文章的語(yǔ)義歧義和語(yǔ)義資訊相關(guān)性問(wèn)題,還考慮了資訊熱度和實(shí)時(shí)性對(duì)資訊相關(guān)性的影響,提升了用戶(hù)體驗(yàn),大幅提升了資訊PV轉(zhuǎn)化率,使資訊PV轉(zhuǎn)化率提升了將近200%。
為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合所附圖式,作詳細(xì)說(shuō)明如下。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的文本資訊的推薦方法及系統(tǒng)的應(yīng)用環(huán)境圖。
圖2為圖1中的終端設(shè)備的一種結(jié)構(gòu)框圖。
圖3為圖1中的服務(wù)器的一種結(jié)構(gòu)框圖。
圖4為本發(fā)明第一實(shí)施例提供的文本資訊的推薦方法的流程示意圖。
圖5為圖4中步驟S10的主要步驟的流程示意圖。
圖6為圖4中步驟S14的主要步驟的流程示意圖。
圖7為本發(fā)明第二實(shí)施例提供的文本資訊的推薦方法的流程示意圖。
具體實(shí)施方式
為更進(jìn)一步闡述本發(fā)明為實(shí)現(xiàn)預(yù)定發(fā)明目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實(shí)施例,對(duì)依據(jù)本發(fā)明的具體實(shí)施方式、結(jié)構(gòu)、特征及其功效,詳細(xì)說(shuō)明如后。
請(qǐng)參考圖1,圖1為本發(fā)明實(shí)施例提供的文本資訊的推薦方法及系統(tǒng)的應(yīng)用環(huán)境圖。如圖1所示,安裝有瀏覽器客戶(hù)端的終端設(shè)備100與服務(wù)器200通過(guò)網(wǎng)絡(luò)連接,服務(wù)器200連接數(shù)據(jù)庫(kù)300,該數(shù)據(jù)庫(kù)300用于存儲(chǔ)各種數(shù)據(jù),如本發(fā)明中的資訊推薦池、LDA模型等,該數(shù)據(jù)庫(kù)300可以獨(dú)立于該服務(wù)器200,也可以設(shè)置在該服務(wù)器200之內(nèi)。終端設(shè)備100可以是各種電子裝置,如個(gè)人電腦、筆記本電腦、平板電腦、手機(jī)等。網(wǎng)絡(luò)可為但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動(dòng)通信網(wǎng)及其組合。
請(qǐng)參考圖2,圖2示出了終端設(shè)備100的一個(gè)實(shí)施例的結(jié)構(gòu)框圖。如圖2所示,終端設(shè)備100包括存儲(chǔ)器102、存儲(chǔ)控制器104,一個(gè)或多個(gè)(圖中僅示出一個(gè))處理器106、外設(shè)接口108、射頻模塊110、定位模塊112、攝像模塊114、音頻模塊116、顯示模塊118以及按鍵模塊120。這些組件通過(guò)一條或多條通訊總線(xiàn)/信號(hào)線(xiàn)122相互通訊。
可以理解,圖2所示的結(jié)構(gòu)僅為示意,終端設(shè)備100還可包括比圖2中所示更多或者更少的組件,或者具有與圖2所示不同的配置。圖2中所示的各組件可以采用硬件、軟件或其組合實(shí)現(xiàn)。
其中,存儲(chǔ)器102可用于存儲(chǔ)軟件程序以及模塊,如本發(fā)明實(shí)施例中的文本資訊的推薦方法及系統(tǒng)對(duì)應(yīng)的程序指令/模塊,處理器106通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器102內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)本發(fā)明實(shí)施例中的文本資訊的推薦方法。
存儲(chǔ)器102可包括高速隨機(jī)存儲(chǔ)器,還可包括非易失性存儲(chǔ)器,如一個(gè)或者多個(gè)磁性存儲(chǔ)系統(tǒng)、閃存、或者其他非易失性固態(tài)存儲(chǔ)器。在一些實(shí)例中,存儲(chǔ)器102可進(jìn)一步包括相對(duì)于處理器106遠(yuǎn)程設(shè)置的存儲(chǔ)器,這些遠(yuǎn)程存儲(chǔ)器可以通過(guò)網(wǎng)絡(luò)連接至終端設(shè)備。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動(dòng)通信網(wǎng)及其組合。處理器106以及其他可能的組件對(duì)存儲(chǔ)器102的訪(fǎng)問(wèn)可在存儲(chǔ)控制器104的控制下進(jìn)行。
外設(shè)接口108將各種輸入/輸入裝置耦合至處理器106以及存儲(chǔ)器102。處理器106運(yùn)行存儲(chǔ)器102內(nèi)的各種軟件、指令以執(zhí)行終端設(shè)備的各種功能以及進(jìn)行數(shù)據(jù)處理。
在一些實(shí)施例中,外設(shè)接口108,處理器106以及存儲(chǔ)控制器104可以在單個(gè)芯片中實(shí)現(xiàn),在其他一些實(shí)例中,也可以分別由獨(dú)立的芯片實(shí)現(xiàn)。
射頻模塊110用于接收以及發(fā)送電磁波,實(shí)現(xiàn)電磁波與電信號(hào)的相互轉(zhuǎn)換,從而與通訊網(wǎng)絡(luò)或者其他設(shè)備進(jìn)行通訊。射頻模塊110可包括各種現(xiàn)有的用于執(zhí)行這些功能的電路元件,例如,天線(xiàn)、射頻收發(fā)器、數(shù)字信號(hào)處理器、加密/解密芯片、用戶(hù)身份模塊(SIM)卡、存儲(chǔ)器等等。射頻模塊110可與各種網(wǎng)絡(luò)如互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、無(wú)線(xiàn)網(wǎng)絡(luò)進(jìn)行通訊或者通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)與其他設(shè)備進(jìn)行通訊。上述的無(wú)線(xiàn)網(wǎng)絡(luò)可包括蜂窩式電話(huà)網(wǎng)、無(wú)線(xiàn)局域網(wǎng)或者城域網(wǎng)。上述的無(wú)線(xiàn)網(wǎng)絡(luò)可以使用各種通信標(biāo)準(zhǔn)、協(xié)議及技術(shù),包括但并不限于全球移動(dòng)通信系統(tǒng)(Global System for Mobile Communication,GSM)、增強(qiáng)型移動(dòng)通信技術(shù)(Enhanced Data GSM Environment,EDGE),寬帶碼分多址技術(shù)(wideband code division multiple access,W-CDMA),碼分多址技術(shù)(Code division access,CDMA)、時(shí)分多址技術(shù)(time division multiple access,TDMA),藍(lán)牙,無(wú)線(xiàn)保真技術(shù)(Wireless,Fidelity,WiFi)(如美國(guó)電氣和電子工程師協(xié)會(huì)標(biāo)準(zhǔn)IEEE 802.11a,IEEE802.11b,IEEE802.11g和/或IEEE 802.11n)、網(wǎng)絡(luò)電話(huà)(Voice over internet protocal,VoIP)、全球微波互聯(lián)接入(Worldwide Interoperability for Microwave Access,Wi-Max)、其他用于郵件、即時(shí)通訊及短消息的協(xié)議,以及任何其他合適的通訊協(xié)議,甚至可包括那些當(dāng)前仍未被開(kāi)發(fā)出來(lái)的協(xié)議。
定位模塊112用于獲取終端設(shè)備的當(dāng)前位置。定位模塊112的實(shí)例包括但不限于全球衛(wèi)星定位系統(tǒng)(GPS)、基于無(wú)線(xiàn)局域網(wǎng)或者移動(dòng)通信網(wǎng)的定位技術(shù)。
攝像模塊114用于拍攝照片或者視頻。拍攝的照片或者視頻可以存儲(chǔ)至存儲(chǔ)器102內(nèi),并可通過(guò)射頻模塊110發(fā)送。
音頻模塊116向用戶(hù)提供音頻接口,其可包括一個(gè)或多個(gè)麥克風(fēng)、一個(gè)或者多個(gè)揚(yáng)聲器以及音頻電路。音頻電路從外設(shè)接口108處接收聲音數(shù)據(jù),將聲音數(shù)據(jù)轉(zhuǎn)換為電信息,將電信息傳輸至揚(yáng)聲器。揚(yáng)聲器將電信息轉(zhuǎn)換為人耳能聽(tīng)到的聲波。音頻電路還從麥克風(fēng)處接收電信息,將電信號(hào)轉(zhuǎn)換為聲音數(shù)據(jù),并將聲音數(shù)據(jù)傳輸至外設(shè)接口108中以進(jìn)行進(jìn)一步的處理。音頻數(shù)據(jù)可以從存儲(chǔ)器102處或者通過(guò)射頻模塊110獲取。此外,音頻數(shù)據(jù)也可以存儲(chǔ)至存儲(chǔ)器102中或者通過(guò)射頻模塊110進(jìn)行發(fā)送。在一些實(shí)例中,音頻模塊116還可包括一個(gè)耳機(jī)播孔,用于向耳機(jī)或者其他設(shè)備提供音頻接口。
顯示屏幕118在終端設(shè)備100與用戶(hù)之間提供一個(gè)輸出界面。具體地,顯示屏幕118向用戶(hù)顯示視頻輸出,這些視頻輸出的內(nèi)容可包括文字、圖形、視頻、及其任意組合。一些輸出結(jié)果是對(duì)應(yīng)于一些用戶(hù)界面對(duì)象。進(jìn)一步地,顯示屏幕118還可在終端設(shè)備100與用戶(hù)之間提供一個(gè)輸入界面,用于接收用戶(hù)的輸入,例如用戶(hù)的點(diǎn)擊、滑動(dòng)等手勢(shì)操作,以便用戶(hù)界面對(duì)象對(duì)這些用戶(hù)的輸入做出響應(yīng)。檢測(cè)用戶(hù)輸入的技術(shù)可以是基于電阻式、電容式或者其他任意可能的觸控檢測(cè)技術(shù)。顯示屏幕118的具體實(shí)例包括但并不限于液晶顯示器或發(fā)光聚合物顯示器。
按鍵模塊120同樣提供用戶(hù)向終端設(shè)備100進(jìn)行輸入的接口,用戶(hù)可以通過(guò)按下不同的按鍵以使終端設(shè)備執(zhí)行不同的功能。
圖3示出了服務(wù)器200的一個(gè)實(shí)施例的結(jié)構(gòu)框圖。如圖3所示,服務(wù)器200包括:存儲(chǔ)器201、處理器202以及網(wǎng)絡(luò)模塊203。
可以理解,圖3所示的結(jié)構(gòu)僅為示意,服務(wù)器200還可包括比圖3中所示更多或者更少的組件,或者具有與圖3所示不同的配置。圖3中所示的各組件可以采用硬件、軟件或其組合實(shí)現(xiàn)。另外,本發(fā)明實(shí)施例中的服務(wù)器200還可以包括多個(gè)具體不同功能的服務(wù)器。
存儲(chǔ)器201可用于存儲(chǔ)軟件程序以及模塊,如本發(fā)明實(shí)施例中的文本資訊的推薦方法及系統(tǒng)對(duì)應(yīng)的程序指令/模塊,處理器202通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器201內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)本發(fā)明實(shí)施例中的文本資訊的推薦方法。存儲(chǔ)器201可包括高速隨機(jī)存儲(chǔ)器,還可包括非易失性存儲(chǔ)器,如一個(gè)或者多個(gè)磁性存儲(chǔ)裝置、閃存、或者其他非易失性固態(tài)存儲(chǔ)器。在一些實(shí)例中,存儲(chǔ)器201可進(jìn)一步包括相對(duì)于處理器202遠(yuǎn)程設(shè)置的存儲(chǔ)器,這些遠(yuǎn)程存儲(chǔ)器可以通過(guò)網(wǎng)絡(luò)連接至服務(wù)器200。進(jìn)一步地,上述軟件程序以及模塊還可包括:服務(wù)模塊221以及操作系統(tǒng)222。其中操作系統(tǒng)222,例如可為L(zhǎng)INUX、UNIX、WINDOWS,其可包括各種用于管理系統(tǒng)任務(wù)(例如內(nèi)存管理、存儲(chǔ)設(shè)備控制、電源管理等)的軟件組件和/或驅(qū)動(dòng),并可與各種硬件或軟件組件相互通訊,從而提供其他軟件組件的運(yùn)行環(huán)境。服務(wù)模塊221運(yùn)行在操作系統(tǒng)222的基礎(chǔ)上,并通過(guò)操作系統(tǒng)222的網(wǎng)絡(luò)服務(wù)監(jiān)聽(tīng)來(lái)自網(wǎng)絡(luò)的請(qǐng)求,根據(jù)請(qǐng)求完成相應(yīng)的數(shù)據(jù)處理,并返回處理結(jié)果給客戶(hù)端。也就是說(shuō),服務(wù)模塊221用于向客戶(hù)端提供網(wǎng)絡(luò)服務(wù)。
網(wǎng)絡(luò)模塊203用于接收以及發(fā)送網(wǎng)絡(luò)信號(hào)。上述網(wǎng)絡(luò)信號(hào)可包括無(wú)線(xiàn)信號(hào)或者有線(xiàn)信號(hào)。在一個(gè)實(shí)例中,上述網(wǎng)絡(luò)信號(hào)為有線(xiàn)網(wǎng)絡(luò)信號(hào)。此時(shí),網(wǎng)絡(luò)模塊203可包括處理器、隨機(jī)存儲(chǔ)器、轉(zhuǎn)換器、晶體振蕩器等元件。
以下結(jié)合具體的實(shí)施例說(shuō)明本發(fā)明提供的文本資訊的推薦方法及系統(tǒng)。
本發(fā)明提供的文本資訊的推薦方法及系統(tǒng)可用于QQ手機(jī)瀏覽器的聚合資訊的產(chǎn)品中,例如其可用在今日頭條卡片、微信熱文卡片、Feeds資訊等場(chǎng)景下。本發(fā)明提供的推薦資訊是對(duì)用戶(hù)感興趣資訊的擴(kuò)充,相關(guān)推薦的場(chǎng)景一般曝光在文章的底部,起到事件聚合、興趣聚合的作用。
第一實(shí)施例
請(qǐng)參考圖4,圖4為本發(fā)明的第一實(shí)施例提供的一種文本資訊的推薦方法的流程示意圖。如圖4所示,本實(shí)施例所述的文本資訊的推薦方法包括以下步驟:
步驟S10,建立資訊推薦池;
在本步驟中,資訊推薦池預(yù)先存儲(chǔ)于數(shù)據(jù)庫(kù)300和/或服務(wù)器200的緩存中,其內(nèi)存儲(chǔ)有多篇資訊文本。
步驟S11,獲取需要推薦資訊文章的文本內(nèi)容;
在本步驟中,需要推薦資訊的文章可以是用戶(hù)在終端設(shè)備100上通過(guò)點(diǎn)擊新聞鏈接所打開(kāi)的文章,也可以是網(wǎng)站編輯根據(jù)當(dāng)前的熱點(diǎn)新聞或微信圈中的熱點(diǎn)文章主動(dòng)推薦給用戶(hù)的文章。需要推薦資訊文章的文本內(nèi)容可以根據(jù)用戶(hù)的點(diǎn)擊請(qǐng)求由數(shù)據(jù)庫(kù)300或服務(wù)器200的本地硬盤(pán)抓取。在本發(fā)明中,“資訊”和“文章”的含義接近,都可以指新聞,但“資訊”除了指新聞內(nèi)容外還側(cè)重于強(qiáng)調(diào)新聞的熱度和實(shí)時(shí)性,“文章”則更側(cè)重于指新聞的文本內(nèi)容。
步驟S12,將需要推薦資訊的文章切分為多個(gè)詞;
在本步驟中,可利用分詞工具將文章切分為一個(gè)一個(gè)的關(guān)鍵詞,分詞時(shí)可以采用的算法包括但不限于基于字符串匹配、基于理解、以及基于統(tǒng)計(jì)分詞。
步驟S13,根據(jù)LDA模型庫(kù)中的詞的多維topic分布,預(yù)測(cè)需要推薦資訊文章的多維topic分布;
在本步驟中,LDA模型庫(kù)預(yù)先存儲(chǔ)于數(shù)據(jù)庫(kù)300和/或服務(wù)器200的緩存中,LDA模型庫(kù)內(nèi)存儲(chǔ)有多個(gè)詞的多維topic分布(即LDA模型)。經(jīng)步驟S12分詞后的文章,其每個(gè)詞都對(duì)應(yīng)一個(gè)特定的LDA模型,這些LDA模型根據(jù)Gibbs采樣的LDA訓(xùn)練算法,通過(guò)機(jī)器學(xué)習(xí)的方法得到,并可以根據(jù)資訊的更新定期更新。根據(jù)LDA模型庫(kù)中詞的多維topic分布預(yù)測(cè)文章的多維topic分布時(shí),通過(guò)將需要推薦資訊文章中出現(xiàn)的詞的多維topic分布綜合疊加即可預(yù)測(cè)出需要推薦資訊文章的多維topic分布。
在本實(shí)施例中,文章的topic維度優(yōu)選為500維,該數(shù)據(jù)的選擇綜合考慮了topic細(xì)粒度劃分和計(jì)算量,在topic細(xì)粒度劃分和計(jì)算量上做了平衡,即保證了文章具有較高的topic細(xì)粒度,又不會(huì)涉及太大的計(jì)算量,據(jù)發(fā)明人研究,超過(guò)500維并不會(huì)明顯提高計(jì)算結(jié)果的準(zhǔn)確性但卻會(huì)大幅增加計(jì)算量。
步驟S14,計(jì)算需要推薦資訊文章與資訊推薦池中文章的資訊相關(guān)性;
在本步驟中,需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性以需要推薦資訊的文章與資訊推薦池中的文章在多維topic空間中的余弦距離、資訊推薦池中文章的PV加權(quán)和過(guò)期懲罰來(lái)表示。
文章資訊相關(guān)性的計(jì)算公式為:
式中x為需要推薦資訊文章的LDA向量,x’為資訊推薦池中文章的LDA向量,k為文章中LDA向量的個(gè)數(shù),v為資訊推薦池中資訊的pv熱度,即文章點(diǎn)擊率,t為資訊過(guò)期的時(shí)間,即資訊發(fā)布的時(shí)間和當(dāng)前時(shí)間的時(shí)間差,b為資訊過(guò)期時(shí)間的偏置平滑,γ為資訊過(guò)期縮放調(diào)節(jié)系數(shù),λ為回歸系數(shù);
其中,公式第一項(xiàng)是需要推薦資訊文章與資訊推薦池中文章在多維topic空間中的余弦距離,其目的是為了使推薦出的文章與需要推薦資訊的文章在語(yǔ)義上接近,若資訊推薦池中的某篇文章與需要推薦資訊的文章在多維topic空間中的余弦距離越大,則表明該篇文章與需要推薦資訊文章的資訊相關(guān)性越高。
公式第二項(xiàng)的分子為資訊的PV加權(quán),其取log是因?yàn)橘Y訊文章的點(diǎn)擊率與資訊文章的熱度呈指數(shù)增長(zhǎng),取log后可以作為線(xiàn)性參數(shù),其目的是為了提升資訊熱度對(duì)文章資訊相關(guān)性的影響;
公式第二項(xiàng)是分母是對(duì)資訊文章的過(guò)期程度進(jìn)行懲罰和衰減,其目的是為了對(duì)舊的資訊文章進(jìn)行打壓,保證推薦給用戶(hù)的資訊都是比較新的資訊;
式中的b值一方面可以在資訊為最新資訊,即t值為零時(shí)防止公式第二項(xiàng)的分母為零,另一方面則可以調(diào)整資訊對(duì)時(shí)間的敏感度,使當(dāng)天發(fā)生的資訊對(duì)時(shí)間不要太敏感,例如,b值取5時(shí),若t值較小(表示資訊的發(fā)布時(shí)間距離當(dāng)前時(shí)間很短,即資訊很新),例如取1(表示資訊已經(jīng)過(guò)期1小時(shí))和2(表示資訊已經(jīng)過(guò)期2小時(shí)),則對(duì)文章資訊相關(guān)性的影響不大;
式中的λ值可以根據(jù)CTR(點(diǎn)擊到達(dá)率)結(jié)果通過(guò)線(xiàn)性回歸算法得出,在本實(shí)施例中,λ的取值為0.25,其目的是為了使公式第一項(xiàng)和第二項(xiàng)的值比較接近,使公式第一項(xiàng)和第二項(xiàng)對(duì)文章資訊相關(guān)性的影響接近,其主要起平衡作用;
式中的γ可以通過(guò)微調(diào)取值,通過(guò)A/B Test的方法,在A、B兩個(gè)方案中取CTR收益最大的值,在本實(shí)施例中,γ的取值為1.5。
步驟S15,根據(jù)資訊相關(guān)性的計(jì)算結(jié)果對(duì)資訊推薦池中的相關(guān)資訊進(jìn)行排序;
在本步驟中,根據(jù)步驟S15中計(jì)算出的S(x,x',v,t)數(shù)值按照從大到小的順序?qū)Y訊進(jìn)行資訊相關(guān)性排序,數(shù)值越大則表明資訊相關(guān)性越高。
步驟S16,根據(jù)排序結(jié)果輸出推薦資訊。
在本步驟中,輸出推薦資訊時(shí)呈現(xiàn)給用戶(hù)的資訊并不是推薦資訊序列中的所有資訊,而是根據(jù)設(shè)定的或者默認(rèn)的標(biāo)準(zhǔn)呈現(xiàn)出的排序最靠前的幾條(例如5條)資訊。
另外,如圖5所示,根據(jù)本發(fā)明的一個(gè)較佳實(shí)施例,建立資訊推薦池的步驟S10包括:
步驟S101,收集資訊文本,獲取資訊文本的內(nèi)容;
在本步驟中,資訊文本可以為從其它新聞網(wǎng)站爬取的各類(lèi)新聞,也可以為由騰訊網(wǎng)的服務(wù)器200或數(shù)據(jù)庫(kù)300直接獲取的各類(lèi)新聞。資訊文本的文本內(nèi)容可以由其它新聞網(wǎng)站的服務(wù)器獲取或者是由騰訊網(wǎng)的數(shù)據(jù)庫(kù)300或服務(wù)器200的本地硬盤(pán)直接抓取。
步驟S102,將收集的資訊文本切分為多個(gè)詞;
在本步驟中,可利用分詞工具將文章切分為一個(gè)一個(gè)的關(guān)鍵詞,分詞時(shí)可以采用的算法包括但不限于基于字符串匹配、基于理解、以及基于統(tǒng)計(jì)分詞。
步驟S103,根據(jù)LDA模型庫(kù)中詞的多維topic分布,預(yù)測(cè)資訊文本的多維topic分布;
在本步驟中,LDA模型庫(kù)預(yù)先存儲(chǔ)于數(shù)據(jù)庫(kù)300和/或服務(wù)器200的緩存中,LDA模型庫(kù)內(nèi)存儲(chǔ)有多個(gè)詞的多維topic分布(即LDA模型)。經(jīng)步驟S102分詞后的資訊文本,其每個(gè)詞都對(duì)應(yīng)一個(gè)特定的LDA模型,這些LDA模型根據(jù)Gibbs采樣的LDA訓(xùn)練算法,通過(guò)機(jī)器學(xué)習(xí)的方法得到,并可以根據(jù)資訊的更新定期更新。根據(jù)LDA模型庫(kù)中詞的多維topic分布預(yù)測(cè)資訊文本的多維topic分布時(shí),通過(guò)將資訊文本中出現(xiàn)的詞的多維topic分布綜合疊加即可預(yù)測(cè)出資訊文本的多維topic分布。在本實(shí)施例中,文章的topic維度優(yōu)選為500維,該數(shù)據(jù)的選擇綜合考慮了topic細(xì)粒度劃分和計(jì)算量,在topic細(xì)粒度劃分和計(jì)算量上做了平衡,即保證了文章具有較高的topic細(xì)粒度,又不會(huì)涉及太大的計(jì)算量,據(jù)發(fā)明人研究,超過(guò)500維并不會(huì)明顯提高計(jì)算結(jié)果的準(zhǔn)確性但卻會(huì)大幅增加計(jì)算量。
步驟S104,將收集的資訊文本按照一定的次序放入資訊推薦池。
在步驟S104中,資訊文本在資訊推薦池中可以按照資訊文本的類(lèi)別存放,也可以按照資訊文本中詞的重復(fù)個(gè)數(shù)存放,還可以按照資訊文本收入時(shí)間的先后順序存放。資訊文本中詞的重復(fù)個(gè)數(shù),指兩篇及以上資訊文本中相同詞的個(gè)數(shù),若不同資訊文本中相同詞的個(gè)數(shù)越多則表明這些資訊文本的類(lèi)別越接近或相似度越高。
若資訊文本按照文本類(lèi)別或詞的重復(fù)個(gè)數(shù)存放,步驟S14中計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)可以?xún)H計(jì)算與需要推薦資訊文章的類(lèi)別相近或詞的重復(fù)個(gè)數(shù)較多的文章,因此涉及的計(jì)算量較小、計(jì)算速度較快,可用于在線(xiàn)推薦。若資訊文本按照文本收入時(shí)間的先后順序存放,步驟S14中計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)需要遍歷資訊推薦池中的所有文章計(jì)算資訊相關(guān)性,因此涉及的計(jì)算量較大、計(jì)算速度較慢,需要離線(xiàn)計(jì)算。
進(jìn)一步地,在步驟S14中,由于需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性以需要推薦資訊的文章與資訊推薦池中的文章在多維topic空間中的余弦距離、資訊推薦池中文章的PV加權(quán)和過(guò)期懲罰來(lái)表示,因此,如圖6所示,本發(fā)明的文本資訊的推薦方法還包括:
步驟S141,獲取資訊推薦池中文章的PV熱度;以及
步驟S142,獲取資訊推薦池中文章的發(fā)布時(shí)間;
步驟S143,根據(jù)需要推薦資訊的文章與資訊推薦池中文章的多維topic分布和資訊推薦池中文章的PV熱度和發(fā)布時(shí)間計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性。
綜上所述,在本實(shí)施例中,由于計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)不僅針對(duì)文章中的所有關(guān)鍵詞,通篇考慮了文章的上下文語(yǔ)境來(lái)計(jì)算,解決了文章的語(yǔ)義歧義和語(yǔ)義資訊相關(guān)性問(wèn)題,還考慮了資訊熱度和實(shí)時(shí)性對(duì)資訊相關(guān)性的影響,提升了用戶(hù)體驗(yàn),大幅提升了資訊PV轉(zhuǎn)化率(指點(diǎn)擊資訊的PV次數(shù)與資訊曝光的PV次數(shù)的比值(假定每曝光5條算一次曝光)),使資訊PV轉(zhuǎn)化率提升了將近200%。
例如,一個(gè)出現(xiàn)“蘋(píng)果”詞的資訊段落,如果他的上下文中出現(xiàn)“香蕉”等詞,那疊加后文章的topic分布會(huì)更大概率的傾向于“水果蘋(píng)果”的topic分布,而不是“手機(jī)蘋(píng)果”的topic分布;再例如,根據(jù)LDA的詞聚類(lèi)的特點(diǎn),“馬云”和“阿里巴巴”在topic分布上很相近,因此,可以把出現(xiàn)馬云的資訊和出現(xiàn)阿里巴巴的資訊聚合成一類(lèi)作為相關(guān)資訊,作為相關(guān)推薦的延伸。又例如,因?yàn)橛?jì)算時(shí)考慮了資訊熱度和實(shí)時(shí)性,因此,可以在對(duì)“84歲默多克與59歲前超模訂婚”進(jìn)行資訊推薦時(shí)自動(dòng)濾除“普莉希拉效應(yīng)VS鄧文迪法則,一定要有真正的邂逅”以及“資產(chǎn)保全Ι鼎元傳承FO揭秘:鄧文迪也扳不倒的家族信托”等過(guò)期資訊。
第二實(shí)施例
第二實(shí)施例提供一種文本資訊的推薦系統(tǒng),用于實(shí)現(xiàn)上述實(shí)施例中的文本資訊的推薦方法。如圖7所示,所述文本資訊的推薦系統(tǒng)包括資訊推薦池400、資訊文本獲取模塊401、分詞工具402、LDA模型庫(kù)403、LDA預(yù)測(cè)模塊404、資訊熱度模塊405、資訊相關(guān)性計(jì)算模塊406、資訊排序模塊407以及結(jié)果輸出模塊408。
資訊推薦池400預(yù)先存儲(chǔ)于數(shù)據(jù)庫(kù)300和/或服務(wù)器200的緩存中,其內(nèi)存儲(chǔ)有多篇資訊文本。資訊推薦池400內(nèi)存放的資訊文本可以為資訊文本獲取模塊401從其它新聞網(wǎng)站爬取的各類(lèi)新聞,也可以為資訊文本獲取模塊401由騰訊網(wǎng)的服務(wù)器200或數(shù)據(jù)庫(kù)300中直接獲取的各類(lèi)新聞。資訊文本的文本內(nèi)容可以由其它新聞網(wǎng)站的服務(wù)器獲取或者是由騰訊網(wǎng)的數(shù)據(jù)庫(kù)300或服務(wù)器200的本地硬盤(pán)直接抓取。這些資訊文本被抓來(lái)之后首先被分詞工具402切分為多個(gè)詞,然后利用LDA預(yù)測(cè)模塊404根據(jù)LDA模型庫(kù)403中詞的多維topic分布預(yù)測(cè)資訊推薦池400中文章的多維topic分布,最后按照一定的次數(shù)存放在資訊推薦池400中。收集的資訊文本在資訊推薦池中可以按照資訊文本的類(lèi)別存放,也可以按照資訊文本中詞的重復(fù)個(gè)數(shù)存放,還可以按照資訊文本收入時(shí)間的先后順序存放。資訊文本中詞的重復(fù)個(gè)數(shù),指兩篇及以上資訊文本中相同詞的個(gè)數(shù),若不同資訊文本中相同詞的個(gè)數(shù)越多則表明這些資訊文本的類(lèi)別越接近或相似度越高。若資訊文本按照文本類(lèi)別或詞的重復(fù)個(gè)數(shù)存放,則計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)可以?xún)H計(jì)算與需要推薦資訊文章的類(lèi)別相近或詞的重復(fù)個(gè)數(shù)較多的文章,因此涉及的計(jì)算量較小、計(jì)算速度較快,可用于在線(xiàn)推薦。若資訊文本按照文本收入時(shí)間的先后順序存放,則計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)需要遍歷資訊推薦池中的所有文章計(jì)算資訊相關(guān)性,因此涉及的計(jì)算量較大、計(jì)算速度較慢,需要離線(xiàn)計(jì)算。
資訊文本獲取模塊401,用于獲取文章的文本內(nèi)容及資訊的發(fā)布時(shí)間。這些文章可以是需要推薦資訊的文章,也可以是資訊推薦池400中的文章。需要推薦資訊的文章可以是用戶(hù)在終端設(shè)備100上通過(guò)點(diǎn)擊新聞鏈接所打開(kāi)的文章,也可以是網(wǎng)站編輯根據(jù)當(dāng)前的熱點(diǎn)新聞或微信圈中的熱點(diǎn)文章主動(dòng)推薦給用戶(hù)的文章。需要推薦資訊文章的文本內(nèi)容及發(fā)布時(shí)間可以根據(jù)用戶(hù)的點(diǎn)擊請(qǐng)求由數(shù)據(jù)庫(kù)300或服務(wù)器200的本地硬盤(pán)抓取。
分詞工具402,用于將文章切分為多個(gè)詞,這些文章可以是需要推薦資訊的文章,也可以是資訊推薦池400中的文章。分詞時(shí)可以采用的算法包括但不限于基于字符串匹配、基于理解、以及基于統(tǒng)計(jì)分詞。
LDA模型庫(kù)403預(yù)先存儲(chǔ)于數(shù)據(jù)庫(kù)300和/或服務(wù)器200的緩存中,其內(nèi)存儲(chǔ)有多個(gè)詞的多維topic分布(即LDA模型)。經(jīng)分詞后的文章,其每個(gè)詞都對(duì)應(yīng)一個(gè)特定的LDA模型,這些LDA模型根據(jù)Gibbs采樣的LDA訓(xùn)練算法,通過(guò)機(jī)器學(xué)習(xí)的方法得到,且根據(jù)資訊的更新定期更新。
LDA預(yù)測(cè)模塊404,用于根據(jù)文章中詞的多維topic分布預(yù)測(cè)文章的多維topic分布。具體地,LDA預(yù)測(cè)模塊404通過(guò)將文章中出現(xiàn)的詞的多維topic分布綜合疊加即可預(yù)測(cè)出文章的多維topic分布。這些文章可以是需要推薦資訊的文章,也可以是資訊推薦池400中的文章。LDA的topic維度優(yōu)選為500維,該數(shù)據(jù)的選擇綜合考慮了topic細(xì)粒度劃分和計(jì)算量,在topic細(xì)粒度劃分和計(jì)算量上做了平衡,即保證了文章具有較高的topic細(xì)粒度,又不會(huì)涉及太大的計(jì)算量,據(jù)發(fā)明人的研究,超過(guò)500維并不會(huì)明顯提高計(jì)算結(jié)果的準(zhǔn)確性但卻會(huì)大幅增加計(jì)算量。
資訊熱度模塊405,用于獲取資訊的PV熱度。資訊的PV熱度即資訊的PV點(diǎn)擊量。
資訊相關(guān)性計(jì)算模塊406,用于根據(jù)文章的多維topic分布計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性。需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性以需要推薦資訊的文章與資訊推薦池中的文章在多維topic空間中的余弦距離、資訊推薦池中文章的PV加權(quán)和過(guò)期懲罰來(lái)表示。資訊相關(guān)性計(jì)算模塊根據(jù)需要推薦資訊的文章與資訊推薦池中文章的多維topic分布和資訊推薦池中文章的PV熱度以及發(fā)布時(shí)間來(lái)計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性。文章資訊相關(guān)性的計(jì)算公式為:
式中x為需要推薦資訊文章的LDA向量,x’為資訊推薦池中文章的LDA向量,k為文章中LDA向量的個(gè)數(shù),v為資訊推薦池中資訊的pv熱度,即文章點(diǎn)擊率,t為資訊過(guò)期的時(shí)間,即資訊發(fā)布的時(shí)間和當(dāng)前時(shí)間的時(shí)間差,b為資訊過(guò)期時(shí)間的偏置平滑,γ為資訊過(guò)期縮放調(diào)節(jié)系數(shù),λ為回歸系數(shù);
其中,公式第一項(xiàng)是需要推薦資訊文章與資訊推薦池中文章在多維topic空間中的余弦距離,其目的是為了使推薦出的文章與需要推薦資訊的文章在語(yǔ)義上接近,若資訊推薦池中的某篇文章與需要推薦資訊的文章在多維topic空間中的余弦距離越大,則表明該篇文章與需要推薦資訊文章的資訊相關(guān)性越高。
公式第二項(xiàng)的分子為資訊的PV加權(quán),其取log是因?yàn)橘Y訊文章的點(diǎn)擊率與資訊文章的熱度呈指數(shù)增長(zhǎng),取log后可以作為線(xiàn)性參數(shù),其目的是為了提升資訊熱度對(duì)文章資訊相關(guān)性的影響;
公式第二項(xiàng)是分母是對(duì)資訊文章的過(guò)期程度進(jìn)行懲罰和衰減,其目的是為了對(duì)舊的資訊文章進(jìn)行打壓,保證推薦給用戶(hù)的資訊都是比較新的資訊;
式中的b值一方面可以在資訊為最新資訊,即t值為零時(shí)防止公式第二項(xiàng)的分母為零,另一方面則可以調(diào)整資訊對(duì)時(shí)間的敏感度,使當(dāng)天發(fā)生的資訊對(duì)時(shí)間不要太敏感,例如,b值取5時(shí),若t值較小(表示資訊的發(fā)布時(shí)間距離當(dāng)前時(shí)間很短,即資訊很新),例如取1(表示資訊已經(jīng)過(guò)期1小時(shí))和2(表示資訊已經(jīng)過(guò)期2小時(shí)),則對(duì)文章資訊相關(guān)性的影響不大;
式中的λ值可以根據(jù)CTR(點(diǎn)擊到達(dá)率)結(jié)果通過(guò)線(xiàn)性回歸算法得出,在本實(shí)施例中,λ的取值為0.25,其目的是為了使公式第一項(xiàng)和第二項(xiàng)的值比較接近,使公式第一項(xiàng)和第二項(xiàng)對(duì)文章資訊相關(guān)性的影響接近,其主要起平衡作用;
式中的γ可以通過(guò)微調(diào)取值,通過(guò)A/B Test的方法,在A、B兩個(gè)方案中取CTR收益最大的值,在本實(shí)施例中,γ的取值為1.5。
資訊排序模塊407用于根據(jù)資訊相關(guān)性的計(jì)算結(jié)果對(duì)資訊推薦池中的相關(guān)資訊進(jìn)行排序。具體地,資訊排序模塊407根據(jù)計(jì)算出的資訊相關(guān)性數(shù)值按照從大到小的順序?qū)Y訊進(jìn)行資訊相關(guān)性排序,數(shù)值越大則表明資訊相關(guān)性越高。
結(jié)果輸出模塊408,用于根據(jù)排序結(jié)果輸出推薦資訊。結(jié)果輸出模塊408輸出推薦資訊時(shí)呈現(xiàn)給用戶(hù)的資訊并不是推薦資訊序列中的所有資訊,而是根據(jù)設(shè)定的或者默認(rèn)的標(biāo)準(zhǔn)呈現(xiàn)出的排序最靠前的幾條(例如5條)資訊。
綜上所述,在本實(shí)施例中,由于計(jì)算需要推薦資訊的文章與資訊推薦池中文章的資訊相關(guān)性時(shí)不僅針對(duì)文章中的所有關(guān)鍵詞,通篇考慮了文章的上下文語(yǔ)境來(lái)計(jì)算,解決了文章的語(yǔ)義歧義和語(yǔ)義資訊相關(guān)性問(wèn)題,還考慮了資訊熱度和實(shí)時(shí)性對(duì)資訊相關(guān)性的影響,提升了用戶(hù)體驗(yàn),大幅提升了資訊PV轉(zhuǎn)化率,使資訊PV轉(zhuǎn)化率提升了將近200%。
需要說(shuō)明的是,本說(shuō)明書(shū)中的各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可。對(duì)于系統(tǒng)類(lèi)實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。
需要說(shuō)明的是,在本文中,諸如第一和第二等之類(lèi)的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者系統(tǒng)不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者系統(tǒng)所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括要素的過(guò)程、方法、物品或者系統(tǒng)中還存在另外的相同要素。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)硬件來(lái)完成,也可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。
以上,僅是本發(fā)明的較佳實(shí)施例而已,并非對(duì)本發(fā)明作任何形式上的限制,雖然本發(fā)明已以較佳實(shí)施例揭露如上,然而并非用以限定本發(fā)明,任何熟悉本專(zhuān)業(yè)的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍內(nèi),當(dāng)可利用上述揭示的技術(shù)內(nèi)容做出些許更動(dòng)或修飾為等同變化的等效實(shí)施例,但凡是未脫離本發(fā)明技術(shù)方案內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何簡(jiǎn)單修改、等同變化與修飾,均仍屬于本發(fā)明技術(shù)方案的范圍內(nèi)。