我們正在使用神經網絡開發一個Java項目。我們想在我們的數據集上測試不同的網絡結構。現在我們評估哪些Java神經網絡在性能方面最好。我們正在評估Encog,Neuroph和DL4J。你能告訴我們一些好的資源或你自己的經驗嗎? 感謝性能Encog vs Deeplearning4J
回答
Deeplearning4j創作者在這裏:
Encog是在90年代初寫的傑夫·希頓,並在很長的時間標準的Java DL框架。我不相信Encog處理分佈式計算,可以與GPU,Hadoop,Spark或Kafka一起工作,或者自2006年以來考慮到DL中許多算法的進步。(傑夫,如果我錯了,請糾正我)
Deeplearning4j完成所有這些事情。它適用於使用Spark作爲訪問層的分佈式CPU或GPU。它已經通過CDH5認證,並很快通過HDP認證......它包括LSTM(RNN),深度卷積網絡,RBM,DBN和word2vec以及其他神經網絡的實現。它是目前最流行的用於JVM的DL工具,也是全球排名前五的DL庫之一。
Deeplearning4j由數值計算庫ND4J或用於Java的n維數組驅動。基本上,我們將Numpy移植到JVM。這使DL4J具有可擴展性,並且您會看到我們在不久的將來添加了其他算法,如強化學習。反過來,ND4J在libND4J上運行,這是一個使計算速度更快的C++庫。我們還構建了矢量化庫Canova,它可以處理任何類型的數據,並將其轉換爲神經網絡可以理解的矢量。我們正試圖解決神經網絡上游的一些ETL問題。
Neuroph有很強的可視化,但我不能判斷他們框架的其餘部分,所以我會讓他們爲自己說話!
https://github.com/deeplearning4j
有在Deeplearning4j的Gitter的用戶支持渠道近2000個開發者。請有加入我們,如果您有任何疑問:
我只有在Java世界Deeplearning4j和Encog一些經驗,我認爲這完全取決於你的目標是什麼。 Deeplearning4j無疑是2中最複雜的框架;它有很棒的工具,它可以與GPU一起工作,它支持像LSTM和卷積NN這樣的東西,它已經被設置用於分佈式培訓等。 雖然它既複雜又酷,它也可以是一個PITA。當主頁希望您使用特定的IDE並指向冗長的依賴項目的安裝指南時,您知道它不會非常簡單。 但它是值得的,如果你需要它。
這就是說,在某些情況下,Encog仍然有很多需要說明的地方。它非常容易與任何Java項目集成;它只是一個.jar包含和離開你去。 它非常快速並且非常高效地使用您的CPU內核,它有一個非常好的和易於理解的API。如果你需要一個Java庫來高效地實現一個前饋NN,或者如果你想了解更多關於機器學習的知識,我不能推薦Encog。 當你碰到Encog的限制時,試試Deeplearning4j或者看看java之外的東西,然後嘗試類似Tensorflow(它也有一些Java支持)。
我可以告訴你我的經驗。
早在2015年,我一直在尋找一個優秀的深度學習Java框架。經過最初的研究後,我遇到了Encog。我很快意識到它缺乏現代神經網絡的許多組件,即它已經過時了,而且即使設置它也有很多麻煩(它不是很靈活)。順便說一句,它允許在CPU上進行並行計算。
所以我決定寫我自己的框架,我仍然使用和運作良好。然後我遇到了deeplearning4j,我可以告訴你它非常完整,計算速度非常快。我想說的是,如果你想看看15年前神祕的網絡框架使用Encog,否則沒有理由使用它,使用deeplearning4j,或嘗試一些python DL框架。
- 1. Neuroph Vs Encog
- 2. DeepLearning4J NoSuchMethodError
- 3. UNION VS性能
- 4. UPDATE VS COUNT VS SELECT性能
- 5. DeepLearning4J - ParagraphVectors:爲什麼相似性爲負?
- 6. NHibernate HQL vs CriteriaAPI vs QueryOver vs Linq。性能
- 7. HTML - 屬性VS性能
- 8. 使用DeepLearning4J
- 9. VARCHAR vs DECIMAL性能
- 10. strftime性能vs snprintf
- 11. Columnstore vs. Hekaton性能
- 12. 性能:NaCl vs Emscripten
- 13. DataContractSerializer vs BinaryFormatter性能
- 14. Qt vs GTK +性能
- 15. nchar vs nvarchar性能
- 16. SimpleXML vs DOMDocument性能
- 17. bluebird vs async.js性能
- 18. 性能Image.SCALE_DEFAULT vs Image.SCALE_SMOOTH
- 19. OpenCL vs OpenMP性能
- 20. web_reg_find vs strstr()。性能
- 21. 。嘗試VS &&性能
- 22. 性能:WPF vs Silverlight
- 23. .Net vs C++(性能)
- 24. linq vs ado.net性能
- 25. NSArchiver vs NSKeyedArchiver性能
- 26. 性能:Pig vs Hive
- 27. 性能createNamedNativeQuerie vs createNativeQuery
- 28. QImage vs OpenGL性能
- 29. Servlet VS Struts2性能
- 30. GridView vs DataGrid性能
順便說一句,也試過Neuroph當時...你不想使用它。 – Diego