程旭 王萌 齊新
摘要:伴隨著大數(shù)據(jù)的發(fā)展,各大企業(yè)都在成立自己的數(shù)據(jù)中心,目的是為了統(tǒng)一處理各大部門(mén)的數(shù)據(jù)信息,打造一個(gè)數(shù)據(jù)中臺(tái)來(lái)提升企業(yè)的綜合實(shí)力。BI系統(tǒng)應(yīng)用而生,BI主要是通過(guò)對(duì)大數(shù)據(jù)的收集,提取,分析vx2c~,-7;.等操作,過(guò)濾之后的信息以各種圖形化的方式展示出來(lái),幫助領(lǐng)導(dǎo)以及企業(yè)做出正確的決斷。通過(guò)對(duì)國(guó)內(nèi)的大部分?jǐn)?shù)據(jù)中心進(jìn)行觀察發(fā)現(xiàn)了以下問(wèn)題:海量的數(shù)據(jù)不能正確的處理,復(fù)雜的圖表展示,大量冗余的信息使得企業(yè)不得做出正確的決定。故該文主要針對(duì)報(bào)表系統(tǒng)的數(shù)據(jù)挖掘模型進(jìn)行優(yōu)化設(shè)計(jì)與分析。
關(guān)鍵詞:報(bào)表系統(tǒng);數(shù)據(jù)挖掘
中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)06-0005-02
1背景
BI又被稱(chēng)為商務(wù)智能,譯為Business Intelligence,在1989年,Howard Dresner稱(chēng)為“使用基于事實(shí)的決策系統(tǒng),來(lái)解決業(yè)務(wù)決策的一套理論和方法”,主要是通過(guò)數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘以及報(bào)表系統(tǒng)集合來(lái)打造一個(gè)系統(tǒng)。將多種來(lái)源的數(shù)據(jù)整合并提取出共性數(shù)據(jù),然后對(duì)數(shù)據(jù)進(jìn)行清洗,分析以及整理,這個(gè)數(shù)據(jù)處理就叫作ETL過(guò)程,ETL過(guò)程可以完善數(shù)據(jù)的正確性。然后對(duì)數(shù)據(jù)進(jìn)行分類(lèi)整理呈現(xiàn)給決策者或者存人數(shù)據(jù)倉(cāng)庫(kù)。目前國(guó)內(nèi)的BI系統(tǒng)發(fā)展迅速,大部分企業(yè)的數(shù)據(jù)分析技術(shù)也很強(qiáng),但是大家對(duì)于BI的認(rèn)知不同導(dǎo)致設(shè)計(jì)系統(tǒng)的側(cè)重點(diǎn)也是不同的,在此僅針對(duì)BI系統(tǒng)部分的數(shù)據(jù)挖掘進(jìn)行優(yōu)化。
2數(shù)據(jù)挖掘模型
2.1數(shù)據(jù)挖掘
數(shù)據(jù)挖掘是對(duì)數(shù)據(jù)進(jìn)行抽取,分析,處理之后形成的數(shù)據(jù)倉(cāng)庫(kù),之后再對(duì)數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)進(jìn)一步挖掘的過(guò)程。
2.2數(shù)據(jù)模型之決策樹(shù)
決策樹(shù)結(jié)構(gòu)如圖2所示。
決策樹(shù)是樹(shù)形結(jié)構(gòu),每個(gè)節(jié)點(diǎn)是一個(gè)簡(jiǎn)單的線性決策器,節(jié)點(diǎn)屬性依據(jù)取值的不同劃分為不同的種類(lèi),其中決策樹(shù)的任意一個(gè)非葉子節(jié)點(diǎn)有兩個(gè)特點(diǎn):一個(gè)訓(xùn)練子集和一個(gè)分割屬性,每個(gè)節(jié)點(diǎn)的訓(xùn)練子集互不相交。
決策樹(shù)的構(gòu)造:
在初始時(shí)刻構(gòu)建樹(shù)根節(jié)點(diǎn),且樹(shù)根節(jié)點(diǎn)擁有所有的訓(xùn)練數(shù)據(jù),任一節(jié)點(diǎn)Ni,選擇數(shù)據(jù)的某一個(gè)屬性A,以A的不同值,把節(jié)點(diǎn)Ni擁有的數(shù)據(jù)Di劃分為全部沒(méi)有交集的集合,每個(gè)集合變成Ni的一個(gè)子節(jié)點(diǎn),當(dāng)某個(gè)節(jié)點(diǎn)的所有訓(xùn)練數(shù)據(jù)都屬于同一個(gè)類(lèi)時(shí),該節(jié)點(diǎn)的劃分過(guò)程結(jié)束,生成葉節(jié)點(diǎn)只有一個(gè)屬性,它的父節(jié)點(diǎn)擁有的數(shù)據(jù)集所屬的類(lèi)標(biāo)號(hào)。
ID3算法:
決策樹(shù)的重點(diǎn)在于如何最有效的去劃分子節(jié)點(diǎn),也就是選擇劃分的屬性使得從數(shù)據(jù)集中找到最重要的數(shù)據(jù),我們可以用數(shù)據(jù)的不純性來(lái)描述數(shù)據(jù)分割的能力,“純”代表著分割之后的子集異類(lèi)數(shù)目越少越好,因此衍生出了ID3算法,采取信息增益這個(gè)量來(lái)作為純度的度量,
算法流程:
1)計(jì)算信息熵,對(duì)于給定的變量擁有的概率分布向量(p1,p2,p3……),我們可以計(jì)算出信息熵是概率分布向量的對(duì)數(shù)期望值:H=-f(x)=-∑npn logpn,主要是來(lái)衡量隨機(jī)變量的不確定性;
2)計(jì)算熵不純度:對(duì)決策數(shù)的節(jié)點(diǎn)N定義熵不純度為i(N)=H(N);
3)對(duì)于節(jié)點(diǎn)的不同取值,都進(jìn)行子節(jié)點(diǎn)的信息增益計(jì)算:IG(N/Ai)=H(N)-∑I Ni/NH(Ni)=H(N)-H(N/Ai),可選取信息增益最大的屬性作為當(dāng)前劃分屬性,之后再?gòu)牡谝徊介_(kāi)始循環(huán),直到葉子節(jié)點(diǎn)。
以信息的增益為例,我們一般會(huì)選取屬性相同多的屬性,這樣做的后果是會(huì)造成對(duì)取值數(shù)目的屬性和個(gè)數(shù)有所偏好,為了減少這種偏好取值所帶來(lái)的影響,我們可以采用C4.5算法來(lái)消除這種影響,使用屬性增益率來(lái)劃分最適合屬性,對(duì)最適合的信息增益屬性取權(quán)值再求熵,作為最后的增益率劃分屬性。
C4.5算法:
與ID3算法不同的是,C4.5算法劃分重點(diǎn)轉(zhuǎn)移到信息增益率上,信息增益率可以表示為:IGR=IG(N/Ai)/H(N/Ai),息增益除以分割后的信息熵,它通過(guò)信息增益率的選擇分裂屬性可以解決ID3算法中通過(guò)信息增益傾向擁有多個(gè)屬性值的屬性進(jìn)行分割的不足,同時(shí)也可以將連續(xù)性的屬性進(jìn)行離散化的處理,屬性離散化處理流程:將屬性A的N個(gè)屬性按照一定的規(guī)則排序,然后將屬性A的所有量化屬性通過(guò)二分法劃分為兩個(gè)部分,可以計(jì)算出共有N-1種劃分的方法,劃分的值取相近的屬性取平均值,計(jì)算出每一種劃分方式的信息增益值,然后對(duì)比信息增益的結(jié)果,將信息增益值最大的劃分方式的閾值作為屬性A的二分閾值。也就是當(dāng)前節(jié)點(diǎn)的劃分方式。
算法流程:
1)將當(dāng)前節(jié)點(diǎn)上的屬性A的值作為所有樣本的數(shù)據(jù),然后將數(shù)據(jù)進(jìn)行排序,得到屬性A的排列屬性(xA1,..xAN)。
2)對(duì)于屬性A的排序(xA1,...xAN)中共有N-1種劃分方法,總計(jì)可以產(chǎn)生N-1個(gè)劃分閾值。假設(shè)針對(duì)第i種劃分方式,取其二分閾值為θi=(xAi+xAi)/2??梢詫⒃摴?jié)點(diǎn)上的原始數(shù)據(jù)集劃分為2個(gè)子數(shù)據(jù)集(xA1,...,xAi)(xAi+1,...,xAN)。然后計(jì)算該劃分方法下的信息增益。
3)統(tǒng)計(jì)N-1種劃分結(jié)果下的信息增益值,選取信息增益值最優(yōu)的方式作為對(duì)屬性A的劃分方式。
2.3決策樹(shù)算法優(yōu)化
為了提高決策樹(shù)的性能,避免決策樹(shù)的分支太多造成泛化的能力太差,可以在構(gòu)建決策樹(shù)時(shí)采用剪枝的方式:停止樹(shù)的構(gòu)建,不在分割某個(gè)節(jié)點(diǎn),直接構(gòu)建葉子節(jié)點(diǎn),葉節(jié)點(diǎn)的標(biāo)號(hào)為父節(jié)點(diǎn)的占優(yōu)類(lèi)或者類(lèi)分布,比如設(shè)置信息增益的閾值,分割時(shí)不能超過(guò)閾值則分割停止。或者我們?cè)跇?gòu)建決策樹(shù)之后在進(jìn)行剪枝。達(dá)到優(yōu)化性能的目的。C4.5算法使用PEP剪枝法,是一種自上而下的剪枝法,這里就不再細(xì)述。
伴隨著數(shù)據(jù)集的規(guī)模越來(lái)越大,可能會(huì)出現(xiàn)再一次內(nèi)存中無(wú)法存放所有的訓(xùn)練集,這時(shí)我們可以采用隨機(jī)讀人數(shù)據(jù)放入內(nèi)存中進(jìn)行訓(xùn)練數(shù)據(jù)子集,在獲取的子集上構(gòu)造決策樹(shù),同時(shí)可以重復(fù)采樣,獲取多棵決策樹(shù),最后再用集成學(xué)習(xí)的方式綜合多棵決策樹(shù)的結(jié)果獲取最終的分割屬性。
3結(jié)束語(yǔ)
針對(duì)數(shù)據(jù)挖掘模型做出優(yōu)化,可以極大地改善數(shù)據(jù)提取的效率和精準(zhǔn)度,對(duì)于大型企業(yè)的冗余信息提取具有重大的意義,同時(shí)由于BI系統(tǒng)依賴(lài)大數(shù)據(jù)的特性,數(shù)據(jù)挖掘算法也成為BI系統(tǒng)中很重要的一步,可以為后續(xù)的BI系統(tǒng)信息展示提供良好的支撐作用。