两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于反向輪廓帶的商品推薦方法

文檔序號:6535178閱讀:374來源:國知局
一種基于反向輪廓帶的商品推薦方法
【專利摘要】本發(fā)明公開了一種基于反向輪廓帶的商品推薦方法。本發(fā)明對用戶偏好數(shù)據(jù)集采用R樹索引結構并利用最佳優(yōu)先搜索方法來遍歷索引;在遍歷索引時本發(fā)明首先計算得到對推薦商品可能感興趣的消費者;接著利用預處理文件中的結果對找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣;對于用預處理結果無法判斷的消費者進行進一步驗證以得到最終結果。本發(fā)明結合了空間數(shù)據(jù)庫的現(xiàn)有技術和反輪廓查詢算法,向商家返回對商品真正感興趣的消費者,并且整個查詢過程只訪問一次R樹索引結構,從而提供了最佳性能。
【專利說明】一種基于反向輪廓帶的商品推薦方法
【技術領域】
[0001]本發(fā)明涉及數(shù)據(jù)庫的索引與查詢技術,特別是一種基于反向輪廓帶的商品推薦方法。
【背景技術】
[0002]空間數(shù)據(jù)庫是作為一種應用技術而誕生和發(fā)展起來的,其目的是為了存儲、管理和檢索各種地理空間數(shù)據(jù)(包括空間數(shù)據(jù)和非空間數(shù)據(jù))。它把被管理的數(shù)據(jù)從一維推向了二維、三維甚至更高維,并且能根據(jù)數(shù)據(jù)的空間分布特征進行索引,在數(shù)據(jù)模型上提供空間分析的方法和在查詢語言中提供空間查詢。目前,空間數(shù)據(jù)庫被廣泛地應用于地理信息系統(tǒng)、計算機輔助設計、多媒體信息系統(tǒng)以及數(shù)據(jù)倉庫,為以上系統(tǒng)提供數(shù)據(jù)存儲和查詢解決方案。
[0003]為了快速、有效的訪問空間數(shù)據(jù),專家學者們提出了大量的空間索引方式。迄今為止,影響最大、應用最廣泛的是基于R樹的空間索引方法。R樹是Guttman在1984年提出的,它是B樹向k維空間發(fā)展的一種空間索引結構。它從根本上改變了 B樹的思想,以更好地適應擴展的空間對象。其構建思想是以最小邊界矩形(簡稱MBR)遞歸的對數(shù)據(jù)集空間按照“面積”規(guī)則進行劃分。
[0004]在此基礎上,專家學者們提出了各種各具特色的查詢及解決方法,如最近鄰查詢、連續(xù)最近鄰查詢、反向最近鄰查詢,輪廓查詢。其中反輪廓查詢是最近提出的一種新穎的查詢。它主要從商家的角度進行查詢,向商家返回對商品感興趣的用戶,從而向他們進行商品推薦。
[0005]目前,針對反輪廓查詢已有成熟的解決方案。但是在某些情況下,反輪廓查詢返回的結果非常小,無法提供給商家足夠的信息。這時,就要求系統(tǒng)能夠增加返回給商家的信息。但是現(xiàn)有的方法都不能有效的解決。

【發(fā)明內(nèi)容】

[0006]本發(fā)明的目的在于提供一種基于反向輪廓帶的商品推薦方法。
[0007]本發(fā)明解決其技術問題所采用的技術方案步驟如下:
[0008]步驟(I):收集消費者偏好,采用R樹建立索引,對于預處理結果存放在文本文件之中;
[0009]步驟(2):通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者;
[0010]步驟(3):利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣;
[0011]步驟(4):對于步驟(3)中無法判斷的消費者進一步驗證;
[0012]步驟(5):合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者。[0013]所述的步驟(I)中每一個消費者的偏好是通過一個數(shù)據(jù)點表示的;預處理結果為每個數(shù)據(jù)點的第O層動態(tài)輪廓(不被任何點所控制)和第k層動態(tài)輪廓(只被k點所控制),并保存其特定的個數(shù)。
[0014]所述的步驟(2)中通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者,是通過計算全局輪廓帶點來實現(xiàn)的,計算得到的全局輪廓帶點也就是對推薦商品可能感興趣的消費者;在計算全局輪廓帶點的同時,我們也需求得第k+Ι層全局輪廓點,用于后續(xù)步驟;在計算全局輪廓帶點和第k+Ι層全局輪廓點過程中,需要維護一個存放R樹索引結點的最小堆,一個全局輪廓帶對象列表,一個第k+Ι層全局輪廓對象列表;通過最佳優(yōu)先遍歷方式遍歷R樹計算全局輪廓帶點和第k+Ι層全局輪廓點時,根據(jù)R樹索引結點被當前已經(jīng)找到全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù),分兩種情況考慮:
[0015]I)該結點是中間索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為兩種情況:
[0016]a)該中間結點最多被k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么其孩子結點都要加入到最小堆中;
[0017]b)該中間結點被大于k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么對其孩子結點不做任何操作;
[0018]2)該結點是數(shù)據(jù)索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為三種情況:
[0019]a)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點的所全局控制的次數(shù)不大于k,那么將該數(shù)據(jù)索引結點加入到全局輪廓帶結果列表中;
[0020]b)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)等于k+1,那么將該數(shù)據(jù)索引結點加入到第k+Ι層全局輪廓結果列表中;
[0021]c)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)大于k+Ι,那么對該數(shù)據(jù)結點不做任何操作。
[0022]所述的步驟(3)中利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣,是通過利用預處理結果判斷步驟(2)中找到的消費者是否是反向輪廓帶點來實現(xiàn)的;對于每一個待驗證的消費者,首先要在文本文件中找到該點對應的第O層動態(tài)輪廓和第k層動態(tài)輪廓,再根據(jù)查詢點q在第O層動態(tài)輪廓和第k層動態(tài)輪廓中的位置來判斷其是否為真正的反向輪廓帶點;在判斷時,需考慮三種情況:
[0023]I)查詢點q落在命中區(qū)域中,那么該全局輪廓帶點是真正的反向輪廓帶點;
[0024]2)查詢點q落在丟棄區(qū)域中,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0025]3)查詢點q既不落在命中區(qū)域中,也不落在丟棄區(qū)域中,那么該全局輪廓帶點需要在步驟(4)中進一步判斷。
[0026]所述的步驟(4)中對于步驟(3)中無法判斷的消費者進一步驗證,是利用完整的全局輪廓帶和第k+Ι層全局輪廓判斷其是否是反向輪廓帶點實現(xiàn)的;對于每一個待驗證的消費者,要根據(jù)他所形成的查詢窗口中所包含的全局輪廓帶點和第k+Ι層全局輪廓點的個數(shù)來判斷其是否為真正的反向輪廓帶點;其中,查詢窗口的中心點是相應的全局輪廓帶點(即待驗證的消費者對應的點),查詢點q則是該窗口的一個頂點。在進行判斷時,需考慮四種情況:[0027]I)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)大于k個,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0028]2)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,并且包含第k+Ι層全局輪廓點,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0029]3)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,但不包含k+Ι層全局輪廓點,那么該全局輪廓帶點是真正的反向輪廓帶點;
[0030]4)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)小于k個,那么該全局輪廓帶點是真正的反向輪廓帶點。
[0031]所述的步驟(5)中合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者,也就是商品值得推薦的用戶。
[0032]本發(fā)明具有的有益效果是:
[0033]本發(fā)明充分利用了空間數(shù)據(jù)庫中現(xiàn)有索引技術和反輪廓查詢技術,通過只遍歷一次索引結構便能得到對商品真正感興趣的用戶,大大降低了 I/o時間和CPU時間,提供了最佳性能。
【專利附圖】

【附圖說明】
[0034]圖1是本發(fā)明的實施步驟流程圖。
[0035]圖2為基于反輪廓帶商品推薦的工作原理示意圖。
[0036]圖3為命中區(qū)域和丟棄區(qū)域的一個實例。
【具體實施方式】
[0037]現(xiàn)結合附圖和具體實施對本發(fā)明的技術方案作進一步說明:
[0038]如圖1,圖2所示,本發(fā)明具體實施過程和工作原理如下:
[0039]步驟(I):收集消費者偏好,采用R樹建立索引,對于預處理結果存放在文本文件之中;
[0040]步驟(2):通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者;
[0041]步驟(3):利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣;
[0042]步驟(4):對于步驟(3)中無法判斷的消費者進一步驗證;
[0043]步驟(5):合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者。
[0044]步驟(I)中每一個消費者的偏好是通過一個數(shù)據(jù)點表示的;預處理結果為每個數(shù)據(jù)點的第O層動態(tài)輪廓(不被任何點所控制)和第k層動態(tài)輪廓(只被k點所控制),并保存其特定的個數(shù);如圖2中的三個索引模塊所示。
[0045]步驟(2)中通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者,是通過計算全局輪廓帶點來實現(xiàn)的,計算得到的全局輪廓帶點也就是對推薦商品可能感興趣的消費者;在計算全局輪廓帶點的同時,我們也需求得第k+Ι層全局輪廓點,用于后續(xù)步驟;在計算全局輪廓帶點和第k+Ι層全局輪廓點過程中,需要維護一個存放R樹索引結點的最小堆,一個全局輪廓帶對象列表,一個第k+Ι層全局輪廓對象列表;通過最佳優(yōu)先遍歷方式遍歷R樹計算全局輪廓帶點和第k+Ι層全局輪廓點時,根據(jù)R樹索引結點被當前已經(jīng)找到全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù),具體是由圖2中的全局輪廓帶計算器和全局輪廓計算器共同求得,計算時要分兩種情況考慮:
[0046]I)該結點是中間索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為兩種情況:
[0047]a)該中間結點最多被k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么其孩子結點都要加入到最小堆中;
[0048]b)該中間結點被大于k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么對其孩子結點不做任何操作;
[0049]2)該結點是數(shù)據(jù)索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為三種情況:
[0050]a)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點的所全局控制的次數(shù)不大于k,那么將該數(shù)據(jù)索引結點加入到全局輪廓帶結果列表中;
[0051]b)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)等于k+1,那么將該數(shù)據(jù)索引結點加入到第k+Ι層全局輪廓結果列表中;
[0052]c)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)大于k+Ι,那么對該數(shù)據(jù)結點不做任何操作。
[0053]步驟(3)中利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣,是通過利用預處理結果判斷步驟(2)中找到的消費者是否是反向輪廓帶點來實現(xiàn)的;對于每一個待驗證的消費者,首先要在文本文件中找到該點對應的第O層動態(tài)輪廓和第k層動態(tài)輪廓,再根據(jù)查詢點q在第O層動態(tài)輪廓和第k層動態(tài)輪廓中的位置來判斷其是否為真正的反向輪廓帶點;該步驟是由圖2中的動態(tài)輪廓比較器來實現(xiàn)的,在判斷時,需考慮二種情況:
[0054]I)查詢點q落在命中區(qū)域中,那么該全局輪廓帶點是真正的反向輪廓帶點;
[0055]2)查詢點q落在丟棄區(qū)域中,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0056]3)查詢點q既不落在命中區(qū)域中,也不落在丟棄區(qū)域中,那么該全局輪廓帶點需要在步驟(4)中進一步判斷。
[0057]以圖3中點P的命中區(qū)域和丟棄區(qū)域為例,我們可以看到,查詢點q落在點P動態(tài)輪廓的命中區(qū)域之中,所以,點P是真正的反向輪廓帶點。
[0058]步驟(4)中對于步驟(3)中無法判斷的消費者進一步驗證,是利用完整的全局輪廓帶和第k+Ι層全局輪廓判斷其是否是反向輪廓帶點實現(xiàn)的;對于每一個待驗證的消費者,要根據(jù)他所形成的查詢窗口中所包含的全局輪廓帶點和第k+Ι層全局輪廓點的個數(shù)來判斷其是否為真正的反向輪廓帶點;其中,查詢窗口的中心點是相應的全局輪廓帶點(即待驗證的消費者對應的點),查詢點q則是該窗口的一個頂點。在進行判斷時,先由圖2中的全局輪廓帶比較器進行判斷,再由圖2中的全局輪廓比較器執(zhí)行判斷,具體需考慮四種情況:
[0059]I)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)大于k個,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0060]2)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,并且包含第k+Ι層全局輪廓點,那么該全局輪廓帶點不是真正的反向輪廓帶點;
[0061]3)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,但不包含k+Ι層全局輪廓點,那么該全局輪廓帶點是真正的反向輪廓帶點;
[0062]4)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)小于k個,那么該全局輪廓帶點是真正的反向輪廓帶點。
[0063]步驟(5)中合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者,也就是商品值得推薦的用戶。
【權利要求】
1.一種基于反向輪廓帶的商品推薦方法:其特征在于該方法的步驟如下: 步驟(1):收集消費者偏好,采用R樹建立索引,對于預處理結果存放在文本文件之中; 步驟(2):通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者; 步驟(3):利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣; 步驟(4):對于步驟(3)中無法判斷的消費者進一步驗證; 步驟(5):合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者。
2.根據(jù)權利要求1所述的一種基于反向輪廓帶的商品推薦方法,其特征在于:所述的步驟(1)中每一個消費者的偏好是通過一個數(shù)據(jù)點表示的;預處理結果為每個數(shù)據(jù)點的第O層動態(tài)輪廓和第k層動態(tài)輪廓,并保存其特定的個數(shù)。
3.根據(jù)權利要求1所述的一種基于反向輪廓帶的商品推薦方法,其特征在于:所述的步驟(2)中通過最佳優(yōu)先遍歷方式遍歷R樹,找到對推薦商品可能感興趣的消費者,是通過計算全局輪廓帶點來實現(xiàn)的,計算得到的全局輪廓帶點也就是對推薦商品可能感興趣的消費者;在計算全局輪廓帶點的同時,我們也需求得第k+Ι層全局輪廓點,用于后續(xù)步驟;在計算全局輪廓帶點和第k+Ι層全局輪廓點過程中,需要維護一個存放R樹索引結點的最小堆,一個全局輪廓帶對象列表,一個第k+Ι層全局輪廓對象列表;通過最佳優(yōu)先遍歷方式遍歷R樹計算 全局輪廓帶點和第k+Ι層全局輪廓點時,根據(jù)R樹索引結點被當前已經(jīng)找到全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù),分兩種情況考慮: 1)該結點是中間索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為兩種情況: a)該中間結點最多被k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么其孩子結點都要加入到最小堆中; b)該中間結點被大于k+Ι個全局輪廓帶點和第k+Ι層全局輪廓點所全局控制,那么對其孩子結點不做任何操作; 2)該結點是數(shù)據(jù)索引結點,這種狀況下根據(jù)其被全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)分為三種情況: a)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點的所全局控制的次數(shù)不大于k,那么將該數(shù)據(jù)索引結點加入到全局輪廓帶結果列表中; b)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)等于k+Ι,那么將該數(shù)據(jù)索引結點加入到第k+Ι層全局輪廓結果列表中; c)該數(shù)據(jù)結點被當前已找到的全局輪廓帶點和第k+Ι層全局輪廓點所全局控制的次數(shù)大于k+Ι,那么對該數(shù)據(jù)結點不做任何操作。
4.根據(jù)權利要求1所述的一種基于反向輪廓帶的商品推薦方法,其特征在于:所述的步驟(3)中利用預處理文件中的結果對步驟(2)中找到的消費者進行驗證,判斷其是否對推薦商品真正感興趣,是通過利用預處理結果判斷步驟(2)中找到的消費者是否是反向輪廓帶點來實現(xiàn)的;對于每一個待驗證的消費者,首先要在文本文件中找到該點對應的第O層動態(tài)輪廓和第k層動態(tài)輪廓,再根據(jù)查詢點q在第O層動態(tài)輪廓和第k層動態(tài)輪廓中的位置來判斷其是否為真正的反向輪廓帶點;在判斷時,需考慮三種情況:1)查詢點q落在命中區(qū)域中,那么該全局輪廓帶點是真正的反向輪廓帶點; 2)查詢點q落在丟棄區(qū)域中,那么該全局輪廓帶點不是真正的反向輪廓帶點; 3)查詢點q既不落在命中區(qū)域中,也不落在丟棄區(qū)域中,那么該全局輪廓帶點需要在步驟(4)中進一步判斷。
5.根據(jù)權利要求1所述的一種基于反向輪廓帶的商品推薦方法,其特征在于:所述的步驟(4)中對于步驟(3)中無法判斷的消費者進一步驗證,是利用完整的全局輪廓帶和第k+Ι層全局輪廓判斷其是否是反向輪廓帶點實現(xiàn)的;對于每一個待驗證的消費者,要根據(jù)他所形成的查詢窗口中所包含的全局輪廓帶點和第k+Ι層全局輪廓點的個數(shù)來判斷其是否為真正的反向輪廓帶點;其中,查詢窗口的中心點是相應的全局輪廓帶點,查詢點q則是該窗口的一個頂點;在進行判斷時,需考慮四種情況: 1)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)大于k個,那么該全局輪廓帶點不是真正的反向輪廓帶點; 2)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,并且包含第k+1層全局輪廓點,那么該全局輪廓帶點不是真正的反向輪廓帶點; 3)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)等于k個,但不包含k+Ι層全局輪廓點,那么該全 局輪廓帶點是真正的反向輪廓帶點; 4)全局輪廓帶點的查詢窗口包含其它全局輪廓帶點的個數(shù)小于k個,那么該全局輪廓帶點是真正的反向輪廓帶點。
6.根據(jù)權利要求1所述的一種基于反向輪廓帶的商品推薦方法,其特征在于:所述的步驟(5)中合并步驟(3)和步驟(4)中的結果以得到對推薦商品真正感興趣的全部消費者,也就是商品值得推薦的用戶。
【文檔編號】G06F17/30GK103778194SQ201410007211
【公開日】2014年5月7日 申請日期:2014年1月7日 優(yōu)先權日:2014年1月7日
【發(fā)明者】高云君, 柳晴, 陳璐, 苗曉曄, 趙靖文, 牟黎 申請人:浙江大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
台山市| 全州县| 仪陇县| 梅河口市| 惠来县| 龙门县| 阿拉善右旗| 白河县| 深州市| 浦北县| 米林县| 合水县| 青川县| 揭东县| 金堂县| 宕昌县| 邵武市| 康定县| 宁乡县| 江西省| 上蔡县| 江西省| 临泉县| 当涂县| 黎川县| 寿光市| 白沙| 开江县| 临洮县| 虞城县| 昌都县| 黄石市| 洪泽县| 平山县| 西贡区| 七台河市| 高要市| 平谷区| 喀喇沁旗| 台山市| 义马市|