最好的Python机器学习库

引言真钱捕鱼,一定,神经互联网和机械学习在过去几年一向是高科学技术领域最紧俏的话题之风华正茂。那一点超轻松看见,因为它们清除了成千上万着实有意思的用例,如语音识别、图像识别、以至是乐曲谱写。因而,在此篇小说,作者说了算编写制定后生可畏份包含一些很好的Python机器学习库的项目清单,并将其张贴在上边。以小编之见,Python是上学机器学习技艺最棒的语言之风度翩翩,其原因重要有以下几点:语言精炼:近年来,Python成为新手工程师首推语言的主要原因是它具有轻松的语法和庞大的社区。功用强大:语法轻便并不代表它功用虚亏。Python相通也是数码化学家和Web技师最受招待的言语之一。Python社区所开创的库能够令你做别的你想做的事,蕴涵机器学习。丰裕的ML库:近期有雅量面向Python的机器学习库。你能够依靠你的接收情形、技能和要求从数百个库中甄选最合适的一个。下边最终一点得以说是最要害的。驱动机器学习的算法非凡复杂,饱含了多数的数学知识,所以本人入手去落到实处它们将会是生机勃勃件很难堪的职务。幸运地是,有广大冰雪聪明的、有进献精气神的人为大家做了那么些辛勤的干活,由此大家只需求专心于手边的应用程序就能够。那实际不是三个详细无遗的清单。有数不尽代码并未有在这里列出,在这里边自身只会发布部分极其相关或有名的库。上面,来看看那份清单呢。最受迎接的库自家豆蔻梢头度对一些相比较盛行的库和它们长于的趋向做了一个轻易的叙说,在下生机勃勃节,小编会付出三个更完整的系列列表。Tensorflow那是清单中新型的神经互联网库。在今日刚刚发行,Tensorflow是高等神经互联网库,能够帮忙你陈设你的互联网构造,幸免现身低品位的内部景况错误。入眼是允许你将总括表示成多少流图,它更相符于解决复杂难题。此库首要行使C++编写,包蕴Python绑定,所以您不要忧虑其品质难点。作者最爱怜的三个特征是它灵活的系统结构,允许你利用相通的API将其布置到二个或四个CPU或GPU的台式机、服务器可能移动道具。有此成效的库并超级少,固然要说有,Tensorflow便是其黄金年代。它是为谷歌大脑项目支出的,最近已被数百名技术员使用,所以不用思疑它是否可以成立有意思的消除方案。就算和别的的库同样,你可能必得花一些时辰来学习它的API,但花掉的年月应当是很值得的。作者只花了几分钟理解了弹指间它的主导职能,就早就知晓Tensorflow值得作者花更加的多的时间让本身来达成自身的网络布署,而不光是经过API来利用。长于:神经网络网站: 绝对是里面二个,假诺不是最流行的,那么也算得上是持有语言中流行的机器学习库之风流倜傥。它具备多量的多寡发掘和数量分析效果与利益,使其变为钻探人士和开垦者的首要推荐库。其置于了流行的NumPy、SciPy,matplotlib库,因此对数不尽业已运用那几个库的人的话就有生机勃勃种熟稔的感到到。即便与下部列出的其它库相比较,这一个库显得水平档案的次序略低,并辅助于作为众多任何机器学习落到实处的底蕴。长于:比很多网站: TheanoTheano是两个机械学习库,允许你定义、优化和评估涉及多维数组的数学表明式,那有可能是其余库开辟商的叁个曲折点。与scikit-learn同样,Theano也很好地组合了NumPy库。GPU的晶莹使用使得Theano可以神速並且无错地安装,那对于那多少个初读书人的话拾叁分关键。不过有些人更加多的是把它陈说成三个钻探工具,并不是作为付加物来利用,因而要按需利用。Theano最佳的法力之一是颇负美貌的参阅文书档案和多量的教程。事实上,多亏掉此库的流行水平,令你在搜寻财富的时候不会蒙受太多的劳动,举例怎么样获取你的模型以致运营等。长于:神经网络和纵深学习网站:Pylearn2多数Pylearn2的功效实在都以创制在Theano之上,所以它有二个相当抓好的功底。据Pylearn2网址介绍:Pylearn2区别于scikit-learn,Pylearn2意在提供非常大的圆滑,使切磋者大致能够做此外想做的作业,而scikit-learn的指标是用作一个“黑盒”来行事,就算顾客不打听达成也能发出很好的结果。记住,Pylearn2在适度的时候会卷入此外的库,如scikit-learn,所以在那间你不会得到100%客商编写的代码。但是,那的确很好,因为好些个乖谬已经被消除了。像Pylearn2那样的封装库在那列表中有很要紧的身份。擅长:神经互连网网站::Pyevolve神经互联网研商更令人高兴和莫衷一是的天地之一是遗传算法。从根本上说,遗传算法只是三个模拟自然选拔的启迪式寻觅进程。本质上它是在局地数额上测量检验神经互联网,并从叁个拟合函数中获取网络品质的举报。然后对互连网迭代地做小的、随机的成形,再使用相仿的数据开展测验。将享有莫斯中国科学技术大学学拟合分数的网络当做出口,然后使其当作下一个网络的父节点。Pyevolve提供了三个用于建构和奉行那类算法很棒的框架。作者曾表示,V0.6版本也扶助遗传编制程序,所以在不久的后日,该框架将更赞成于作为三个迈入的精兵简政框架,而不只是简短地遗传算法框架。长于:遗传算法的神经网络Github:NuPICNupic是另一个库,与专门的职业的机器学习算法相比较,它提供了某些例外的作用。它依照三个誉为档次时间回忆的新皮肤理论,。HTMs能够看做是生龙活虎类神经互连网,但在一些理论上有所分歧。从根本上说,HTMs是一个分层的、基于时间的回想系统,能够承当各类数据。那表示会化为三个新的乘除框架,来模拟我们大脑中的纪念和总结是何等紧紧的。对于理论及其使用的详实表明,请参阅 红皮书。擅长:HTMsGithub:Pattern此库更疑似一个“全套”库,因为它不但提供了部分机器学习算法,并且还提供了工具来提携你收罗和深入分析数据。数据开采部分可以扶持您搜罗来自Google、Twitter和维基百科等网络服务的数目。它也可以有二个Web爬虫和HTML DOM拆解深入分析器。“引入那一个工具的优点就是:在同二个程序中收罗和教练多少呈现更为便于。在文档中有个很好的事例,使用一群推文来练习一个分类器,用来差异三个推文是“win”还是“fail”。

The Best Machine Learning Libraries in Python

前些天开源是校勘的基本,拉动着工夫的神速创新。本文子禽为你介绍 二〇一四年机械学习 Top 20 Python 开源项目,同一时候解析得出某个风趣的见解和发展趋向。

from pattern.web import Twitter from pattern.en import tag from pattern.vector import KNN, counttwitter, knn = Twitter(), KNN()for i in range(1, 3): for tweet in twitter.search('#win OR #fail', start=i, count=100): s = tweet.text.lower() p = '#win' in s and 'WIN' or 'FAIL' v = tag(s) v = [word for word, pos in v if pos == 'JJ'] # JJ = adjective v = count(v) # {'sweet': 1} if v: knn.train(v, type=p)print knn.classify('sweet potato burger') print knn.classify('stupid autocorrect') 

By Scott Robinson • November 10, 2015


自身只是大自然的翻译工

初藳地址


KDnuggets 为你带给 Github 上最新的 Python 机器学习开源项方今 20 名。离奇的是,二零一八年部分要命活跃的门类稳步停滞了,由此未能上榜,而 11个新品类冲进了二〇一两年的 top 20(参考进献 contributions 和交给数 commits)。

首先应用twitter.search(卡塔尔通过标签'#win'和'#fail'来访问推文数据。然后采取从推文中领取的形容词来训练二个K-近邻模型。经过丰硕的教练,你会博得三个分类器。仅仅只需15行代码,抑遏能够。专长:自然语言管理和归类。Github:CaffeCaffe是面向视觉应用领域的机器学习库。你可能会用它来创建深度神经互联网,识别图像中的实体,以至能够识别叁个视觉样式。Caffe提供GPU锻炼的无缝集成,当您操练图像时极力推荐使用此库。就算Caffe就像是主倘使面向学术和钻探的,但它对用于生产应用的教练模型相似有充足多的用场。长于:神经互连网/视觉深度学习网址::其余盛名库这边还列出了有个别其余面向Python的机器学习库。当中有的库与上述库有着同样的机能,而另一些则有更加窄小的对象只怕更合乎当做学习工具来利用。NilearnStatsmodelsPyBrain (inactive卡塔尔国FuelBobskdataMILKIEPYQuepyHebelmlxtendnolearnRampFeature ForgeREPPython-ELMPythonXYXCSPyMLMLPY (inactiveState of QatarOrangeMontePYMVP英特尔P (inactive卡塔尔国ShogunPyMCGensimNeu濑户康史bFFnet (inactiveState of QatarLibSVMSpearmintChainertopikCrabCoverTreebrezedeapneu藤井美菜bSpearmintyahmmpydeepAnnoyneonsentiment原来的作品地址:The Best Machine Learning Libraries In Python译者简要介绍: 刘帝伟,中南大学软件大学在读硕士,关怀机器学习、数据开采及生物消息领域。

引言

一定,在过去的几年里,神经网络与机械和工具学习是科技(science and technology卡塔尔国圈最销路好的话题之生机勃勃。若是咱们看过一些它们解决的真的有趣的案例,如语音识别、图像识别、以致是乐谱编写等,大家就简单看出它们为什么如此火了。因而,在这里篇小说中,作者主宰编写豆蔻梢头份有关最佳用的Python机器学习库的列表,并把它们罗列在上面。

本人认为,Python是你学习(与得以完毕卡塔尔(قطر‎机器学习本领最佳的言语之意气风发,理由如下:

简洁:Python正成为新手程序猿的首推语言,得益于它简洁的语法和不小的社会群众体育。

有效:Python的简易并不意味着它不实用。Python同一时间也是数据化学家与Web程序猿中最盛行的语言之风姿浪漫。社会群众体育中的大家为它开采了大概能够胜任不论什么事务的库,包涵机器学习。

多量机器学习库:Python近期生机勃勃度有雅量(tons of卡塔尔(قطر‎的机器学习库。你能够依据你的情事、本事和急需从诸七个库中精选最符合你的三个。

最后一点也是最要害的某个。机器学习算法常常很复杂,包蕴大批量数学内容,因而活动编排(且写对卡塔尔国是最困难的天职。幸运的是,有数不清明白与正规的人曾经帮大家搞好了那个干活儿,因而我们能够当心于我们的使用。

那并非生机勃勃份详尽的列表。相关的库太多太多了,作者在那只列举了部分最相关与最盛名的库。下边,我们来看一下项目清单。

2014 Top 20 Python 机器学习开源项目

最流行的库

本身为部分最流行的库写了简约的陈诉和它们所长于的地点。下生龙活虎节自己将交由大器晚成份更详细的类型列表。

  1. Scikit-learn 是多个简易且飞速的数据发现和数据拆解解析工具,易上手,能够在多少个上下文中重复使用。它依照NumPy, SciPy 和 matplotlib,开源,可商用(基于 BSD 许可)

Tensorflow

那是那份列表中流行的神经网络库,今日才刚被发表。Tensorflow是一个高层神经互联网库,能支援你陈设互联网结构,并躲开低层细节。入眼是它同意你将总计表示成多少流图(data flow graphState of Qatar,它更适用于灭亡复杂难题。

Tensorflow重要用C++编写,并含有Python绑定,因而你无需郁闷质量难题。作者最垂怜的特征之一是它灵活的构造,它同意你用相符的API将它配备到一个或多少个桌面Computer、服务器或挪动设备的CPU或GPU上。比超级少库能提供这么的成效,倘若有的话,Tensorflow正是个中之生龙活虎。

它是为了谷歌Brain项目所开拓出来的,并且已被Google中数百名程序员所采取,因而不用猜疑它消除难点的本领。

像大好些个库同样,你恐怕必要花一点光阴来学学它的API,但这几个日子是值得的。笔者只用了几分钟了然了生机勃勃晃它的着力本性,笔者早就得以说Tensorflow值得小编花越多的年月来落到实处自笔者的网络规划,并非纠缠于API。

长于:神经互连网

提交数: 21486, 贡献者: 736, Github 链接: Scikit-learn(http://github.com/scikit-learn/scikit-learn0

Scikit-learn

Scikit-learn倘若不是最风靡的,也相对是兼具语言的机器学习库中最流行的之大器晚成。它包涵了大气的数据发掘与数码深入解析功用,使它成为商讨人口和开荒人士的首要推荐库。

它依照最风靡的NumPy,SciPy和matplotlib编写,由此对此已经在利用那一个库的人的话会以为到很谙习。即便与列表下边包车型客车局地库比起来它要稍稍低档期的顺序一些,况且趋向于作为其余机器学习落实的底子。

专长:差十分少具备

  1. Tensorflow 最先由谷歌(Google卡塔尔机械智能应用切磋组织中的Google大脑协会(谷歌(GoogleState of Qatar Brain Team)的钻研职员和技术员开采。该连串规划的初心是为了有帮助机器学习研究,能够更加快更加好地将科学商讨原型转化为坐蓐项目。

Theano

Theano允许你定义、优化和评估涉及多维数组的数学表明式,那或许会让别的库的开拓者以为一点停业。像scikit-learn相近,theano也与NumPy紧聚焦合。GPU的透明使用令theano能够相当慢且无痛(译:f**k,小编不相信State of Qatar地安装,那多亏好多初读书人的痛点。即使有些许人说它更像一个研讨工具而不能够生育应用,所以请按需选用。

Theano最棒的风味之一是它周到的文档和大度的科目。得益于该库的风行,你在查找财富建模和平运动作模型时不会遇上太多辛苦。

专长:神经互联网与深度学习

提交数: 10466, 贡献者: 493, Github 链接: Tensorflow(https://github.com/tensorflow/tensorflow)

最好的Python机器学习库。Pylearn2

大多Pylearn2的效果实在都创建在Theano上,由此它有叁个抓好的底子。

根据Pylearn2的官网:

Pylearn2 differs from scikit-learn in that Pylearn2 aimsto provide great flexibility and make it possible for a researcher to do almostanything, while scikit-learn aims to work as a “black box” that can producegood results even if the user does not understand the implementation.

Pylearn2与scikit-learn的分歧的地方在于Pylearn2目的在于提供极佳的八面玲珑,使研讨人士能够做大概任何事业,而scikit-learn目的在于提供二个足以现身较好结果的“黑箱”,固然使用者并不知晓其贯彻。(译:damn right)

切记Pylearn2在适当的时候会卷入其余库的代码,比如scikit-learn,因此你收获的并非100%的自定义代码。在大大多BUG已经被发觉的事态下,那是很好的。像pylearn2这样的封装包在该列表中足够重大。

专长:神经网络

  1. Theano 允许高效地定义、优化甚至评估涉及多维数组的数学表达式. 提交数: 24108, 进献者: 263, Github 链接: Theano(https://github.com/Theano/Theano)

  2. Caffe 是叁个基于表达式,速度和模块化原则创制的深度学习框架。它由Berkeley视觉学习中央(BVLC, Beck雷 Vision and Learning Center)和社区进献者协同开荒。 提交数: 3801, 贡献者: 215, Github 链接: Caffe(https://github.com/BVLC/caffe)

  3. Gensim 是二个无偿的 Python 库,它蕴涵可增加的总括语义,解析纯文本文书档案的语义布局,以致查找相近语义的文书档案等效果。

Pyevolve

神经互连网商量中至极令人欢跃与区别的领域之意气风发莫过于遗传算法。遗传算法基本上是叁个效仿自然接受经过的寻找算法。它最首要对风流倜傥部分数码创建三个神经互连网,并从叁个拟合函数到手网络品质的反映。然后,它往往对神经网络举行小的、随机的更换,并用相似的数据重复测量试验。拟合分数较高的神经互连网最后压倒,并作为新后生可畏轮互联网的父类。

Pyevolve提供了二个很好的框架来营造和实施那类算法。就算小编曾经表达,仅到v0.6版本停止该框架仍然帮衬遗传程序,所以在不久的明日,该框架会更赞成于成为三个向上总结框架(Evolutionary Computation frameworkState of Qatar而不仅是简约的遗传算法框架。

善用:基于遗传算法的神经互联网

提交数: 2702, 贡献者: 145, Github 链接: Gensim(https://github.com/RaRe-Technologies/gensim)

NuPIC

NuPIC提供部分与正统机器学习算法所例外的效果。它依据风流洒脱种被称作“分层时间回想”(Hierarchical Temporal Memory, HTMState of Qatar的大脑皮层理论。HTMs能够被视为少年老成种神经互连网,但在有的辩驳上有个别分裂。

从根本上讲,HTMs是少年老成种能够对各样数据进行演练的道岔的、基于时间的记念系统。这象征风流倜傥种崭新的总括框架,模拟记念与计算在大脑中是怎么着進展的。对该理论与其应用的完好表明,请查阅黄皮书。

擅长:HTMs

  1. Pylearn2 是一个机械学习库。它的大大多成效都以营造于Theano 之上的。那代表你能够使用数学表达式自个儿写 Pylearn2 插件(新模型,算法等等),Theano 会为你优化这几个表达式使其进一层稳固,你还足以选择将其编译到后端(CPU 或 GPU)。

Pattern

Pattern更像叁个“全套”库,在于它不但提供机器学习算法,也提供搜罗与深入分析数据的工具。它的多少发现部分能扶助你访问互连网服务的多寡,如谷歌,脸谱和Wikipedia等。它也包括网络爬虫与HTML DOM解释器。满含这一个工具的优点是在同二个顺序中搜罗和操练多少突显非常轻易。(译:I don’t think so.卡塔尔(قطر‎

上面是文书档案中二个很好的例证,通过应用风流浪漫体系tweets来操练叁个关于一条tweet是“win”仍旧“fail”的分类器。

真钱捕鱼 1

那一个tweets首先依照'#win'和'#fail'标签,使用twitter.search(卡塔尔国来搜集。然后使用从tweets中提取的形容词来演习一个K近邻(k-nearest neighbor, KNN卡塔尔国分类器。经过充裕的教练后,你就有着一个成熟的分类器了。对于风度翩翩段15行的次第来讲算不错了啊。

善用:自然语言处理,聚类和归类

提交数: 7100, 贡献者: 115, Github 链接: Pylearn2(http://github.com/lisa-lab/pylearn2)

Caffe

Caffe是多个用以视觉应用的机械学习库。你可以用它来创设用来从图像中分辨物体的纵深神经互连网,以至是甄别视觉风格。它提供GPU练习的无缝集成,刚烈提出你在练习图像的时候利用它。即便该库常被看做学术和钻研,但它应当也会有无数在生养条件中训练模型的使用者。

长于:针对计算机视觉的神经网络/深度学习

  1. Statsmodels 是一个 Python 模块,能够用来研商数据,测度总括模型,实行计算测量检验。对于差别种类的数量和模型猜度,都有描述性总结,计算测量试验,绘图成效和结果总计的详细列表可用。

任何著名的库

此间还会有列表中众多Python机器学习库。此中有点与上述库提供相通的意义,别的则有越来越窄的用处或用来作为学习工具。

(译:I’ll end here.)

提交数: 8664, 贡献者: 108, Github 链接: Statsmodels(https://github.com/statsmodels/statsmodels/)

  1. Shogun 是四个机器学习工具箱,它提供了重重统生机勃勃高效的机器学习方法。这些工具箱允许四个数看新闻注明,算法类和通用工具无缝结合。

提交数: 15172 贡献者: 105, Github 链接: Shogun(https://github.com/shogun-toolbox/shogun)

返回列表