用 Python 做机器学习不得不收藏的重要库

简介: Python通常被应用统计技术或者数据分析人员当做工作中的首选语言。
TB1mkCpz4jaK1RjSZFAXXbdLFXa.jpg

本文为 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 做机器学习不得不收藏的重要库

TB1B4aez7voK1RjSZFDXXXY3pXa.jpg

Python通常被应用统计技术或者数据分析人员当做工作中的首选语言。数据科学家也会用python作为连接自身工作与WEB 应用程序/生产环境集成中。

Python在机器学习领域非常出色。它具有一致的语法、更短的开发时间和灵活性,非常适合开发能够直接插入生产系统的复杂模型和预测引擎。

Python的一个最大的资产是其广泛的库。

库是一组用给定语言编写的程序和功能的集合。一组健壮的库可以使开发人员更容易执行复杂的任务,而无需重写许多代码。

机器学习很大程度上是基于数学。具体来说就是数学优化、统计和概率。Python库帮助那些不具备开发人员知识的研究人员/数学家轻松地“进行机器学习”。

以下是机器学习中最常用的一些库:

  Scikit-learn   经典的ML算法

TB1DQCpz4jaK1RjSZFAXXbdLFXa.png

Scikit-learn 是最流行的ML 库之一,他支持很多监督学习和非监督学习算法。例如:线性回归,逻辑回归,决策树,聚类 ,k-means等。

他基于两个python库:Numpy 和 Scipy 。 他为常见的机器学习和数据挖掘提供了一组算法:聚类,回归和分类。甚至像数据转换,特征选择,集成学习这样的任务也可与通过简短几行代码实现。

对于机器学习的新手来说,Scikit-learn 是一个够用的工具,直到你自己开始实现更复杂的算法。

  Tensorflow for Deep Learning 深度学习

TB1j2mfz3HqK1RjSZJnXXbNLpXa.png

如果你在机器学习的世界里,你可能听过,尝试过或者实现过某种形式的深度学习的算法。但是他们是必要的吗?回答可能是不必要。但是完成他们后感觉很酷对吗? 回答是:对的!酷毙了。

Tensorflow 有趣的地方在于,当你使用python 编写代码,你可以编译和运行在你的CPU 或者GPU 上,而且你不需要写 c++或者 CUDA 的代码,就可以运行在GPUs 集群上。

他使用一个多层节点的系统,允许你快速的简历,训练,部署具有大量数据集的人工神经网络。这让谷歌能够识别照片中的物体,通过语音识别程序理解在口语中的单词。

  Theano is also for Deep Learning

TB19Jmcz9zqK1RjSZFHXXb3CpXa.png

Theano 是另一个用于数值计算的优秀类库,有点类似于Numpy。Theano 允许你高效的定义,优化和评估涉及多维数组的数学表达式。

使Theano 与众不同的是它利用了计算机的GPU。这使得它能够比单独在CPU上运行时快100倍进行数据密集型计算。Theano的速度使得它对于深度学习和其他复杂的计算任务特别有价值。

Theano 库的最终发布是在去年——2017年,版本1.0.0包含了许多新特性、界面更改和改进。

  Pandas  数据提取与预处理

panda是一个非常流行的库,它提供了简单易用且直观的高级数据结构。

它有许多内建的方法来分组、组合数据和过滤以及执行时间序列分析。

panda可以轻松地从SQL数据库、CSV、Excel、JSON文件等不同来源获取数据,并对数据进行操作。图书馆有两个主要结构:

Series“级数”---- 一维 。

TB1PweczVzqK1RjSZSgXXcpAVXa.png

Data Frames“数据帧”---- 二维。

TB1K5B9zYPpK1RjSZFFXXa5PpXa.png

如果想得知关于如何使用序列和数据看框架的更多细节,请查看的我的其他文章。

  Matplotlib用于数据可视化

TB18at6z6DpK1RjSZFrXXa78VXa.jpg

如果你不能很好的与其他人交流,那么最好的,最复杂的机器学习就显得没有意义。

那么如何从这些数据中转换出价值呢?你如何激励你的业务分析师,告诉他们充满“洞察力”的“故事”?

这就是Matplotlib发挥作用的地方。它是每个数据科学家用于创建2D图形和图形的标准Python库。它是命令行简单,这意味着它需要更多的命令来生成好看的图形和数字,而不是使用一些高级库。

然而,这也带来了灵活性。有了足够的命令,您可以使用Matplotlib制作任何您想要的图形。您可以构建不同的图表,从直方图和散点图到非笛卡尔坐标图。

它支持所有操作系统上的不同GUI后端,还可以将图形导出到通用矢量和图形格式,如PDF、SVG、JPG、PNG、BMP、GIF等。

  Seaborn是另一个数据可视化库

TB1UoSaz4TpK1RjSZFGXXcHqFXa.jpg

Seaborn是一个流行的可视化库,它建立在Matplotlib的基础之上。它是一个高级库,这意味着更容易生成某些类型的图,包括热图、时间序列和小提琴图。

  最后

这是机器学习中最重要的Python库的集合。如果您打算使用Python和数据科学,那么这些库是值得一看的,同时也值得您熟悉。

我是否错过了任何重要的Python ML库?如果是,请务必在下面的评论中提到它。尽管我试图介绍最有用的库,但可能仍然没有介绍其他一些值得研究的库。

问题或建议吗?我很想听听你的意见——请随意留言。

想要继续查看该篇文章相关链接和参考文献?

长按链接点击打开或点击底部【用python做机器学习不得不收藏的重要库】:

https://ai.yanxishe.com/page/TextTranslation/1119

AI研习社每日更新精彩内容,观看更多精彩内容:雷锋网雷锋网雷锋网(公众号:雷锋网)

AI/机器学习年度2018年度进展综述

算法基础:五大排序算法Python实战教程

手把手:用PyTorch实现图像分类器(第一部分)

手把手:用PyTorch实现图像分类器(第二部分)

等你来译:

对混乱的数据进行聚类

初学者怎样使用Keras进行迁移学习 

强化学习:通往基于情感的行为系统 

一文带你读懂 WaveNet:谷歌助手的声音合成器

目录
相关文章
|
13天前
|
调度 开发者 Python
Python中的异步编程:理解asyncio库
在Python的世界里,异步编程是一种高效处理I/O密集型任务的方法。本文将深入探讨Python的asyncio库,它是实现异步编程的核心。我们将从asyncio的基本概念出发,逐步解析事件循环、协程、任务和期货的概念,并通过实例展示如何使用asyncio来编写异步代码。不同于传统的同步编程,异步编程能够让程序在等待I/O操作完成时释放资源去处理其他任务,从而提高程序的整体效率和响应速度。
|
16天前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
45 0
|
4天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
21 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
7天前
|
机器学习/深度学习 数据采集 人工智能
探索机器学习:从理论到Python代码实践
【10月更文挑战第36天】本文将深入浅出地介绍机器学习的基本概念、主要算法及其在Python中的实现。我们将通过实际案例,展示如何使用scikit-learn库进行数据预处理、模型选择和参数调优。无论你是初学者还是有一定基础的开发者,都能从中获得启发和实践指导。
17 2
|
9天前
|
数据库 Python
异步编程不再难!Python asyncio库实战,让你的代码流畅如丝!
在编程中,随着应用复杂度的提升,对并发和异步处理的需求日益增长。Python的asyncio库通过async和await关键字,简化了异步编程,使其变得流畅高效。本文将通过实战示例,介绍异步编程的基本概念、如何使用asyncio编写异步代码以及处理多个异步任务的方法,帮助你掌握异步编程技巧,提高代码性能。
26 4
|
9天前
|
API 数据处理 Python
探秘Python并发新世界:asyncio库,让你的代码并发更优雅!
在Python编程中,随着网络应用和数据处理需求的增长,并发编程变得愈发重要。asyncio库作为Python 3.4及以上版本的标准库,以其简洁的API和强大的异步编程能力,成为提升性能和优化资源利用的关键工具。本文介绍了asyncio的基本概念、异步函数的定义与使用、并发控制和资源管理等核心功能,通过具体示例展示了如何高效地编写并发代码。
20 2
|
9天前
|
机器学习/深度学习 数据采集 搜索推荐
利用Python和机器学习构建电影推荐系统
利用Python和机器学习构建电影推荐系统
23 1
|
9天前
|
机器学习/深度学习 算法 PyTorch
用Python实现简单机器学习模型:以鸢尾花数据集为例
用Python实现简单机器学习模型:以鸢尾花数据集为例
28 1
|
14天前
|
数据采集 JSON 测试技术
Python爬虫神器requests库的使用
在现代编程中,网络请求是必不可少的部分。本文详细介绍 Python 的 requests 库,一个功能强大且易用的 HTTP 请求库。内容涵盖安装、基本功能(如发送 GET 和 POST 请求、设置请求头、处理响应)、高级功能(如会话管理和文件上传)以及实际应用场景。通过本文,你将全面掌握 requests 库的使用方法。🚀🌟
36 7
|
15天前
|
机器学习/深度学习 数据采集 算法
Python机器学习:Scikit-learn库的高效使用技巧
【10月更文挑战第28天】Scikit-learn 是 Python 中最受欢迎的机器学习库之一,以其简洁的 API、丰富的算法和良好的文档支持而受到开发者喜爱。本文介绍了 Scikit-learn 的高效使用技巧,包括数据预处理(如使用 Pipeline 和 ColumnTransformer)、模型选择与评估(如交叉验证和 GridSearchCV)以及模型持久化(如使用 joblib)。通过这些技巧,你可以在机器学习项目中事半功倍。
21 3

热门文章

最新文章