如何搭建一个用于AI预测的Python环境

0

瞎扯

2017年人工智能的火把Python烧的热血沸腾,听说很多公司因为Python开发人员需求暴涨导致的薪资上升而不得不切换到其他语言上去。PS:好像需求爆涨和薪资上升都跟我没沾上半点关系,还是苦逼一个,:)

既然如此,我们这些与AI不相干的Pythoner也来蹭一蹭Python人工智能这团火,看看能不能从中取一点暖。所以就有了这套《Python 极简入门》的文章。

没敢称之为“教程”,是因为本来就是个半吊子,然后又讲一个半吊子的东西,纯属自娱自乐,入不了专业AI人士的法眼(专业人士可以绕过了)。

又因为是半吊子讲半吊子的东西,所以整套文章不会有公式和算法的详细讲解(专业人士可以再次绕过了),我们从不生产算法,我们只是机器学习库的搬运工。

不要介意做一个调库侠,工具的发明本来就是为了降低某些操作的难度,还不是专业人士,暂且不用自己创造改造算法,轮子太多,拣着合适的用就行。废话不多说,开始~

1

创建一个Virtual虚拟环境

为了不与本地的Python 环境有冲突,我们使用virtualenv模块创建一个新的Python虚拟环境:

virtualenv python_ai

如下图所示,安装完成:

接着启动python_ai这个虚拟环境:

Scripts\activate

2

安装所需的模块

进入python_ai这个虚拟环境之后,我们来安装所需要的模块,其中主要有:

  • numpy:用于科学计算的基本模块
  • scipy:科学计算工具箱
  • pandas:数据分析和处理模块
  • scikit-learn:机器学习经典算法的集成包
  • nltk:自然语言处理模块
  • jieba:中文分词模块
  • jupyter:一个交互式的笔记本,我们的代码的主战场

其他没有列出的模块,在后面的文章中有使用时会提及大家安装。大部分模块都可以使用pip命令直接安装完成,少部分使用pip命令直接安装不了的,可以通过https://www.lfd.uci.edu/~gohlke/pythonlibs/ 网站下载模块的whl文件,再通过pip命令安装这些whl文件。

pip install pandas

安装pandas模块会附带安装上pandas的依赖库,其中包括Numpy等:

pip install scikit-learn

使用pip命令也可直接安装scikit-learn:

pip install scipy

scipy模块也能通过pip直接安装完成:

pip install jupyter

jupyter的依赖库很多,但也能顺利通过pip命令安装完成:

接下来是jiaba和nltk模块,都能够顺利安装:

3

测试模块

模块安装好之后,我们来测试一下这些模块的安装是否正确。在命令行输入命令:

jupyter notebook

以启动jupyter笔记本:

在Home页面新建一个Python3的notebook:

在新的notebook中导入刚刚安装好的模块,并打印其版本号:

import numpy as np
import pandas as pd
import scipy
import sklearn
import nltk
import jiaba

print(np.__version__)
print(pd.__version__)
print(scipy.__version__)
print(sklearn.__version__)
print(nltk.__version__)
print(jieba.__version__)

结果成功显示,没有报错:

这样,我们用于Python AI预测的环境就搭建好了

下一节,我们将介绍机器学习的工作流程。

原文发布于微信公众号 - 州的先生(zmister2016)

原文发表时间:2018-03-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏竹清助手

如何理解一个高度抽象化的架构风格本质

REST本身是一个高度抽象化的架构风格,因而总是很难对它有一个比较深入且印象深刻的理解。写这篇文章的目的,是自己对学习REST的一个总结,也希望可以通过这篇文章...

1633
来自专栏加米谷大数据

JAVA程序员如何提升自己?

1903
来自专栏程序人生

如何使用一门新的语言

在去年的文章里,我谈了 如何学习一门新的技术。那篇文章通篇形而上,讲大道理,读者颔首称赞,但回过头来在应用层面还是懵懵懂懂,不明就里。今天,我就我过去三周的经验...

2796
来自专栏ThoughtWorks

浅谈微服务基建的逻辑 | 洞见

这篇文章主要目的是面向初接触微服务的朋友简单介绍微服务基础建设所需要的各个模块以及缘由。 起点 首先,我们得有一个“服务”。根据定义,我们可以把每个服务实例都视...

3535
来自专栏北京马哥教育

15个NoSql数据库

随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是...

3678
来自专栏IT技术精选文摘

微服务中 Dubbo 和 Spring Cloud 架构技术路线对比

1073
来自专栏圣杰的专栏

eShopOnContainers 知多少[4]:Catalog microservice

Catalog microservice(目录微服务)维护着所有产品信息,包括库存、价格。所以该微服务的核心业务为:

873
来自专栏程序猿DD

浅谈微服务基建的逻辑

这篇文章主要目的是面向初接触微服务的朋友简单介绍微服务基础建设所需要的各个模块以及缘由。 起点 首先,我们得有一个“服务”。根据定义,我们可以把每个服务实例都视...

3528
来自专栏张善友的专栏

GOTO Berlin: Web API设计原则

在邮件列表和讨论区中有很多与REST和Web API相关的讨论,下面仅是我个人对这些问题的一些见解,并没有绝对的真理,InnoQ的首席顾问Oliver Wolf...

1825
来自专栏喔家ArchiSelf

解读六边形架构

追溯微服务架构的渊源,一般会涉及到六边形架构。追溯六边形架构的起源,要看始作俑者Alistair Cockburn的这篇文章 http://alistair.c...

1133

扫码关注云+社区