我们距离AI编程还有多远?
近几年来,人工智能的信息以不同形式霸占着我们的眼球,我们知道AlphaGo、微软小冰、Sophia,了解过自动驾驶、无人机、智能家居等,深知人工智能是在记忆力、学习力、运算力方面都远超人类的存在,但人工智能在我们脑海中仍然难有一个清晰的形象。为什么?
现在几乎所有人都在谈论AI,那么
1.人们常说的AI是什么?
AI主要可分为3类,目前人们所说的的人工智能AI是特定领域的人工智能,在学术上还有通用人工智能AGI,它的定义其实是非类人的人工智能,它没有感情,没有自我意识,但是它是一个通用的人工智能;还有一种经常出现在科幻小说、科幻电影里的叫做强人工智能,他们是有自我意识的,即类人的人工智能。
那么目前技术上已经实现的人工智能是怎样产生的呢?以老师(人)教学生(AI)识别猫和狗为例,来看人工智能是怎样产生的。
我们都知道老师在上课之前要准备大量的教学资料,这个过程就相当于AI在数据处理,场景处理等。老师准备出来的教案其实就是大数据,接下来老师可能会开始教学生识别猫和狗,这个过程其实就是AI的深度学习。
通过不断的学习,在学生已经拥有一定的知识储备的时候,老师可能就要出题考核学生了,老师出的题目可能是教案上没有的,那么学生(AI)就要对此作出一个判断,给出答案。老师根据学生的答案然后纠正学生的错误,周而复始,一个强大的猫和狗的识别AI就产生了。
2.
AI能否实现自动编程?
人类:给我个客户管理系统
AI:收到,马上执行
……
AI:编程已完成,请慢用
这样的场景,目前的人工智能是不可能实现的。因为软件≠编程,它包括编程,编程只是软件中的一个过程,要完成软件工程这件事情(如果要达到上述假设的效果)至少要强人工智能才能实现。而目前强人工智能发展相对通用人工智能的发展是停滞不前的。
那么比较可能实现的AI自动编程的场景是什么呢?
AI可以在需求的搜集、需求的分析形成一套标准的需求建模,完成一个非标化信息输入到一个标准化的建模输出的一个过程。
在开发编码的时候,以开发一个函数为例,人类在开发的时候可能通过借助某些工具譬如查手册、自己的经验、工具软件等等,而对于AI来说,只要给它若干样板数据,它可以自己理解并找出规律,然后智能编写出算法。
在系统测试中,AI可以智能检查不规范的程序并且修复BUG,最后输出的就是一个已经测试通过的项目。
上述这些场景是不是很美好?那这些离我们远吗?
其实AI编程的实现程度取决于当前人工智能发展程度。而人工智能的发展很大程度上取决于三大方面,即硬件,数据和算法。
其中,人工智能算法是人工智能实现所需要具备的基础,底层硬件是支撑人工智能应用的前提,为整个人工智能的运算提供算力。而大数据,是决定能否产生某个特定的人工智能,以及人工智能的智能程度的必要因素。
此外,人工智能的发展离不开云计算,因为没有云计算,就无法实现大数据存储与计算;而人工智能算法多是依赖于大数据的,没有数据,就算有人工智能算法也没用。
所以说云计算是人工智能的基础计算平台(虽然不是所有的人工智能计算都在严格意义的云平台上进行)。你也可以简单的认为:人工智能=云计算+大数据。
众所周知,云计算有三种服务模式,即IaaS、PaaS和SaaS。此前PaaS一直属于“夹缝中求生存”的状态。随着传统企业数字化转型的加速,以及互联网企业的迅猛发展,企业业务都将上到“云端”,PaaS的重要性急速凸显。
对于中小企业来说,他们迫切需要一款可以降低企业上云的门槛、难度、周期、成本的产品。在这样的背景下,惟快云定制应运而生。
惟快云定制是洪睿科技自主研发的一款应用可视化配置PaaS平台,给企业赋能,让企业快速实现信息化。在惟快云定制平台,用户可以自由开发各种企业应用软件,譬如OA、CRM、ERP等企业管理系统,还可以根据用户的需求自定义开发组件、函数等,甚至满足系统扩展和高度定制需求。
目前,惟快云定制平台已经积累了大量信息化项目的数据,未来,惟快云定制将会把编程过程中的业务场景数据形成标准化,使AI编程成为可能。
以AlphaGo为例,它之所以会完胜李世石和柯洁背后是因为有着庞大的数据库做支撑,人类棋手可能只想了三步,它三百步都想好了,由此可见数据的魅力。同理,如果有庞大的数据输入,软件工程人工智能化也不是不可能。
3.AI会取代程序员吗?
AI可能会是程序员的好搭档、程序员的工具,但不会取代程序员。因为程序员的工作是一个创造的过程,而人工智能是对人的意识、思维的信息过程的模拟,它不是人的大脑,只能模仿人的思考能力。
在广泛,宏观的领域里,它无法像人一样有感情的互动,进行文化的创新,不会对不同人心理进行揣摩,也没有对音乐,艺术,诗歌的鉴赏能力。所以,在他看来AI是不能取代程序员的,至少在未来很长一段时间里不会。