一種產(chǎn)品聚類方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001 ] 本申請(qǐng)涉及電子商務(wù)技術(shù),特別涉及一種產(chǎn)品聚類方法及裝置。
【背景技術(shù)】
[0002] 隨著電子商務(wù)技術(shù)的發(fā)展,電子商務(wù)網(wǎng)站中展示的產(chǎn)品數(shù)目日亦龐大,并且產(chǎn)品 與產(chǎn)品之間的相似度計(jì)算復(fù)雜度很高。通常情況下,電子商務(wù)網(wǎng)站擁有數(shù)億的用戶,用戶的 行為也是非常豐富的。但是由于產(chǎn)品的數(shù)據(jù)量巨大,用戶對(duì)產(chǎn)品的操作行為(如,點(diǎn)擊、購 買、收藏等)則顯得非常稀疏。由于用戶到產(chǎn)品的數(shù)據(jù)的稀疏性,在計(jì)算用戶偏好以及計(jì)算 用戶相似性等等參量時(shí),往往覆蓋率不高,而且也影響準(zhǔn)確性。
[0003] 針對(duì)上述問題,現(xiàn)有技術(shù)下,通常會(huì)將足夠相似的產(chǎn)品聚合成一個(gè)簇,再把簇內(nèi)產(chǎn) 品涉及的所有用戶行為聚合起來,以增加數(shù)據(jù)的稠密性,然后在稠密數(shù)據(jù)的基礎(chǔ)上進(jìn)行用 戶偏好及用戶相似性的挖掘,從而得到較高的覆蓋率和準(zhǔn)確率;進(jìn)一步地,也可以基于獲得 的挖掘結(jié)果向用戶推薦其他相關(guān)產(chǎn)品。
[0004] 現(xiàn)有技術(shù)下劃分簇的算法較多,比較常用的是譜聚類的算法。采用譜聚類算法時(shí), 首先需要設(shè)定一個(gè)聚類的個(gè)數(shù)K,從而將產(chǎn)品與產(chǎn)品之間的相似性降維成κ(即是針對(duì)海量 產(chǎn)品設(shè)置了目標(biāo)類數(shù)),然后再利用k-means將降維后的產(chǎn)品進(jìn)行聚類。
[0005] 采用譜聚類算法的缺點(diǎn)如下:
[0006] 首先,必須要設(shè)置聚類的個(gè)數(shù)K。然而,在給定一個(gè)數(shù)據(jù)集合后,用戶很難判斷K的 取值需要設(shè)置為多大才合適。
[0007] 其次,需要對(duì)產(chǎn)品進(jìn)行降維處理,一般降成K維。然而,電子商務(wù)網(wǎng)站中存在著海 量的產(chǎn)品,要通過降維處理聚類為幾百萬的簇,其計(jì)算的時(shí)間復(fù)雜度和空間復(fù)雜度會(huì)給系 統(tǒng)帶來嚴(yán)重的運(yùn)行負(fù)荷。
【發(fā)明內(nèi)容】
[0008] 本申請(qǐng)實(shí)施例提供一種產(chǎn)品聚類方法及裝置,用以解決現(xiàn)有技術(shù)中存在的為了實(shí) 現(xiàn)海量產(chǎn)品的準(zhǔn)確聚類,從而增加系統(tǒng)運(yùn)行負(fù)荷的問題。
[0009] 本申請(qǐng)實(shí)施例提供的具體技術(shù)方案如下:
[0010] 提供一種產(chǎn)品聚類方法,包括:
[0011] 根據(jù)用戶的操作行為計(jì)算各個(gè)產(chǎn)品之間的相似度;
[0012] 基于各個(gè)產(chǎn)品之間的相似度篩選出相似度符合預(yù)設(shè)條件的產(chǎn)品;
[0013] 基于預(yù)設(shè)原則在篩選出的各個(gè)產(chǎn)品中進(jìn)一步確定簇中心產(chǎn)品,其中,所述預(yù)設(shè)原 則包括:與簇中心產(chǎn)品之間存在鏈接的產(chǎn)品的數(shù)目達(dá)到預(yù)設(shè)門限值,以及,不同簇中心產(chǎn)品 之間不存在鏈接;
[0014] 對(duì)于一個(gè)非簇中心產(chǎn)品,從各簇中心產(chǎn)品中,確定與該非簇中心產(chǎn)品具有最高相 似度的簇中心產(chǎn)品,并將該非簇中心產(chǎn)品和所述與該非簇中心產(chǎn)品具有最高相似度的簇中 心產(chǎn)品歸為一簇。
[0015] 較佳的,基于各個(gè)產(chǎn)品之間的相似度篩選出相似度符合預(yù)設(shè)條件的產(chǎn)品,包括:
[0016] 根據(jù)計(jì)算獲得的各個(gè)產(chǎn)品之間的相似度,分別針對(duì)每一個(gè)產(chǎn)品保存相似度最高的 K個(gè)產(chǎn)品,并在每一個(gè)產(chǎn)品與對(duì)應(yīng)其保存的相似的每一個(gè)產(chǎn)品之間建立鏈接;
[0017] 刪除單向相似的產(chǎn)品之間的鏈接,只保留雙向相似的產(chǎn)品之間的鏈接。
[0018] 較佳的,在保留雙向相似的廣品之間的鏈接之后,進(jìn)一步包括:
[0019] 分別計(jì)算并判斷每一條鏈接兩端的兩個(gè)產(chǎn)品的相似產(chǎn)品的重合程度是否達(dá)到預(yù) 設(shè)的重合度閾值,若是,則保留相應(yīng)的鏈接,否則,刪除相應(yīng)的鏈接。
[0020] 較佳的,基于預(yù)設(shè)原則在篩選出的各個(gè)產(chǎn)品中進(jìn)一步確定簇中心產(chǎn)品,包括:
[0021 ] 根據(jù)各個(gè)產(chǎn)品之間的鏈接,分別確定每一個(gè)產(chǎn)品的度數(shù),其中,一產(chǎn)品的度數(shù)為與 所述一產(chǎn)品之間存在鏈接的其他產(chǎn)品的數(shù)目;
[0022] 篩選出度數(shù)大于預(yù)設(shè)的第一度數(shù)閾值的所有產(chǎn)品作為待選簇中心產(chǎn)品;
[0023] 將各個(gè)待選簇中心產(chǎn)品按照度數(shù)從大到小的順序進(jìn)行排序;
[0024] 按照排序順序遍歷每個(gè)待選簇中心產(chǎn)品,每當(dāng)確定與某一待選簇中心產(chǎn)品之間存 在鏈接的其他廣品均為非待選族中心廣品時(shí),將所述某一待選族中心廣品確定為族中心廣 品。
[0025] 較佳的,對(duì)于一個(gè)非簇中心產(chǎn)品,從各簇中心產(chǎn)品中,確定與該非簇中心產(chǎn)品具有 最高相似度的簇中心產(chǎn)品,并將該非簇中心產(chǎn)品和所述與該非簇中心產(chǎn)品具有最高相似度 的簇中心產(chǎn)品歸為一簇,包括:
[0026] 確定一非簇中心產(chǎn)品的度數(shù),并判斷所述非簇中心產(chǎn)品的度數(shù)是否大于預(yù)設(shè)的第 二度數(shù)閾值,其中,所述第二度數(shù)閾值小于所述第一度數(shù)閾值;
[0027] 若所述非簇中心產(chǎn)品的度數(shù)大于預(yù)設(shè)的第二度數(shù)閾值,則獲取所有與所述非簇中 心產(chǎn)品之間存在鏈接的簇中心產(chǎn)品,并將與所述非簇中心產(chǎn)品之間存在鏈接數(shù)目最多的簇 中心產(chǎn)品與所述非簇中心產(chǎn)品歸為一簇;
[0028] 若所述非簇中心產(chǎn)品的度數(shù)不大于預(yù)設(shè)的第二度數(shù)閾值,則確定與所述非簇中心 產(chǎn)品之間存在鏈接的所有其他產(chǎn)品,并分別確定所述其他產(chǎn)品各自對(duì)應(yīng)的簇中心產(chǎn)品,以 及將與所述其他產(chǎn)品之間存在鏈接最多的簇中心產(chǎn)品與所述非簇中心產(chǎn)品歸為一簇。
[0029] 提供一種產(chǎn)品聚類裝置,包括:
[0030] 計(jì)算單元,根據(jù)用戶的操作行為計(jì)算各個(gè)產(chǎn)品之間的相似度;
[0031] 第一處理單元,用于基于各個(gè)產(chǎn)品之間的相似度篩選出相似度符合預(yù)設(shè)條件的產(chǎn) 品;
[0032] 第二處理單元,用于基于預(yù)設(shè)原則在篩選出的各個(gè)產(chǎn)品中進(jìn)一步確定簇中心產(chǎn) 品,其中,所述預(yù)設(shè)原則包括:與簇中心產(chǎn)品之間存在鏈接的產(chǎn)品的數(shù)目達(dá)到預(yù)設(shè)門限值, 以及,不同簇中心產(chǎn)品之間不存在鏈接;
[0033] 聚類單元,用于對(duì)于一個(gè)非簇中心產(chǎn)品,從各簇中心產(chǎn)品中,確定與該非簇中心產(chǎn) 品具有最高相似度的簇中心產(chǎn)品,并將該非簇中心產(chǎn)品和所述與該非簇中心產(chǎn)品具有最高 相似度的簇中心產(chǎn)品歸為一簇。
[0034]較佳的,在基于各個(gè)產(chǎn)品之間的相似度篩選出相似度符合預(yù)設(shè)條件的產(chǎn)品時(shí),所 述第一處理單元具體用于:
[0035] 根據(jù)計(jì)算獲得的各個(gè)產(chǎn)品之間的相似度,分別針對(duì)每一個(gè)產(chǎn)品保存相似度最高的 K個(gè)產(chǎn)品,并在每一個(gè)產(chǎn)品與對(duì)應(yīng)其保存的相似的每一個(gè)產(chǎn)品之間建立鏈接;
[0036] 刪除單向相似的產(chǎn)品之間的鏈接,只保留雙向相似的產(chǎn)品之間的鏈接。
[0037] 較佳的,在保留雙向相似的產(chǎn)品之間的鏈接之后,所述第一處理單元進(jìn)一步用 于:
[0038] 分別計(jì)算并判斷每一條鏈接兩端的兩個(gè)產(chǎn)品的相似產(chǎn)品的重合程度是否達(dá)到預(yù) 設(shè)的重合度閾值,若是,則保留相應(yīng)的鏈接,否則,刪除相應(yīng)的鏈接。
[0039] 較佳的,在基于預(yù)設(shè)原則在篩選出的各個(gè)產(chǎn)品中進(jìn)一步確定簇中心產(chǎn)品時(shí),所述 第二處理單元具體用于:
[0040] 根據(jù)各個(gè)產(chǎn)品之間的鏈接,分別確定每一個(gè)產(chǎn)品的度數(shù),其中,一產(chǎn)品的度數(shù)為與 所述一產(chǎn)品之間存在鏈接的其他產(chǎn)品的數(shù)目;
[0041] 篩選出度數(shù)大于預(yù)設(shè)的第一度數(shù)閾值的所有產(chǎn)品作為待選簇中心產(chǎn)品;
[0042] 將各個(gè)待選簇中心產(chǎn)品按照度數(shù)從大到小的順序進(jìn)行排序;
[0043] 按照排序順序遍歷每個(gè)待選簇中心產(chǎn)品,每當(dāng)確定與某一待選簇中心產(chǎn)品之間存 在鏈接的其他廣品均為非待選族中心廣品時(shí),將所述某一待選族中心廣品確定為族中心廣 品。
[0044] 較佳的,在對(duì)于一個(gè)非簇中心產(chǎn)品,從各簇中心產(chǎn)品中,確定與該非簇中心產(chǎn)品具 有最高相似度的簇中心產(chǎn)品,并將該非簇中心產(chǎn)品和所述與該非簇中心產(chǎn)品具有最高相似 度的簇中心產(chǎn)品歸為一簇時(shí),所述聚類單元具體用于:
[0045] 確定一非簇中心產(chǎn)品的度數(shù),并判斷所述非簇中心產(chǎn)品的度數(shù)是否大于預(yù)設(shè)的第 二度數(shù)閾值,其中,所述第二度數(shù)閾值小于所述第一度數(shù)閾值;
[0046] 若所述非簇中心產(chǎn)品的度數(shù)大于預(yù)設(shè)的第二度數(shù)閾值,則獲取所有與所述非簇中 心產(chǎn)品之間存在鏈接的簇中心產(chǎn)品,并將與所述非簇中心產(chǎn)品之間存在鏈接數(shù)目最多的簇 中心產(chǎn)品與