8個(gè)用于數(shù)據(jù)挖掘的優(yōu)秀開源工具
在機(jī)器學(xué)習(xí)的流程中數(shù)據(jù)挖掘是重要的一環(huán)。數(shù)據(jù)挖掘是從大量數(shù)據(jù)中提取隱藏的或未知,但可能有用信息的過程。這些數(shù)據(jù)最終會(huì)被加上標(biāo)簽,用于模型的訓(xùn)練。很多的數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)工程師都有其熟悉的數(shù)據(jù)挖掘工具,但市場(chǎng)上也不乏許多開源的數(shù)據(jù)挖掘工具。
Apache Mahout
Apache Mahout是流行的分布式線性代數(shù)框架。該框架是具有數(shù)學(xué)表達(dá)能力的Scala DSL,能夠讓統(tǒng)計(jì)學(xué)家和數(shù)據(jù)科學(xué)家以更快的方式實(shí)現(xiàn)其算法。它構(gòu)建了一個(gè)用于快速創(chuàng)建可擴(kuò)展且性能驅(qū)動(dòng)的機(jī)器學(xué)習(xí)應(yīng)用程序的環(huán)境。

Apache Mahout有諸多優(yōu)勢(shì),比如它允許應(yīng)用程序以更快的方式分析大型數(shù)據(jù)集;支持?jǐn)?shù)學(xué)表達(dá)式Scala DSL;支持多個(gè)分布式后端,包括Apache Spark;適用于CPU/GPU/CUDA加速的模塊化本機(jī)求解器。
DataMelt
DataMelt或DMelt是用于數(shù)值計(jì)算,數(shù)學(xué)、統(tǒng)計(jì)、符號(hào)計(jì)算,數(shù)據(jù)分析和數(shù)據(jù)可視化的開源軟件。該平臺(tái)是Python,Ruby,Groovy等各種腳本語言的組合,以及其他Java軟件包。

DMelt是一個(gè)計(jì)算平臺(tái),可以在各種操作系統(tǒng)上與不同的編程語言一起使用;DataMelt可以與Java平臺(tái)的幾種腳本語言一起使用,例如Jython(Python編程語言),Groovy,JRuby(Ruby編程語言)和BeanShell;它可創(chuàng)建高質(zhì)量的矢量圖形圖像(SVG,EPS,PDF等),這些圖像可以包含在LaTeX和其他文本處理系統(tǒng)中。
ELKI
由Index-Structures或ELKI支持的開發(fā)KDD應(yīng)用程序的環(huán)境,是用Java語言編寫的開源數(shù)據(jù)挖掘軟件。該平臺(tái)能夠研究算法,重點(diǎn)是聚類分析和離群值檢測(cè)中的無監(jiān)督方法。
它提供了數(shù)據(jù)索引結(jié)構(gòu),例如R*樹,可顯著提高性能;方便該領(lǐng)域的研究人員和學(xué)生進(jìn)行擴(kuò)展;ELKI提供了大量可高度參數(shù)化的算法。
Knime
KNIME Analytics Platform用Java編寫,基于Eclipse,是用于承載數(shù)據(jù)科學(xué)任務(wù)的開源軟件。它是一種多語言軟件開發(fā)環(huán)境,包括一個(gè)集成開發(fā)環(huán)境(IDE)和一個(gè)可擴(kuò)展的插件系統(tǒng)。Knime是一個(gè)免費(fèi)的數(shù)據(jù)分析,報(bào)告和集成平臺(tái)。

它允許用戶從2000多個(gè)節(jié)點(diǎn)中進(jìn)行選擇來構(gòu)建工作流程;允許使用直觀的拖放式圖形界面,創(chuàng)建可視化工作流程,而無需編程。
Orange
Orange是一款開源的,基于組件的數(shù)據(jù)挖掘軟件,用于機(jī)器學(xué)習(xí)和數(shù)據(jù)可視化。它包括一系列數(shù)據(jù)可視化、搜索、預(yù)處理和建模技術(shù),并且可以用作Python編程語言的模塊。

Orange具有交互式數(shù)據(jù)可視化功能,還可以執(zhí)行簡(jiǎn)單的數(shù)據(jù)分析;它包括交互式數(shù)據(jù)搜索,可通過清晰的可視化進(jìn)行快速定性分析。
Rattle
Rattle用R語言編寫,是流行的用于數(shù)據(jù)挖掘的開源GUI,可顯示數(shù)據(jù)的統(tǒng)計(jì)和可視摘要。它可以轉(zhuǎn)換數(shù)據(jù),以便可以對(duì)其進(jìn)行建模。它根據(jù)數(shù)據(jù)構(gòu)建無監(jiān)督和受監(jiān)督的機(jī)器學(xué)習(xí)模型,以圖形方式顯示模型的性能,并對(duì)新數(shù)據(jù)集進(jìn)行評(píng)分以部署到生產(chǎn)中。

Rattle通過GUI展示R Statistics軟件的功能,它提供了可觀的數(shù)據(jù)挖掘功能;通過圖形用戶界面進(jìn)行的所有交互都被捕獲為R腳本,可以獨(dú)立于Rattle界面在R中輕松執(zhí)行;該工具可用于學(xué)習(xí)和發(fā)展R的技能,然后在Rattle中構(gòu)建初始模型。
scikit-learn
scikit-learn是一個(gè)流行的Python庫,用于數(shù)據(jù)分析和數(shù)據(jù)挖掘,它建立在SciPy,Numpy和Matplotlib的基礎(chǔ)上。scikit學(xué)習(xí)的主要功能為分類、回歸、聚類、降維、模型選擇以及數(shù)據(jù)預(yù)處理。
scikit-learn包括用于預(yù)測(cè)數(shù)據(jù)分析的簡(jiǎn)單有效的工具;它提供了流行的模型,包括降維、交叉驗(yàn)證集成方法、參數(shù)調(diào)整等等。
Weka
Weka或Waikato知識(shí)分析環(huán)境是一種流行的開源機(jī)器學(xué)習(xí)軟件,可以通過圖形用戶界面,標(biāo)準(zhǔn)終端應(yīng)用程序或Java API進(jìn)行訪問。它是用于解決實(shí)際數(shù)據(jù)挖掘問題的機(jī)器學(xué)習(xí)算法的集合。它是用Java編寫的,幾乎可以在任何平臺(tái)上運(yùn)行。

Weka包含大量用于標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)任務(wù)的內(nèi)置工具,它提供對(duì)著名工具箱,如scikit-learn,R以及Deeplearning4j的透明訪問。