25個Java機器學習工具和函式庫
IT 產業越來越火,隨著更多的生力軍加入IT的大家庭,Java所佔的比重也越來越大,下面為大家整理了一些學習工具。
1. Weka整合了資料探勘工作的機器學習演算法。這些演算法可以直接應用於一個資料集或你可以自己寫程式碼來呼叫。 Weka包括一系列的工具,如資料預處理、分類、迴歸、聚類、關聯規則以及視覺化。
2.Massive Online Analysis(MOA)是一個面向資料流挖掘的熱門開源框架,有著非常活躍的成長社群。它包括一系列的機器學習演算法(分類、回歸、聚類、異常檢測、概念漂移檢測和推薦系統)和評估工具。關聯了WEKA項目,MOA也是用Java寫的,其擴充性更強。
3.MEKA專案提供了一個面向多標籤學習和評估方法的開源實作。在多標籤分類中,我們要預測每個輸入實例的多個輸出變數。這與「普通」情況下只涉及一個單一目標變數的情形不同。此外,MEKA是基於WEKA的機器學習工具包。
4. Advanced Data mining And Machine learning System(ADAMS)是一種新型的柔性工作流程引擎,旨在迅速建立並維持真實世界的複雜知識流,它是基於GPLv3發行的。
5. Environment for Developing KDD-Applications Supported by Index-Structure(ELKI)是一款基於Java的開源(AGPLv3)資料探勘軟體。 ELKI主要集中於演算法研究,重點研究聚類分析中的無監督方法和異常檢測。
6. Mallet是一個基於Java的以文字檔案為基礎的機器學習工具包。 Mallet支援分類演算法,如最大熵、樸素貝葉斯和決策樹分類。
7. Encog是一個先進的機器學習框架,整合了支援向量機(SVM)、人工神經網路、遺傳演算法、貝葉斯網路、隱馬可夫模型(HMM)、遺傳程式設計和遺傳演算法。
8. Datumbox機器學習框架是一個用Java編寫的開源框架,允許快速地開發機器學習和統計應用。該框架的核心重點包括大量的機器學習演算法以及統計測試,能夠處理中等規模的資料集。
9. Deeplearning4j是使用Java和Scala編寫的第一個商業級的、開源的、分散式深入學習庫。其設計的目的是用於商業環境中,而不是作為研究工具。
10. Mahout是一個內建演算法的機器學習架構。 Mahout-Samsara幫助人們創建自己的數學,並提供了一些現成的演算法實作。
11.Rapid Miner是德國多特蒙特技術大學開發的。它為開發者開發應用程式提供了一個GUI(圖形使用者介面)和Java API。它還提供了一些機器學習演算法,用來做資料處理、視覺化以及建模。
12. Apache SAMOA是一個機器學習(ML)框架,內嵌面向分佈式流ML演算法的程式設計抽象,並且允許在沒有直接處理底層分散式串流處理引擎(DSPEe,如Apache Storm、Apache S4和Apache samza )複雜性的情況下,開發新的ML演算法。使用者可以開發分散式串流ML演算法,而且可以在多個DSPEs上執行。
13. Neuroph透過提供支援創建、訓練和保存神經網路的Java網路庫和GUI工具,簡化了神經網路開發。
14. Oryx 2是一個建立在Apache Spark和Apache Kafka的Lambda架構實現,但隨著實時大規模機器學習而逐漸開始專業化。這是一個用於建立應用程式的框架,但也包括打包,以及面向協同過濾、分類、回歸和聚類的端到端的應用程式。
15. Stanford Classifier是一個機器學習工具,它可以將資料項歸類為一個類別。一個機率分類器,像這個,它可以對一個資料項給出類別分配的機率分佈。該軟體是最大熵分類器的一個Java實作。
16.io是一個Retina API,有著快速精確的類似大腦的自然語言處理演算法。
17.JSAT是一個快速入門的機器學習庫。該庫是我在業餘時間開發的,基於GPL3發行的。庫中的一部分內容可自主學習,例如所有的程式碼都是獨立的。 JSAT沒有外部依賴,而且是純Java寫的。
18. N-Dimensional Arrays for Java(ND4J)是一個用於JVM的科學計算函式庫。它們是用來在生產環境中使用的,這表明例程的設計是以最小的記憶體需求來運行的。
19. Java Machine Learning Library(Java機器學習函式庫)是一系列機器學習演算法的相關實作。這些演算法,無論是原始碼還是文檔,都編寫的很出色。其主要語言是Java。
20. Java-ML是一個使用Java編寫的一系列機器學習演算法的Java API。它只提供了一個標準的演算法介面。
21. MLlib (Spark)是Apache Spark的可擴充機器學習函式庫。雖然是Java,但該程式庫與平台也支援Java,Scala和Python綁定。此庫是最新的,並且演算法很多。
22. H2O是用於智慧應用的機器學習API。它在大數據上對統計學、機器學習和數學進行了規模化。 H2O可擴展,開發者可以在核心部分使用簡單的數學知識。
23. WalnutiQ是人腦部分物件導向模型,有著理論常用的學習演算法(正向簡單強烈的情緒人工智慧模型方向研究)。
24. RankLib是一個排名學習演算法庫。目前已經實現八種流行的演算法。
25. htm.java(基於Java的Hierarchical Temporal Memory演算法實作)是一個面向智慧運算的Numenta平台的Java介面。
上面是目前所用的比較多的Java的學習工具了,大家如果發現了比這更加實用的或其他的程式語言如PHP的工具,也可以一起討論啊。
兄弟會高洛峰免費收徒:http://www.hdb.com/party/lzcw-comm.html
免費領取LAMP兄弟連原創PHP影片教學光碟/《細講PHP》精要版,詳情諮詢官網客服:
http://www.lampbrother.net
以上就介紹了25個Java機器學習工具和函式庫,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。