人工智能需要会什么编程?
说明
这个问题我想你问的一定不只是用什么语言,而是需要会什么方面的编程技术。其实编程在人工智能中只是一个辅助工具,从事人工智能是不需要你有十分过硬的编程技术的,但是既然人工智能是需要大量的运算和大量的数据的话,这种事情也只有计算机才能实现,所以将人工智能模型建立和训练就需要靠代码来实现。
代码知识实现AI的工具,数学才是人工智能的核心。下面就人工智能需要的编程技能大概说明一下:
人工智能技能需求
这里有一张人工智能深度学习技能需求图分享给大家,这是我在上深度学习的课程时教材上面的,下面就根据这个图来展开说明。
数据获取
数据是人工智能的基础和根本,没有数据就像大厦没有砂砾是建不起来的。数据来源可能有肯多,比如传感器。那么你可能就需要会通过串口或者socket等其他网络通讯编程将数据从传感器中取出来。又或者,数据是存在数据库比如mysql、redis、sqlite、oracle等,那么你可能就需要会从数据库中获取数据,比如sql语句。又或者,数据是以文档形式存放,那么你就需要会文档的读取。
数据分析
有了数据后需要对数据进行处理,比如清洗、数据集成、数据归约、特征提取、离散化等处理。那么你可能会用到matalab工具、pandas、numpy、Hadoop等成熟库,还有数据可是话可能要用到的BI Tableau、Qlikview、PowrerBI等。
AI模型建立
这个是人工智能的核心,智能模型的建立。它包括卷积神经网络、循环神经网络、生成式对抗网络等。
常用的编程工具和编程库是python、C#、C++等。以python为例,常用的库有Keras、Tensorflow、PyTorch等,目前这三个是主流的,若你想从事AI建模的工作,那么着三个库你是必须要会,是绕不开的
keras建立一个简单的神经网络代码:
成果部署
建立并训练好的数据模型,你需要将之部署实用化,放置到项目中去,可以是app、可以是web、也可以是小程序,如果你需要从事这些方面的工作,那么你就需要具备相关的编程知识,比如app开发、web开发、系统运维等方面知识。
总结
以上所列的编程技能并不代表一个人需要全会,上面提到的四个模块,每个模块都深不可测,个人只需要从事其中很小的一方面并专精就好,选择自己想从事的模块然后掌握相关技能就可以了。
至于编程语言,推荐Python。社区健壮、占有率高、好用、易用、发展迅猛。
原文链接:http://www.360doc.com/content/20/0203/23/198329_889543305.shtml