在機器學習的流程中資料探勘是重要的一環。資料探勘是從大量資料中提取隱藏的或未知,但可能有用資訊的過程。這些資料最終會被加上標籤,用於模型的訓練。很多的資料科學家和機器學習工程師都有其熟悉的資料探勘工具,但市場上也不乏許多開源的資料探勘工具。
Apache MahoutApache Mahout是流行的分散式線性代數框架。該框架是具有數學表達能力的Scala DSL,能夠讓統計學家和資料科學家以更快的方式實現其演算法。它構建了一個用於快速建立可擴充套件且效能驅動的機器學習應用程式的環境。
Apache Mahout有諸多優勢,比如它允許應用程式以更快的方式分析大型資料集;支援數學表示式Scala DSL;支援多個分散式後端,包括Apache Spark;適用於CPU/GPU/CUDA加速的模組化本機求解器。
DataMeltDataMelt或DMelt是用於數值計算,數學、統計、符號計算,資料分析和資料視覺化的開源軟體。該平臺是Python,Ruby,Groovy等各種指令碼語言的組合,以及其他Java軟體包。
DMelt是一個計算平臺,可以在各種作業系統上與不同的程式語言一起使用;DataMelt可以與Java平臺的幾種指令碼語言一起使用,例如Jython(Python程式語言),Groovy,JRuby(Ruby程式語言)和BeanShell;它可建立高品質的向量圖形影象(SVG,EPS,PDF等),這些影象可以包含在LaTeX和其他文字處理系統中。
ELKI由Index-Structures或ELKI支援的開發KDD應用程式的環境,是用Java語言編寫的開源資料探勘軟體。該平臺能夠研究演算法,重點是聚類分析和離群值檢測中的無監督方法。
它提供了資料索引結構,例如R*樹,可顯著提高效能;方便該領域的研究人員和學生進行擴充套件;ELKI提供了大量可高度引數化的演算法。
KnimeKNIME Analytics Platform用Java編寫,基於Eclipse,是用於承載資料科學任務的開源軟體。它是一種多語言軟體開發環境,包括一個整合開發環境(IDE)和一個可擴充套件的外掛系統。Knime是一個免費的資料分析,報告和整合平臺。
它允許使用者從2000多個節點中進行選擇來構建工作流程;允許使用直觀的拖放式圖形介面,建立視覺化工作流程,而無需程式設計。
OrangeOrange是一款開源的,基於元件的資料探勘軟體,用於機器學習和資料視覺化。它包括一系列資料視覺化、搜尋、預處理和建模技術,並且可以用作Python程式語言的模組。
Orange具有互動式資料視覺化功能,還可以執行簡單的資料分析;它包括互動式資料搜尋,可通過清晰的視覺化進行快速定性分析。
RattleRattle用R語言編寫,是流行的用於資料探勘的開源GUI,可顯示資料的統計和可視摘要。它可以轉換資料,以便可以對其進行建模。它根據資料構建無監督和受監督的機器學習模型,以圖形方式顯示模型的效能,並對新資料集進行評分以部署到生產中。
Rattle通過GUI展示R Statistics軟體的功能,它提供了可觀的資料探勘功能;通過圖形使用者介面進行的所有互動都被捕獲為R指令碼,可以獨立於Rattle介面在R中輕鬆執行;該工具可用於學習和發展R的技能,然後在Rattle中構建初始模型。
scikit-learnscikit-learn是一個流行的Python庫,用於資料分析和資料探勘,它建立在SciPy,Numpy和Matplotlib的基礎上。scikit學習的主要功能為分類、迴歸、聚類、降維、模型選擇以及資料預處理。
scikit-learn包括用於預測資料分析的簡單有效的工具;它提供了流行的模型,包括降維、交叉驗證整合方法、引數調整等等。
WekaWeka或Waikato知識分析環境是一種流行的開源機器學習軟體,可以通過圖形使用者介面,標準終端應用程式或Java API進行訪問。它是用於解決實際資料探勘問題的機器學習演算法的集合。它是用Java編寫的,幾乎可以在任何平臺上執行。
Weka包含大量用於標準機器學習任務的內建工具,它提供對著名工具箱,如scikit-learn,R以及Deeplearning4j的透明訪問。