机器学习正在改变我们做事的方式,并且它正在迅速成为主流。
虽然许多因素促成了机器学习的增长,但一个原因是,由于开源框架,开发人员应用它变得越来越容易。
如果您不熟悉这项技术,并且对使用的某些术语 (例如 “框架” 和 “库”) 感到困惑,请参考以下定义:
框架。可以肯定的是,Avague术语; 即使是经常使用它的人也无法就其确切定义达成共识。但是,在大多数情况下,“框架” 指的是您构建的用于应用程序开发的一堆程序,库和语言。将框架视为入门的基础。
库。应用程序使用的对象或方法的集合。它是一个具有可重复使用的代码的文件,可以被许多应用程序共享,因此您不必重复编写相同的代码。相反,你链接到图书馆。
作为一个在线用户: “库和框架之间的关键区别是 '控制倒置'。当您从库中调用方法时,您可以控制但是在框架下,控件是反向的: 框架叫你。”
还是糊涂了?看看这个有用的YouTube视频,了解框架和图书馆之间的区别。
如果你在很大程度上进入机器学习,你可能正在寻找资源来帮助指导你。有许多可用的框架,但这里有一些我们最喜欢的帮助你开始。
TensorFlow.TensorFlow是由Google Brain团队开发的,用于处理感知和语言理解任务。它还可以进行机器学习和深度神经网络的研究。TensorFlow有一个基于python的接口。它被用于谷歌的许多产品中,处理语音识别、Gmail、照片和搜索。
此框架的有用之处在于,它可以执行复杂的数学计算并查看数据流图。TensorFlow是灵活的,这意味着用户可以在其上编写自己的库。它也是便携式的,能够在云和移动计算平台上以及cpu或gpu上运行。
Amazon Machine Learning。Amazon Machine Learning (AML) 是为开发人员而构建的,它具有许多工具和向导,可帮助您创建机器学习模型,而无需学习机器学习工作原理的所有复杂性。借助AML,您可以生成预测并使用来自Amazon Redshift (数据仓库平台即服务) 的数据。
幕府将军拥有许多最先进的算法,使其成为方便的工具。它是用C编写的,为机器学习问题提供数据结构。它可以在Windows、linux和MacOS上运行。此外,Shogun很有帮助,因为它支持绑定到其他机器学习库。列表广泛,但其中包括: SVMLight、LibSVM、libqp、SLEp、LibLinear、VowpalWabbitand Tapkee。
Accord.NET.Accord.NET是一个NET机器学习框架,具有多个库来处理从模式识别,图像和信号处理到线性代数,统计数据处理等所有内容。Accord之所以有用,是因为它可以提供很多东西,包括40种不同的统计分布,30多种假设检验以及38多种内核函数。
Apache Signa、Apache Spark MLlib和Apache mahout. Apache Signa、Apache Spark MLlib和Apache mahoutarthree框架有很多可以提供的。Apache Signa主要用于自然语言处理和图像识别; 它可以在各种硬件上运行。
Mahout为各种数学运算提供Java库和Java集合。Spark MLlib的创建目标是使机器学习变得容易。它汇集了许多学习算法和实用程序,包括分类,聚类,降维等等。
一旦你开始,你还需要一些数据。如果您只是在学习并且需要练习,请尝试以下一些有用的数据集,这些数据集都可以在GitHub上找到:
医疗数据混合数据集国家公园服务谷歌趋势通用服务管理局 (GSA)