本文为 AI 研习社编译的技术博客,原标题 :
Essential libraries for Machine Learning in Python
作者 |Shubhi Asthana
翻译 | 就2
校对 | 就2 整理 | 菠萝妹
https://medium.freecodecamp.org/essential-libraries-for-machine-learning-in-python-82a9ada57aeb
用 Python 做机器学习不得不收藏的重要库
Python通常被应用统计技术或者数据分析人员当做工作中的首选语言。数据科学家也会用python作为连接自身工作与WEB 应用程序/生产环境集成中。
Python在机器学习领域非常出色。它具有一致的语法、更短的开发时间和灵活性,非常适合开发能够直接插入生产系统的复杂模型和预测引擎。
Python的一个最大的资产是其广泛的库。
库是一组用给定语言编写的程序和功能的集合。一组健壮的库可以使开发人员更容易执行复杂的任务,而无需重写许多代码。
机器学习很大程度上是基于数学。具体来说就是数学优化、统计和概率。Python库帮助那些不具备开发人员知识的研究人员/数学家轻松地“进行机器学习”。
以下是机器学习中最常用的一些库:
Scikit-learn 经典的ML算法
Scikit-learn 是最流行的ML 库之一,他支持很多监督学习和非监督学习算法。例如:线性回归,逻辑回归,决策树,聚类 ,k-means等。
他基于两个python库:Numpy 和 Scipy 。 他为常见的机器学习和数据挖掘提供了一组算法:聚类,回归和分类。甚至像数据转换,特征选择,集成学习这样的任务也可与通过简短几行代码实现。
对于机器学习的新手来说,Scikit-learn 是一个够用的工具,直到你自己开始实现更复杂的算法。
Tensorflow for Deep Learning 深度学习
如果你在机器学习的世界里,你可能听过,尝试过或者实现过某种形式的深度学习的算法。但是他们是必要的吗?回答可能是不必要。但是完成他们后感觉很酷对吗? 回答是:对的!酷毙了。
Tensorflow 有趣的地方在于,当你使用python 编写代码,你可以编译和运行在你的CPU 或者GPU 上,而且你不需要写 c++或者 CUDA 的代码,就可以运行在GPUs 集群上。
他使用一个多层节点的系统,允许你快速的简历,训练,部署具有大量数据集的人工神经网络。这让谷歌能够识别照片中的物体,通过语音识别程序理解在口语中的单词。
Theano is also for Deep Learning
Theano 是另一个用于数值计算的优秀类库,有点类似于Numpy。Theano 允许你高效的定义,优化和评估涉及多维数组的数学表达式。
使Theano 与众不同的是它利用了计算机的GPU。这使得它能够比单独在CPU上运行时快100倍进行数据密集型计算。Theano的速度使得它对于深度学习和其他复杂的计算任务特别有价值。
Theano 库的最终发布是在去年——2017年,版本1.0.0包含了许多新特性、界面更改和改进。
Pandas 数据提取与预处理
panda是一个非常流行的库,它提供了简单易用且直观的高级数据结构。
它有许多内建的方法来分组、组合数据和过滤以及执行时间序列分析。
panda可以轻松地从SQL数据库、CSV、Excel、JSON文件等不同来源获取数据,并对数据进行操作。图书馆有两个主要结构:
Series“级数”---- 一维 。
Data Frames“数据帧”---- 二维。
如果想得知关于如何使用序列和数据看框架的更多细节,请查看的我的其他文章。
Matplotlib用于数据可视化
如果你不能很好的与其他人交流,那么最好的,最复杂的机器学习就显得没有意义。
那么如何从这些数据中转换出价值呢?你如何激励你的业务分析师,告诉他们充满“洞察力”的“故事”?
这就是Matplotlib发挥作用的地方。它是每个数据科学家用于创建2D图形和图形的标准Python库。它是命令行简单,这意味着它需要更多的命令来生成好看的图形和数字,而不是使用一些高级库。
然而,这也带来了灵活性。有了足够的命令,您可以使用Matplotlib制作任何您想要的图形。您可以构建不同的图表,从直方图和散点图到非笛卡尔坐标图。
它支持所有操作系统上的不同GUI后端,还可以将图形导出到通用矢量和图形格式,如PDF、SVG、JPG、PNG、BMP、GIF等。
Seaborn是另一个数据可视化库
Seaborn是一个流行的可视化库,它建立在Matplotlib的基础之上。它是一个高级库,这意味着更容易生成某些类型的图,包括热图、时间序列和小提琴图。
最后
这是机器学习中最重要的Python库的集合。如果您打算使用Python和数据科学,那么这些库是值得一看的,同时也值得您熟悉。
我是否错过了任何重要的Python ML库?如果是,请务必在下面的评论中提到它。尽管我试图介绍最有用的库,但可能仍然没有介绍其他一些值得研究的库。
问题或建议吗?我很想听听你的意见——请随意留言。
领取专属 10元无门槛券
私享最新 技术干货