为什么Python成了开发AI的主流语言?

154 篇文章 2 订阅
16 篇文章 1 订阅

前言

Python成为AI的主流开发语言,是一个很复杂的问题。包括编程语言特性、AI开发特点、社区环境支持等因素都对这一结果有影响。我这里主要结合个人经历来谈谈我觉得的原因。

Python很适合做数据处理

作为一个脚本语言,python非常轻量级,很适合做数据处理。比如调整、合并文件内容等。很多操作,甚至可以直接在命令行中做。

如果需要交互、需要留存代码,也可以用ipython,jupiter lab等“类似命令行”的开发工具来完成。结合了轻量级、即时交互、代码留存的优势。

【----帮助Python学习,以下所有学习资料文末免费领!----】

而我们知道,AI开发里很多时候在处理数据,常见的比如清洗数据、数据集分割、分词并根据word2vector词表转成词ID向量、计算评价指标等。用Python,可以很好的完成这些步骤。

而一个人一般同一时间只能写一种代码,不然语法容易弄混,毕竟很多时候都是肌肉记忆,不会过脑子的。记得我刚写python时就喜欢每行后面打个分号。。。所以,预处理后处理都用python解决的花,中间模型的代码也用python解决会更顺一点。

python的pickle包,以及更高级的,tensorflow和huggingface中的dataset对象,也给数据保存和传输带来了很大的便利。

在这里插入图片描述)

Python有很多支持包

这里说得还不只是那些耳熟能详的神经网络工具。

我们先来看看历史,看看神经网络刚开始火起来的那几年(2012年左右)python环境支撑。这有助于帮助我们了解为什么tensorflow等工具在python中出现。

numpy,1995年,提供了大量矩阵运算工具。

NLTK,2001年,提供了大量自然语言处理工具。

Scikit-learn,2010年,提供了大量传统机器学习的算法与评价指标。

这些工具为基于Python的神经网络工具,如Theano(2008年)、Tensorflow(2015年)等奠定了基础。

当然,同期也有很多竞品。比如C/C++的caffe、OpenCV、word2vector,Java的Stanford CoreNLP,HanLP等。所以,一度有一个说法,是做CV的用C/C++,做NLP的用Python/Java。我在2015年左右刚接触NLP时,还纠结过应该用哪种语言来着。

在这里插入图片描述)

奠定Python王者地位的,是Tensorflow和Keras

TensorFlow和Keras都是2015年发布的。早期Keras只支持Theano的backend,后来也支持了TensorFlow。

2015年那会儿,神经网络并不好写。反正我写作业,简单的前馈神经网络,用过java、C#等。而复杂的神经网络,用啥写的都有。因为Theano等库实在太难用,我也见过直接用numpy写CNN的。但这些玩意儿对初学者实在不友好。

而keras简直是神器,居然支持layer对象,居然直接有fit和evaluate方法,极大地方便了初学者学习神经网络,从而提高了Python在AI 开发中的地位。

后来的Tensorflow和Pytorch吸收了很多keras中优秀的特性。并且基于这些,有了很多更高级的工具,如DGL和transformers等,让python的环境生态得以蓬勃发展。同时,由于python的用户群体很大,很多其它工具也都开始提供python接口。比如Stanford CoreNLP(2016年)。

而我觉得,这些的根源,主要是Tensorflow和Keras的成功所吸引的用户群体和业界的关注。

在这里插入图片描述)
当然,以上只是我个人的观点。都只是站在一个NLP的学习者与研究的角度思考得,没有做过全面的调查。欢迎大家讨论交流。

一、Python所有方向的学习路线

刚开始学习python,如果你连完整的学习步骤都没有规划好,基本不可能学会python。他把Python所有方向路线做了整理,形成各个领域的知识点汇总。(图片太太太太太大了,这里放不了没完整版可以文末免费领取)

从事数据分析需要用到的一些硬技能,如python、SQL等工具如何使用!

在这里插入图片描述

二、入门全套学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

在这里插入图片描述

三、Python操作实例

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

在这里插入图片描述

四、Python就业项目实战

我们学习Python必然是为了找到高薪的工作或者高报酬的兼职,下面是一些公司所能用到的实战项目,学完这些相信大家一定可以找到满意的工作。

在这里插入图片描述

11 Django框架

在这里插入图片描述

16 微信公众号
在这里插入图片描述

18 通用爬虫模块使用

在这里插入图片描述

21 数据分析

在这里插入图片描述

22 机器学习
在这里插入图片描述

还有其他的一些东西,比如说我自己出的Python入门图文类教程,没有电脑的时候用手机也可以学习知识,学会了理论之后再去敲代码实践验证,还有Python中文版的库资料、MySQL和HTML标签大全等等,这些都是可以送给粉丝们的东西。

资料领取

这份完整版的Python全套学习资料已经上传网盘,朋友们如果需要可以点击下方微信卡片免费领取 ↓↓↓【保证100%免费】
或者

点此链接】领取

好文推荐

了解python的前景:https://blog.csdn.net/SpringJavaMyBatis/article/details/127194835

了解python的兼职副业:https://blog.csdn.net/SpringJavaMyBatis/article/details/127196603

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python是一种高级、通用、解释型的编程语言,由Guido van Rossum于1989年发起,1991年正式发布。Python以简洁而清晰的语法著称,强调代码的可读性和易于维护。以下是Python的一些主要特点和优势: 易学易用: Python的语法设计简单直观,更接近自然语言,使初学者更容易上手。这种易学易用的特性促使了Python在教育领域和初学者中的广泛应用。 高级语言Python是一种高级编程语言,提供了自动内存管理(垃圾回收)等功能,减轻了程序员的负担,同时具有动态类型和面向对象的特性。 跨平台性: Python具有很好的跨平台性,可以在多个操作系统上运行,包括Windows、Linux、macOS等,使得开发的代码可以轻松迁移。 丰富的标准库: Python内置了大量的模块和库,涵盖了文件操作、网络编程、数据库访问等各个方面。这些标准库使得开发者能够快速构建功能丰富的应用程序。 开源: Python是开源的,任何人都可以免费使用并查看源代码。这种开放性促进了Python社区的发展,使得有大量的第三方库和框架可供使用。 强大的社区支持: Python拥有庞大而活跃的开发社区,这使得开发者可以轻松获取帮助、分享经验,并参与到Python的发展中。 适用于多个领域: Python在各种领域都有广泛的应用,包括Web开发、数据科学、人工智能、自动化测试、网络编程等。特别是在数据科学和人工智能领域,Python为了主流的编程语言之一。 支持面向对象编程: Python支持面向对象编程,允许开发者使用类和对象的概念,提高了代码的重用性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值