基于相反屬性知識(shí)庫(kù)的個(gè)性化推薦方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及推薦技術(shù)領(lǐng)域,特別是設(shè)及一種基于相反屬性知識(shí)庫(kù)的個(gè)性化推薦方 法和系統(tǒng)。
【背景技術(shù)】
[0002] 隨著電子商務(wù)規(guī)模的不斷擴(kuò)大,商品個(gè)數(shù)和種類快速增長(zhǎng),用戶需要花費(fèi)大量的 時(shí)間才能找到自己想買的商品。瀏覽大量無(wú)關(guān)信息和產(chǎn)品的過(guò)程無(wú)疑會(huì)使消費(fèi)者不斷流 失。為了解決運(yùn)些問(wèn)題,個(gè)性化推薦技術(shù)應(yīng)運(yùn)而生。個(gè)性化推薦技術(shù)是建立在海量數(shù)據(jù)挖掘 基礎(chǔ)上的一種高級(jí)商務(wù)智能平臺(tái),W幫助電子商務(wù)網(wǎng)站為其顧客購(gòu)物提供完全個(gè)性化的決 策支持和信息服務(wù)。
[0003] 但是現(xiàn)有個(gè)性化推薦系統(tǒng)在用戶購(gòu)買商品的歷史數(shù)據(jù)的分析基礎(chǔ)上進(jìn)行推薦時(shí), 可能出現(xiàn)錯(cuò)誤推薦。譬如,推薦系統(tǒng)發(fā)現(xiàn)A用戶和B用戶的W往興趣特點(diǎn)和購(gòu)買行為都很類 似,最近A用戶購(gòu)買了衛(wèi)生巾,結(jié)果推薦系統(tǒng)就把衛(wèi)生巾推薦給了B用戶,運(yùn)個(gè)推薦是否準(zhǔn) 確?A用戶和B用戶之所W在過(guò)去的時(shí)間內(nèi)興趣特點(diǎn)和購(gòu)買行為都很類似,是因?yàn)锳用戶和B 用戶是親姐弟,但A用戶是女性,最近來(lái)月經(jīng)初潮了,所W開(kāi)始第一次買衛(wèi)生巾,但B用戶是 男性,把衛(wèi)生巾推薦給B用戶,顯然是錯(cuò)誤的推薦。可見(jiàn),現(xiàn)有推薦技術(shù)得到的推薦結(jié)果常常 與用戶想買的商品不吻合,導(dǎo)致錯(cuò)誤的推薦,進(jìn)而降低用戶對(duì)推薦結(jié)果的采納率,降低推薦 系統(tǒng)對(duì)用戶的價(jià)值。
【發(fā)明內(nèi)容】
[0004] 基于上述情況,本發(fā)明提出了一種個(gè)性化推薦方法和系統(tǒng),提高對(duì)用戶進(jìn)行推薦 的準(zhǔn)確率,進(jìn)而提高用戶對(duì)推薦結(jié)果的采納率,提升推薦系統(tǒng)對(duì)用戶的價(jià)值。
[0005] 為了實(shí)現(xiàn)上述目的,本發(fā)明技術(shù)方案的實(shí)施例為:
[0006] -種個(gè)性化推薦方法,包括W下步驟:
[0007] 獲取當(dāng)前推薦系統(tǒng)向用戶推薦的推薦結(jié)果序列;
[0008] 在所述推薦結(jié)果序列中獲取預(yù)設(shè)方向的預(yù)設(shè)推薦個(gè)數(shù)個(gè)推薦結(jié)果作為初次推薦 結(jié)果序列,所述預(yù)設(shè)推薦個(gè)數(shù)小于或等于所述推薦結(jié)果序列中的推薦結(jié)果總數(shù);
[0009] 根據(jù)所述用戶的身份信息在相反屬性知識(shí)庫(kù)預(yù)先存儲(chǔ)的用戶相反屬性表中查詢 是否存儲(chǔ)所述用戶的相反屬性;
[0010] 當(dāng)查詢結(jié)果為是時(shí),分別將所述初次推薦結(jié)果序列中的各個(gè)推薦結(jié)果與所述用戶 的相反屬性進(jìn)行匹配;
[0011] 刪除所述初次推薦結(jié)果序列中與所述用戶的相反屬性的匹配結(jié)果符合預(yù)設(shè)條件 的推薦結(jié)果;
[0012] 根據(jù)所述初次推薦結(jié)果序列剩余的推薦結(jié)果得到最終推薦結(jié)果序列;
[0013] 輸出所述最終推薦結(jié)果序列。
[0014] -種個(gè)性化推薦系統(tǒng),包括:
[0015] 推薦結(jié)果序列獲取模塊,用于獲取當(dāng)前推薦系統(tǒng)向用戶推薦的推薦結(jié)果序列;
[0016] 初次推薦結(jié)果序列獲取模塊,用于在所述推薦結(jié)果序列中獲取預(yù)設(shè)方向的預(yù)設(shè)推 薦個(gè)數(shù)個(gè)推薦結(jié)果作為初次推薦結(jié)果序列,所述預(yù)設(shè)推薦個(gè)數(shù)小于或等于所述推薦結(jié)果序 列中的推薦結(jié)果總數(shù);
[0017] 屬性查詢模塊,用于根據(jù)所述用戶的身份信息在相反屬性知識(shí)庫(kù)預(yù)先存儲(chǔ)的用戶 相反屬性表中查詢是否存儲(chǔ)所述用戶的相反屬性;
[0018] 結(jié)果匹配模塊,用于當(dāng)查詢結(jié)果為是時(shí),分別將所述初次推薦結(jié)果序列中的各個(gè) 推薦結(jié)果與所述用戶的相反屬性進(jìn)行匹配;
[0019] 結(jié)果刪除模塊,用于刪除所述初次推薦結(jié)果序列中與所述用戶的相反屬性的匹配 結(jié)果符合預(yù)設(shè)條件的推薦結(jié)果;
[0020] 最終推薦結(jié)果序列獲取模塊,用于根據(jù)所述初次推薦結(jié)果序列剩余的推薦結(jié)果得 到最終推薦結(jié)果序列;
[0021] 序列輸出模塊,用于輸出所述最終推薦結(jié)果序列。
[0022] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為:本發(fā)明個(gè)性化推薦方法和系統(tǒng),基于相反 屬性知識(shí)庫(kù),通過(guò)將當(dāng)前推薦系統(tǒng)向用戶推薦的預(yù)設(shè)個(gè)數(shù)個(gè)推薦結(jié)果與預(yù)先存儲(chǔ)在相反屬 性知識(shí)庫(kù)中的用戶相反屬性進(jìn)行匹配,根據(jù)匹配結(jié)果獲取最終推薦結(jié)果序列,提高對(duì)用戶 進(jìn)行推薦的準(zhǔn)確率,滿足用戶的個(gè)性化推薦需要,提高用戶對(duì)推薦結(jié)果的采納率,提升推薦 系統(tǒng)對(duì)用戶的價(jià)值,適合應(yīng)用。
【附圖說(shuō)明】
[0023] 圖1為本發(fā)明一個(gè)實(shí)施例中個(gè)性化推薦方法流程示意圖;
[0024] 圖2為基于圖1所示方法一個(gè)具體示例中個(gè)性化推薦方法流程圖;
[0025] 圖3為本發(fā)明一個(gè)實(shí)施例中個(gè)性化推薦系統(tǒng)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0026] 為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,W下結(jié)合附圖及實(shí)施例,對(duì)本 發(fā)明進(jìn)行進(jìn)一步的詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的【具體實(shí)施方式】?jī)H僅用W解釋本發(fā)明, 并不限定本發(fā)明的保護(hù)范圍。
[0027] -個(gè)實(shí)施例中個(gè)性化推薦方法,如圖1所示,包括W下步驟:
[0028] 步驟SlOl:獲取當(dāng)前推薦系統(tǒng)向用戶推薦的推薦結(jié)果序列;
[0029] 其中,當(dāng)前推薦系統(tǒng)可W是現(xiàn)有的各種推薦系統(tǒng),也可W是新開(kāi)發(fā)的推薦系統(tǒng);推 薦系統(tǒng)向用戶推薦的推薦結(jié)果可W是各種類型的推薦結(jié)果,譬如,商品的推薦、衣服的推 薦、圖書的推薦、視頻的推薦、圖片的推薦、論文的推薦或好友的推薦等;
[0030] 步驟S102:在所述推薦結(jié)果序列中獲取預(yù)設(shè)方向的預(yù)設(shè)推薦個(gè)數(shù)個(gè)推薦結(jié)果作為 初次推薦結(jié)果序列,所述預(yù)設(shè)推薦個(gè)數(shù)小于或等于所述推薦結(jié)果序列中的推薦結(jié)果總數(shù);
[0031] 例如推薦系統(tǒng)向一個(gè)用戶推薦的推薦結(jié)果數(shù)記為P,將運(yùn)P個(gè)推薦結(jié)果中的前n個(gè) 推薦結(jié)果作為n個(gè)第一推薦結(jié)果,得到初次推薦結(jié)果序列,其中,P可W是自然數(shù),推薦系統(tǒng) 會(huì)向用戶推薦至少一個(gè)推薦結(jié)果,選取推薦系統(tǒng)向一個(gè)用戶推薦的所有推薦結(jié)果中的全部 或部分作為第一推薦結(jié)果;
[0032] 步驟S103:根據(jù)所述用戶的身份信息在相反屬性知識(shí)庫(kù)預(yù)先存儲(chǔ)的用戶相反屬性 表中查詢是否存儲(chǔ)所述用戶的相反屬性;
[0033] 例如從相反屬性知識(shí)庫(kù)中的用戶相反屬性表中檢索該個(gè)用戶的相反屬性,通過(guò)用 戶的身份信息對(duì)用戶相反屬性表進(jìn)行檢索,當(dāng)檢索到相應(yīng)用戶的身份信息時(shí),則取出該用 戶的身份信息對(duì)應(yīng)的用戶的相反屬性;可W事先采集用戶的相反屬性存儲(chǔ)在相反屬性知識(shí) 庫(kù)中;
[0034] 步驟S104:當(dāng)查詢結(jié)果為是時(shí),分別將所述初次推薦結(jié)果序列中的各個(gè)推薦結(jié)果 與所述用戶的相反屬性進(jìn)行匹配;
[0035] -個(gè)推薦結(jié)果與相反屬性知識(shí)庫(kù)中該個(gè)用戶的相反屬性的匹配度,本質(zhì)上是該個(gè) 推薦結(jié)果與用戶屬性的矛盾程度;從一個(gè)推薦結(jié)果與該個(gè)用戶的相反屬性的匹配度的大 小,可W看出該個(gè)推薦結(jié)果與該個(gè)用戶的屬性的矛盾程度,一個(gè)推薦結(jié)果與該個(gè)用戶的相 反屬性的匹配度越大,則表明該個(gè)推薦結(jié)果與該個(gè)用戶的屬性的矛盾程度越高;
[0036] 步驟S105:刪除所述初次推薦結(jié)果序列中與所述用戶的相反屬性的匹配結(jié)果符合 預(yù)設(shè)條件的推薦結(jié)果;
[0037] 例如當(dāng)一個(gè)推薦結(jié)果與該個(gè)用戶的相反屬性的匹配度大于匹配度預(yù)設(shè)值(匹配度 預(yù)設(shè)值最小為0)時(shí),表示該個(gè)推薦結(jié)果與該個(gè)用戶的屬性是有矛盾的,刪除該個(gè)推薦結(jié)果; 所述匹配度的計(jì)算可W轉(zhuǎn)化為字符串匹配度或相似度的計(jì)算,可W采用已有的字符串匹配 度或相似度算法,譬如Edit距離法(編輯距離,就是用來(lái)計(jì)算從原串(S)轉(zhuǎn)換到目標(biāo)串(t)所 需要的最少的插入,刪除和替換的數(shù)目。顯然當(dāng)一個(gè)語(yǔ)句編輯為另一個(gè)語(yǔ)句所需的最少的 插入,刪除和替換的數(shù)目越小,則匹配度越大)、最大公共子串LCS法(顯然兩個(gè)語(yǔ)句的最大 公共子串越長(zhǎng),則運(yùn)兩個(gè)語(yǔ)句匹配度越大);所述匹配度的計(jì)算也可W使用新的匹配度的算 法,譬如將兩個(gè)字符串的公共的字符數(shù)作為匹配度的大??;
[0038] 步驟S106:根據(jù)所述初次推薦結(jié)果序列剩余的推薦結(jié)果得到最終推薦結(jié)果序列;
[0039] -個(gè)推薦結(jié)果與該個(gè)用戶的相反屬性的匹配度大于匹配度預(yù)設(shè)值則表明該個(gè)推 薦結(jié)果與該個(gè)用戶的屬性存在矛盾,將初次推薦結(jié)果序列中與該個(gè)用戶的相反屬性的匹配 度大于匹配度預(yù)設(shè)值的推薦結(jié)果刪除后剩下的推薦結(jié)果作為最終推薦結(jié)果序列;
[0040] 步驟S107:輸出所述最終推薦結(jié)果序列。
[0041] 將最終推薦結(jié)果輸出給用戶的方式可W是現(xiàn)有推薦系統(tǒng)所采用的方式,也可W采 用其他的信息輸出方式,譬如,如網(wǎng)頁(yè)的方式、文件的方式。
[0042] 從W上描述可知,本發(fā)明個(gè)性化推薦方法,基于相反屬性知識(shí)庫(kù),極大排除了與用 戶屬性相矛盾的推薦結(jié)果,滿足了用戶的個(gè)性化推薦的需要,提高推薦的準(zhǔn)確率,提高了用 戶對(duì)推薦結(jié)果的采納率,提升了推薦系統(tǒng)對(duì)用戶的價(jià)值。
[0043] 此外,在一個(gè)具體示例中,所述用戶的身份信息包括用戶ID(身份標(biāo)識(shí)號(hào)),所述用 戶相反屬性表包括用戶字段和用戶相反屬性字段,所述用戶字段中存儲(chǔ)用戶ID,所述用戶 相反屬性字段中存儲(chǔ)用戶的相反屬性,所述用戶的相反屬性根據(jù)所述用戶的屬性得到,所 述用戶的屬性包括用戶的年齡、性別、職業(yè)、學(xué)歷、專業(yè)、特長(zhǎng)、愛(ài)好和地理位置中的任意一 項(xiàng)或任意組合。
[0044] 相反屬性知識(shí)庫(kù)中的用戶相反屬性表包括用戶字段、用戶相反屬性字段,用戶字 段中存儲(chǔ)用戶ID,用戶相反屬性字段存儲(chǔ)用戶的相反屬性。從相反