亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法和系統(tǒng)的制作方法

文檔序號:6357362閱讀:162來源:國知局
專利名稱:一種劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及對數(shù)據(jù)庫的數(shù)據(jù)分析,尤其涉及對商業(yè)數(shù)據(jù)庫進(jìn)行數(shù)據(jù)挖掘,針對不同的應(yīng)用,對商家的客戶進(jìn)行聚類。
背景技術(shù)
在商業(yè)實(shí)踐中,商家希望能識別客戶的特征,以便對客戶進(jìn)行有效的管理。商家為了有效地開展業(yè)務(wù),需要挖掘和分析客戶的特征,為此,常常需要采用聚類(clustering)技術(shù)來的分析其在數(shù)據(jù)庫中存儲的客戶數(shù)據(jù)。聚類技術(shù)廣泛應(yīng)用于統(tǒng)計學(xué)、模式識別、機(jī)器學(xué)習(xí)、電信服務(wù)等技術(shù)領(lǐng)域。采用計 算機(jī)技術(shù)和聚類技術(shù),可以將一個數(shù)據(jù)庫中的大量數(shù)據(jù)記錄劃分成K個(K為整數(shù))群集(groupings)或聚類(cluster)。每個群集中的一個數(shù)據(jù)記錄與該群集中的另一個數(shù)據(jù)記錄的相似度,大于與其它群集中的數(shù)據(jù)記錄的相似度。聚類技術(shù)采用的常用算法包括K均值聚類(K-means Clustering)算法,PAM算法等等。商家采用聚類技術(shù),可以對數(shù)據(jù)庫的客戶記錄進(jìn)行聚類,即把客戶記錄(或客戶)劃分為不同的群集,進(jìn)而總結(jié)各個群集中的客戶的相似特征,由此能針對不同的客戶群集,提供相適應(yīng)的服務(wù)。在有些應(yīng)用中,假設(shè)在運(yùn)行聚類過程之前,聚類產(chǎn)生的群集的數(shù)目(通常記為整數(shù)K)是已知的。在有些現(xiàn)實(shí)應(yīng)用中,在運(yùn)行聚類過程之前,群集的數(shù)目是未知的,需要試探用不同的K來運(yùn)行聚類過程,最后根據(jù)一定的聚類標(biāo)準(zhǔn)來確定K的值,以及采用該K運(yùn)行聚類過程所獲得的聚類結(jié)果。聚類算法的復(fù)雜度,與數(shù)據(jù)庫中數(shù)據(jù)記錄的個數(shù)有關(guān),與每個數(shù)據(jù)記錄包含的屬性個數(shù)有關(guān),與聚類產(chǎn)生的群集的數(shù)目K的大小有關(guān),與群集的數(shù)目K事先是否已知有關(guān)。采用聚類技術(shù)對數(shù)據(jù)庫的客戶記錄進(jìn)行聚類的過程,通常需要運(yùn)行許多小時,甚至幾天。如何在具體應(yīng)用中提高對數(shù)據(jù)庫的客戶記錄進(jìn)行聚類的效率,對于商家來說非常重要。

發(fā)明內(nèi)容
本發(fā)明的一個目的是改進(jìn)現(xiàn)有技術(shù)中劃分客戶群集的方法。一方面,本發(fā)明提供一種用于劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法和系統(tǒng)。該方法包含接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值;對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合;對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集。其中,所述預(yù)處理包含確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型;在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型;對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化;對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。另一方面,本發(fā)明還提供一種用于劃分客戶群集的系統(tǒng),包含接收裝置,被配置為接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值;預(yù)處理裝置,被配置為對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合;聚類裝置,被配置為對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集。其中,所述預(yù)處理裝置包含類型表示裝置,被配置為確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型,在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型;歸一化裝置,被配置為對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化;加權(quán)裝置,被配置為對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。與現(xiàn)有技術(shù)相比,本發(fā)明的方法和系統(tǒng)降低了計算復(fù)雜度,并且能靈活調(diào)整聚類結(jié)果的群集組合的散度和純度。


發(fā)明內(nèi)容部分和所附權(quán)利要求中闡述了被認(rèn)為是本發(fā)明的特點(diǎn)的創(chuàng)造性特征。但是,通過參照附圖閱讀下面對示例性實(shí)施例的詳細(xì)說明可更好地理解發(fā)明本身以及其使用 模式、另外的目標(biāo)、特征以及優(yōu)點(diǎn),在附圖中圖I表示對一個客戶集合進(jìn)行聚類產(chǎn)生的群組組合的示意圖;圖2示意性表示一種現(xiàn)有技術(shù)的方法為客戶劃分群集的過程的流程圖;圖3A和3B示意性表示按照本發(fā)明方法的一個實(shí)施例為客戶劃分群集的過程的流程圖;圖4A-4I示意性表示按照本發(fā)明的實(shí)施例對原始客戶記錄集合進(jìn)行的預(yù)處理;圖5表示按照本發(fā)明一個實(shí)施例執(zhí)行的K均值聚類算法的流程圖;圖6A-6E例示按照本發(fā)明一個實(shí)施例執(zhí)行K均值聚類算法過程中的數(shù)據(jù)處理;圖7示意性表示按照本發(fā)明實(shí)施例的用于為客戶劃分群集的系統(tǒng)的框圖。
具體實(shí)施例方式如背景技術(shù)部分所述,在商業(yè)實(shí)踐中,商家希望能識別客戶的特征,以便對客戶進(jìn)行有效的管理。在商業(yè)實(shí)踐中,有這樣一種情形。例如,對于某項(xiàng)服務(wù)或產(chǎn)品,商家已經(jīng)積累了一定數(shù)量的客戶,但是商家仍然希望增加該項(xiàng)服務(wù)/產(chǎn)品的客戶。為此,商家需要識別該服務(wù)/產(chǎn)品的潛在客戶,以便有針對性地對潛在客戶展開精準(zhǔn)的營銷活動。商家識別潛在客戶的一種方式是,根據(jù)已經(jīng)積累的客戶,識別潛在客戶。以銀行為例,某銀行已經(jīng)積累了一定數(shù)量的信用卡客戶。在銀行的數(shù)據(jù)庫中存儲有客戶(例如有工資賬戶的客戶,)的月收入、年齡等數(shù)據(jù)。此外,在數(shù)據(jù)庫中存儲的信息,還能標(biāo)識哪些客戶是持有銀行發(fā)行的信用卡的客戶,即信用卡客戶。該銀行希望根據(jù)已有的信用卡客戶,識別其它的潛在的信用卡客戶,以便能準(zhǔn)確、有效地展開營銷活動。根據(jù)已有的信用卡客戶識別潛在的信用卡客戶的一種方式,是識別與已有的信用卡客戶相似的客戶,其中的關(guān)鍵,在于發(fā)現(xiàn)已有信用卡客戶與待識別的客戶共有的差異性特征。為此,銀行可以通過聚類技術(shù),將例如有工資賬戶的客戶劃分為不同的群集,在信用卡客戶相對集中的群集中,識別潛在的信用卡客戶。通過聚類技術(shù)產(chǎn)生的每個群集內(nèi)的客戶之間比較相似;就是說,在信用卡客戶比較集中的群集內(nèi)的非信用卡客戶,與信用卡客戶相對來說比較相似,因此成為未來的信用卡客戶的可能性較大,因此可以將信用卡客戶比較集中的群集內(nèi)的非信用卡客戶,識別為潛在的信用卡客戶。這種根據(jù)已有的信用卡客戶識別潛在的信用卡客戶的方式,可以由圖I進(jìn)一步例
/Jn o圖I表示對一個客戶集合進(jìn)行聚類產(chǎn)生的群組組合的示意圖。圖I中的人形圖案,表示某個銀行的客戶,其中,加方框的人形圖案的代表持有該銀行信用卡的客戶(簡稱“信用卡客戶”),無方框的人形圖案代表不持有該銀行信用卡的客戶(簡稱“非信用卡客戶”)。標(biāo)記10表示銀行的一個客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性(例如“年齡”、“收入”),每個數(shù)據(jù)屬性有一個屬性值(例如“年齡” =30,“收入” =7000)。如圖所示的集合10包含的客戶記錄 代表40個客戶,其中,有8個是信用卡客戶,有32個不是信用卡客戶。按照客戶的屬性(或客戶記錄的屬性),對客戶集合10進(jìn)行聚類,產(chǎn)生四個客戶群集101、102、103和104??蛻艏?0中的客戶在這四個群集中的分布如表I所示。表I
群集101 ~ 群集102群集103群集104
信用卡客戶數(shù)6II0
非信用卡客戶數(shù) 41495
客戶總數(shù)1015105
純度60%6. 7%10%0例如,群集101有10個客戶,其中,有6個是信用卡客戶,4個非信用卡客戶。一般而言,對一個數(shù)據(jù)點(diǎn)集合進(jìn)行聚類的產(chǎn)生的群集組合中,每個群集中的數(shù)據(jù)點(diǎn),有一定的相似性。例如,對于圖I所示的由客戶集合經(jīng)過聚類產(chǎn)生的群集來說,每個群集中的客戶的屬性(例如年齡、收入等),具有一定的相似性。評估聚類結(jié)果的指標(biāo),包括“散度"(Dispersion)指標(biāo)。散度指標(biāo)用來表征聚類產(chǎn)生的群集中的數(shù)據(jù)點(diǎn)相似性。群集的散度越大,數(shù)據(jù)點(diǎn)之間的相似度越?。簧⒍仍叫?,數(shù)據(jù)點(diǎn)之間的相似度越大。散度是由數(shù)據(jù)點(diǎn)、群集個數(shù)等因素決定的。除了散度,本發(fā)明還采用“純度”(Purity),作為評估聚類結(jié)果的一個指標(biāo)。群集的純度,是群集中某種類型的數(shù)據(jù)點(diǎn)與群集中的數(shù)據(jù)點(diǎn)總數(shù)的比率。例如,上面表I的最后一行列出的群集“純度”,是群集內(nèi)的信用卡客戶數(shù)與客戶總數(shù)的比率。例如,最后一行第2列的數(shù)值“60%”,是群集101的純度,即群集101內(nèi)的信用卡客戶數(shù)與客戶總數(shù)的比率6/10。群集的純度越高,表示群集中的信用卡客戶越集中。為了根據(jù)已有的信用卡客戶識別潛在的信用卡客戶,希望對客戶集合進(jìn)行聚類所產(chǎn)生的群集,除了具有較低的散度,還要具有較高的純度。如表I所示,群集101的純度最高??梢詫⑷杭?01作為對象,用于發(fā)展信用卡客戶。就是說,可以將本例中的群集101中的4個非信用卡客戶,作為潛在的信用卡客戶來對待。一般來說,在對客戶進(jìn)行聚類的應(yīng)用中,所使用的關(guān)于客戶的信息包含兩類,一類信息是客戶的數(shù)據(jù)屬性,例如客戶的年齡、收入等。另一類信息是客戶的類別屬性。類別屬性將客戶分為兩類種子客戶和非種子客戶。如何用類別屬性劃分客戶,取決于具體的應(yīng)用。在圖I所示的例子中,用加方框的人形圖案表示的信用卡客戶,就是一種種子客戶??蛻舻臄?shù)據(jù)屬性和類別屬性都是可以從商家在數(shù)據(jù)庫中存儲的客戶記錄中獲得的。為了根據(jù)種子客戶識別潛在的客戶,希望對客戶集合進(jìn)行聚類所產(chǎn)生的群集,除了具有較低的散度,還要具有較高的純度。圖2表示一種現(xiàn)有技術(shù)的劃分客戶群集的方法過程200。該方法采用聚類技術(shù)對 客戶集合進(jìn)行聚類,目標(biāo)是使聚類結(jié)果的群集散度最低,純度最大。該過程從步驟S201開始,該步驟輸入一個包含N個客戶記錄的客戶記錄集合??蛻粲涗浖现械拿總€客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值。然后,在步驟S202,為輸入的客戶記錄集合隨機(jī)產(chǎn)生一個群集組合。步驟S201和S202是為運(yùn)行PAM過程而對原始數(shù)據(jù)進(jìn)行的初始化處理。在步驟S203,使用客戶的數(shù)據(jù)屬性對步驟S202產(chǎn)生的群集組合運(yùn)行PAM過程,生成當(dāng)前的群集組合,即K個群集。PAM算法是一種與K-means類似的常用聚類方法。PAM算法針對一個輸入的群組組合-即K個群組,執(zhí)行一個迭代的過程。每次迭代都產(chǎn)生一個群集組合,直到滿足以下兩個條件之一時停止(I)當(dāng)前的群集組合的散度不再減??;或者(2)當(dāng)前的群集組合與輸入的群集組合矛盾,即當(dāng)前的的群集組合將輸入的群集組合中某兩個群組的中心點(diǎn)分配到同一個群組中。迭代停止時,最后一次的聚類群組將作為PAM的輸出。在步驟S204.利用客戶的類別屬性,計算當(dāng)前群集組合的純度,即群集組合中每個群集的純度的平方和。在步驟S205,判斷當(dāng)前群集組合的純度是否大于上一個群集組合的純度。如果當(dāng)前群集組合的純度大于上一個群集組合的純度,過程200前進(jìn)到步驟206。一個例外是,如果當(dāng)前群組組合是步驟203產(chǎn)生的群組組合,總是假設(shè)的當(dāng)前群組組合的純度大于群集組合的純度,或者說,此時過程200直接前進(jìn)到步驟206。如果當(dāng)前群集組合的純度不是大于上一個群集組合的純度,過程200前進(jìn)到步驟210。此時,輸出當(dāng)前的群集組合,作為過程200的結(jié)果,過程200結(jié)束。在步驟S206,通過窮舉法搜索出純度最大的群集組合。步驟S206進(jìn)一步包含步驟S206-1和步驟S206-2。在步驟S206-1,對于每個第i群集(其中i = I,2,..,K),將其中心點(diǎn)用第j個點(diǎn)代替(其中j = 1,2,…,N),得至IJ K*N種中心點(diǎn)的組合。 這個步驟可以用下面一段偽代碼來表示。For i=l to K For j=l to N
用第j個點(diǎn)代替第i個群集的中心點(diǎn) EndFor EndFor顯然,步驟S206-1的計算復(fù)雜度為K*N。在步驟S206-2,對于步驟S206-1獲得的K*N種中心點(diǎn)的組合中的每個組合,計算每個數(shù)據(jù)點(diǎn)到每個中心點(diǎn)的距離,使每個數(shù)據(jù)點(diǎn)和離它最近的中心點(diǎn)劃分在同一群集,如此得到K個群集;按照步驟204的同樣的方法可以計算這K個群集的總純度。 通過步驟S206-1和S206-2,可以純度最大的群集組合。步驟206-2需要計算K*N次距離,因此,其計算復(fù)雜度是K*N。綜合步驟206_1和步驟206-2 二者的計算復(fù)雜度,步驟206的計算復(fù)雜度是(K*N) * (K*N),即K2*N2。在步驟S207.使用客戶的數(shù)據(jù)屬性對步驟S206產(chǎn)生的群集組合運(yùn)行PAM過程,生成當(dāng)前的群集組合,即K個群集。然后返回步驟204,進(jìn)入下一輪循環(huán)。該循環(huán)將重復(fù)有限的t次。圖2所示的方法,分開使用客戶的數(shù)據(jù)屬性和類別屬性,交替地運(yùn)用PAM算法和窮舉法,即先對數(shù)據(jù)屬性進(jìn)行聚類,得到“散度”較小的聚類結(jié)果,再根據(jù)類別屬性進(jìn)行調(diào)整,使得“純度”變大。由于要交替地運(yùn)用PAM算法和窮舉法,該方法具有很高的計算復(fù)雜度
0(N2*K2*t),其中,N是被聚類的集合中的記錄總數(shù),K是聚類結(jié)果中的群集個數(shù)。在實(shí)際應(yīng)用中,N和K的值通常較大,因此該方法往往需要很長的時間才能獲得聚類結(jié)果。本發(fā)明提出一種改進(jìn)的方法,可以縮短獲得聚類結(jié)果所需的時間。圖3表示按照本發(fā)明方法一個實(shí)施例為客戶劃分群集過程300的流程。如圖3所示,過程300始于步驟310,在該步驟,輸入一個原始客戶記錄集合??蛻粲涗浖?,是指一個由一個或多個客戶記錄組成的數(shù)據(jù)集合??蛻粲涗浘哂幸欢〝?shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)記錄,其中記錄了關(guān)于客戶的信息??蛻粲涗浲ǔ1槐4嬖谟嬎銠C(jī)系統(tǒng)的非易失性存儲介質(zhì)上的數(shù)據(jù)庫中??蛻粲涗浖系妮斎耄侵赴延嬎銠C(jī)系統(tǒng)的存儲介質(zhì)中存儲的數(shù)據(jù)庫中的一個或多個這樣的客戶記錄,輸入到計算機(jī)系統(tǒng)的內(nèi)存(例如RAM)。原始客戶記錄集合中的每個客戶記錄代表一個客戶,并且包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值。圖4A中示意性表示了一個這樣的原始客戶記錄集合。如圖4A所示的表T4A,表示一個原始客戶記錄集合。該原始客戶記錄集合有4條記錄,分別代表4個客戶(客戶I、客戶2、客戶3、客戶4),其中,每條記錄有2個屬性分別是“年齡”屬性和“收入”屬性。例如,代表客戶I的客戶記錄的屬性值分別是“年齡” =25,“收入” =6000。在步驟320,對客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合。對客戶記錄集合進(jìn)行預(yù)處理,包含如圖3B所示的三個子步驟321、322和323。在步驟321,確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型,在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型。
在具體應(yīng)用中,可以根據(jù)劃分客戶群集的目的,確定每個客戶記錄所代表的客戶的類型。例如,表T4A(圖4A)中的客戶,有兩種類型類型I-信用卡客戶;類型2_非信用卡客戶。步驟S321的結(jié)果,可以用圖4B所示的表T4B來表示。該表的第2列表示客戶記錄的類型屬性,其中,客戶2和客戶4的類型屬性值為I,表示客戶2和客戶4是類型I的客戶,即信用卡客戶;客戶2和客戶4類型屬性值為0的,表示客戶2和客戶4是類型2的客戶,即非信用卡客戶。步驟321的結(jié)果,也可以用圖4C所示的表T4C來表示。表T4C實(shí)際上是通過客戶ID將表T4A與表T4B的合并的結(jié)果。按照本發(fā)明一個實(shí)施例,所述在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型,包含在相應(yīng)的客戶記錄中增加一個類型屬性。例如,圖4A所示原始客戶記錄集合,沒有包含表明客戶是不是信用卡客戶的屬性。在這種情況下,可以從銀行的數(shù)據(jù)庫中獲得這種信息,并在客戶記錄中增加一個類型屬性,以表示對應(yīng)的客戶的是不是信用卡客戶。當(dāng)然,如果原始客戶記錄集合已經(jīng)包含表明客戶是不是信用卡客戶的屬性,則只要按表T4B或表T4C那樣,將表明客戶是不是信用卡客戶的屬性標(biāo)識為類型屬性即可,無需在客戶記錄中額外增加一個類型屬性。
在步驟322,對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化。對一個屬性的值的歸一化,是指將一個屬性(例如年齡)的每個數(shù)值都線性按比例縮放到區(qū)間
內(nèi)。具體來說,假設(shè)該屬性中最大值為MAX,最小值為MIN,則某個數(shù)值X的歸一化值為(X-MIN) / (MAX-MIN)。以表T4A中的屬性“年齡”屬性的值為例。屬性“年齡”的最大值MAX = 35,最小值MIN = 25,則客戶I的年齡值25的歸一化值為(25-25)/(35-25) = 0,客戶2的年齡值30的歸一化值為(30-25)/(35-25) = 0. 5。以同樣的方式,對表T4A中的所有屬性的值進(jìn)行歸一化。結(jié)果如圖4D中的表T4D所示。表T4B中的屬性的值為0或1,對表T4B中的屬性的值進(jìn)行歸一化,結(jié)果的內(nèi)容不變,仍然可以用表T4B表示。在步驟323,分別對數(shù)據(jù)屬性的值和類型屬性的值加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。具體方法是,對于數(shù)據(jù)屬性,將歸一化的屬性值,各乘以一個散度權(quán)重因子a ;對于類型屬性,將歸一化的屬性值,各乘以一個純度權(quán)重因子3。例如,如圖4F所示,設(shè)a = 0. 5,將表T4D中的屬性值,各乘以一個散度權(quán)重因子a = 0. 5,得到加權(quán)的屬性值,結(jié)果如表T4F所示。例如,如圖4E所示,設(shè)@ = 0. 5,將表T4B中的屬性值,各乘以一個純度權(quán)重因子^ = 0. 5,得到加權(quán)的屬性值,結(jié)果如表T4E所示。經(jīng)過預(yù)處理后的客戶記錄集合,如圖4G中的表T4G所示,該表實(shí)際上是表T4F與表T4E的合并。在步驟330,對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集。對經(jīng)過預(yù)處理的客戶記錄集合執(zhí)行一個聚類過程,將客戶記錄集合所代表的客戶劃分成預(yù)定個數(shù)的群集。在以下的說明中,用字母“K”來代表所述預(yù)定個數(shù)記,一般來說,K是從一個指定范圍中選擇的整數(shù)。在以下的說明中,也將所述預(yù)定個數(shù)的群集,稱為運(yùn)行聚類過程所產(chǎn)生的群集組合,或“群集組合”。將預(yù)處理后的客戶記錄集合劃分成K個群集,相當(dāng)于將客戶記錄集合所代表的客戶劃分成K個群集。
按照本發(fā)明一個實(shí)施例,在步驟330中,所述對經(jīng)過預(yù)處理的客戶記錄集合執(zhí)行一個聚類過程,包含執(zhí)行K均值聚類(K-means clustering)算法。按照本發(fā)明一個實(shí)施例,散度權(quán)重因子a和純度權(quán)重因子0的關(guān)系是,a+@ =1(0 <= a <= 1,0 <= ^ <=1)。作為聚類算法的輸入,經(jīng)過預(yù)處理的客戶記錄集合中的屬性值,是用散度權(quán)重因子a和純度權(quán)重因子P加權(quán)過的屬性值,這是本發(fā)明的特點(diǎn)之一。權(quán)重因子a和0,可以用來調(diào)節(jié)聚類結(jié)果的散度和純度。散度權(quán)重因子a的相對值越大,則聚類結(jié)果的散度越小,即群集中的數(shù)據(jù)越集中。純度權(quán)重因子P相對值越大,則聚類結(jié)果的純度越大。K均值聚類算法是一種常用的聚類方法。該方法對于給定的N個數(shù)據(jù)點(diǎn)(例如,表T4G中的4個客戶記錄),將所有數(shù)據(jù)點(diǎn)分為K個群集(clusters/groups),使得K個群集的“類內(nèi)距之和” (within-cluster sum of squares)最小?!邦悆?nèi)距之和”可以用如下的公式
(I)表示
K-center _if...........................(I)
Z=I j^i其中,K是作為聚類結(jié)果的群集的個數(shù),j是群集i(i = 1...K)中的一個數(shù)據(jù)點(diǎn),center_i是群集i的中心點(diǎn)。公式(I)中,(j-center_i)2指群集i中的一個數(shù)據(jù)點(diǎn)j的到群集i的中心點(diǎn)center_i的歐氏距離。YJj-center」、2...............................(2)
_ .表示群集i的“類內(nèi)距”,即群集i的中心點(diǎn)到群集i內(nèi)所有其他數(shù)據(jù)點(diǎn)的距離之和。因此,公式⑴表示的“類內(nèi)距之和”,是K個群集中每個群集的“類內(nèi)距”的和。下面仍然以表T4G作為經(jīng)過預(yù)處理的客戶記錄集合作為對象,結(jié)合圖5的示意性流程,舉例說明用K均值聚類算法執(zhí)行聚類過程的實(shí)施例。預(yù)設(shè)K = 2,即要將表T4G中4個客戶記錄(代表客戶1_4)劃分到2個群集(K =2)。如圖5所示,用K均值聚類算法執(zhí)行的聚類過程,可分為5個步驟510-550。步驟510是一個初始化步驟,該步驟隨機(jī)為每一個客戶記錄分配群集。例如,如圖6A所示,將客戶I和客戶2的客戶記錄分配到群集I ;將客戶3和客戶4的客戶記錄分配到群集2。在步驟520,計算每個群集的中心點(diǎn)。群集的中心點(diǎn),是該群集內(nèi)所有數(shù)據(jù)點(diǎn)的平均值。在本發(fā)明實(shí)施例中,每個客戶記錄就是一個數(shù)據(jù)點(diǎn),就是說,一個數(shù)據(jù)點(diǎn)代表一個客戶或客戶記錄。數(shù)據(jù)點(diǎn)用多維數(shù)組表示,多維數(shù)組的內(nèi)容就是客戶記錄中的屬性值。例如,圖T4G中的客戶2的客戶記錄對應(yīng)的數(shù)據(jù)點(diǎn)是(年齡0. 25,收入0. 335,類型0. 5)。根據(jù)圖6A所示的客戶記錄在兩個群集中的分布,可以計算每個群集的中心點(diǎn)。計算的結(jié)果如圖6B所示。其中,Center_l表示群集I的中心點(diǎn),Center_2表示群集2的中心點(diǎn)。例如,群集I包含兩個數(shù)據(jù)點(diǎn)(年齡0.00 ;收入0.00 ;類型0);(年齡0. 25;收A :0. 335 ;類型:0. 5)。群集I的中心點(diǎn)Center_l為< 年齡(0. 00+0. 0125)/2 ;收入(0. 00+0. 335)/2 ;類型(0+0. 5)/2〉,即< 年齡:0. 0125 ;收入:0. 1675 ;類型:0. 25>。在步驟530,計算每個數(shù)據(jù)點(diǎn)到每個群集中心點(diǎn)的距離。計算的結(jié)果如圖6C中的距離矩陣所示。例如,距離矩陣中,客戶I所在的行中的數(shù)值0. 1062是代表客戶I的數(shù)據(jù)點(diǎn)到群集I的中心點(diǎn)Center_l的距離,該距離是通過下式計算的 分(0.00-0.0125)**2+(0.00-0.1675)**2+(0-0.25)**2=0.1062類似地,客戶I所在的行中的數(shù)值0. 2537,是代表客戶I的數(shù)據(jù)點(diǎn)到群集2的中心點(diǎn)Center_2的距離。在步驟535,計算當(dāng)前K(K = 2)個群集的“類內(nèi)距之和”D(X)。首先,由如圖6C所示的距離矩陣,根據(jù)前文所述的公式(2),計算群集I的“類內(nèi)距”和群集2的“類內(nèi)距”群集I 的“類內(nèi)距” =(0. 1062+0. 1062);群集2 的“類內(nèi)距” =(0. 1362+0. 1362)。再根據(jù)前文所述的公式(I)計算得出,在當(dāng)前的群集分布情況下,K(K = 2)個群集的“類內(nèi)距之和”D(X)為(0. 1062+0. 1062) + (0. 1362+0. 1362) = 0. 4848。步驟540.為數(shù)據(jù)點(diǎn)重新分配群集。重新分配的規(guī)則是將一個數(shù)據(jù)點(diǎn)分配到離其最近的那個群集中心點(diǎn)所在的群集。例如,從圖6C中可以發(fā)現(xiàn),客戶2離Center_2的距離更近。根據(jù)重新分配的規(guī)則,將客戶2分配到群集2。重新分配之后的群集組合如圖6D所
/Jn o步驟550.計算重新分配之后K個群集的“類內(nèi)距之和”D(x+1)。如果計算重新分配之后K個群集的“類內(nèi)距之和”D(x+1)小于重新分配之前K個群集的“類內(nèi)距之和"D(X),則返回到步驟520,繼續(xù)迭代。否則,重新分配之后的K個群集,即為最終的聚類結(jié)果。就本例而言,在540步驟中為數(shù)據(jù)點(diǎn)重新分配群集后的群集組合的“類內(nèi)距之和”D(X+1) = 0.3190,而重新分配之前的群集組合的“類內(nèi)距之和”D(X) = 0.4848,SPD(x+1) < D(x),因此返回步驟520。經(jīng)過步驟520和步驟530后,得到如圖6E所示的新的距離矩陣。此時的群集組合仍然如圖6D所示,其“類內(nèi)距之和”D(X) = 0. 3190。在步驟540中,根據(jù)圖6E所示的距離矩陣進(jìn)行第二次重新分配。從圖6E可見,盡管代表客戶2的數(shù)據(jù)點(diǎn)離群組2的中心點(diǎn)Cneter_2的距離(0.0311)比離群組I的中心點(diǎn)Center_l的距離(0.4248)近,該數(shù)據(jù)點(diǎn)已經(jīng)被分配到群集2中;按照重新分配的規(guī)則,不必為該數(shù)據(jù)點(diǎn)重新分配群組。同樣,也不必為代表客戶3、客戶4的數(shù)據(jù)點(diǎn)重新分配群組,也不必為代表客戶I的數(shù)據(jù)點(diǎn)重新分配群組。因此,步驟540的執(zhí)行,不改變?nèi)鐖D6D所示的數(shù)據(jù)點(diǎn)在兩個群集中的分布,如果執(zhí)行步驟550,所計算的K個群集的“類內(nèi)距之和” D (x+1)仍然等于0. 3190。由于D(x+1)不小于D(x+),因此,迭代結(jié)束。最終的聚類結(jié)果仍然如圖6D所示,即群集I包含客戶I的客戶記錄,群集2包含客戶2、客戶3和客戶4的客戶記錄。按照本發(fā)明的一 個實(shí)施例,在步驟330之后,可以從所述預(yù)定個數(shù)(K)的群集中選擇純度較高的群集,輸出該群集中的原始客戶記錄的數(shù)據(jù)屬性的值。群集的純度,是該群集中的具有特定的類型屬性的客戶記錄占該群集中的總客戶記錄數(shù)的比率。按照該實(shí)施例輸出純度較高的群集中的原始客戶記錄的數(shù)據(jù)屬性的值,有助于發(fā)現(xiàn)已有信用卡客戶與待識別的客戶的共同的差異性特征。參看圖4B的表T4B可知,客戶I和客戶3是非信用卡客戶,客戶2和客戶4是信用卡客戶。不難計算,這種群集組合中,群集I的純度為0,群集2的純度為2/3 = 67%。群集2的純度67%較高,表明信用卡用戶在群集2中的比較集中,由此可以推斷,客戶3雖然不是信用卡客戶,但是與很多信用卡客戶有很高的相似性,銀行如果要發(fā)展信用卡用戶,則應(yīng)優(yōu)先將客戶3作為潛在的信用卡客戶對待。按照本發(fā)明實(shí)施例的方法,通過對原始客戶記錄集合進(jìn)行預(yù)處理,在聚類算法中對數(shù)據(jù)屬性和類型屬性作統(tǒng)一的處理,從而降低了計算復(fù)雜度。所屬技術(shù)領(lǐng)域的技術(shù)人員不難得出,按照本發(fā)明實(shí)施例的方法的計算復(fù)雜度為0(N*K*t),遠(yuǎn)低于圖2所示的現(xiàn)有技術(shù)的方法的計算復(fù)雜度0 (N2*K2*t)。按照本發(fā)明實(shí)施例的方法能通過調(diào)整數(shù)據(jù)屬性和類型屬性的相對權(quán)重,靈活調(diào)整聚類結(jié)果的群集組合的散度和純度,這易于尋找到散度和純度令人滿意的群組或群組組
口 o在以上的例子中,在步驟323分別對數(shù)據(jù)屬性的值和類型屬性的值加權(quán)時,選擇的加權(quán)因子是a =0.5^ =0.5。這樣的加權(quán)因子組合,是一種平衡散度和純度的組合。在實(shí)際應(yīng)用中,一般可以將a =0.5、P =0.5作為初始選擇,如果在這種選擇的情況下,聚類產(chǎn)生的群集的散度和純度不合要求,則可以按照對散度和純度的要求,重新調(diào)整a和^的值。下面用兩個假設(shè)的極端例子,說明調(diào)整a和P所具有的效果。假設(shè)在步驟323 (圖3)選擇a = I、0 = 0,則經(jīng)過預(yù)處理后的客戶記錄集合將如圖4H所示。這時,所有客戶記錄的類型屬性的值都是0,因此,在以后執(zhí)行的圖5所示的過程,將依據(jù)屬性“年齡”和“收入”進(jìn)行聚類,以保證所生成的群集的散度最小。假設(shè)在步驟323選擇a =0、P = 1,則經(jīng)過預(yù)處理后的客戶記錄集合將如圖41所示。這時,所有客戶記錄的數(shù)據(jù)屬性的值都是0,于是,在以后執(zhí)行的圖5所示的過程,將依據(jù)類型屬性進(jìn)行聚類,這可以保證所生成的群集的純度最大,即群集中的客戶記錄要么都是類型為I的,要么都是類型為0的。從上述兩個假設(shè)的特例可以看出,按照本發(fā)明實(shí)施例的方法,可以通過對數(shù)據(jù)屬性和類型屬性分別加權(quán),靈活調(diào)整群集的散度和純度,具有明顯的技術(shù)效果。以上描述了根據(jù)本發(fā)明的實(shí)施例的用于劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法。按照同一個發(fā)明構(gòu)思,本發(fā)明也提供一種用于劃分客戶群集的系統(tǒng)。圖7示意性表示按照本發(fā)明實(shí)施例的用于劃分客戶群集的系統(tǒng)700的框圖。
如圖7所示,用于劃分客戶群集的系統(tǒng)700包含接收裝置710、預(yù)處理裝置720和聚類裝置730。接收裝置710被配置得用于接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值。預(yù)處理裝置720被配置得用于對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合。聚類裝置730被配置得用于對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集。所述預(yù)處理裝置包含類型表示裝置721、歸一化裝置722和加權(quán)裝置723。 類型表示裝置721被配置得用于確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型,在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型。歸一化裝置722被配置得用于對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化。加權(quán)裝置723被配置得用于對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。按照本發(fā)明一個實(shí)施例,所述類型表示裝置721進(jìn)一步被配置得用于在相應(yīng)的客戶記錄中增加一個類型屬性。按照本發(fā)明一個實(shí)施例,所述加權(quán)裝置723被配置得用于用散度權(quán)重因子a對數(shù)據(jù)屬性的屬性值加權(quán),用純度權(quán)重因子P,對類型屬性的屬性值加權(quán),其中a+0 =1。按照本發(fā)明一個實(shí)施例,其中所述聚類裝置執(zhí)行的聚類算法是K均值聚類算法。按照本發(fā)明一個實(shí)施例,所述預(yù)定個數(shù)是從一個指定范圍中選擇的整數(shù)。按照本發(fā)明一個實(shí)施例,進(jìn)一步包含一個輸出裝置(圖中未予示出),其被配置得用于從所述預(yù)定個數(shù)的群集中選擇純度較高的群集,輸出該群集中的原始客戶記錄的數(shù)據(jù)屬性的值,其中,一個群集的純度,是該群集中的具有特定的類型屬性的客戶記錄占該群集中的總客戶記錄數(shù)的比率。以上描述了按照本發(fā)明實(shí)施例的用于劃分客戶群集的系統(tǒng),由于上文已經(jīng)詳細(xì)地描述了按照本發(fā)明實(shí)施例的用于劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法,在上述對系統(tǒng)的描述中,省略了明顯與對方法的描述重復(fù)、或者很容易從對方法的描述中引申得出的內(nèi)容。應(yīng)指出的是,以上描述僅為示例,而不是對本發(fā)明的限制。在本發(fā)明的其他實(shí)施例中,該方法可具有更多、更少或不同的步驟,對步驟的編號,是為了使說明更加簡明,而不是對各步驟之間的順序關(guān)系的嚴(yán)格限定,各步驟與步驟之間的順序可以與所描述的不同。例如,在本發(fā)明的一些實(shí)施例中,可以沒有上述一個或多個可選步驟。每個步驟的具體執(zhí)行方式可以與所描述的不同。所有這些變化都處于本發(fā)明的精神和范圍之內(nèi)。本發(fā)明可以硬件、軟件、或硬件與軟件的結(jié)合的方式實(shí)現(xiàn)。本發(fā)明可以集中的方式在一個計算機(jī)系統(tǒng)中實(shí)現(xiàn),或以分布方式實(shí)現(xiàn),在這種分布方式中,不同的部件分布在若干互連的計算機(jī)系統(tǒng)中。適于執(zhí)行本文中描述的方法的任何計算機(jī)系統(tǒng)或其它裝置都是合適的。一種典型的硬件和軟件的組合可以是帶有計算機(jī)程序的通用計算機(jī)系統(tǒng),當(dāng)該計算機(jī)程序被加載和執(zhí)行時,控制該計算機(jī)系統(tǒng)而使其執(zhí)行本發(fā)明的方法,并構(gòu)成本發(fā)明的裝置。本發(fā)明也可體現(xiàn)在計算機(jī)程序產(chǎn)品中,該程序產(chǎn)品包含使能實(shí)現(xiàn)本文中描述的方法的所有特征,并且當(dāng)其被加載到計算機(jī)系統(tǒng)中時,能夠執(zhí)行所述方法。
以上參照優(yōu)選實(shí)施例具體示出和說明了本發(fā)明,本領(lǐng)域技術(shù)人員應(yīng)理解,可在形式和細(xì)節(jié)上對其進(jìn)行各種改變而不會背離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種用于劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法,包含 接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值; 對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合; 對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集, 其中,所述預(yù)處理包含 確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型; 在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型; 對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化; 對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。
2.權(quán)利要求I的方法,其中,所述在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型,包含在相應(yīng)的客戶記錄中增加一個類型屬性。
3.權(quán)利要求I的方法,其中,所述對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),包含用散度權(quán)重因子a對數(shù)據(jù)屬性的屬性值加權(quán),用純度權(quán)重因子P,對類型屬性的屬性值加權(quán),其中a +3 =1。
4.權(quán)利要求1-3任何之一的方法,其中,所述聚類算法是K均值聚類算法。
5.權(quán)利要求4的方法,其中,所述預(yù)定個數(shù)是從一個指定范圍中選擇的整數(shù)。
6.權(quán)利要求I的方法,進(jìn)一步包含 從所述預(yù)定個數(shù)的群集中選擇純度較高的群集,輸出該群集中的原始客戶記錄的數(shù)據(jù)屬性的值,其中,一個群集的純度,是該群集中的具有特定的類型屬性的客戶記錄占該群集中的總客戶記錄數(shù)的比率。
7.一種用于劃分客戶群集的系統(tǒng),包含 接收裝置,被配置得用于接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值; 預(yù)處理裝置,被配置得用于對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合; 聚類裝置,被配置得用于對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集, 其中,所述預(yù)處理裝置包含 類型表示裝置,被配置得用于確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型,在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型; 歸一化裝置,被配置得用于對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化; 加權(quán)裝置,被配置得用于對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。
8.權(quán)利要求7的系統(tǒng),其中,所述類型表示裝置進(jìn)一步被配置得用于在相應(yīng)的客戶記錄中增加一個類型屬性。
9.權(quán)利要求7的系統(tǒng),其中,所述加權(quán)裝置被配置得用于用散度權(quán)重因子a對數(shù)據(jù)屬性的屬性值加權(quán),用純度權(quán)重因子P,對類型屬性的屬性值加權(quán),其中a+0 =1。
10.權(quán)利要求7-9任何之一的系統(tǒng),其中,所述聚類算法是K均值聚類算法。
11.權(quán)利要求10的系統(tǒng),其中,所述預(yù)定個數(shù)是從一個指定范圍中選擇的整數(shù)。
12.權(quán)利要求10的系統(tǒng),進(jìn)一步包含 輸出裝置,被配置得用于從所述預(yù)定個數(shù)的群集中選擇純度較高的群集,輸出該群集中的原始客戶記錄的數(shù)據(jù)屬性的值,其中,一個群集的純度,是該群集中的具有特定的類型屬性的客戶記錄占該群集中的總客戶記錄數(shù)的比率。
全文摘要
本發(fā)明涉及對數(shù)據(jù)庫的數(shù)據(jù)分析,尤其涉及對商業(yè)數(shù)據(jù)庫進(jìn)行數(shù)據(jù)挖掘。公開一種用于劃分客戶群集的計算機(jī)實(shí)現(xiàn)的方法和系統(tǒng)。該方法包含接收一個原始客戶記錄集合,其中,客戶記錄集合中的每個客戶記錄代表一個客戶,每個客戶記錄包含至少一個數(shù)據(jù)屬性,每個數(shù)據(jù)屬性有一個屬性值;對原始客戶記錄集合進(jìn)行預(yù)處理,以生成預(yù)處理后的客戶記錄集合;對預(yù)處理后的客戶記錄集合執(zhí)行一個聚類算法,將預(yù)處理后的客戶記錄集合劃分成預(yù)定個數(shù)的群集。其中,所述預(yù)處理包含確定原始客戶記錄集合中的每個客戶記錄所代表的客戶的類型;在相應(yīng)的客戶記錄中用一個類型屬性表示該客戶的類型;對數(shù)據(jù)屬性和類型屬性的值進(jìn)行歸一化;對數(shù)據(jù)屬性的值和類型屬性的值分別加權(quán),獲得數(shù)據(jù)屬性的加權(quán)屬性值和類型屬性的加權(quán)屬性值。
文檔編號G06F17/30GK102737327SQ201110080939
公開日2012年10月17日 申請日期2011年3月31日 優(yōu)先權(quán)日2011年3月31日
發(fā)明者尹文君, 張斌, 曹恒, 杰奎琳.G.莫里斯, 董進(jìn), 謝明 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1