虽然人类社会到今天经历过大大小小很多次技术变迁和革命,但很明显,机器学习是目前技术领域最热门的技术之一。今年早些时候,Stack Overflow发布了一项大规模开发人员调查的结果,机器学习专家在薪酬方面仅次于DevOps专家。机器学习正在经历一段繁荣时期,但对于新手而言,开源项目经常会让人困惑。
作为程序员,你也想拥抱机器学习的春天吗?希望提高机器学习技能吗?为什么不看一下GitHub上***的开源机器学习项目?本文综合评比了Github上几乎所有的开源机器学习项目,最终找出了前五大贡献度、活跃度、文档完善情况和Star数量最多的项目。
让我们开始吧!
1. TensorFlow – ★ 76.2K
TensorFlow位于这个列表的顶部并不奇怪,这是迄今为止GitHub上***的机器学习项目,甚至有传言表示,Google正准备借助此项目重新踏入中国。
谷歌机器智能研究机构Google Brain团队的一员表示,TensorFlow是一个使用数据流图进行数值计算的开源软件库。它配备了易于使用的Python界面和其他语言的界面来构建和执行计算图。
Jeff Dean在今年早些时候表示,当开源TensorFlow时,谷歌希望全世界的每个人都可以建立一个机器学习平台。 TensorFlow 1.0是一个快速、灵活,可用于超出其最初设计的广泛应用的生产型产品。它还包括用于Java和Go的实验性API以及用于对象检测和本地化以及基于相机的图像程式化的新Android演示。(Github开源地址:https://github.com/tensorflow/tensorflow)
2. scikit-learn –★ 22.7K
第二名是scikit-learn,一个用于机器学习的Python模块。scikit拥有许多简单高效的数据挖掘和数据分析工具。scikit背后的基本动机是For Science!因此,它在各种情况下都是高度可访问和可重用的。另外,它建立了像NumPy,SciPy和matplotlib等知名的数据科学工具。
今年早些时候,Groupon软件工程总监Adam Geitgey谈了开发人员应该如何进入机器学习领域。他表示,程序员肯定应该从学习Python开始。 这是迄今为止机器学习***的编程语言,为了解决大多数机器学习问题(不需要深入学习),答案很简单,你只需要安装几个python库:scikit-learn,NumPy和pandas。这些工具是免费的,旨在协同工作。(Github开源地址:https://github.com/scikit-learn/scikit-learn)
3. PredictionIO –★ 10.6K
PredictionIO是这个名单里的新手,这使得它的高排名和受欢迎程度更加令人印象深刻。上个月,Apache软件基金会发布了PredictionIO,之后就大受程序员欢迎。PredictionIO建立在***进的开源堆栈之上,该机器学习服务器专为开发人员和数据科学家设计,可为任何机器学习任务创建预测引擎。
开发人员可以创建可部署的应用程序,而无需将底层技术拼凑在一起,并提供完整的堆栈和模板。PredictionIO直接构建在Spark和Hadoop上,允许开发人员使用可定制的模板快速构建和部署引擎,作为生产中的Web服务,它是用Scala写的。
PredictionIO的主要目的是简化数据基础架构管理,程序员通过实现自己的机器学习模型,可以将它们无缝地整合到引擎中,它还通过系统化的流程和预先构建的评估措施来加速机器学习建模。(Github开源地址:https://github.com/apache/incubator-predictionio)
4. Swift AI – ★5K
虽然Swift可能正在经历一些逆转,但Swift AI继续在GitHub上获得赞誉。Swift AI是一个完全用Swift编写的高性能深度学习库,支持所有的Apple平台,Macbook用户应该特别兴奋!
Swift AI是为那些有兴趣用Swift编写神经网络的人提供的一个有趣的工具。NeuralNet类包含一个完全连接的前馈人工神经网络。 通过对深度学习的支持,NeuralNet的设计具有灵活性,可用于性能至关重要的应用。(Github开源地址:https://github.com/Swift-AI/Swift-AI)
5. GoLearn – ★4.7K
名单的***一名是GoLearn,一个用于GO语言的“batteries included”机器学习库。目前仍在积极开发中,这个项目正在寻找有兴趣从用户那里接受反馈的开发者。如果使用了SciPy,WEKA或R,GoLearn的机器学习问题模型将会很熟悉。数据被表示为类似于电子表格的平板表格,并用于训练和预测。
作为一个相对较新的项目,愿望清单比实际的现有工具要长。所以,如果你正在寻找一个真正有所作为的项目,GoLearn可能是你需要的。(Github开源地址:https://github.com/sjwhitworth/golearn)
结论
无论是想加入一个知名项目,还是想用新手项目工作,GitHub上都有非常不错的开源机器学习项目。这些项目也需要程序员的不断贡献,还不快去Github上看一看?