王 昱,朱芝孺
(重慶大學(xué) 經(jīng)濟(jì)與工商管理學(xué)院,重慶 400030)
數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)指企業(yè)搜集和積累大量的市場(chǎng)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行分析,以識(shí)別對(duì)某類(lèi)營(yíng)銷(xiāo)活動(dòng)或產(chǎn)品感興趣的目標(biāo)客戶(hù),再對(duì)目標(biāo)客戶(hù)進(jìn)行關(guān)系維護(hù)與深度挖掘,并根據(jù)挖掘得到的信息制定和實(shí)施營(yíng)銷(xiāo)策略。根據(jù)二八定律,企業(yè)80%的利潤(rùn)都來(lái)自于20%的顧客。因此,如何從龐大的消費(fèi)者群體中準(zhǔn)確識(shí)別對(duì)于企業(yè)具有重要價(jià)值的目標(biāo)客戶(hù),建立以目標(biāo)客戶(hù)為主導(dǎo)的營(yíng)銷(xiāo)體系,是企業(yè)在當(dāng)前激烈的市場(chǎng)競(jìng)爭(zhēng)中獲取競(jìng)爭(zhēng)優(yōu)勢(shì)的一個(gè)重要途徑。
在數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)中,目標(biāo)客戶(hù)定位的精度是提升企業(yè)營(yíng)銷(xiāo)經(jīng)營(yíng)業(yè)績(jī)的一個(gè)關(guān)鍵因素。Knott等[1]指出,一個(gè)零售業(yè)務(wù)銀行的目標(biāo)客戶(hù)定位精度提高0.7%可使得客戶(hù)的收益提高20%。從數(shù)據(jù)挖掘的角度出發(fā),可以將數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)中目標(biāo)客戶(hù)定位視為有監(jiān)督學(xué)習(xí)問(wèn)題,即根據(jù)消費(fèi)者歷史數(shù)據(jù)建立模型以預(yù)測(cè)其是否響應(yīng)(購(gòu)買(mǎi)產(chǎn)品)或響應(yīng)概率。因此,大量研究將數(shù)據(jù)挖掘中的有監(jiān)督學(xué)習(xí)方法,如人工神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、決策樹(shù)、基于案例的推理、遺傳算法等,應(yīng)用于預(yù)測(cè)和定位目標(biāo)客戶(hù)。但是在實(shí)際情況中,企業(yè)的目標(biāo)客戶(hù)數(shù)量一般遠(yuǎn)低于非目標(biāo)客戶(hù),即存在類(lèi)別不均衡問(wèn)題。這一重要的問(wèn)題特性使得傳統(tǒng)的監(jiān)督學(xué)習(xí)方法難以有效處理數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)中的類(lèi)別不均衡問(wèn)題,對(duì)于目標(biāo)客戶(hù)的預(yù)測(cè)效果較差。
為了解決類(lèi)別不均衡問(wèn)題,近期研究提出了基于數(shù)據(jù)集層面的過(guò)抽樣和欠抽樣方法[2],以及基于算法層面的方法[3]。但是,對(duì)于樣本比例的調(diào)整可能矯枉過(guò)正,使得結(jié)果出現(xiàn)過(guò)擬合,或損失樣本中重要的信息而出現(xiàn)欠擬合,從而降低目標(biāo)客戶(hù)定位的準(zhǔn)確性。此外,這些方法往往結(jié)構(gòu)復(fù)雜,實(shí)用性低且可解釋性有限[4]。針對(duì)上述問(wèn)題,本文將無(wú)數(shù)據(jù)輸入假定且支持增量學(xué)習(xí)的K-近鄰規(guī)則引入數(shù)據(jù)庫(kù)營(yíng)銷(xiāo),并根據(jù)數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)問(wèn)題的數(shù)據(jù)特性提出一種改進(jìn)的K-近鄰規(guī)則。通過(guò)在實(shí)際數(shù)據(jù)集上的實(shí)證對(duì)比分析,證明所提出的改進(jìn)的K-近鄰規(guī)則不僅能夠取得較高的目標(biāo)客戶(hù)定位精度,提高數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)的效果,還具有高度的可解釋性,為市場(chǎng)營(yíng)銷(xiāo)管理者提供有效的決策支持。
記 由 來(lái) 自 m 個(gè) 類(lèi) 別 C1,C2,…,Cm的 n 個(gè) 訓(xùn) 練 樣 本XX2,…,Xn構(gòu)成的數(shù)據(jù)集合為S,其中 Xi=(xi2,...,),(i=1,2,…,n)為d維歐氏空間中的樣本點(diǎn),并且每個(gè)訓(xùn)練樣本的類(lèi)別標(biāo)記已知。對(duì)于一個(gè)未知類(lèi)別的樣本X,K-近鄰規(guī)則的基本原理是從S中選擇與X最為相似的K個(gè)訓(xùn)練樣本(近鄰),提取其類(lèi)別標(biāo)記進(jìn)行比較學(xué)習(xí)。若以k1,k2,…,km表示K個(gè)近鄰中分別屬于類(lèi)別 C1,C2,…,Cm的樣本數(shù),則可以定義K-近鄰規(guī)則的學(xué)習(xí)函數(shù)為:
根據(jù)式(1),K-近鄰規(guī)則的分類(lèi)規(guī)則為:
K-近鄰規(guī)則一般采用歐氏距離作為樣本的相似性測(cè)度,樣本的距離越近則其相似性越高。兩個(gè)樣本Xi和Xj之間的歐氏距離定義為:
K-近鄰規(guī)則不需假定數(shù)據(jù)輸入滿(mǎn)足某種或某些分布,并且作為非參數(shù)算法,其結(jié)果的可解釋性更強(qiáng),在很多情況下其精度比一些較復(fù)雜的參數(shù)算法更高[5]。但是,該算法中需要設(shè)定一個(gè)關(guān)鍵的參數(shù)K:若K值太小,算法易受到訓(xùn)練數(shù)據(jù)中的噪音影響;若K值太大,最近鄰中可能包含過(guò)量的樣本點(diǎn),從而影響算法的性能。
為了有效地處理參數(shù)K的合理設(shè)定問(wèn)題以提高K-近鄰規(guī)則的性能,本文提出一種參數(shù)K的取值優(yōu)化方法??紤]每個(gè)訓(xùn)練樣本 Xi,(i=1,2,…,n)與樣本 X 的距離,若將這些距離按升序排列,則以樣本個(gè)數(shù)為橫軸,距離為縱軸的曲線(xiàn)一般呈“S”型的上升趨勢(shì)。用線(xiàn)段連接距離最小值點(diǎn)與最大值點(diǎn),并令其斜率為L(zhǎng),則L反映了從樣本總體而言,訓(xùn)練樣本距樣本X的距離隨K的增加而增大的快慢程度。在曲線(xiàn)上搜索斜率為L(zhǎng)的切點(diǎn),其對(duì)應(yīng)的距離為d1和d2,如圖1所示。
圖1 距離升序變化曲線(xiàn)示意圖
記歐氏距離小于等于d1值的訓(xùn)練樣本集合為T(mén)1,歐氏距離小于等于d2值的訓(xùn)練樣本集合為T(mén)2,則有T1?T2。根據(jù)K-近鄰規(guī)則對(duì)樣本相似性的定義,距離越小的樣本其相似性越高,則T1包含與樣本X最為相似的訓(xùn)練樣本,而T2不僅包含T1,還包含曲線(xiàn)趨勢(shì)較平穩(wěn),即距離處于一個(gè)相對(duì)穩(wěn)定的區(qū)間的樣本。與T1相比,T2中這部分樣本和樣本X相似性更低,且個(gè)數(shù)遠(yuǎn)大于T1。如果所選擇的K個(gè)近鄰中包含這一部分相似性相對(duì)較低的訓(xùn)練樣本,則這些“冗余”的近鄰可能會(huì)影響K-近鄰規(guī)則的預(yù)測(cè)結(jié)果。因此,為了充分利用樣本X的近鄰信息,同時(shí)減少冗余信息的影響,在應(yīng)用K-近鄰規(guī)則對(duì)樣本X進(jìn)行分類(lèi)預(yù)測(cè)時(shí),設(shè)置K個(gè)近鄰為距樣本X的距離小于等于d1的訓(xùn)練樣本。對(duì)于不同的樣本,其與各個(gè)訓(xùn)練樣本的歐氏距離分布不同,因此對(duì)應(yīng)的K值也不同,即在K-近鄰規(guī)則中需要根據(jù)每個(gè)樣本的屬性取值動(dòng)態(tài)確定其K值。
(1)屬性取值規(guī)范化
由于K-近鄰規(guī)則中一般使用距離對(duì)樣本相似性進(jìn)行測(cè)度,因此為了避免量綱較大的屬性在距離計(jì)算中所造成的偏差,需要對(duì)各個(gè)屬性進(jìn)行規(guī)范化處理。本文采用的方法為最小-最大規(guī)范化方法,記樣本 Xi,(i=1,2,…,n)中屬性 Al,(l=1,2,…,d)的取值,max(Al)和 min(Al)分別為屬性Al在樣本集合中的最大值和最小值,則規(guī)范化后的屬性取值為:
(2)擬合距離曲線(xiàn)并設(shè)定K值
在計(jì)算得到每個(gè)訓(xùn)練樣本 Xi,(i=1,2,…,n)與樣本 X的距離并按升序排列后,為了得到圖1所示的連續(xù)可導(dǎo)的曲線(xiàn)并尋找斜率為L(zhǎng)的切點(diǎn),需要對(duì)距離與樣本數(shù)之間的關(guān)系進(jìn)行擬合。若使用單一的曲線(xiàn)擬合全體數(shù)據(jù),可能出現(xiàn)擬合偏差較大,精度不高的情況。為了提高擬合精度,本文對(duì)其采用分段擬合的方式。分段擬合將圖1中橫軸劃分為若干段,再在每一段中擬合距離與訓(xùn)練樣本個(gè)數(shù)的函數(shù)關(guān)系。在得到每一段的擬合曲線(xiàn)后,按照距離從小到大的順序依次從各段曲線(xiàn)中尋找斜率為L(zhǎng)的切點(diǎn),所得到的切點(diǎn)對(duì)應(yīng)的樣本個(gè)數(shù)即為最優(yōu)的近鄰數(shù)K。
(3)預(yù)測(cè)樣本屬于各個(gè)類(lèi)別的概率
在確定樣本X的近鄰后,一般的K-近鄰規(guī)則采用多數(shù)投票方式對(duì)樣本X的類(lèi)別標(biāo)記進(jìn)行預(yù)測(cè),即選擇K個(gè)近鄰中出現(xiàn)次數(shù)最多的類(lèi)別。這一方式存在的主要問(wèn)題是未考慮距離大小對(duì)于類(lèi)別標(biāo)記的預(yù)測(cè)作用。因此,本文采用加權(quán)投票方式,即根據(jù)每個(gè)近鄰的距離設(shè)置投票權(quán)重。對(duì)于樣本 X 的近鄰 Xk,(k=1,2,…,K),其權(quán)重 wk的計(jì)算公式為:
其中,d(X,Xk)表示樣本 X與近鄰 Xk的距離。式(5)意味著近鄰離樣本的距離越小,則其權(quán)重越大。根據(jù)K個(gè)近鄰的權(quán)重可以得到樣本 X屬于類(lèi)別C1,C2,…,Cm的概率為:
其中,1(·)為邏輯判別函數(shù),如果“·”為真,則1(·)=1,否則1(·)=0 。
為驗(yàn)證本文所提出的改進(jìn)K-近鄰規(guī)則對(duì)于數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)的有效性,選取CoIL 2000預(yù)測(cè)競(jìng)賽數(shù)據(jù)作為數(shù)據(jù)集[4]。該數(shù)據(jù)集包含了9822個(gè)歐洲家庭是否購(gòu)買(mǎi)休閑車(chē)保險(xiǎn)的記錄,其中訓(xùn)練集合包含5822條數(shù)據(jù)記錄,用于建立數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)模型,測(cè)試集合包含另外4000條數(shù)據(jù)記錄,用于評(píng)估模型效果。每條數(shù)據(jù)記錄包含86個(gè)屬性,其中85個(gè)屬性為關(guān)于產(chǎn)品使用和社會(huì)人口統(tǒng)計(jì)的屬性,最后1個(gè)屬性為類(lèi)別標(biāo)記(1表示購(gòu)買(mǎi)保險(xiǎn),0表示不購(gòu)買(mǎi))。在5822個(gè)訓(xùn)練樣本中,僅348個(gè)是實(shí)際購(gòu)買(mǎi)的樣本,少數(shù)類(lèi)樣本占總樣本數(shù)的348/5822=5.97%,屬于典型的類(lèi)別不均衡數(shù)據(jù)集。
本文中用于對(duì)比的模型為L(zhǎng)aurikkala等提出的領(lǐng)域清理規(guī)則欠抽樣算法NCL[6]和Kim等[4]提出基于局部進(jìn)化特征選擇的人工神經(jīng)網(wǎng)絡(luò)算法ELSA/ANN。NCL是采用K-近鄰規(guī)則處理類(lèi)別不均衡問(wèn)題的經(jīng)典算法之一;ELSA/ANN使用遺傳算法進(jìn)行屬性選擇,然后應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)響應(yīng)概率。
有監(jiān)督學(xué)習(xí)模型中最常用的評(píng)價(jià)指標(biāo)為精確度。然而對(duì)于數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)這一存在類(lèi)別不均衡的問(wèn)題,人們往往更加關(guān)注對(duì)于少數(shù)類(lèi)(實(shí)際購(gòu)買(mǎi)的客戶(hù))的預(yù)測(cè)準(zhǔn)確性。因此,本文采用受試者工作特征曲線(xiàn)(ROC)和命中率(Hit Rate)作為評(píng)價(jià)數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)模型效果的指標(biāo),這兩個(gè)指標(biāo)均在數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)研究中得到了廣泛應(yīng)用。
ROC反映在閾值變化時(shí)假正率(FPR)和真正率(TPR)的相對(duì)變化情況,其中FPR和TPR的計(jì)算公式為:
式(7)中,F(xiàn)P、TP、FN、TN的定義如表1中混淆矩陣所示。
表1 混淆矩陣
當(dāng)模型的假正率越低,同時(shí)真正率越高,即ROC下方的面積越大時(shí),模型的效果越好。
命中率這一指標(biāo)反映在給定潛在目標(biāo)客戶(hù)數(shù)量的情況下,模型所識(shí)別的實(shí)際目標(biāo)客戶(hù)數(shù)量。比如,根據(jù)模型的預(yù)測(cè)結(jié)果從100名客戶(hù)中選擇30名響應(yīng)概率最高的客戶(hù)作為潛在目標(biāo)客戶(hù),其中有12名為實(shí)際的目標(biāo)客戶(hù),則模型的命中率為40%。因此,以命中率作為評(píng)價(jià)準(zhǔn)則符合數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)的理念,是評(píng)價(jià)數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)模型的一個(gè)有效準(zhǔn)則。命中率指標(biāo)的具體計(jì)算公式為:
式(8)中,depthi一般被稱(chēng)為深度,指被選取作為潛在目標(biāo)客戶(hù)的數(shù)量占客戶(hù)總體的比例,通常選取五分位點(diǎn),如5%、10%、15%等,M為客戶(hù)總體數(shù)量,TPi為在給定潛在目標(biāo)客戶(hù)數(shù)量下模型得到的真正率。顯然,命中率越高,說(shuō)明模型的效果越好,即在給定潛在目標(biāo)客戶(hù)數(shù)量下能夠命中越多的實(shí)際目標(biāo)客戶(hù)。
將本文所提出的改進(jìn)K-近鄰規(guī)則和NCL應(yīng)用于CoIL 2000數(shù)據(jù)集,得到的兩種模型的ROC對(duì)比結(jié)果如圖2所示。
從圖2可以看出,本文提出的改進(jìn)K-近鄰規(guī)則(IKNN)的ROC明顯處于NCL上方,說(shuō)明隨著概率閾值的變化,在預(yù)測(cè)為正類(lèi)的樣本中,改進(jìn)K-近鄰規(guī)則所得到的實(shí)際正類(lèi)樣本占比更大,對(duì)于識(shí)別少數(shù)類(lèi)的目標(biāo)客戶(hù)能夠取得比NCL更好的效果。
將NCL和ELSA/ANN以及本文所提出的改進(jìn)K-近鄰規(guī)則應(yīng)用于CoIL 2000數(shù)據(jù)集,得到三種模型在不同深度下的命中率如表2所示。
圖2 改進(jìn)K-近鄰規(guī)則和NCL的ROC
表2 三種模型在不同深度下的命中率
表2的結(jié)果表明,當(dāng)設(shè)定較小的潛在目標(biāo)客戶(hù)比率,即深度較小時(shí),本文提出的改進(jìn)K-近鄰規(guī)則能夠有效提高數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)的命中率。當(dāng)深度較大時(shí),相對(duì)于ELSA/ANN仍然具有近似相同的命中率??紤]到在數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)問(wèn)題中,營(yíng)銷(xiāo)管理者往往設(shè)定較低的潛在目標(biāo)客戶(hù)比率以降低成本,但同時(shí)希望命中盡可能多的目標(biāo)客戶(hù),因此,本文提出的改進(jìn)K-近鄰規(guī)則可以有效應(yīng)用于數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)。此外,相對(duì)于結(jié)構(gòu)復(fù)雜和具有“黑箱”性質(zhì)的人工神經(jīng)網(wǎng)絡(luò),K-近鄰規(guī)則具有高度的可解釋性,能夠更加有效地為營(yíng)銷(xiāo)管理者提供決策支持。
數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)中一個(gè)關(guān)鍵問(wèn)題是準(zhǔn)確識(shí)別目標(biāo)客戶(hù),而目標(biāo)客戶(hù)一般在客戶(hù)總體中所占的比例較小,即存在類(lèi)別不均衡問(wèn)題。此外,營(yíng)銷(xiāo)管理者為了制定有效的產(chǎn)品營(yíng)銷(xiāo)策略,需要模型具有較高的解釋性。針對(duì)上述兩個(gè)問(wèn)題,本文提出了基于改進(jìn)K-近鄰規(guī)則的數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)模型,將其應(yīng)用于實(shí)際的數(shù)據(jù)集并與其它模型進(jìn)行對(duì)比實(shí)證分析,結(jié)果表明提出的改進(jìn)K-近鄰規(guī)則能夠提高目標(biāo)客戶(hù)識(shí)別的準(zhǔn)確性和結(jié)果的可解釋性,可以有效應(yīng)用于數(shù)據(jù)庫(kù)營(yíng)銷(xiāo)問(wèn)題。