|
|
|
|
移动端

www.99msc.com:十大开发必备的Python库,可实现机器学习

本文来源:http://www.2233122.com/www_deyi_com/

太阳城娱乐网最快登入,通讯员石家浩与其他机型PK:请选择品牌221克3360手机A奥克斯A宏碁A昂达A爱可视A爱唯克思A爱国者A爱家A爱立信A阿尔卡特A首派BBFBB北斗B博沃B巴诺书店B本易B波导B百加B邦华CColorflyC创维C卡西欧C西铂C长虹DDigiTalkDDmoboDdeovoD东信D东芝D大可乐D大唐D大显D大神D戴尔D朵唯D电意D迪士尼D迪比特EEMIEEE人E本FIfiveF富士通F斐讯F泛泰F飞利浦GGEMRYGGigasetGGoogle谷歌G格莱特HHIKeHHKCHHTCHHelperHiHKCH华世基H华为H华录H华硕H华禹H和信H恒基伟业H惠普H海信H海尔H黑莓Ii-mateIinnosIiuniJ京瓷J佳域J佳通J技嘉J经纬J金立J金鹏K康佳K科健K酷比K酷比魔方K酷派LLASSIELLGL乐丰L乐华L乐派L乐视TVL联想L蓝魔L里奥L雷蛇MMOMAXMMagicPadM微软M摩托罗拉M明基M明泰M美图M铭仁M魅影MOPSM魅族NNECNNUBENNubiaNnekenNnibiruN南方高科N纽曼N诺基亚OO2OOBEEOOKWAPOOPPOO奥盛O欧恩O欧新O欧达PPPTVPPalmP苹果Q七喜Q琦基Q青橙Q青葱RRunboR锐合SSKSSUGARSSonimS三星S三洋S三菱S宇达电通S尚合S松下S桑达S神舟S索尼S索尼爱立信S萨米S西门子S锤子S首信T8848钛金手机TTCLTThLTTransPhone传颂T台电T天时达T天珑T天语T天迈T托普T泰克飞石UUKINGUUT斯达康VVEBVVINUSVVertuVvivoV唯开W万利达W为美W吾尚W唯科W闻尚X先锋X厦华X夏新X夏普X小米X小蜜蜂X小辣椒X新邮通X熊猫X现代X西湖数源X西铂Y一加Y云台Y云狐Y亚马逊Y亿通Y优思Y优派Y原点Y影驰ZZOPOZZORA卓拉ZZTTZZUKZ中兴Z中国移动Z中天Z中恒Z中桥Z中电通信请选择产品这个几乎大部分智能手机上都有,但却很少被人用到(深藏功与名啊)的功能,并不是可有可无的,用好它能够使我们的生活方便很多。预计在2017年达到43万亿元,市场甚至有移动支付取代实体货币的讲法。

注:目前,AAMA亚杰商会正在招募第八期的创业家学员,欢迎各位创业家报名。”中国移动终端公司副总经理马景新说。2.伪卡盗刷:伪冒分子通过窃取、收买等手段非法获得你的银行卡信息,伪造虚假的银行卡使用。此番剥离红旗资产,不论是对红旗品牌的复兴,还是对于一汽轿车全年业绩的提振都会起到促进作用。

大公司有一个非常大的问题,不管已经有多牛的公司存在,也一定会有下一个伟大的公司成长起来。而去网点的客户则主要办理存取现金、办理定期存款、办理转账和购买理财产品这些可以为银行带来更高利润的业务。  为了增强操作性,该《通知》明确对附属设施和配套设施用地提出用地规模控制要求。因为满足了消费者日益增长的高端需求,给予了他们越来越优质的使用体验,这些手机江湖引领者才在血海之路上越走越远,在全球出货量低迷的手机市场上继续“风光无限”。

本文将和您讨论Python中的一些开发库。开发人员可以使用它们来编写、清理和表示数据,并且能够在现有的各种应用程序中实现机器学习的效果。

作者:陈峻编译来源:51CTO|2019-07-31 09:00

【太阳城娱乐网最快登入 www.2233122.com快译】如今,Python已是流行、且使用广泛的编程语言之一,它已经取代了业界许多编程语言。Python备受开发人员欢迎的一项主要原因是,它能够为用户提供大量可供使用的库集合。

在本文中,我们将和您讨论Python中的一些库。开发人员可以使用它们来编写、清理和表示数据,并且能够在现有的各种应用程序中实现机器学习的效果。它们分别是:

  • TensorFlow
  • Scikit-Learn
  • NumPy
  • Keras
  • PyTorch
  • LightGBM
  • Eli5
  • SciPy
  • Theano
  • Pandas

1.TensorFlow

什么是TensorFlow?

如果您目前正在使用Python进行机器学习项目开发的话,那么您一定听说过TensorFlow这一流行的开源库。它是由Google与Brain Team合作开发而成,主要用于机器学习类应用的开发。

TensorFlow的工作方式类似于编写大量涉及张量(tensor)操作的新的算法库。由于神经网络可以很容易地被表示为计算图形,因此它们可以使用TensorFlow,来作为张量上的一系列操作予以实现。此处,张量表示为数据的N维矩阵。

TensorFlow的特点

TensorFlow针对速度进行了优化。它利用XLA等技术,实现了快速线性代数的运算。

  • 响应式构建

使用TensorFlow,我们可以轻松地可视化图形的每一个部分。而下面将要提到的NumPy或SciKit则无此选项。

  • 灵活

由于具有模块化的特点,因此Tensorflow在功能上具有灵活的可操作性,用户可以只选用其需要的独立部分。

  • 易于训练

它可以通过CPU和GPU的训练方式,轻松地实现分布式计算。

  • 并行神经网络训练

由于TensorFlow提供了流水线式的操作,因此从某种意义上说,您可以训练多个神经网络和多个GPU。这对于大规模系统上的模型来说是非常高效的。

  • 大型社区

毋庸置疑,由于是Google开发的,因此一大批软件工程师会持续致力于其稳定性的改进。

  • 开源

由于是开源的,因此只要有互联网的连接,任何人都可以使用到它。

TensorFlow的接受度

大家所熟悉的Google语音搜索、以及Google相册等应用都是由TensorFlow库所开发的。虽然由TensorFlow所创建的库集合都是用C和C++编写的,但是它拥有一个复杂的Python前端。因此,您的Python代码将会被它所编译,然后再由C和C ++构建的TensorFlow分布式引擎所执行。

2.Scikit-Learn

什么是Scikit-Learn?

它是一个与NumPy和SciPy相关联的Python库,被认为是处理复杂数据的Python库之一。Scikit-Learn有很多改进版本,其中的一种是通过交叉验证的功能,以及提供多个参数指标,来改进诸如逻辑回归、以及最近邻居等多种训练的方法。

Scikit-Learn的特点

  • 交叉验证:它提供许多方法来检查、监督模型对于不可见数据的准确性。
  • 无监督学习算法:同样,它也提供包括聚类、因子分析、主成分分析、以及无监督神经网络等的大量算法。
  • 特征提取:能够被用于从图像和文本中提取特征(例如,Bag of words)。

Scikit-Learn的接受度

它包含了大量可用于实现标准机器学习、以及数据挖掘任务的算法。例如:降低维度、分类、回归、聚类和模型选择等。

3.NumPy

什么是NumPy?

NumPy被认为是Python中受欢迎的机器学习库之一。TensorFlow和其他库在内部都会使用NumPy来执行多种操作。其中,数组接口是NumPy好用、也是重要的功能之一。

NumPy特点

  • 交互式:NumPy具有强交互性、且易于被使用。
  • 数学性:通过复杂的数学,将实现变得非常简单。
  • 直观:能够将编码、及概念变得简单易懂。
  • 强交互性:由于得到了广泛的使用,因此它获得了更多的开源贡献。

NumPy的接受度

NumPy库接口可以被用于将图像、声波、以及其他二进制原始流,表达为N维实数数组。为了更好地将其用于机器学习,全栈工程师有必要对其深入了解。

4.Keras

什么是Keras?

Keras被认为是酷炫的机器学习类Python库之一。它提供了一种更容易表达神经网络的机制。同时,Keras还提供了一些可用于编译模型、处理数据集、图形可视化等方面的工具。

Keras在后端内部使用的是Theano或TensorFlow。它可以被用在诸如CNTK之类的各种流行的神经网络上。与其他机器学习类型的库相比,由于Keras通过使用后端的基础架构来创建计算图形,因此其后续的执行操作相对较慢。另外,Keras的所有模型都是可被移植的。

Keras的特点

  • Keras在CPU和GPU上都能够顺利地运行。
  • Keras几乎支持神经网络中的所有模型,包括:完全连接、卷积、汇集、循环、嵌入等。此外,这些模型也可以被组合起来构建更为复杂的模型。
  • Keras的模块化特性,具有非凡的表现力、灵活性,且适合于创新类研究。
  • Keras是一个完全基于Python的框架,开发人员可以轻松进行各种调试。

Keras的接受度

如今,诸如Netflix、Uber、Yelp、Instacart、Zocdoc、以及Square等众多网站都使用到了Keras构建的交互性功能。许多初创型公司都愿意在其产品核心中用到Keras所提供的深度学习技术。

Keras包含了许多神经网络常用的构建模块,例如:各个层、对象、激活函数、优化器、以及一系列可供处理图像与文本数据工具。

此外,它还提供了许多预处理数据的集合、以及预训练的模型,其中包括:MNIST、VGG、Inception、SqueezeNet、以及ResNet等。

在接受程度上,Keras是排名第二的,被深度学习研究人员所喜爱的Python库。一些大型科学组织,特别是CERN和NASA的研究人员,都会用到Keras。

5.PyTorch

什么是PyTorch?

PyTorch是一个大型的机器学习库,它允许开发人员通过GPU加速,来执行张量计算、创建动态计算图、并自动计算出梯度。此外,PyTorch还提供了丰富的API,可用于解决与神经网络相关的应用问题。

基于Torch的PyTorch是一个用C语言实现的开源机器学习库。当然,它也带有Lua的包装器。

PyTorch的特点

混合前端

新的混合前端在eager模式下,保证了易用性和灵活性。在被无缝地转换到graph模式后,它能够在C++的运行环境中保证速度、优化和相应的功能。

  • 分布式训练

得益于Python和C++能够访问到对等式通信的优点,它能够对集合式操作和异步执行提供原生的支持,并且能够优化研究、以及生产环境中的性能。

  • Python优先

PyTorch并非是一种Python绑定的单体式(monolithic)C++框架。它是为深入地集成到Python中而构建的。因此它可以与各种流行的库、以及Cython和Numba等软件包一同使用。

  • 库和工具

由活跃的研究人员与开发人员所构成的社区,实现了一个丰富的工具与库的生态系统。该系统可以被用于扩展PyTorch、并支持从计算机视觉到强化学习等领域的开发。

PyTorch的接受度

PyTorch由Facebook的人工智能研究小组所开发,主要被用于自然语言处理等应用,例如,Uber的Pyro软件就将它用到了概率编程上。

如今,PyTorch在许多方面都超越了TensorFlow,并且持续引起了更多的关注。

6.LightGBM

什么是LightGBM?

Gradient Boosting是目前好用且流行的机器学习库之一。它通过使用重新定义的基本模型与决策树,来帮助开发人员构建新的算法。它所提供的LightGBM、XGBoost和CatBoost等特殊库,有助于解决常见的各种问题。

LightGBM的特点

  • 高速的计算能力,确保了较高的生产率。
  • 界面直观,且对用户友好。
  • 训练的速度比其他深度学习库要快。
  • 在计算NaN值和其他规范值时,不容易产生错误。

LightGBM的接受度

由于具有高度可扩展性、能够优化和快速实现梯度增强,因此LightGBM备受机器学习开发人员,特别是全栈工程师的欢迎。

7.Eli5

什么是Eli5?

大多数情况下,机器学习模型的预测结果并不太准确,而Eli5内置Python的机器学习库却有助于克服这一点。它是对所有机器学习模型的可视化和调试的组合,并且能够跟踪某个算法的所有步骤。

Eli5的特点

此外,Eli5能够支持XGBoost、lighting、scikit-learn和sklearn-crfsuite等其他库,并且可以实现它们不同的任务。

Eli5的接受度

  • 适用于需要在短时间内进行大量计算的数学应用程序。
  • 在与其他Python包存在依赖关系时,Eli5能够起到重要的作用。
  • 能够在各个领域实施传统的应用程序、以及更新的方法。

8.SciPy

什么是SciPy?

SciPy是一个面向应用程序开发人员和工程师的机器学习库。与SciPy堆栈不同,SciPy库包含了用于优化、线性代数、积分和统计的模块。

SciPy的特点

SciPy库的主要特点是使用到了NumPy来进行开发,因此它的数组充分利用了NumPy的特点。此外,SciPy提供了诸如优化、数值积分和其他特定的子模块。这些所有子模块里的所有功能都有着详细配套的文档。

SciPy的接受度

由于SciPy是一个使用NumPy来解决数学函数的库,因此SciPy采用NumPy数组作为基本的数据结构,并附带了用于科学编程的各种常用任务模块。

SciPy可以轻松地处理包括:线性代数、积分(微积分)、常微分方程求解、以及信号处理在内的各项任务。

9.Theano

什么是Theano?

Theano是一个在Python中可用于计算多维数组的机器学习类框架库。Theano的工作方式类似于TensorFlow,但是其效率不及TensorFlow,因此不太适合生产环境。不过,与TensorFlow类似,Theano也可以被用于分布式或并行的环境之中。

Theano的特点

  • 与NumPy紧密集成 - 用户能够在Theano所编译的函数中完整地使用到NumPy数组。
  • 透明地使用GPU - 执行数据密集型计算比在CPU上更快。
  • 高效的符号区分 - Theano通过一个或多个输入,为您的函数提供衍生工具。
  • 速度和稳定性优化 - 即使x非常小,也能获得正确的log(1+x)的答案。
  • 生成动态C语言代码 - 评估表达式的速度更快更高效。
  • 广泛的单元测试和自我验证 – 能够检测和诊断模型中的多种类型错误。

Theano的接受度

由于Theano表达式的实际语法,仅在抽象意义上定义、编译了后续的实际计算,因此它对于习惯了正常软件开发的初学者来说,并不太合适。不过,在被专门用于处理深度学习时,它使用到了大型神经网络算法所需的各种计算类型。另外,由于早在2007年就被开发出来了,因此Theano被认为是深度学习研究和开发的行业标准。

我们乐观地估计,Theano的受欢迎程度会随着时间的推移而增长。

10.Pandas

什么是Pandas?

Pandas也是一种Python类机器学习库,它提供了高级的数据结构和各种分析类工具。Pandas库重要的一个特性是:能够使用一个或两个命令,将复杂的操作与数据进行转换。Pandas有许多内置的分组方法,其中包括:数据、过滤以及时间序列功能。

Pandas的特点

Pandas能够让我们操作数据的整个过程更加容易。Pandas的功能主要包括:支持重新索引、迭代、排序、聚合、连接、以及可视化等操作。

Pandas的接受度

目前,Pandas库的各种发布版主要集中在错误修复、增强功能和API修改等方面。Pandas的最近一次改进,能够让它实现对于数据的分组与排序。它能够为应用选择适合的输出方法,并为执行各种自定义类型的操作提供支持。用户在使用Pandas与其他库工具一同进行数据分析时,能够获取较高的性能与灵活性。

原文标题:Top 10 Python Libraries You Must Know in 2019,作者:Sayantini Deb

【51CTO译稿,合作站点转载请注明原文译者和出处为太阳城娱乐网最快登入 www.2233122.com】

【责任编辑:太阳城娱乐网最快登入庞桂玉 TEL:(010)68476606】

点赞 0
大家都在看
猜你喜欢

订阅专栏+更多

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

328人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

651人订阅学习

WOT2019全球人工智能技术峰会

WOT2019全球人工智能技术峰会

通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
共50章 | WOT峰会

0人订阅学习

读 书 +更多

Linux服务器安全策略详解

Linux主要用于架设网络服务器。如今关于服务器和网站被黑客攻击的报告几乎每天都可以见到,而且随着网络应用的丰富多样,攻击的形式和方法...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO播客

申博游戏下载官方登入 百家乐登入 申博游戏苹果手机怎么下载 菲律宾娱乐在线网直营 www.1111msc.com www.11tyc.com
太阳成娱乐成总代理 菲律宾申博现金网登入 申博官网代理登入 菲律宾太阳娱乐网138登入 电子游戏微信支付充值 菲律宾太阳网娱乐登入
申博太阳城在线即时到账 菲律宾申博开户直营网 www.38333.com 申博现金网直营 申博现金投注登入 菲律宾申博官方网址登入