我们正在使用神经网络开发一个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. UNION VS性能
- 2. DeepLearning4J NoSuchMethodError
- 3. NHibernate HQL vs CriteriaAPI vs QueryOver vs Linq。性能
- 4. .Net vs C++(性能)
- 5. 。尝试VS &&性能
- 6. Linux vs Windows性能
- 7. DataContractSerializer vs BinaryFormatter性能
- 8. Servlet VS Struts2性能
- 9. strftime性能vs snprintf
- 10. nchar vs nvarchar性能
- 11. OpenCL vs OpenMP性能
- 12. linq vs ado.net性能
- 13. Qt vs GTK +性能
- 14. ScrollView vs ListView性能
- 15. 性能createNamedNativeQuerie vs createNativeQuery
- 16. NSArchiver vs NSKeyedArchiver性能
- 17. 性能:NaCl vs Emscripten
- 18. SimpleXML vs DOMDocument性能
- 19. bluebird vs async.js性能
- 20. 性能:WPF vs Silverlight
- 21. DeepLearning4J - ParagraphVectors:为什么相似性为负?
- 22. 使用DeepLearning4J
- 23. GRU in DeepLearning4J
- 24. Deeplearning4j LSTM示例
- 25. encog RBF training
- 26. 性能:IMAP vs POP vs WebDAV(Exhange)
- 27. PouchDB:.query()vs .find()vs .allDocs(),性能?
- 28. C#VS C++性能比较
- 29. reverse_iterator vs iterator的性能?
- 30. http HEAD vs GET性能
顺便说一句,也试过Neuroph当时...你不想使用它。 – Diego