面向中小企業(yè)智能數(shù)據(jù)處理工具
五、系統(tǒng)的結(jié)構(gòu)
系統(tǒng)分為兩大部分棗分析設(shè)計(jì)部分和應(yīng)用系統(tǒng)部分,分別面向企業(yè)IS(信息系統(tǒng)管理員)人員與企業(yè)管理人員,IS人員除了負(fù)責(zé)高級(jí)數(shù)據(jù)分析工作以外,還負(fù)責(zé)為管理人員設(shè)計(jì)具體應(yīng)用系統(tǒng),由于大部分具體的應(yīng)用工作可以由管理人員來完成,所以從另一個(gè)方面緩解了信息人才缺乏的問題。應(yīng)用系統(tǒng)部分的功能結(jié)構(gòu)圖見圖一,設(shè)計(jì)部分功能結(jié)構(gòu)圖見圖二。系統(tǒng)中最重要的是“描述層”的設(shè)計(jì)。
在一般的商業(yè)用戶訪問數(shù)據(jù)時(shí),他們最擔(dān)心的往往是復(fù)雜的數(shù)據(jù)庫(kù)術(shù)語和繁復(fù)的數(shù)據(jù)庫(kù)操作。如何才能賦予這些商業(yè)用戶自主訪問數(shù)據(jù)庫(kù)和數(shù)據(jù)倉(cāng)庫(kù)中信息的能力,使他們可以把那些數(shù)據(jù)庫(kù)術(shù)語和操作拋之腦后呢?我們?cè)诖耸褂昧艘环N稱為“描述層”的技術(shù)來解決這個(gè)問題。在使用了“描述層”技術(shù)后,不但解決了一般商業(yè)用戶擔(dān)心的問題,而且同時(shí)也提供了IS人員控制和管理數(shù)據(jù)訪問所必須的工具。這一技術(shù)把復(fù)雜的數(shù)據(jù)庫(kù)結(jié)構(gòu)描述成易于理解的業(yè)務(wù)術(shù)語,把商業(yè)用戶同技術(shù)性的數(shù)據(jù)庫(kù)術(shù)語以及復(fù)雜的SQL訪問語言分離開來。它就像一個(gè)透鏡,用戶可以通過它來看數(shù)據(jù)倉(cāng)庫(kù)。這樣最終用戶無須具備計(jì)算機(jī)專業(yè)知識(shí),更不必是數(shù)據(jù)庫(kù)方面的專家,就能夠自主地訪問公共數(shù)據(jù),分析信息,從而更好地理解企業(yè)發(fā)展的趨勢(shì),作出明智的決策。
“描述層”可以被稱為一個(gè)覆蓋在數(shù)據(jù)庫(kù)內(nèi)部數(shù)據(jù)對(duì)象之上的一個(gè)解釋層,是用戶和數(shù)據(jù)庫(kù)之間的一個(gè)代碼翻譯層,也就是將數(shù)據(jù)庫(kù)中比較凌亂、復(fù)雜的數(shù)據(jù)對(duì)象(例如:存儲(chǔ)在數(shù)據(jù)表中的各個(gè)字段的記錄)通過預(yù)先定義好的規(guī)則(“描述層”)過濾轉(zhuǎn)換成實(shí)際使用的業(yè)務(wù)對(duì)象,例如:人員姓名、物資類型等等。同時(shí),“描述層”的功能不僅僅在于過濾和映射,還可以對(duì)數(shù)據(jù)通過預(yù)先定義好的規(guī)則進(jìn)行重組,例如在數(shù)據(jù)庫(kù)中沒有的高層數(shù)據(jù)(比如:通過價(jià)格和銷售量在本地提取銷售額),所以我們可以通過“描述層”給數(shù)據(jù)庫(kù)增加一些不存在而又有實(shí)際意義的內(nèi)容。另外,我們還可以利用“描述層”來增加數(shù)據(jù)庫(kù)中數(shù)據(jù)所包含的信息量(比如:建立某一字段的分類規(guī)則,使數(shù)據(jù)庫(kù)中的記錄可以分屬于不同的類別,具體的例子是,按銷售業(yè)績(jī)多少分為優(yōu)、良、中、差,用戶就可以直接用諸如 “銷售業(yè)績(jī)=優(yōu)”之類的條件進(jìn)行查詢;類似的還有分層規(guī)則等其它許多規(guī)則)。最后,我們還可以在“描述層”中加入一些預(yù)定義的條件,在以后的查詢或分析時(shí),就可以直接從“描述層”中提取條件。使用“描述層”重組數(shù)據(jù)的實(shí)際意義在于:數(shù)據(jù)庫(kù)內(nèi)大量珍貴的數(shù)據(jù)資源不再是只有數(shù)據(jù)庫(kù)開發(fā)人員才能理解的“天書”,通過“描述層”的解釋和組織,大多數(shù)不具備計(jì)算機(jī)專業(yè)知識(shí)的業(yè)務(wù)人員,可以直接使用這些數(shù)據(jù)。
在這個(gè)部分,主要的工作就是兩點(diǎn),即“描述層”的定義與解釋。在“描述層”的定義部分,要進(jìn)行各種不同類型的定義,具體來說就是上一段提到的幾種類型,然后將各個(gè)類型的定義作為元數(shù)據(jù)進(jìn)行存儲(chǔ)。在定義的過程中,必然要通過數(shù)據(jù)庫(kù)連接工具來對(duì)數(shù)據(jù)庫(kù)或數(shù)據(jù)倉(cāng)庫(kù)進(jìn)行訪問,再按照數(shù)據(jù)庫(kù)的結(jié)構(gòu)和內(nèi)容來設(shè)計(jì)各個(gè)不同的“描述”。另外,在以后使用本系統(tǒng)的其它主體部分如查詢、報(bào)表、分析和數(shù)據(jù)挖掘部分時(shí),將用到“描述層”中定義的“描述”,這是就需要“描述層”的解釋部分來進(jìn)行解釋,將“描述”語言翻譯為數(shù)據(jù)庫(kù)能夠接受的語言。
本軟件設(shè)計(jì)中的另一個(gè)重點(diǎn)是體現(xiàn)商業(yè)智能化的數(shù)據(jù)挖掘功能,隨著數(shù)據(jù)庫(kù)技術(shù)的不斷發(fā)展及數(shù)據(jù)庫(kù)管理系統(tǒng)的廣泛應(yīng)用,數(shù)據(jù)庫(kù)中存儲(chǔ)的數(shù)據(jù)量急劇增大,可是目前用于對(duì)這些數(shù)據(jù)進(jìn)行分析處理的工具卻很少?,F(xiàn)在所能做到的只是對(duì)數(shù)據(jù)庫(kù)中已有的數(shù)據(jù)進(jìn)行由人驅(qū)動(dòng)的分析,人們通過這些數(shù)據(jù)所獲得的信息量?jī)H僅是整個(gè)數(shù)據(jù)庫(kù)所包含的信息量的一部分,隱藏在這些數(shù)據(jù)之后的更重要的信息是關(guān)于這些數(shù)據(jù)的整體特征的描述及對(duì)其發(fā)展趨勢(shì)的預(yù)測(cè),這些信息在決策生成的過程中具有重要的參考價(jià)值。
數(shù)據(jù)庫(kù)中的知識(shí)發(fā)現(xiàn)(KDD)就是利用機(jī)器學(xué)習(xí)的方法從數(shù)據(jù)庫(kù)中提取有價(jià)值知識(shí)的過程,是數(shù)據(jù)庫(kù)技術(shù)和機(jī)器學(xué)習(xí)兩個(gè)學(xué)科的交叉學(xué)科。數(shù)據(jù)庫(kù)技術(shù)側(cè)重于對(duì)數(shù)據(jù)存儲(chǔ)處理的高效率方法的研究,而機(jī)器學(xué)習(xí)則側(cè)重于設(shè)計(jì)新的方法從數(shù)據(jù)中提取知識(shí)。KDD利用數(shù)據(jù)庫(kù)技術(shù)對(duì)數(shù)據(jù)進(jìn)行前端處理,而利用機(jī)器學(xué)習(xí)方法則從處理后的數(shù)據(jù)中提取有用的知識(shí)。KDD與其他學(xué)科也有很強(qiáng)的聯(lián)系,如統(tǒng)計(jì)學(xué)、數(shù)學(xué)和可視化技術(shù)等等。
在我們的系統(tǒng)中,將實(shí)現(xiàn)一個(gè)完整的KDD工具,也可以稱為數(shù)據(jù)挖掘(Data Mining)工具。因?yàn)槲覀円嫦驈V大商業(yè)用戶,所以我們的系統(tǒng)特別注重對(duì)用戶與數(shù)據(jù)庫(kù)交互的支持,由用戶根據(jù)數(shù)據(jù)庫(kù)中的數(shù)據(jù),選擇一種模型,然后選擇有關(guān)數(shù)據(jù)進(jìn)行知識(shí)的挖掘,并不斷對(duì)模型的數(shù)據(jù)進(jìn)行調(diào)整優(yōu)化。整個(gè)處理過程分為下面一些步驟:
數(shù)據(jù)發(fā)現(xiàn):了解任務(wù)所涉及的原始數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)所代表的意義,并從數(shù)據(jù)庫(kù)中提取相關(guān)數(shù)據(jù)。
數(shù)據(jù)清理:對(duì)用戶的數(shù)據(jù)進(jìn)行清理以使其適于后續(xù)的數(shù)據(jù)處理。這需要用戶的背景知識(shí),同時(shí)也應(yīng)該根據(jù)實(shí)際的任務(wù)確定清理規(guī)則。
模型的確定:通過對(duì)數(shù)據(jù)的分析選擇一個(gè)初始的模型。模型定義一般分為三個(gè)步驟:數(shù)據(jù)分隔,模型選擇和參數(shù)選擇。在我們的系統(tǒng)中,主要引入了關(guān)聯(lián)規(guī)則模型和分類模型。
數(shù)據(jù)分析:對(duì)選中的模型進(jìn)行詳細(xì)定義,確定模型的類型及有關(guān)屬性;通過對(duì)相關(guān)數(shù)據(jù)的計(jì)算,計(jì)算模型的有關(guān)參數(shù),得到模型的各屬性值;通過測(cè)試數(shù)據(jù)對(duì)得到的模型進(jìn)行測(cè)試和評(píng)價(jià);根據(jù)評(píng)價(jià)結(jié)果對(duì)模型進(jìn)行優(yōu)化。
輸出結(jié)果生成:數(shù)據(jù)分析的結(jié)果一般都比較復(fù)雜,很難被人理解,將結(jié)果以文檔或圖表形式表現(xiàn)出來則易于被人接受。
在KDD過程中,最重要的是其中的數(shù)據(jù)挖掘部分,即模型和相關(guān)屬性的確定。我們計(jì)劃采用其中應(yīng)用最廣泛的兩個(gè)模型,分別是關(guān)聯(lián)規(guī)則和分類規(guī)則,以下作詳細(xì)的介紹。
關(guān)聯(lián)規(guī)則是形式如下的一種規(guī)則,“在購(gòu)買面包和黃油的顧客中,有90%的人同時(shí)也買了牛奶”(面包+黃油=>牛奶 )。用于關(guān)聯(lián)規(guī)則發(fā)現(xiàn)的主要對(duì)象是事務(wù)型數(shù)據(jù)庫(kù),其中最典型的應(yīng)用則是售貨數(shù)據(jù),一個(gè)事務(wù)一般由如下幾個(gè)部分組成:事務(wù)處理時(shí)間,一組顧客購(gòu)買的物品,有時(shí)也有顧客標(biāo)識(shí)號(hào)(如信用卡號(hào))。如果對(duì)這些歷史事務(wù)數(shù)據(jù)進(jìn)行分析,則可對(duì)顧客的購(gòu)買行為提供極有價(jià)值的信息。例如,可以幫助如何擺放貨架上的商品(如把顧客經(jīng)常同時(shí)買的商品放在一起),幫助如何規(guī)劃市場(chǎng)(怎樣相互搭配進(jìn)貨)。由此可見,從事務(wù)數(shù)據(jù)中發(fā)現(xiàn)關(guān)聯(lián)規(guī)則,對(duì)于改進(jìn)零售業(yè)等商業(yè)活動(dòng)的決策非常重要。隨著應(yīng)用的推廣,關(guān)聯(lián)規(guī)則已經(jīng)在許多領(lǐng)域發(fā)揮作用,成為最典型的數(shù)據(jù)挖掘應(yīng)用。
分類也是數(shù)據(jù)挖掘中的一項(xiàng)非常重要的任務(wù)。分類的目的是學(xué)會(huì)一個(gè)分類函數(shù)或分類模型(也常常稱作分類器),該模型能把數(shù)據(jù)庫(kù)中的數(shù)據(jù)項(xiàng)映射到給定類別中的某一個(gè)。分類的應(yīng)用實(shí)例也很多,比較典型的由保險(xiǎn)公司的保費(fèi)設(shè)置。保險(xiǎn)公司成功的一個(gè)關(guān)鍵因素是在設(shè)置具有競(jìng)爭(zhēng)力保費(fèi)和覆蓋風(fēng)險(xiǎn)之間選擇一種平衡。保險(xiǎn)市場(chǎng)競(jìng)爭(zhēng)激烈,設(shè)置過高的保費(fèi)意味著失去市場(chǎng),而保費(fèi)過低又會(huì)影響公司的贏利。保費(fèi)通常是通過對(duì)一些主要的因素(如駕駛員的年齡、車輛的類型等)進(jìn)行多種分析和直覺判斷來確定。由于投資組合的數(shù)量很大,分析方法通常是粗略的。采用分類進(jìn)行數(shù)據(jù)挖掘以后,就可以利用計(jì)算機(jī)處理海量數(shù)據(jù)的能力來進(jìn)行合理的分類,定出合理的保費(fèi),使保險(xiǎn)公司得到最大收益。
評(píng)論