Python与人工智能的关系原来是这样的...

源 / AI时间 文 / 数据挖掘机

人工智能掀起了世界的新一波科技浪潮,如今,你要是不懂点AI、机器学习和python都不好意思说你是现代人,那么python究竟和人工智能什么关系,为什么人工智能把python也给带火了,今天就给大家简单介绍下python和人工智能的关系及应用,以及想要学人工智能的你,究竟需要学些什么python的知识,先来上两张图人工智能和python的图。

从上图可以看出,人工智能包含常用机器学习和深度学习两个很重要的模块,而右图中python拥有matplotlib、Numpy、sklearn、keras等大量的库,像pandas、sklearn、matplotlib这些库都是做数据处理、数据分析、数据建模和绘图的库,基本上机器学习中对数据的爬取(scrapy)、对数据的处理和分析(pandas)、对数据的绘图(matplotlib)和对数据的建模(sklearn)在python中全都能找到对应的库来进行处理,所以,要想学习AI而不懂python,那就相当于想学英语而不认识单词,所以,python学起来吧。

那么要想学人工智能,想学python,那些东西要学习呢,下面给大家简单介绍下:

首先,你要学python如何爬取数据,你要做数据分析、数据建模,起码你要有数据,这些数据来源有多种方法,但是很多都来自网络,这就是爬虫。

爬虫:requests、scrapy、selenium、beautifulSoup,这些库都是写网络爬虫需要使用到的,好好掌握这些东西,数据就有了。

然后,有了数据就可以进行数据处理和分析了,这个时候,你需要用到数据处理的一些库。

数据处理:Numpy、scipy、pandas、matplotlib,这些库分别可以进行矩阵计算、科学计算、数据处理、绘图等操作,有了这些库,你就可以一步步开始把数据处理成你需要的格式。

接着,数据符合你的格式以后,你就需要利用这些数据进行建模了,这个时候你用到的库也有很多。

建模:nltk、keras、sklearn,这些库主要是用于自然语言处理、深度学习和机器学习的,把这些用好了,你的模型就构建出来了。

最后,如果你的项目是基于python开发的线上系统,你还可以学一学python的web开发,这样,你做的模型还能直接用在线上系统。

Web开发:django、flask、tornado,这些库搞明白了,你web开发也就搞定了。

以上只是你入门要学习人工智能所要掌握的一些基本的库,要想真正使用起来,你可能需要花费很多时间去研究和学习这里面的每一个细节,不过,有句话叫“人生苦短,我用python”,之所以这么说是因为python在实现各个功能的时候要远比其他语言简练的多,很多功能在python中只需要一行代码搞定,但是在java中你可能需要写好多好多代码才能实现。

就拿一个简单的例子,读写文件来说吧:

Python读写文件:

//读文件  
with open('readFile', 'r') as inFile:  
        for line in inFile.readlines():  
                print line  
                ...  
  
//写文件  
with open('writeFile', 'w') as outFile:  
        outFile.write("...")

Java读写文件:

import java.io.InputStreamReader;  
import java.io.FileInputStream;  
import java.io.FileReader;  
import java.io.FileWriter;  
import java.io.BufferedWriter;  
import java.io.File;  
  
  
BufferedReader br1 = new BufferedReader(new InputStreamReader(new FileInputStream("read_file1")));  
BufferedReader br2 = new BufferedReader(new FileReader("read_file2"));  
  
String line = null;  
while((line = br1.readLine())!=null){  
        System.out.println(line);  
        ...  
}  
  
File outfile = new File("write_file");  
if (!file.exists()){  
        file.createNewFile();  
}  
  
  
//true = append file  
FileWriter fileWritter = new FileWriter(file.getName(),true);  
BufferedWriter bufferWritter = new BufferedWriter(fileWritter);  
bufferWritter.write(data);  
bufferWritrer.flush();
bufferWritter.close();

各位学习AI的同胞们,你们看到了吧,就是一个简单的读写文件,java的操作要比python复杂太多太多!

在真实的工作中,我们需要做的事情是把大量的精力集中在数据上、数据分析和理解上,而不是花费30%-50%的时间去写代码,python不光是提供了机器学习所需要的一切工具库,还能让你专注在数据处理和分析上,所以,要学习和进入人工智能行业的话,好好学习python吧,骚年!

最后,附上一张今年语言排行榜。

原文发布于微信公众号 - 顶级程序员(TopCoding)

原文发表时间:2018-05-21

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏顶级程序员

自己动手做一辆无人车!

我刚刚帮助我的朋友Kendrick完成了一个小的项目。我们制作了一个小汽车,你可以教会它怎么行驶,让它成为一辆小型无人车。我负责了所有的硬件和arduino软件...

4097
来自专栏吉浦迅科技

DAY82:阅读Compute Capability 6.x

我们正带领大家开始阅读英文的《CUDA C Programming Guide》,今天是第82天,我们正在讲解计算能力,希望在接下来的19天里,您可以学习到原汁...

2053
来自专栏AI科技评论

动态 | 谷歌开源FHIR标准协议缓冲工具,利用机器学习预测医疗事件

AI科技评论按:在上月 26 日,谷歌在 arXiv 上发表的一篇论文《Scalable and accurate deep learning for elec...

3166
来自专栏量子位

机器学习论文+代码大全,这个网站请收藏好

一个网站,关于机器学习的网站,在著名的reddit上获得国外网友的热情追捧。如果你要问为什么,其实特别简单。

1402
来自专栏花叔的专栏

最强坦克小游戏V2.0 强势发布

玩家可提早召回探险队,或等探险队自动归来,如果是自动归来所获得坦币会有加成,每次派遣归航时间0-24小时不等。

811
来自专栏吉浦迅科技

NVIDIA Jetson Xavier开发套件揭秘

之前我们已经报道过NVIDIA推出新一代嵌入式高性能产品Jetson XavierNVIDIA发布新“掌中宝”开发套件:原来你是这样的Jetson Xavier...

3073
来自专栏有刻

笔记与随想 — 解决问题

3836
来自专栏镁客网

这款名为4D-Nature的显微镜,将对细胞信息进行四维图像呈现 | 黑科技

1570
来自专栏阮一峰的网络日志

PhotoSynth:图像识别建模技术

PhotoSynth是微软公司从华盛顿大学购买来的一项技术,主要作用是通过平面照片自动建立空间模型,目前已经接近即将发布的前夕。 举例来说,游客来到上海,外滩...

35810
来自专栏ATYUN订阅号

微软推出iPad应用Earth Lens,使用AI来检测卫星图像中的物体

微软Garage的最新项目之一,利用AI来确定卫星图像中需要注意的精确项目。Earth Lens是今天推出的一款新的开源iPad应用程序,识别,跟踪和分析距离地...

973

扫码关注云+社区

领取腾讯云代金券