- 數(shù)據(jù)挖掘(第2版)
- 王朝霞主編
- 3324字
- 2023-12-13 16:00:58
1.3 數(shù)據(jù)挖掘的常用工具
由于數(shù)據(jù)挖掘技術(shù)在各領(lǐng)域產(chǎn)生的巨大商業(yè)價(jià)值,一些著名的大學(xué)和國(guó)際知名公司紛紛投入數(shù)據(jù)挖掘工具的研發(fā)中,開(kāi)發(fā)出很多優(yōu)秀的數(shù)據(jù)挖掘工具。數(shù)據(jù)挖掘工具[12]可分為商用工具和開(kāi)源工具。
1.3.1 商用工具
商用工具主要由商用的開(kāi)發(fā)商提供,通過(guò)市場(chǎng)銷售,并提供相關(guān)服務(wù)。商用工具不僅提供易用的可視化界面,還集成數(shù)據(jù)處理、建模、評(píng)估等一整套功能,并支持常用的數(shù)據(jù)挖掘算法。與開(kāi)源工具相比,商用工具功能更強(qiáng)大,軟件性能更成熟和穩(wěn)定。主流的商用工具有SAS Enterprise Miner、Clementine、Intelligent Miner等,這些工具在各行業(yè)的數(shù)據(jù)統(tǒng)計(jì)和數(shù)據(jù)挖掘工作中得到了廣泛的應(yīng)用。
1.SAS Enterprise Miner
SAS Enterprise Miner是一種通用的數(shù)據(jù)挖掘工具,按照SAS定義的數(shù)據(jù)挖掘方法——SEMMA方法,即抽樣(Sample)、探索(Explore)、修改(Modify)、建模(Model)、評(píng)價(jià)(Assess)的方式進(jìn)行數(shù)據(jù)挖掘。它把統(tǒng)計(jì)分析系統(tǒng)和圖形用戶界面(GUI)集成起來(lái),為用戶提供了用于建模的圖形化流程處理環(huán)境,可利用具有明確代表意義的圖形化模塊將數(shù)據(jù)挖掘的工具單元組成一個(gè)處理流程圖,并以此來(lái)組織數(shù)據(jù)挖掘過(guò)程。圖形化的界面、可視化的操作,使統(tǒng)計(jì)學(xué)無(wú)經(jīng)驗(yàn)的用戶也可以理解和使用它;但對(duì)于有經(jīng)驗(yàn)的專家,它也可讓用戶精細(xì)地調(diào)整分析處理過(guò)程。它支持并提供一組常用的數(shù)據(jù)挖掘算法,包括決策樹(shù)、神經(jīng)網(wǎng)絡(luò)、回歸、關(guān)聯(lián)、聚類等,還支持文本挖掘。
2.Clementine
Clementine是SPSS公司開(kāi)發(fā)的數(shù)據(jù)挖掘工具,支持整個(gè)數(shù)據(jù)挖掘過(guò)程,即從數(shù)據(jù)獲取、轉(zhuǎn)化、建模、評(píng)估到最終部署的全部過(guò)程,還支持?jǐn)?shù)據(jù)挖掘的行業(yè)標(biāo)準(zhǔn)CRISP-DM。
Clementine結(jié)合了多種圖形使用接口的分析技術(shù),不僅具有分析功能,還能夠提供可使用的、簡(jiǎn)單的、可視化程序環(huán)境。Clementine資料讀取能力強(qiáng)大,支持多種數(shù)據(jù)源的讀取,而且為用戶提供大量的人工智能、統(tǒng)計(jì)分析的模型(神經(jīng)網(wǎng)絡(luò)、聚類分析、關(guān)聯(lián)分析、因子分析等)。Clementine是采用客戶/服務(wù)器架構(gòu)的產(chǎn)品,既可以單機(jī)運(yùn)行,也可以連接網(wǎng)絡(luò)上的Clementine Server。
Clementine的設(shè)計(jì)思想是用簡(jiǎn)單的方式進(jìn)行數(shù)據(jù)挖掘,盡量屏蔽數(shù)據(jù)挖掘算法的復(fù)雜性及軟件操作的煩瑣性,使數(shù)據(jù)挖掘人員將更多的精力放在使用先進(jìn)的挖掘技術(shù)解決商業(yè)問(wèn)題而不是放在操作軟件本身。
3.Intelligent Miner
IBM的Intelligent Miner包含廣泛的數(shù)據(jù)挖掘技術(shù)及算法,可容納相當(dāng)大的數(shù)據(jù)量且有強(qiáng)大的計(jì)算能力。它在IBM SP的并行處理計(jì)算機(jī)系統(tǒng)上執(zhí)行效率最高,也可以在IBM或非IBM平臺(tái)上執(zhí)行。豐富的API可用來(lái)開(kāi)發(fā)數(shù)據(jù)挖掘應(yīng)用軟件,可通過(guò)C函數(shù)庫(kù)來(lái)存取所有數(shù)據(jù)挖掘引擎和操作函數(shù)。它包含多種統(tǒng)計(jì)方法和挖掘算法,可以進(jìn)行線性回歸、因子分析、主變量分析、分類、分群、關(guān)聯(lián)、相似序列、序列模式、預(yù)測(cè)等。
Intelligent Miner包括分析軟件工具Intelligent Miner for Data和Intelligent Miner for Text,不僅可以尋找傳統(tǒng)文件、數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)和數(shù)據(jù)中心中的隱含信息,還允許企業(yè)從文本信息中獲取有價(jià)值的客戶信息。
4.QUEST
QUEST是IBM公司Almaden研究中心開(kāi)發(fā)的一個(gè)多任務(wù)數(shù)據(jù)挖掘系統(tǒng),該系統(tǒng)提供了高效的數(shù)據(jù)開(kāi)采基本構(gòu)件,可用于新一代決策支持系統(tǒng)的應(yīng)用開(kāi)發(fā)。
QUEST提供了專門在大型數(shù)據(jù)庫(kù)上進(jìn)行各種開(kāi)采的功能,包括關(guān)聯(lián)規(guī)則發(fā)現(xiàn)、序列模式發(fā)現(xiàn)、時(shí)間序列聚類、決策樹(shù)分類、遞增式主動(dòng)開(kāi)采等。各種開(kāi)采算法可適用于任意大小的數(shù)據(jù)庫(kù),并具有近似線性的計(jì)算復(fù)雜度。
1.3.2 開(kāi)源工具
開(kāi)源工具,意為向公眾開(kāi)放源代碼的軟件工具,其最大的優(yōu)勢(shì)在于免費(fèi)。研制開(kāi)源軟件的技術(shù)人員相信軟件應(yīng)該是開(kāi)放的,讓任何有能力的人參與并共同完善軟件,能集思廣益,并使得軟件更新速度更快。除了商業(yè)數(shù)據(jù)挖掘軟件,市場(chǎng)上也出現(xiàn)了一批優(yōu)秀的開(kāi)源數(shù)據(jù)挖掘軟件,它們?cè)跀?shù)據(jù)挖掘方面同樣具有自己的特點(diǎn)和優(yōu)勢(shì)。相對(duì)于商業(yè)工具,開(kāi)源工具更容易學(xué)習(xí)和掌握,缺乏數(shù)理統(tǒng)計(jì)知識(shí)的人也能使用。
1.R
R是用于統(tǒng)計(jì)分析和圖形化的計(jì)算機(jī)語(yǔ)言及分析工具,提供了豐富的統(tǒng)計(jì)分析和數(shù)據(jù)挖掘功能,其核心模塊是用C、C++和Fortran編寫的。為了便于使用,它提供了一種腳本語(yǔ)言,即R語(yǔ)言。R語(yǔ)言以S語(yǔ)言環(huán)境為基礎(chǔ)。R[13]支持一系列分析技術(shù),包括統(tǒng)計(jì)檢驗(yàn)、預(yù)測(cè)建模、數(shù)據(jù)可視化等。在CRAN上可以找到眾多開(kāi)源的擴(kuò)展包。
R是一套完整的數(shù)據(jù)處理、計(jì)算和制圖軟件系統(tǒng),其功能包括:數(shù)據(jù)存儲(chǔ)和處理系統(tǒng);數(shù)組運(yùn)算工具(向量、矩陣運(yùn)算方面的功能尤其強(qiáng)大);完整連貫的統(tǒng)計(jì)分析工具;優(yōu)秀的統(tǒng)計(jì)制圖功能;簡(jiǎn)便且強(qiáng)大的編程語(yǔ)言;可操縱數(shù)據(jù)的輸入和輸出,可實(shí)現(xiàn)分支、循環(huán),用戶可自定義功能。R的思想是:它可以提供一些集成的統(tǒng)計(jì)工具,但更主要的是它提供各種數(shù)學(xué)計(jì)算、統(tǒng)計(jì)計(jì)算的函數(shù),從而讓使用者能靈活機(jī)動(dòng)地進(jìn)行數(shù)據(jù)分析,甚至創(chuàng)造出符合需要的新的統(tǒng)計(jì)計(jì)算方法。
2.Python
Python是一種功能強(qiáng)大的、開(kāi)源的、解釋性的、面向?qū)ο笥?jì)算機(jī)的編程語(yǔ)言,內(nèi)建有各種高級(jí)數(shù)據(jù)結(jié)構(gòu),支持模塊和包,支持多種平臺(tái)并可擴(kuò)展。Python語(yǔ)言簡(jiǎn)潔、易學(xué)習(xí)、易閱讀,能降低程序的維護(hù)費(fèi)用,已經(jīng)成為很多用戶歡迎的、用途廣泛的語(yǔ)言。
Python是人工智能研究領(lǐng)域中一個(gè)非常重要的工具,提供sklearn第三方程序庫(kù),對(duì)一些常用的機(jī)器學(xué)習(xí)方法進(jìn)行了封裝,只需要調(diào)用sklearn模塊中的函數(shù)就可以實(shí)現(xiàn)大多數(shù)機(jī)器學(xué)習(xí)任務(wù),包括分類、回歸、聚類、數(shù)據(jù)降維、數(shù)據(jù)預(yù)處理等。
Python在科學(xué)計(jì)算和數(shù)據(jù)分析領(lǐng)域占據(jù)著越來(lái)越重要的地位,提供了NumPy、SciPy、Matplotlib和Pandas等眾多第三方程序庫(kù),只需要調(diào)用以上程序庫(kù)中的函數(shù)就可以實(shí)現(xiàn)大多數(shù)數(shù)據(jù)分析和數(shù)據(jù)計(jì)算功能,以及實(shí)現(xiàn)數(shù)據(jù)可視化。相對(duì)于R語(yǔ)言,Python語(yǔ)言更平易近人,它能完成數(shù)據(jù)統(tǒng)計(jì)、分析、可視化等任務(wù),滿足幾乎所有數(shù)據(jù)挖掘下所需要的數(shù)據(jù)處理、統(tǒng)計(jì)模型和圖表繪制等功能需求。
3.WEKA
WEKA(Waikato Environment for Knowledge Analysis,懷卡托智能分析環(huán)境)是一款免費(fèi)的、非商業(yè)化的數(shù)據(jù)挖掘軟件,是基于Java環(huán)境下開(kāi)源的機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘軟件。WEKA作為一個(gè)公開(kāi)的數(shù)據(jù)挖掘工作平臺(tái),集成大量能承擔(dān)數(shù)據(jù)挖掘任務(wù)的機(jī)器學(xué)習(xí)算法,包括對(duì)數(shù)據(jù)進(jìn)行預(yù)處理、分類、回歸、聚類、關(guān)聯(lián)規(guī)則,以及交互式界面上的可視化。
WEKA可能是名氣最大的開(kāi)源機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘軟件。高級(jí)用戶可以通過(guò)Java編程和命令行來(lái)調(diào)用其分析組件,同時(shí)它也為普通用戶提供了圖形化界面。使用WEKA可以輕松地進(jìn)行數(shù)據(jù)挖掘,可以在數(shù)據(jù)集上進(jìn)行數(shù)據(jù)預(yù)處理和運(yùn)用數(shù)據(jù)挖掘算法。
WEKA的靈活性和可擴(kuò)展性很好,允許開(kāi)發(fā)和擴(kuò)展新的挖掘算法。WEKA提供了文檔全面的Java函數(shù)和類庫(kù),非常適合擴(kuò)展。當(dāng)然,首先需要充分了解WEKA的架構(gòu),并掌握J(rèn)ava編程技術(shù)。
4.RapidMiner
RapidMiner原名YALE(Yet Another Learning Environment),是用于數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)、商業(yè)預(yù)測(cè)分析的開(kāi)源計(jì)算環(huán)境。它提供了圖形用戶界面,采用了類似Windows資源管理器中的樹(shù)狀結(jié)構(gòu)來(lái)組織分析組件,樹(shù)上每個(gè)節(jié)點(diǎn)表示不同的運(yùn)算符。YALE提供了大量的運(yùn)算符,包括數(shù)據(jù)處理、變換、探索、建模、評(píng)估等各個(gè)環(huán)節(jié)。這些算子由詳細(xì)的XML文件進(jìn)行記錄,并通過(guò)圖形用戶界面表現(xiàn)出來(lái)。
RapidMiner提供的數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)程序包括數(shù)據(jù)加載和轉(zhuǎn)換(ETL)、數(shù)據(jù)預(yù)處理和可視化、建模、評(píng)估和部署。數(shù)據(jù)挖掘的流程以XML文件加以描述,并通過(guò)圖形用戶界面顯示出來(lái)。
RapidMiner是由Java編程語(yǔ)言編寫的,集成了WEKA的學(xué)習(xí)器和評(píng)估方法,并可以與R語(yǔ)言進(jìn)行協(xié)同工作。
5.Mahout
Mahout是Apache Software Foundation(ASF)旗下的一個(gè)開(kāi)源項(xiàng)目,在機(jī)器學(xué)習(xí)領(lǐng)域提供了一些可擴(kuò)展的經(jīng)典算法的實(shí)現(xiàn)和數(shù)據(jù)挖掘的程序庫(kù)。它可以實(shí)現(xiàn)很多功能,包括聚類、分類、推薦過(guò)濾、頻繁子項(xiàng)挖掘等。Mahout的算法既可以在單機(jī)上運(yùn)行,也可以在Hadoop平臺(tái)上運(yùn)行。Mahout通過(guò)將機(jī)器學(xué)習(xí)算法建于MapReduce并行計(jì)算模型之上,并將算法的輸入、輸出和中間結(jié)果構(gòu)建于HDFS分布式文件系統(tǒng)之上,使得Mahout具有高吞吐、高并發(fā)、高可靠性的特點(diǎn),這就保證了其適合于大規(guī)模數(shù)據(jù)的機(jī)器學(xué)習(xí)。目前,Mahout已經(jīng)停止接受新的MapReduce算法,改為支持基于Spark和H2O平臺(tái)的算法。Mahout實(shí)現(xiàn)的機(jī)器學(xué)習(xí)算法包括聚類算法、分類算法、關(guān)聯(lián)規(guī)則挖掘、回歸、降維、進(jìn)化算法、過(guò)濾、向量相似度計(jì)算等。
6.Spark MLlib
Spark是一個(gè)開(kāi)源集群運(yùn)算框架,最初是由加州大學(xué)伯克利分校AMPLab實(shí)驗(yàn)室所開(kāi)發(fā)的。Spark和MapReduce同為主流大數(shù)據(jù)處理系統(tǒng),但它使用了內(nèi)存內(nèi)運(yùn)算技術(shù),比MapReduce程序運(yùn)行性能要好10~100倍,且編程更為方便,支持SQL查詢、流式查詢,自帶機(jī)器學(xué)習(xí)算法實(shí)現(xiàn)庫(kù)MLlib,提供Java、Scala、Python、R等多種語(yǔ)言的API接口,并且兼容HBase、HDFS等Hadoop數(shù)據(jù)源,使得原來(lái)基于Hadoop的大數(shù)據(jù)應(yīng)用系統(tǒng)可以很容易地遷移到Spark上,從而受到廣大開(kāi)發(fā)者的熱捧。
MLlib(Machine Learning lib)是Spark中的一個(gè)可擴(kuò)展的機(jī)器學(xué)習(xí)庫(kù),由通用的學(xué)習(xí)算法和工具組成,包括分類、線性回歸、聚類、協(xié)同過(guò)濾、梯度下降及底層優(yōu)化原語(yǔ)。MLlib專為在集群上并行運(yùn)行而設(shè)計(jì),只包含能夠在集群上運(yùn)行良好的并行算法,因此MLlib中的每個(gè)算法都適用于大規(guī)模數(shù)據(jù)集。
- 面點(diǎn)工藝學(xué)
- 平狄克《微觀經(jīng)濟(jì)學(xué)》(第7版)課后習(xí)題詳解
- 物流概論(第三版)
- 生活垃圾滲濾液催化氧化處理技術(shù)
- 計(jì)算機(jī)系統(tǒng)導(dǎo)論實(shí)踐教程
- 鮮活的馬克思主義:馬克思主義基本原理概論實(shí)踐教程
- 周勝林《當(dāng)代新聞寫作》(第2版)筆記和典型題詳解
- 天津大學(xué)無(wú)機(jī)化學(xué)教研室《無(wú)機(jī)化學(xué)》(第4版)筆記和課后習(xí)題(含考研真題)詳解
- 宋朝武《民事訴訟法學(xué)》(第3版)筆記和課后習(xí)題(含考研真題)詳解
- 機(jī)械工程概論
- 2020年山東公務(wù)員錄用考試專項(xiàng)教材:言語(yǔ)理解與表達(dá)【考點(diǎn)精講+典型題(含歷年真題)詳解】
- 吳偉仁《美國(guó)文學(xué)史及選讀》配套題庫(kù)【章節(jié)題庫(kù)(含名校考研真題)+模擬試題】
- 物理化學(xué)實(shí)驗(yàn)
- 石油工程專業(yè)英語(yǔ)教程
- 時(shí)裝設(shè)計(jì)師面輔料應(yīng)用手冊(cè)