人工智能编程:4个最流行的人工智能编程语言
人工智能编程是一种技术的提升,它为不同公司的运营和人们的生活带来了效率和最佳利益。人工智能为不同行业带来了另一个层次的智能技术,其潜力的前景仍在增长,有望达到人类智能。本文旨在阐明合适的人工智能编程语言,以及人工智能编程如何为各个行业带来优势
什么是人工智能编程开发人员愿意探索、试验和实施AI功能,以满足更多的人类和组织需求。毕竟,需求是开发之母。因此,由于人工智能编程的广泛采用,我们可以体验到令人印象深刻的技术进步。人工智能已经覆盖了众多领域的需求(虽然目前国内的企业、生活中大多还没有使用这些)。
个人虚拟助手的可用性,提供有关个人日常生活的信息,从而促进他们的日常目标和需求。多个基于语音的小工具的可用性。这就是定制汽车和电视等大多数基本物品的地方,以允许他们倾听并为个人提供解决方案。借助生物识别功能,用面部识别技术取代信用卡。人工智能创建了媒体平台,观众或听众可以在其中选择他们需要的规格,例如要收听的音乐类型。有同理心的计算机,即所谓的智能设备,不再提供单一、简单的问题和离散的回答;相反,他们提供类似人类的反应。这些是对查询和问题的全面反馈,甚至是明智的解决方案。提供医疗保健的人工智能;医疗保健采用人工智能系统,例如,在诊断专业。人工智能提供新闻和其他报道;这就是系统为个人提供所需的全面信息工作的地方。越来越多的公司计划在各个业务领域采用人工智能。他们有机会提出新的解决方案并更新现有方法。随着产品的创建,他们有机会优化开发流程、简化规划、获取新知识并改善用户体验。这无疑会带来更高的生产率、更高的质量和更快的速度。
就像在定制开发,开发人员可以使用多种语言来编写AI。但是,没有完美的编程语言可以指出人工智能中使用的最佳编程语言。开发过程取决于开发的AI应用程序所需的功能。人工智能已经实现了生物识别智能、自动驾驶汽车的自动驾驶仪,以及其他需要不同人工智能编码语言开发项目的应用。因此,让我们一起继续探索最流行的AI编程语言。
流行的人工智能编程语言关于人工智能最佳编程语言的争论从未停止。因此,我们比较人工智能项目常用的语言,以概述每种语言的优缺点。
Java、Python、Lisp、Prolog和C++是用于人工智能的主要AI编程语言,能够满足开发和设计软件的不同需求。开发人员可以选择哪些AI语言可以满足应用程序要求的所需功能和特性。
PYHTONPython由于其语法简单和通用性,它是开发人员最喜欢的开发中的AI编程语言之一。Python非常适合开发人员进行机器学习,因为与C++和Java相比,它不那么复杂。它也是一种在包括Linux、Windows、MacOS和UNIX在内的平台上使用的非常便携的语言。它的可交互性、解释性、模块化、动态性、可移植性、高级性等特点使它比Java更具特色。
此外,Python是支持面向对象、过程和函数式编程风格的多范式编程。PythonAI编程支持神经网络和NLP解决方案的开发,这得益于其简单的函数库和理想的结构。
优点
Python有各种各样的库和工具。支持算法测试,无需实现。支持面向对象设计的Python提高了程序员的生产力。与Java和C++相比,Python的开发速度更快。缺点
习惯于使用Python的开发人员在尝试使用其他语言进行AI编码时,很难适应完全不同的语法。与C++和Java不同,Python是在解释器的帮助下工作的,这使得AI开发中的编译和执行速度较慢。不适合移动计算。Python不适合用于移动应用程序的AI,因为它的移动计算语言较弱。C++C++是最快的计算机语言。对于时间敏感的AI编程项目,它的速度受到赞赏。它提供更快的执行速度和更少的响应时间,适用于搜索引擎和计算机游戏的开发。此外,C++允许广泛使用算法,并且可以高效地使用统计AI技术。另一个重要的因素是C++由于继承和数据隐藏而支持开发中程序的重用,从而节省时间和成本。C++适用于机器学习和神经网络。
优点
适合为复杂的AI问题寻找解决方案。丰富的库函数和编程工具集合。C++是支持面向对象原则的多范式编程,因此有助于实现有组织的数据。缺点
多任务处理能力差;C++只适用于实现核心或特定系统或算法的基础。它遵循自下而上的方法,因此非常复杂,使得新手开发人员很难使用它来编写AI程序。JAVAJAVA是另一种编程语言来回答“哪种计算机语言用于人工智能?” Java也是一种多范式语言,遵循面向对象的原则和一次编写,随处可读(WORA)的原则。它是一种无需重新编译即可在任何支持它的平台上运行的人工智能编程语言。
Java是最常用的语言之一,而不仅仅是在AI开发中。除了较少的工具外,它的大部分语法都源自C和C++。Java不仅适用于NLP和搜索算法,也适用于神经网络。
优点
非常便携;由于虚拟机技术,它很容易在不同的平台上实现。与C++不同,Java易于使用甚至调试。Java有一个自动内存管理器,可以简化开发人员的工作。缺点
然而,Java比C++慢;它的执行速度较慢,响应时间较长。尽管具有高度可移植性,但Java需要对软件和硬件进行重大更改才能在旧平台上提供便利。Java是一种普遍不成熟的编程AI语言,因为仍有一些开发正在进行中。LISPLISP是另一种用于人工智能开发的语言。它是一个计算机编程语言家族,是仅次于Fortran的第二古老的编程语言。随着时间的推移,Lisp已经发展成为一种强大而动态的编码语言。
一些人认为Lisp是AI的最佳编程语言,因为它为开发人员提供了便利的自由。Lisp之所以被用于AI,是因为它具有快速原型设计和实验的灵活性,这反过来又促进了Lisp成长为一种标准的AI语言。例如,Lisp有一个独特的宏系统,便于探索和实现不同层次的IntellectualIntelligence。
与大多数AI编程语言不同,Lisp可以更有效地解决特定问题,因为它可以适应开发人员正在编写的解决方案的需求。它非常适合归纳逻辑项目和机器学习。
优点
编码快速高效,因为编译器而不是解释器支持它。为Lisp发明了一个自动内存管理器;因此,它有一个垃圾收集。Lisp提供对系统的特定控制,从而最大限度地利用它们。缺点
很少有开发人员熟悉Lisp编程。作为一种古老的人工智能编程语言,Lisp需要配置新的软件和硬件来适应它的使用。人工智能编程给软件开发带来什么好处?随着企业对人工智能编程语言越来越感兴趣,人工智能肯定会对软件开发产生影响。毫无疑问,它会影响团队构建应用程序的方式以及用户与应用程序交互的方式。AI帮助开发人员处理各种活动并建立新技能来改进产品。明显的好处仍然是支持开发人员高效工作的机会。
探索AI如何为开发人员带来优势以及它如何帮助应对常见的软件开发挑战将会很有趣。
准确的项目估算软件开发中的常见挑战之一是提供准确的估计。它需要丰富的专业知识、上下文意识和项目熟悉度。因此,AI允许开发人员应用以前项目的历史数据,并促进预算和截止日期的估算。考虑到各种场景和可能的挑战,他们能够包括更好的评估、用户故事、功能描述等。它使开发人员能够预测所需的预算和工作量。
创新设计项目规划还需要专门的软件设计经验和知识。有时,将客户需求转化为具有出色用户体验的美观产品是一项挑战。然而,人工智能工具可以帮助自动化有关软件设计及其实施步骤的不同任务。例如,使用AI设计助手和其他技术创新可以更轻松地呈现可视化界面。它极大地帮助了解客户偏好并将其转化为功能强大且设计良好的软件。
质量代码代码的质量影响软件的实施及其长期维护。每个团队都意识到需要了解最新信息并应用最新的技术方法。人工智能编程绝对是这里的头把交椅。开发人员使用人工智能来生成更好的代码、优化操作并获得新知识。此外,人工智能解决方案非常适合提高编码过程的准确性和速度。例如,启用AI的编码支持在错误发生时进行错误检测。它可以提高生产力并增加软件价值。
自动化安全软件安全是许多开发团队关注的主要问题之一。他们寻找新的方法来辨别不当行为、避免延迟通知、发出提前警告等。因此,结合人工智能工具变得非常必要。由于更易于访问和更快地检测安全问题,它们被用于研究数据和推进AI编码。同时,它有助于节省查看可执行文件的时间。
质量评估重要的是要提到人工智能在软件测试中的重要性以及确保质量评估程序的能力。质量保证专家极大地受益于人工智能工具的参与。它大大提高了测试、错误查找和修复的质量。此外,它通常在产品投放市场之前完成。这使团队能够简化开发过程并展示高质量的产品。
分析自动化基于人工智能的技术还涵盖了数据分析的自动化。它帮助团队自动化、加速和简化数据分析过程。这支持有价值的数据洞察力和战略决策。AI/ML算法用于自主监控和分析大量数据。此外,它还为用户参与、软件优化和洞察生成提供了新的解决方案。
战略决策无论是创建新产品还是改进现有解决方案,团队都必须做出许多战略决策。为了提高效率,他们可以应用人工智能平台来积累以前的经验,以减少项目误解并确定需求的优先级。不断审查软件性能使他们能够增强软件性能以满足不断增长的业务需求。
人工智能编程已经成为软件行业不可避免的一部分。各种AI支持的工具有助于简化开发过程、与团队高效协作、获得有价值的见解并创造出色的市场产品。
结论学的头皮发麻,同行卷的我人麻,点赞吧~
本文正在参加人工智能创作者扶持计划
适合人工智能的九大编程语言
[[436583]]
【51CTO.com快译】人工智能这一术语起源于20世纪中叶,尽管有了多年的发展,但在过去的十年才被开发人员将人工智能技术用在应用程序的开发中。
编程语言是人工智能开发项目的支柱,因为它们可以帮助软件开发人员创建创新的人工智能解决方案,而无需学习专业人士用来相互交流的高度专业化的语言。
人工智能开发者本文将介绍一些最适合人工智能的编程语言,以及它们的重要性。
以下是一些适合人工智能的优秀编程语言:
1.PythonPython非常适合人工智能,因为它具有强大的数据科学和机器学习的能力。它的计算优雅性和可读性使其成为数据科学家的首选,他们可以使用它来分析甚至大量复杂的数据集,而不必担心计算速度。
Python拥有大量与人工智能相关的软件包列表,例如PyBrain、NeuralTalk2和PyTorch。虽然TensorFlow现在比PyTorch使用更广泛,但由于其最近发布的独特功能,它的普及率可能会在几年内与PyTorch相同。
除了用于深度学习网络的GPU加速之外,这些还包括可变精度。其最新版本还为用户提供多设备支持。最终,Python比C++或Java更容易学习,因此也会受到初学者的青睐。它也是专业人士使用的最流行的语言之一。
由于开发人员不断添加新库或升级现有库,因此它在开发方面并不落后于其他语言;通常情况下,他们在从事专业项目的同时为企业带来一些优势。
此外,假设用户已经了解C++或Java,但不太熟悉神经网络或深度学习方法。在这种情况下,由于仅Numpy库中就有830多个类,可以轻松选择所需的内容。
将Python用于人工智能的好处:
Python有许多可用的库,可通过机器学习简化编程。如果正在从事基于人工智能的项目,很可能已经有一个Python库可以满足需求。如果是初级开发人员,很有可能选择学习Python,因为它比大多数编程语言更容易学习。它有一个强大的机器学习框架,名称为PyBrain,并拥有一个活跃的用户社区,可以提出问题并获得帮助。2.RR是一种开源编程语言,支持统计分析和科学计算。R编程语言证明有助于生成交互式图形和其他高级可视化。它的设计可以处理所有类型的数据分析,从简单的线性回归到复杂的3D模拟。任何人都可以使用R。
作为一种编程语言,R的设计从统计计算到机器学习技术。R具有面向对象编程、高度可扩展性、内存高效的不间断计算、全面的功能、庞大的用户群,被广泛用于预测。
将R用于人工智能的好处:
R的计算能力在处理大量数据时是个例外。在创建具有复杂决策过程的程序时,它还具有应用数学函数的能力。关于性能,可以使用像R这样的开源工具获得更好的结果,因为它不需要许可费用。它还擅长在大数据集中寻找模式,因此受到一些企业的欢迎,因为他们希望分析客户信息以进行营销或识别运营中的重大风险。3.JavaJava被认为是当今最受欢迎的编程语言之一。凭借其面向对象的特性,Java可以让用户毫不费力地快速完成任务;由于Java对并发的内置支持,因此很容易在Java中使用单线程和多线程功能。
用户可以将许多编程语言(例如RubyonRails、Python和Node.js)与Java结合使用,因为它们都提供了与之配合使用的综合框架。
由于Java是当今最流行的编程语言之一,如果用户在当前或未来的愿望涉及使用人工智能解决方案,应该考虑学习如何使用Java。
将Java用于人工智能的好处:
Java编程语言有一些特别适合开发人工智能程序的特点。Java是一种高级的、面向对象的编程语言。当考虑到开发人员经常与许多其他团队成员在不同时区以不同速度开发大型项目而一起工作时,它具有高度的可读性。它是一种5级编程语言,可确保程序员获得多种好处。由于人工智能应用程序使用机器学习算法,从头开始编写的代码而不是预制的库要比用Java编码的代码需要更长的时间来编译。4.LISPLISP最初创建于1958年,是一种函数式编程语言,这意味着其中的一切都是一个表达式。换句话说,每一行代码都做某事。一开始听起来可能有点复杂,但是因为可以编写一个函数实现想做的任何事情,所以理解和构建LISP语法要比从头开始学习一门全新的语言更简单。
因此,如果已经有编程经验(甚至是Python或C++)学习LISP对一些人来说将很容易。即使不了解Java或JavaScript以外的任何语言,也有在线资源可以帮助开始使用函数式语言。
将LISP用于人工智能的好处:
几乎所有主要的深度学习框架的核心操作都依赖于LISP,这为用户在选择库或工具时提供了很大的灵活性。无需考虑环境细节即可快速执行代码。非常适合抽象:使用更简单的模型来解释更深层次的模型,因此程序员无需了解单个组件的工作原理。如果基于初始模型的预测结果是错误的,它可以帮助用户在以后节省时间,因此重写它们会变得相对简单,而不会在这一过程中影响进展。5.PrologProlog是一种声明式编程语言,可以在其中描述要实现的目标而不是如何实现。在Prolog中,知识由事实和规则表示。事实是关于对象的陈述,例如Jim有两个孩子或最喜欢的数字是8。
规则描述了用户何时可以从现有事实推断出新事实,例如,如果一个人有多个孩子,则此人有两个以上孩子。这是一种人工智能方法,可以让程序员在算法上花费更少的时间,而将更多的时间花在思考目标上。
将Prolog用于人工智能的好处:
Prolog可以快速处理大量数据,因为它使用比较统一。它在语法中享有盛誉;使用它的人员通常比普通程序员经验更丰富。它有助于提高这些项目的速度和准确性。如果希望程序随着时间的推移提高能力,那么Prolog可能正是人们所需要的。能够修改程序显著地提高了它的能力。6.C++C++是一种流行的通用编程语言。它是一种高级语言,由贝尔实验室的BjarneStroustrup领导的计算机科学家团队开发。它可以在Windows、Linux、MacOSX操作系统以及智能手机和平板电脑等移动设备上运行。C++已被用于开发游戏、应用程序和图形程序。
它习惯于创建许多其他软件程序,包括那些设计用于人工智能技术的软件程序。但是,由于其复杂性和缓慢的开发速度,它不适用于图形用户界面(GUI)设计或快速原型设计等任务。
将C++用于人工智能的好处:
C++有助于原型设计和生产的机器学习,因为它使用户能够轻松快速地将极其复杂的模型加载到内存中。它还可以让用户快速试验新模型或重新设计现有模型,而无需过多的加载时间或牺牲处理能力。在开发需要快速访问许多数据存储空间的高性能代码时,它是最佳选择之一。如果一种算法或应用程序需要语言中尚未内置的功能,那么很可能其他人已经编写了用户需要的东西。大多数情况下,这些模块将是开源的,这意味着它们可以免费使用和修改用于商业目的。7.HaskellHaskell是一种纯粹基于函数的语言,这意味着所有表达式都被评估为只产生一个值。由于它没有变量,Haskell大量依赖递归来创建其代码,但有一些可变类型,特别是列表和数组。
它使Haskell成为开发复杂算法的理想选择,这些算法在达到最终结果之前依赖于几个步骤。其语法可能令人不太适应,因为它使用布局将代码组织成行,并在其末尾使用分号而不是缩进符。
Haskell更令人兴奋的特性之一是它的类型系统。它没有空值,这不能在变量中存储任何东西,也不能将任何东西作为参数传递。
将Haskell用于人工智能的好处:
Haskell包含一个健壮的类型系统,以避免代码中出现多种类型的错误。虽然其他语言使编写简洁的代码更具挑战性,但Haskell使其变得非常容易。因此,它适用于涉及大量数据的项目。由于其简洁性,它还允许用户同时处理多个项目。使用Haskell的一个显著优势是它的速度。用Haskell编写的程序通常比用其他编程语言编写的程序运行得更快,因为它非常简单。8.JavaScriptJavaScript是一种广泛使用的编程语言,对人工智能至关重要,可以帮助用户构建从聊天机器人到计算机视觉的所有内容。由于其灵活性和深厚的开发人员社区,JavaScript已经迅速成为人工智能最受欢迎的语言之一。
自从1995年创建JavaScript以来,已经使用它编写了许多类似人类的行为,例如面部识别和艺术生成程序。随着企业继续远离遗留系统,JavaScript仍将是任何希望深入了解人工智能的人的基本技能。
将JavaScript用于人工智能的好处:
JavaScript的高度灵活性使其可以与开发人员使用的各种操作系统、浏览器和虚拟机一起使用。它不必从一个系统移植到另一个系统,因为许多系统运行在类似的架构上。它也是那些极有可能将其应用于用户选择的任何领域的稀有语言之一。由于它是基于网络的(和基于浏览器的),编码相对较轻。没有太多的技术要求。9.Julia人工智能是一个热门的研究领域,而Julia可以很好地利用这一兴趣。JeffBezanson、StefanKarpinski、ViralB.Shah和他们的团队从头开始构建该语言并考虑到数值性能,并且它几乎可以在任何操作系统上运行。它也非常容易学习,使用了许多已经知道的常见编码概念,比如循环和条件语句。
Julia的开发环境目前并不理想,工具可以使用一些工作,但随着越来越多的人围绕编程语言构建工具,它会随着时间的推移变得更好。
将Julia用于人工智能的好处:
它是一种专为科学计算设计的高级、高性能编程语言。Julia的语法优雅简洁,让用户可以专注于解决问题而不是编写新代码。通过使用Julia,用户可以节省时间并生成更清晰、速度更快、错误更少的代码。Julia的最大优势之一是它是免费和开源的,这意味着任何人都可以访问其代码。结语总之,可以使用多种编程语言来开发人工智能。但没有一种语言在所有方面都擅长。一些专注于开发速度,一些具有概率模型的天然优势,而另一些则与现有软件更好地集成。
理想的选择取决于用户尝试构建的内容以及到达那里所需的时间。
常见问题1.问题:在开发人工智能项目时应该考虑什么?回答:在设计和实施人工智能和机器学习程序时,有两个因素在起作用:首先,使用的是哪种算法;其次,它是用什么语言编写的。
为应用程序选择一种算法并不难,只有少数可供选择。问题是这些算法中的每一个都需要各自的计算机语言。
因此,假设选择了一种称为DeepQLearning的算法。要编写这一程序,必须知道如何使用Java、Python、JavaScript或C++进行编码——如果决定为GPU操作与数据分析操作做一些不同的事情,那么可能不止这些语言中的一种。
如今有100多种算法,每种算法都有自己的语言,也各有优缺点。例如,只有少数优秀的深度学习平台可用,但有几十种决策树算法或启发式算法。
2.哪个更好——Python或R编程语言?回答:R和Python是人工智能、机器学习和数据分析的标准编程语言。如果从人工智能和机器学习开始,用户很可能会采用这两种语言,并且必须选择一种语言。
这两种语言有几个共同点:
它们都是开源的。它们很强大。它们易于学习(如果已经知道一种编程语言)。它们带有多个库,可以轻松导入和分析数据。那么应该选择哪一个呢?这是它们的方式比较。
3.问题:2021年最常用的五种编程语言是什么?回答:根据Statista公司的调查,2021年的编程语言包括:
JavaScript,有64.96%的受访者对该语言表示认同。HTML/CSS,有56.07%的受访者对该语言表示认同。Python,有48.24%的受访者对该语言表示认同。SQL,有47.08%的受访者对该语言表示认同。Java,有35.35%的受访者对该语言表示认同。除此之外,Node.js、TypeScript、C#、Shell和C++均跻身全球开发者使用的前10名编程语言。
原文标题:TheBestProgrammingLanguagesforAI,作者:DeveshChauhan
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】
人工智能的历史、现状和未来
如同蒸汽时代的蒸汽机、电气时代的发电机、信息时代的计算机和互联网,人工智能正成为推动人类进入智能时代的决定性力量。全球产业界充分认识到人工智能技术引领新一轮产业变革的重大意义,纷纷转型发展,抢滩布局人工智能创新生态。世界主要发达国家均把发展人工智能作为提升国家竞争力、维护国家安全的重大战略,力图在国际科技竞争中掌握主导权。习近平总书记在十九届中央政治局第九次集体学习时深刻指出,加快发展新一代人工智能是事关我国能否抓住新一轮科技革命和产业变革机遇的战略问题。错失一个机遇,就有可能错过整整一个时代。新一轮科技革命与产业变革已曙光可见,在这场关乎前途命运的大赛场上,我们必须抢抓机遇、奋起直追、力争超越。
概念与历程
了解人工智能向何处去,首先要知道人工智能从何处来。1956年夏,麦卡锡、明斯基等科学家在美国达特茅斯学院开会研讨“如何用机器模拟人的智能”,首次提出“人工智能(ArtificialIntelligence,简称AI)”这一概念,标志着人工智能学科的诞生。
人工智能是研究开发能够模拟、延伸和扩展人类智能的理论、方法、技术及应用系统的一门新的技术科学,研究目的是促使智能机器会听(语音识别、机器翻译等)、会看(图像识别、文字识别等)、会说(语音合成、人机对话等)、会思考(人机对弈、定理证明等)、会学习(机器学习、知识表示等)、会行动(机器人、自动驾驶汽车等)。
人工智能充满未知的探索道路曲折起伏。如何描述人工智能自1956年以来60余年的发展历程,学术界可谓仁者见仁、智者见智。我们将人工智能的发展历程划分为以下6个阶段:
一是起步发展期:1956年—20世纪60年代初。人工智能概念提出后,相继取得了一批令人瞩目的研究成果,如机器定理证明、跳棋程序等,掀起人工智能发展的第一个高潮。
二是反思发展期:20世纪60年代—70年代初。人工智能发展初期的突破性进展大大提升了人们对人工智能的期望,人们开始尝试更具挑战性的任务,并提出了一些不切实际的研发目标。然而,接二连三的失败和预期目标的落空(例如,无法用机器证明两个连续函数之和还是连续函数、机器翻译闹出笑话等),使人工智能的发展走入低谷。
三是应用发展期:20世纪70年代初—80年代中。20世纪70年代出现的专家系统模拟人类专家的知识和经验解决特定领域的问题,实现了人工智能从理论研究走向实际应用、从一般推理策略探讨转向运用专门知识的重大突破。专家系统在医疗、化学、地质等领域取得成功,推动人工智能走入应用发展的新高潮。
四是低迷发展期:20世纪80年代中—90年代中。随着人工智能的应用规模不断扩大,专家系统存在的应用领域狭窄、缺乏常识性知识、知识获取困难、推理方法单一、缺乏分布式功能、难以与现有数据库兼容等问题逐渐暴露出来。
五是稳步发展期:20世纪90年代中—2010年。由于网络技术特别是互联网技术的发展,加速了人工智能的创新研究,促使人工智能技术进一步走向实用化。1997年国际商业机器公司(简称IBM)深蓝超级计算机战胜了国际象棋世界冠军卡斯帕罗夫,2008年IBM提出“智慧地球”的概念。以上都是这一时期的标志性事件。
六是蓬勃发展期:2011年至今。随着大数据、云计算、互联网、物联网等信息技术的发展,泛在感知数据和图形处理器等计算平台推动以深度神经网络为代表的人工智能技术飞速发展,大幅跨越了科学与应用之间的“技术鸿沟”,诸如图像分类、语音识别、知识问答、人机对弈、无人驾驶等人工智能技术实现了从“不能用、不好用”到“可以用”的技术突破,迎来爆发式增长的新高潮。
现状与影响
对于人工智能的发展现状,社会上存在一些“炒作”。比如说,认为人工智能系统的智能水平即将全面超越人类水平、30年内机器人将统治世界、人类将成为人工智能的奴隶,等等。这些有意无意的“炒作”和错误认识会给人工智能的发展带来不利影响。因此,制定人工智能发展的战略、方针和政策,首先要准确把握人工智能技术和产业发展的现状。
专用人工智能取得重要突破。从可应用性看,人工智能大体可分为专用人工智能和通用人工智能。面向特定任务(比如下围棋)的专用人工智能系统由于任务单一、需求明确、应用边界清晰、领域知识丰富、建模相对简单,形成了人工智能领域的单点突破,在局部智能水平的单项测试中可以超越人类智能。人工智能的近期进展主要集中在专用智能领域。例如,阿尔法狗(AlphaGo)在围棋比赛中战胜人类冠军,人工智能程序在大规模图像识别和人脸识别中达到了超越人类的水平,人工智能系统诊断皮肤癌达到专业医生水平。
通用人工智能尚处于起步阶段。人的大脑是一个通用的智能系统,能举一反三、融会贯通,可处理视觉、听觉、判断、推理、学习、思考、规划、设计等各类问题,可谓“一脑万用”。真正意义上完备的人工智能系统应该是一个通用的智能系统。目前,虽然专用人工智能领域已取得突破性进展,但是通用人工智能领域的研究与应用仍然任重而道远,人工智能总体发展水平仍处于起步阶段。当前的人工智能系统在信息感知、机器学习等“浅层智能”方面进步显著,但是在概念抽象和推理决策等“深层智能”方面的能力还很薄弱。总体上看,目前的人工智能系统可谓有智能没智慧、有智商没情商、会计算不会“算计”、有专才而无通才。因此,人工智能依旧存在明显的局限性,依然还有很多“不能”,与人类智慧还相差甚远。
人工智能创新创业如火如荼。全球产业界充分认识到人工智能技术引领新一轮产业变革的重大意义,纷纷调整发展战略。比如,谷歌在其2017年年度开发者大会上明确提出发展战略从“移动优先”转向“人工智能优先”,微软2017财年年报首次将人工智能作为公司发展愿景。人工智能领域处于创新创业的前沿。麦肯锡公司报告指出,2016年全球人工智能研发投入超300亿美元并处于高速增长阶段;全球知名风投调研机构CBInsights报告显示,2017年全球新成立人工智能创业公司1100家,人工智能领域共获得投资152亿美元,同比增长141%。
创新生态布局成为人工智能产业发展的战略高地。信息技术和产业的发展史,就是新老信息产业巨头抢滩布局信息产业创新生态的更替史。例如,传统信息产业代表企业有微软、英特尔、IBM、甲骨文等,互联网和移动互联网时代信息产业代表企业有谷歌、苹果、脸书、亚马逊、阿里巴巴、腾讯、百度等。人工智能创新生态包括纵向的数据平台、开源算法、计算芯片、基础软件、图形处理器等技术生态系统和横向的智能制造、智能医疗、智能安防、智能零售、智能家居等商业和应用生态系统。目前智能科技时代的信息产业格局还没有形成垄断,因此全球科技产业巨头都在积极推动人工智能技术生态的研发布局,全力抢占人工智能相关产业的制高点。
人工智能的社会影响日益凸显。一方面,人工智能作为新一轮科技革命和产业变革的核心力量,正在推动传统产业升级换代,驱动“无人经济”快速发展,在智能交通、智能家居、智能医疗等民生领域产生积极正面影响。另一方面,个人信息和隐私保护、人工智能创作内容的知识产权、人工智能系统可能存在的歧视和偏见、无人驾驶系统的交通法规、脑机接口和人机共生的科技伦理等问题已经显现出来,需要抓紧提供解决方案。
趋势与展望
经过60多年的发展,人工智能在算法、算力(计算能力)和算料(数据)等“三算”方面取得了重要突破,正处于从“不能用”到“可以用”的技术拐点,但是距离“很好用”还有诸多瓶颈。那么在可以预见的未来,人工智能发展将会出现怎样的趋势与特征呢?
从专用智能向通用智能发展。如何实现从专用人工智能向通用人工智能的跨越式发展,既是下一代人工智能发展的必然趋势,也是研究与应用领域的重大挑战。2016年10月,美国国家科学技术委员会发布《国家人工智能研究与发展战略计划》,提出在美国的人工智能中长期发展策略中要着重研究通用人工智能。阿尔法狗系统开发团队创始人戴密斯·哈萨比斯提出朝着“创造解决世界上一切问题的通用人工智能”这一目标前进。微软在2017年成立了通用人工智能实验室,众多感知、学习、推理、自然语言理解等方面的科学家参与其中。
从人工智能向人机混合智能发展。借鉴脑科学和认知科学的研究成果是人工智能的一个重要研究方向。人机混合智能旨在将人的作用或认知模型引入到人工智能系统中,提升人工智能系统的性能,使人工智能成为人类智能的自然延伸和拓展,通过人机协同更加高效地解决复杂问题。在我国新一代人工智能规划和美国脑计划中,人机混合智能都是重要的研发方向。
从“人工+智能”向自主智能系统发展。当前人工智能领域的大量研究集中在深度学习,但是深度学习的局限是需要大量人工干预,比如人工设计深度神经网络模型、人工设定应用场景、人工采集和标注大量训练数据、用户需要人工适配智能系统等,非常费时费力。因此,科研人员开始关注减少人工干预的自主智能方法,提高机器智能对环境的自主学习能力。例如阿尔法狗系统的后续版本阿尔法元从零开始,通过自我对弈强化学习实现围棋、国际象棋、日本将棋的“通用棋类人工智能”。在人工智能系统的自动化设计方面,2017年谷歌提出的自动化学习系统(AutoML)试图通过自动创建机器学习系统降低人员成本。
人工智能将加速与其他学科领域交叉渗透。人工智能本身是一门综合性的前沿学科和高度交叉的复合型学科,研究范畴广泛而又异常复杂,其发展需要与计算机科学、数学、认知科学、神经科学和社会科学等学科深度融合。随着超分辨率光学成像、光遗传学调控、透明脑、体细胞克隆等技术的突破,脑与认知科学的发展开启了新时代,能够大规模、更精细解析智力的神经环路基础和机制,人工智能将进入生物启发的智能阶段,依赖于生物学、脑科学、生命科学和心理学等学科的发现,将机理变为可计算的模型,同时人工智能也会促进脑科学、认知科学、生命科学甚至化学、物理、天文学等传统科学的发展。
人工智能产业将蓬勃发展。随着人工智能技术的进一步成熟以及政府和产业界投入的日益增长,人工智能应用的云端化将不断加速,全球人工智能产业规模在未来10年将进入高速增长期。例如,2016年9月,咨询公司埃森哲发布报告指出,人工智能技术的应用将为经济发展注入新动力,可在现有基础上将劳动生产率提高40%;到2035年,美、日、英、德、法等12个发达国家的年均经济增长率可以翻一番。2018年麦肯锡公司的研究报告预测,到2030年,约70%的公司将采用至少一种形式的人工智能,人工智能新增经济规模将达到13万亿美元。
人工智能将推动人类进入普惠型智能社会。“人工智能+X”的创新模式将随着技术和产业的发展日趋成熟,对生产力和产业结构产生革命性影响,并推动人类进入普惠型智能社会。2017年国际数据公司IDC在《信息流引领人工智能新时代》白皮书中指出,未来5年人工智能将提升各行业运转效率。我国经济社会转型升级对人工智能有重大需求,在消费场景和行业应用的需求牵引下,需要打破人工智能的感知瓶颈、交互瓶颈和决策瓶颈,促进人工智能技术与社会各行各业的融合提升,建设若干标杆性的应用场景创新,实现低成本、高效益、广范围的普惠型智能社会。
人工智能领域的国际竞争将日益激烈。当前,人工智能领域的国际竞赛已经拉开帷幕,并且将日趋白热化。2018年4月,欧盟委员会计划2018—2020年在人工智能领域投资240亿美元;法国总统在2018年5月宣布《法国人工智能战略》,目的是迎接人工智能发展的新时代,使法国成为人工智能强国;2018年6月,日本《未来投资战略2018》重点推动物联网建设和人工智能的应用。世界军事强国也已逐步形成以加速发展智能化武器装备为核心的竞争态势,例如美国特朗普政府发布的首份《国防战略》报告即谋求通过人工智能等技术创新保持军事优势,确保美国打赢未来战争;俄罗斯2017年提出军工拥抱“智能化”,让导弹和无人机这样的“传统”兵器威力倍增。
人工智能的社会学将提上议程。为了确保人工智能的健康可持续发展,使其发展成果造福于民,需要从社会学的角度系统全面地研究人工智能对人类社会的影响,制定完善人工智能法律法规,规避可能的风险。2017年9月,联合国犯罪和司法研究所(UNICRI)决定在海牙成立第一个联合国人工智能和机器人中心,规范人工智能的发展。美国白宫多次组织人工智能领域法律法规问题的研讨会、咨询会。特斯拉等产业巨头牵头成立OpenAI等机构,旨在“以有利于整个人类的方式促进和发展友好的人工智能”。
态势与思考
当前,我国人工智能发展的总体态势良好。但是我们也要清醒看到,我国人工智能发展存在过热和泡沫化风险,特别在基础研究、技术体系、应用生态、创新人才、法律规范等方面仍然存在不少值得重视的问题。总体而言,我国人工智能发展现状可以用“高度重视,态势喜人,差距不小,前景看好”来概括。
高度重视。党中央、国务院高度重视并大力支持发展人工智能。习近平总书记在党的十九大、2018年两院院士大会、全国网络安全和信息化工作会议、十九届中央政治局第九次集体学习等场合多次强调要加快推进新一代人工智能的发展。2017年7月,国务院发布《新一代人工智能发展规划》,将新一代人工智能放在国家战略层面进行部署,描绘了面向2030年的我国人工智能发展路线图,旨在构筑人工智能先发优势,把握新一轮科技革命战略主动。国家发改委、工信部、科技部、教育部等国家部委和北京、上海、广东、江苏、浙江等地方政府都推出了发展人工智能的鼓励政策。
态势喜人。据清华大学发布的《中国人工智能发展报告2018》统计,我国已成为全球人工智能投融资规模最大的国家,我国人工智能企业在人脸识别、语音识别、安防监控、智能音箱、智能家居等人工智能应用领域处于国际前列。根据2017年爱思唯尔文献数据库统计结果,我国在人工智能领域发表的论文数量已居世界第一。近两年,中国科学院大学、清华大学、北京大学等高校纷纷成立人工智能学院,2015年开始的中国人工智能大会已连续成功召开四届并且规模不断扩大。总体来说,我国人工智能领域的创新创业、教育科研活动非常活跃。
差距不小。目前我国在人工智能前沿理论创新方面总体上尚处于“跟跑”地位,大部分创新偏重于技术应用,在基础研究、原创成果、顶尖人才、技术生态、基础平台、标准规范等方面距离世界领先水平还存在明显差距。在全球人工智能人才700强中,中国虽然入选人数名列第二,但远远低于约占总量一半的美国。2018年市场研究顾问公司CompassIntelligence对全球100多家人工智能计算芯片企业进行了排名,我国没有一家企业进入前十。另外,我国人工智能开源社区和技术生态布局相对滞后,技术平台建设力度有待加强,国际影响力有待提高。我国参与制定人工智能国际标准的积极性和力度不够,国内标准制定和实施也较为滞后。我国对人工智能可能产生的社会影响还缺少深度分析,制定完善人工智能相关法律法规的进程需要加快。
前景看好。我国发展人工智能具有市场规模、应用场景、数据资源、人力资源、智能手机普及、资金投入、国家政策支持等多方面的综合优势,人工智能发展前景看好。全球顶尖管理咨询公司埃森哲于2017年发布的《人工智能:助力中国经济增长》报告显示,到2035年人工智能有望推动中国劳动生产率提高27%。我国发布的《新一代人工智能发展规划》提出,到2030年人工智能核心产业规模超过1万亿元,带动相关产业规模超过10万亿元。在我国未来的发展征程中,“智能红利”将有望弥补人口红利的不足。
当前是我国加强人工智能布局、收获人工智能红利、引领智能时代的重大历史机遇期,如何在人工智能蓬勃发展的浪潮中选择好中国路径、抢抓中国机遇、展现中国智慧等,需要深入思考。
树立理性务实的发展理念。任何事物的发展不可能一直处于高位,有高潮必有低谷,这是客观规律。实现机器在任意现实环境的自主智能和通用智能,仍然需要中长期理论和技术积累,并且人工智能对工业、交通、医疗等传统领域的渗透和融合是个长期过程,很难一蹴而就。因此,发展人工智能要充分考虑到人工智能技术的局限性,充分认识到人工智能重塑传统产业的长期性和艰巨性,理性分析人工智能发展需求,理性设定人工智能发展目标,理性选择人工智能发展路径,务实推进人工智能发展举措,只有这样才能确保人工智能健康可持续发展。
重视固本强基的原创研究。人工智能前沿基础理论是人工智能技术突破、行业革新、产业化推进的基石。面临发展的临界点,要想取得最终的话语权,必须在人工智能基础理论和前沿技术方面取得重大突破。我们要按照习近平总书记提出的支持科学家勇闯人工智能科技前沿“无人区”的要求,努力在人工智能发展方向和理论、方法、工具、系统等方面取得变革性、颠覆性突破,形成具有国际影响力的人工智能原创理论体系,为构建我国自主可控的人工智能技术创新生态提供领先跨越的理论支撑。
构建自主可控的创新生态。我国人工智能开源社区和技术创新生态布局相对滞后,技术平台建设力度有待加强。我们要以问题为导向,主攻关键核心技术,加快建立新一代人工智能关键共性技术体系,全面增强人工智能科技创新能力,确保人工智能关键核心技术牢牢掌握在自己手里。要着力防范人工智能时代“空心化”风险,系统布局并重点发展人工智能领域的“新核高基”:“新”指新型开放创新生态,如产学研融合等;“核”指核心关键技术与器件,如先进机器学习技术、鲁棒模式识别技术、低功耗智能计算芯片等;“高”指高端综合应用系统与平台,如机器学习软硬件平台、大型数据平台等;“基”指具有重大原创意义和技术带动性的基础理论与方法,如脑机接口、类脑智能等。同时,我们要重视人工智能技术标准的建设、产品性能与系统安全的测试。特别是我国在人工智能技术应用方面走在世界前列,在人工智能国际标准制定方面应当掌握话语权,并通过实施标准加速人工智能驱动经济社会转型升级的进程。
推动共担共享的全球治理。目前看,发达国家通过人工智能技术创新掌控了产业链上游资源,难以逾越的技术鸿沟和产业壁垒有可能进一步拉大发达国家和发展中国家的生产力发展水平差距。在发展中国家中,我国有望成为全球人工智能竞争中的领跑者,应布局构建开放共享、质优价廉、普惠全球的人工智能技术和应用平台,配合“一带一路”建设,让“智能红利”助推共建人类命运共同体。
(作者:中央人民政府驻香港特别行政区联络办公室副主任、中国科学院院士)
人工智能与自然语言处理技术
随着人工智能技术的发展,我们生活中的许多应用都带上了“AI”的色彩,比如可以用计算机帮翻译外文文档。但有时候人工智也能会出一些小故障,变得不那么智能,尤其在语言处理方面。那么我们怎样才能让人工智能变成真正的“智能”呢?自然语言处理技术就是一个重要的方式。
自然语言处理技术(即natural language processing,简称NPL)是人工智能的一个重要分支,其目的是利用计算机对自然语言进行智能化处理。基础的自然语言处理技术主要围绕语言的不同层级展开,包括音位(语言的发音模式)、形态(字、字母如何构成单词、单词的形态变化)、词汇(单词之间的关系)、句法(单词如何形成句子)、语义(语言表述对应的意思)、语用(不同语境中的语义解释)、篇章(句子如何组合成段落)7个层级。这些基本的自然语言处理技术经常被运用到下游的多种自然语言处理任务中,如机器翻译、对话、问答、文档摘要等。
科学家研究自然语言处理技术(NLP)的目的是让机器能够理解人类语言,用自然语言的方式与人类交流,最终拥有“智能”。AI时代,我们希望计算机拥有视觉、听觉、语言和行动的能力,其中语言是人类区别于动物的最重要特征之一,语言是人类思维的载体,也是知识凝练和传承的载体。在人工智能领域,研究自然语言处理技术的目的就是让机器理解并生成人类的语言,从而和人类平等流畅地沟通交流。
但现在的人工智能常常和我们的人工评价有很大的出入,这也是基于AI算法的自动评测面临的最大挑战:如何与人工评价保持一致?应对这个挑战需要解决很多问题。以智能阅卷为例:如何制定电脑适用的评测标准?人工智能如何应对语言的千变万化?如何设计阅卷综合性的评测指标?有科学家认为,大数据与富知识双轮驱动或许能成为解决问题的关键,即在大数据驱动的基础上加入富知识驱动,可以突破现在智能语言处理技术上的瓶颈。
总而言之,自然语言技术的发展说明人工智能技术的核心还是在“人”。“人工智能和机器学习带给决策过程的支撑和信心将使创新加速,但这并不意味着人类的缺席。人们仍然需要定义分析的起点、标注主题并从收集的信息中提取所需数据。”
本文由北京市第六十五中学一级教师李岩进行科学性把关。
科普中国中央厨房新华网科普事业部科普中国-科学原理一点通联合出品更多精彩内容,请下载科普中国客户端。作者:和卓琳 [责任编辑:魏承瑶]