人工智能有哪些算法?人工智能都用什么语言?

赫赫 美股 54

回复

共20条回复 我来回复
  • 张艳的头像
    张艳
    这个人很懒,什么都没有留下~
    评论
    工智能计算机科支企图解智能实质并产种新能类智能相似式做反应智能机器该领域研究包括机器、语言识别、图像识别、自语言处理专家系统等。
    人工智能(Artificial_Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
    说起人工智能我们大家都很熟悉,各种人工智能概念,AI概念层不出穷,仔细想来无外乎智能音箱、智能打印机、智能售卖机等等诸如此类似乎没多少“智能”,和我们脑海中的“AI印象”,如:终结者、机器人、阿尔法狗、自动驾驶等技术大相径庭。
    目前,普遍认为人工智能的研究始于1956年达特茅斯会议,早期人工智能研究中,如何定义人工智能是个喋喋不休的问题,但基调始终是:像人一样决策、像人一样行动、理性的决策、理性的行动等研究方向。
    2年前 0条评论
  • 马傲的头像
    马傲
    这个人很懒,什么都没有留下~
    评论

    同意上一个回答,我来补充一下

    决策树

    决策树是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。

    随机森林

    在机器学习中,随机森林是一个包含多个决策树的分类器, 并且其输出的类别是由个别树输出的类别的众数而定。

    逻辑回归

    逻辑回归,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。例如,探讨引发疾病的危险因素,并根据危险因素预测疾病发生的概率等。

    Adaboost

    Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。

    其算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值。

    朴素贝叶斯

    朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。最为广泛的两种分类模型是决策树模型和朴素贝叶斯模型。

    和决策树模型相比,朴素贝叶斯分类器发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,朴素贝叶斯分类器模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。

    K近邻

    所谓K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例(也就是上面所说的K个邻居), 这K个实例的多数属于某个类,就把该输入实例分类到这个类中。

    SVM

    使用铰链损失函数计算经验风险并在求解系统中加入了正则化项以优化结构风险,是一个具有稀疏性和稳健性的分类器。

    神经网络

    人工神经网络是生物神经网络在某种简化意义下的技术复现,它的主要任务是根据生物神经网络的原理和实际应用的需要建造实用的人工神经网络模型,设计相应的学习算法,模拟人脑的某种智能活动,然后在技术上实现出来用以解决实际问题。因此,生物神经网络主要研究智能的机理;人工神经网络主要研究智能机理的实现,两者相辅相成。

    3年前 0条评论
  • yanlang的头像
    yanlang
    这个人很懒,什么都没有留下~
    评论
    人工智能学的是“编程语言”。

    人工智能是一个很广阔的领域,很多编程语言都可以用于人工智能开发。以下是5种比较适用于人工智能开发的编程语言:

    1、Python。由于简单易用,它是人工智能领域中使用最广泛的编程语言之一,它可以无缝地与数据结构和其他常用的AI算法一起使用。另外,Python有大量的在线资源,所以学习曲线也不会特别陡峭。

    2、Java。它是AI项目的一个很好的选择。它是一种面向对象的编程语言,专注于提供AI项目上所需的所有高级功能,它是可移植的,并且提供了内置的垃圾回收。

    3、Lisp。因其出色的原型设计能力和对符号表达式的支持在AI领域崭露头角。LISP作为因应人工智能而设计的语言,是第一个声明式系内函数式程序设计语言,有别于命令式系内过程式的C、Fortran和面向对象的Java、C#等结构化程序设计语言。

    3年前 0条评论
  • 李红的头像
    李红
    这个人很懒,什么都没有留下~
    评论

    算法就分很多类,这里拿“合一”来作为介绍,为了应用推理规则(比如取式假言推理),推理系统必须能够判断两个表达式何时相同,也就是这两个表达式何时匹配。在命题演算中,这是显而易见的:两个表达式是匹配的当且仅当它们在语句构成上相同。在谓词演算中,表达式中变量的存在使匹配两个语句的过程变得复杂。全称例化允许用定义域中的项来替换全称量化变量。这需要一个决策处理来判断是否可以使变量替换产生的两个或更多个表达式相同〈通常是为了应用推理规则)。合一是一种判断什么样的替换可以使产生的两个谓词演算表达式匹配的算法。我们在上-一节中已经看到了这个过程,VX( man(X)=mortal(X))中的×替换成了man( socrates)中的 soc-rates。合一和像假言推理这样的推理规则允许我们对一系列逻辑断言做出推理。为了做到这一点,必须把逻辑数据库表示为合适的形式。这种形式的一个根本特征是要求所有的变量都是全称量化的。这样便允许在计算替代时有完全的自由度。存在量化变量可以从数据库语句中消除,方法是用使这个语句为真的常量来替代它们。如,可以把3× parent( X, tom)替代为表达式parent( bob, tom)或parent( mary , tom) ,假定在当前解释下bob和 mary是tom的双亲。消除存在量化变量的处理会因这些替换的值可能依赖于表达式中的其他变量而变得复杂。

    3年前 0条评论
  • 有有的头像
    有有
    这个人很懒,什么都没有留下~
    评论
    推荐教程:Python教程

    人工智能英文简称AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。

    人工智能算法也被称之为软计算 ,它是人们受自然界规律的启迪,根据其原理模拟求解问题的算法。

    目前的人工智能算法有人工神经网络遗传算法、模拟退火算法、群集智能蚁群算法和例子群算等等。

    随着人工智能算法的不断优化,可以不仅可以帮助我们提高工作效率、改善我们的生活水平,同时也能为我们在庞大的现代信息资源中迅速的找到我们所需要的信息。

    3年前 0条评论
  • 希希的头像
    希希
    这个人很懒,什么都没有留下~
    评论
    人工智能学习主要是以下五种语言:

    Python

    Python语法简单,功能多样,是开发人员最喜爱的AI开发编程语言之一,因为它允许开发人员创建交互式,可解释式性,模块化,动态,可移植和高级的代码,这使得它比Java语言更独特。Python非常便携,可以在Linux,Windows等多平台上使用。另外,Python是一种多范式编程语言,支持面向对象,面向过程和函数式编程风格。由于它拥有简单的函数库和理想的结构,Python很适合神经网络和自然语言处理(NLP)解决方案的开发。

    但是,习惯于Python的开发人员在尝试使用其他语言时,难以调整状态使用不同的语法进行开发。与C ++和Java不同,Python在解释器的帮助下运行,在AI开发中这会使编译和执行变的更慢,不适合移动计算。

    Java

    Java也是一种多范式语言,遵循面向对象的原则和一次编写、到处运行(WORA)的原则。Java是一种可在任何支持它的平台上运行的AI编程语言,而无需重新编译。

    .top域名认为除了AI开发,Java也是最常用的语言之一,兼容了C和C ++中的大部分语法。 Java不仅适用于自然语言处理和搜索算法,并且还适用于神经网络。

    Lisp

    在AI开发中使用Lisp语言,是因为它的灵活性使快速建模和实验成为可能,这反过来又促进了Lisp在AI开发中的发展。例如,Lisp有一个独特的宏观系统,可以帮助探索和实现不同层次的智能。与大多数AI编程语言不同,Lisp在解决特定问题方面效率更高,因为它能够适应开发人员编写解决方案的需求。Lisp非常适合于归纳逻辑项目和机器学习。

    但是,Lisp是计算机编程语言家族中继Fortran之后的第二种最古老的编程语言,作为一种古老的编程语言,Lisp需要配置新的软件和硬件以适应在当前环境下使用。很少有开发人员熟悉Lisp编程。

    Prolog

    Prolog也是最古老的编程语言之一,因此它也适用于AI的开发。 像Lisp一样,它也是主要的AI编程语言。.top域名认为Prolog的机制能够开发出受开发人员欢迎的较为灵活的框架。Prolog是一种基于规则和声明的语言,这是因为它具有规定AI编程语言的事实和规则。

    Prolog支持基本机制,如模式匹配,基于树的数据结构以及AI编程所必需的自动回溯。除了广泛应用于AI项目之外,Prolog也应用于创建医疗系统。

    C ++

    C ++是最快的计算机语言,它特别适用于对时间敏感的AI编程项目。C ++能够提供更快的执行时间和响应时间(这就是为什么它经常用于搜索引擎和游戏)。此外,C ++允许大规模的使用算法,并且在使用统计AI技术方面非常高效。.top域名认为另一个重要因素是由于继承和数据隐藏,在开发中C ++支持重用代码,因此既省时又省钱。C ++适用于机器学习和神经网络。

    4年前 0条评论
  • 梅金花的头像
    梅金花
    这个人很懒,什么都没有留下~
    评论
    Python语法简单,功能多样,是开发人员最喜爱的AI开发编程语言之一,因为它允许开发人员创建交互式,可解释式性,模块化,动态,可移植和高级的代码,这使得它比Java语言更独特。Python非常便携,可以在Linux,Windows等多平台上使用。另外,Python是一种多范式编程语言,支持面向对象,面向过程和函数式编程风格。由于它拥有简单的函数库和理想的结构,Python很适合神经网络和自然语言处理(NLP)解决方案的开发。
    但是,习惯于Python的开发人员在尝试使用其他语言时,难以调整状态使用不同的语法进行开发。与C ++和Java不同,Python在解释器的帮助下运行,在AI开发中这会使编译和执行变的更慢,不适合移动计算
    4年前 0条评论
  • 彤彤的头像
    彤彤
    这个人很懒,什么都没有留下~
    评论
    人工智能用的比较多的语言有:Python、JAVA 和相关语言、C/C++、JavaScript、R语言。

    从事人工智能,需要数学基础:高等数学,线性代数,概率论数理统计和随机过程,离散数学,数值分析。

    需要算法的积累:人工神经网络,支持向量机,遗传算法等等算法;当然还有各个领域需要的算法,比如要让机器人自己在位置环境导航和建图就需要研究SLAM;总之算法很多需要时间的积累。

    需要掌握至少一门编程语言:毕竟算法的实现还是要编程的;如果深入到硬件的话,一些电类基础课必不可少。有的还会需要了解域名比如com、top等等。

    5年前 0条评论
  • 棉花糖的头像
    棉花糖
    这个人很懒,什么都没有留下~
    评论
    小白学人工智能的话,Python可以。但有一定编程和数学基础的不建议学Python,因为这培养出来的只是算法工程师,等以后AI学习普及起来,Python就没什么竞争力了。所以,有一定条件的最好还是以算法研究员为目标,学C/C++比较好。因为是计算密集型,需要非常精细的优化,还需要GPU、专用硬件之类的接口,这些都只有C/C++能做到,所以某种意义上来说,其实C/C++才是人工智能领域最重要的语言。武汉维识教育科技提供的人工智能学习方案专门针对有一定编程和数学基础的学生,在武汉光谷也设有机器人实验室,学生在学习算法的同时可以利用机器人设备检验自己的学习成果~
    5年前 0条评论
  • 涵涵妈妈的头像
    涵涵妈妈
    这个人很懒,什么都没有留下~
    评论
    “人工智能”这个词一开始是在1956 年Dartmouth学会上提出的。从那以后,研究者们发展了众多理论和原理,人工智能的概念也随之扩展。人工智能是对人的意识、思维的信息过程的模拟。人工智能开发主要学哪门语言?
    据了解,人工智能目前主要是机器学习实现的,而目前做机器学习和数据挖掘的主要语言是python。但主要原因并不是python效率高或者python和人工智能有什么不可分割的联系,而是因为python是一门很好的胶水语言,可以方便的调用别人(用各种语言)写的库,而且表达清晰灵活。
    实际上,机器学习的核心知识和python并没有本质关系,python只是因为表达能力强,所以被广泛用于机器学习开发而已。因此目前来看,Python是人工智能的首选语言。
    人工智能时代的到来,让人们不禁产生了一些思考,不管是好是坏。但是无论结果如何,这个时代究竟还是来了:
    搭台,唱戏,台下的吃瓜群众懵懂生活、不知不觉间被卷入,在技术迭代发展的洪流中,向来如此。在基础技术维度,大数据管理和云计算技术已经在国内生根发芽,从IaaS、PaaS到SaaS,逐渐转变为大众化服务的基础平台:
    腾讯、阿里、百度、华为等巨头们依托自身数据、算法、技术和服务器优势正着力构建各自的产业链闭环。而在应用技术维度,在机器学习、模式识别和人机交互三条技术路线下附着的机器视觉、指纹识别、人脸识别、智能搜索、语言和图像理解、遗传编程等众多领域,正蓬勃兴盛,也诞生了多家代表性企业。
    也因为各企业的诞生,也有越来越多的企业需要人工智能人才。所以,如果大家掌握了Python,是否就能更好地在人工智能行业大展拳脚呢?
    5年前 0条评论
  • 徐杰的头像
    徐杰
    这个人很懒,什么都没有留下~
    评论
    在推动AI产业从兴起进入快速发展的历程中,AI顶级人才的领军作用尤为重要。上至国家,下至科技巨头,无不将AI视为提升自身的核心竞争力的根本性战略。那么你有没有想过这么一个问题:人工智能开发语言哪个更好?
    其实,并不是每种编程语言,都能为开发人员节省时间及精力。在此整理了5种比较适用于人工智能开发的编程语言:
    Python
    Python由于简单易用,是人工智能领域中使用较广泛的编程语言之一,它可以无缝地与数据结构和其他常用的AI算法一起使用。Python之所以时候AI项目,其实也是基于Python的很多有用的库都可以在AI中使用,如Numpy提供科学的计算能力,Scypy的高级计算和Pybrain的机器学习。另外,Python有大量的在线资源,所以学习曲线也不会特别陡峭。
    Java
    对于AI项目来说,算法几乎是灵魂,无论是搜索算法、自然语言处理算法还是神经网络,Java都可以提供一种简单的编码算法。另外,Java的扩展性也是AI项目必备的功能之一。
    Lisp
    Lisp因其出色的原型设计能力和对符号表达式的支持在AI领域崭露头角。LISP作为因应人工智能而设计的语言,因其可用性和符号结构而主要用于机器学习/ ILP子领域。著名的AI专家彼得·诺维奇(Peter Norvig)在其《Artificial Intelligence: A modern approach》一书中,详细解释了为什么Lisp是AI开发的顶级编程语言之一。
    Prolog
    Prolog一种逻辑编程语言,主要是对一些基本机制进行编程,对于AI编程十分有效,例如它提供模式匹配,自动回溯和基于树的数据结构化机制。结合这些机制可以为AI项目提供一个灵活的框架。Prolog广泛应用于AI的 expert系统,也可用于医疗项目的工作。
    C ++
    在AI项目中,C++可用于统计,如神经网络。另外算法也可以在C ++被广泛地快速执行,游戏中的AI主要用C ++编码,以便更快地执行和响应时间。这也是一门非常不错的语言。
    6年前 0条评论
  • Guo的头像
    Guo
    这个人很懒,什么都没有留下~
    评论

    人工智能用的编程语言:Python、Java、Lisp、Prolog、C ++、Yigo。 

    1、Python由于简单易用,是人工智能领域中使用最广泛的编程语言之一,它可以无缝地与数据结构和其他常用的AI算法一起使用。Python之所以时候AI项目,其实也是基于Python的很多有用的库都可以在AI中使用。

    2、Java也是AI项目的一个很好的选择。它是一种面向对象的编程语言,专注于提供AI项目上所需的所有高级功能,它是可移植的,并且提供了内置的垃圾回收。另外Java社区也是一个加分项,完善丰富的社区生态可以帮助开发人员随时随地查询和解决遇到的问题。一。

    3、Lisp因其出色的原型设计能力和对符号表达式的支持在AI领域崭露头角。LISP作为因应人工智能而设计的语言,是第一个声明式系内函数式程序设计语言,有别于命令式系内过程式的C、Fortran和面向对象的Java、C#等结构化程序设计语言

    4、Prolog与Lisp在可用性方面旗鼓相当,据《Prolog Programming for ArTIficial Intelligence》一文介绍,Prolog一种逻辑编程语言,主要是对一些基本机制进行编程,对于AI编程十分有效。

    5、C ++是世界上速度最快的编程语言,其在硬件层面上的交流能力使开发人员能够改进程序执行时间。 C ++对于时间很敏感,这对于AI项目是非常有用的,例如,搜索引擎可以广泛使用C ++。

    在AI项目中,C++可用于统计,如神经网络。另外算法也可以在C ++被广泛地快速执行,游戏中的AI主要用C ++编码,以便更快的执行和响应时间。

    6年前 0条评论
  • yanlang的头像
    yanlang
    这个人很懒,什么都没有留下~
    评论

    Python、Java、Lisp、Prolog、C ++、Yigo。

    Python由于简单易用,是人工智能领域中使用最广泛的编程语言之一,它可以无缝地与数据结构和其他常用的AI算法一起使用。

    Python之所以适合AI项目,其实也是基于Python的很多有用的库都可以在AI中使用,如Numpy提供科学的计算能力,Scypy的高级计算和Pybrain的机器学习。

    Java也是AI项目的一个很好的选择。它是一种面向对象的编程语言,专注于提供AI项目上所需的所有高级功能,它是可移植的,并且提供了内置的垃圾回收。另外Java社区也是一个加分项,完善丰富的社区生态可以帮助开发人员随时随地查询和解决遇到的问题。

    对于AI项目来说,算法几乎是灵魂,无论是搜索算法、自然语言处理算法还是神经网络,Java都可以提供一种简单的编码算法。另外,Java的扩展性也是AI项目必备的功能之一。

    7年前 0条评论
  • 棉花糖的头像
    棉花糖
    这个人很懒,什么都没有留下~
    评论

    人工智能是一种未来性的技术,目前正在致力于研究自己的一套工具。一系列的进展在过去的几年中发生了:无事故驾驶超过300000英里并在三个州合法行驶迎来了自动驾驶的一个里程碑;IBM Waston击败了Jeopardy两届冠军;统计学习技术从对消费者兴趣到以万亿记的图像的复杂数据集进行模式识别。这些发展必然提高了科学家和巨匠们对人工智能的兴趣,这也使得开发者们了解创建人工智能应用的真实本质。

    谷歌的AI击败了一位围棋大师,是一种衡量人工智能突然的快速发展的方式,也揭示了这些技术如何发展而来和将来可以如何发展。

    哪一种编程语言适合人工智能?

    你所熟练掌握的每一种编程语言都可以是人工智能的开发语言。人工智能程序可以使用几乎所有的编程语言实现,最常见的有:Lisp,Prolog,C/C++,近来又有Java,最近还有Python.

    LISP

    像LISP这样的高级语言在人工智能中备受青睐,因为在各高校多年的研究后选择了快速原型而舍弃了快速执行。垃圾收集,动态类型,数据函数,统一的语法,交互式环境和可扩展性等一些特性使得LIST非常适合人工智能编程。

    PROLOG

    这种语言有着LISP高层和传统优势有效结合,这对AI是非常有用的。它的优势是解决“基于逻辑的问题”。Prolog提供了针对于逻辑相关问题的解决方案,或者说它的解决方案有着简洁的逻辑特征。它的主要缺点(恕我直言)是学起来很难。

    C/C++

    就像猎豹一样,C/C++主要用于对执行速度要求很高的时候。它主要用于简单程序,统计人工智能,如神经网络就是一个常见的例子。Backpropagation 只用了几页的C/C++代码,但是要求速度,哪怕程序员只能提升一点点速度也是好的。

    JAVA

    新来者,Java使用了LISP中的几个理念,最明显的是垃圾收集。它的可移植性使它可以适用于任何程序,它还有一套内置类型。Java没有LISP和Prolog高级,又没有C那样快,但如果要求可移植性那它是最好的。

    Python

    Python是一种用LISP和JAVA编译的语言。按照Norvig文章中对Lips和Python的比较,这两种语言彼此非常相似,仅有一些细小的差别。还有JPthon,提供了访问Java图像用户界面的途径。这是PeterNorvig选择用JPyhton翻译他人工智能书籍中程序的的原因。JPython可以让他使用可移植的GUI演示,和可移植的http/ftp/html库。因此,它非常适合作为人工智能语言的。

    在人工智能上使用Python比其他编程语言的好处

    优质的文档

    平台无关,可以在现在每一个*nix版本上使用

    和其他面向对象编程语言比学习更加简单快速

    Python有许多图像加强库像Python Imaging Libary,VTK和Maya 3D可视化工具包,Numeric Python, Scientific Python和其他很多可用工具可以于数值和科学应用。

    Python的设计非常好,快速,坚固,可移植,可扩展。很明显这些对于人工智能应用来说都是非常重要的因素。

    对于科学用途的广泛编程任务都很有用,无论从小的shell脚本还是整个网站应用。

    最后,它是开源的。可以得到相同的社区支持。

    AI的Python库

    总体的AI库

    AIMA:Python实现了从Russell到Norvigs的“人工智能:一种现代的方法”的算法

    pyDatalog:Python中的逻辑编程引擎

    SimpleAI:Python实现在“人工智能:一种现代的方法”这本书中描述过的人工智能的算法。它专注于提供一个易于使用,有良好文档和测试的库。

    EasyAI:一个双人AI游戏的python引擎(负极大值,置换表、游戏解决)

    机器学习库

    PyBrain 一个灵活,简单而有效的针对机器学习任务的算法,它是模块化的Python机器学习库。它也提供了多种预定义好的环境来测试和比较你的算法。

    PyML 一个用Python写的双边框架,重点研究SVM和其他内核方法。它支持Linux和Mac OS X。

    scikit-learn旨在提供简单而强大的解决方案,可以在不同的上下文中重用:机器学习作为科学和工程的一个多功能工具。它是python的一个模块,集成了经典的机器学习的算法,这些算法是和python科学包(numpy,scipy.matplotlib)紧密联系在一起的。

    MDP-Toolkit这是一个Python数据处理的框架,可以很容易的进行扩展。它海收集了有监管和没有监管的学习算饭和其他数据处理单元,可以组合成数据处理序列或者更复杂的前馈网络结构。新算法的实现是简单和直观的。可用的算法是在不断的稳定增加的,包括信号处理方法(主成分分析、独立成分分析、慢特征分析),流型学习方法(局部线性嵌入),集中分类,概率方法(因子分析,RBM),数据预处理方法等等。 自然语言和文本处理库

    NLTK 开源的Python模块,语言学数据和文档,用来研究和开发自然语言处理和文本分析。有windows,Mac OSX和Linux版本。

    结论

    python因为提供像 scikit-learn的好的框架,在人工智能方面扮演了一个重要的角色:Python中的机器学习,实现了这一领域中大多的需求。D3.js JS中数据驱动文档时可视化最强大和易于使用的工具之一。处理框架,它的快速原型制造使得它成为一门不可忽视的重要语言。AI需要大量的研究,因此没有必要要求一个500KB的Java样板代码去测试新的假说。python中几乎每一个想法都可以迅速通过20-30行代码来实现(JS和LISP也是一样)。因此,它对于人工智能是一门非常有用的语言。

    案例

    做了一个实验,一个使用人工智能和物联网做员工行为分析的软件。该软件通过员工情绪和行为的分心提供了一个有用的反馈给员工,从而提高了管理和工作习惯。

    使用Python机器学习库,opencv和haarcascading概念来培训。建立了样品POC来检测通过安置在不同地点的无线摄像头传递回来基础情感像幸福,生气,悲伤,厌恶,怀疑,蔑视,讥讽和惊喜。收集到的数据会集中到云数据库中,甚至整个办公室都可以通过在Android设备或桌面点击一个按钮来取回。

    开发者在深入分析脸部情感上复杂点和挖掘更多的细节中取得进步。在深入学习算法和机器学习的帮助下,可以帮助分析员工个人绩效和适当的员工/团队反馈。

    7年前 0条评论
  • 流沙的头像
    流沙
    这个人很懒,什么都没有留下~
    评论
    楼下的回答是错的
    你所说的人工智能目前主要是机器学习实现的
    目前做机器学习和数据挖掘的主要语言是python
    但主要原因并不是python效率高或者python和人工智能有什么不可分割的联系,而是因为python是一门很好的胶水语言,可以方便的调用别人(用各种语言)写的库,而且表达清晰灵活
    所以实际上机器学习的核心知识和python并没有本质关系,python只是因为表达能力强,所以被广泛用于机器学习开发而已。
    7年前 0条评论
  • 夏欢乐的头像
    夏欢乐
    这个人很懒,什么都没有留下~
    评论
    人工智能和深度学习都只是算法的形式,用什么语言都可以,现在主流的就是C++和python两种,两种语言也各有相应的工具箱。如果要做科研,也可以用Matlab。

    如果要用到GPU,还得会使用CUDA和cudnn.

    7年前 0条评论
  • 张英伟的头像
    张英伟
    这个人很懒,什么都没有留下~
    评论
    自从去年,AlphaGo打遍天下棋手无对手,人工智能的风头就一直无人能及。在IT领袖峰会上,BAT三位大佬都看好人工智能的未来发展。今年年初,百度就做了一个大动作,在医疗方面押宝人工智能,所以在这次峰会上李彦宏也发声称互联网是道开胃菜,人工智能才是主菜。
    人工智能是一个很广阔的领域,很多编程语言都可以用于人工智能开发,所以很难说人工智能必须用哪一种语言来开发。选择多也意味着会有优劣之分,并不是每种编程语言都能够为开发人员节省时间及精力。所以我们整理了5种比较适用于人工智能开发的编程语言,希望能够对你有所帮助。
    Python
    Python由于简单易用,是人工智能领域中使用最广泛的编程语言之一,它可以无缝地与数据结构和其他常用的AI算法一起使用。
    Python之所以时候AI项目,其实也是基于Python的很多有用的库都可以在AI中使用,如Numpy提供科学的计算能力,Scypy的高级计算和Pybrain的机器学习。另外,Python有大量的在线资源,所以学习曲线也不会特别陡峭。
    Java
    Java也是AI项目的一个很好的选择。它是一种面向对象的编程语言,专注于提供AI项目上所需的所有高级功能,它是可移植的,并且提供了内置的垃圾回收。另外Java社区也是一个加分项,完善丰富的社区生态可以帮助开发人员随时随地查询和解决遇到的问题。
    对于AI项目来说,算法几乎是灵魂,无论是搜索算法、自然语言处理算法还是神经网络,Java都可以提供一种简单的编码算法。另外,Java的扩展性也是AI项目必备的功能之一。
    Lisp
    Lisp因其出色的原型设计能力和对符号表达式的支持在AI领域崭露头角。LISP作为因应人工智能而设计的语言,是第一个声明式系内函数式程序设计语言,有别于命令式系内过程式的C、Fortran和面向对象的Java、C#等结构化程序设计语言。
    Lisp语言因其可用性和符号结构而主要用于机器学习/ ILP子领域。著名的AI专家彼得·诺维奇(Peter Norvig)在其《ArTIficial Intelligence: A modern approach》一书中,详细解释了为什么Lisp是AI开发的顶级编程语言之一,感兴趣的朋友可以自行查看。
    Prolog
    Prolog与Lisp在可用性方面旗鼓相当,据《Prolog Programming for ArTIficial Intelligence》一文介绍,Prolog一种逻辑编程语言,主要是对一些基本机制进行编程,对于AI编程十分有效,例如它提供模式匹配,自动回溯和基于树的数据结构化机制。结合这些机制可以为AI项目提供一个灵活的框架。
    Prolog广泛应用于AI的 expert系统,也可用于医疗项目的工作。
    C ++
    C ++是世界上速度最快的编程语言,其在硬件层面上的交流能力使开发人员能够改进程序执行时间。 C ++对于时间很敏感,这对于AI项目是非常有用的,例如,搜索引擎可以广泛使用C ++。
    在AI项目中,C++可用于统计,如神经网络。另外算法也可以在C ++被广泛地快速执行,游戏中的AI主要用C ++编码,以便更快的执行和响应时间。
    写在最后:
    在这些编程语言中,Python因为适用于大多数AI,所以渐有成为AI编程语言之首的趋势,而Lisp和Prolog因其独特的功能,所以在部分AI项目中卓有成效,地位暂时难以撼动。而Java和C++的自身优势将在AI项目中继续保持。
    7年前 0条评论
  • 梅金花的头像
    梅金花
    这个人很懒,什么都没有留下~
    评论
    最开始人工智能方面研究的问题大多是比如:指纹识别,人脸识别,语音识别,机器翻译,问答系统等。 这类问题本质上任然是软件领域的一个编程问题,而这些问题是和具体的开发语言无关的。当然考虑到这类问题对计算的要求比较大,通常这类问题都是C++ 或者Java完成的,选择这类语言是因为这些语言是最流行的软件开发语言,和人工智能也没多大关系。 甚至在近几年,用Python做算法的验证也变得很流行,网上也有不少网友写的Python聊天机器人等程序。

    从另一方面来说,由于人工智能类的编程问题通常比一般的编程问题难度要高很多,针对人工智能领域设计的语言也有不少, 比如说Prolog , 这是一个建立在逻辑推理上的编程语言,通常用于处理比较复杂的逻辑推理问题,而逻辑推理问题通常看上去都比较智能。
    至于人工智能机器人,本质上不过是这俩种技术的结合。从机器的角度来说, 它通常不过是一台长的很像人类的机器而已。但是从另一方面来说,理想中的人工智能机器人应该具备诸如人脸识别,语音识别,逻辑推理,问题等功能,从这个角度看的话,它就是一台运行着人工智能程序的人形电脑而已,至于实现这些功能的编程语言,和在服务器上实现这些功能的语言没有任何差别。
    我们可以做个类比,人工智能机器人可以分成肢体控制和思维俩部分,肢体控制可以理解为小脑的功能,而思维可以理解成大脑。对于机器人来说,小脑和大脑不一定必须是在一起的。有可能大脑部分是多台机器人共用一个,并且是运行在远端服务器上的。

    7年前 0条评论
  • 张晓娇的头像
    张晓娇
    这个人很懒,什么都没有留下~
    评论

    Python,Java,Lisp,Prolog,C ++

    Python因为适用于大多数AI sub-field,所以渐有成为AI编程语言之首的趋势,而Lisp和Prolog因其独特的功能,所以在部分AI项目中卓有成效,地位暂时难以撼动。而Java和C++的自身优势将在AI项目中继续保持。

    7年前 0条评论
  • 希希的头像
    希希
    这个人很懒,什么都没有留下~
    评论
    模式识别需要非常好的概率论,数理统计;另外会用到少量矩阵代数,随机过程和高数中的一些运算,当然是比较基础的;如果要深入的话恐怕需要学泛函,但是一般情况下不需要达到这种深度。神经网络,遗传算法等智能算法在模式识别有非常重要的应用,但是一般不需要学习计算机学科的人工智能,我们控制有一个交叉学科叫做智能控制是讲这些的,智能控制不需要什么基础,有中学数学的集合和对空间有一点点的了解就足够了,模糊数学的基础是包含在这门学科里的。
    8年前 0条评论
客服
客服
关注订阅号
关注订阅号
分享本页
返回顶部