技术标签: 人工智能
搜索算法本质上是一个程序,旨在找到到达目标的最佳或最短路径。例如,旅行商问题(TSP)就是一个典型的搜索优化问题:给出城市列表以及城市之间的距离,寻找可以遍历每个城市,并花费最少的时间和开支的最佳路线。送货卡车就是这个问题的一个实际应用,假设在伦敦有100个人提交了网络订单,所有箱子都装进了一个货车里, 现在快递公司(比方说DPD)必须计算出最有效的路线(平衡距离/所花费的时间),以确保公司能够花费最少的时间,获得最大的利润。
如今,预测建模被大肆炒作,各地数据科学家试图用神经网络解决世界上的不同问题。其实本质上,预测建模是使用统计数据来预测结果。数据科学家一直试图解决两种预测建模问题:回归和分类。回归是发现两组变量之间的相关性,而分类是确定数据集属于不同组的概率。
前馈神经网络--最基本的神经网络类型
算法类型:预测建模
生物学启示:认知脑功能(神经元)
用例:情感分析、图像识别/检测、语言校正、机器人技术。
让我们从最广为人知的人工智能(AI)开始吧。神经网络是机器学习的子类的一部分。它们的设计和建造模仿了神经元层面的大脑功能,与轴突和树突相互作用,以便通过系统传递信息,通过一系列“层”产生预测结果并输出。每个图层都提供了一个额外的数据表示层,并允许您对最复杂的问题进行建模。
神经网络可能是被最广泛使用的机器学习算法,并且迄今为止是数据科学和机器学习最热门的趋势。神经网络可以用来解决各种各样的问题类型,包括自然语言处理和视觉识别。而且这种监督学习算法可以支持回归和分类问题。
遗传算法中的个体繁殖
算法类型:搜索/寻路算法
生物学启示:适者生存/进化(细胞繁殖)
用例:数据挖掘/分析,机器人,制造/设计,过程优化
遗传算法以“适者生存”的方式,在连续几代之间采用类似进化的方法来解决搜索问题。每一代中都包含一些类似于DNA中染色体那样的字符串。而每个个体都代表着搜索空间里的一个点,因此都有可能成为候选解决方案。为了提高解决方案的数量,我们将个体放入进化的过程中。
·物种中的每个个体都将争夺资源和伙伴。
·在每个竞争中最成功的个体(通常)会比那些表现不佳的产生更多的个体。
·成功的候选人“基因”能在物种中更多的传播,因此表现好的潜力更大。
蚁群优化的例子——一种集体智能算法
算法类型:搜索/寻路
生物学启示:蚁群/鱼群/鸟群
用例:机器人,视频游戏AI,制造,路径规划。
蚁群优化和粒子群优化是符合“集体智慧”概念的两种最常见的算法。它们(作为一个包)一起工作,以产生更复杂的、紧急的行为,来解决问题。
蚁群优化(ACO)与粒子群优化(PSO)非常不同。两者以不同的方式实现紧急行为。ACO是利用信息素气味引导代理寻找最短的路径。开始初始化一个随机信息素,信息素将以一个特定的速率进行衰减,单一代理人遍历搜索空间,根据信息素的强弱做出选择。最强的信息素气味将成为最有名的的解决方案。
PSO更多的是整体的方向。一些单一的代理人被初始化后选择随机的方向。最每个时间段都需要决定是否改变方向。这一决定将基于最著名的解决方案的方向(称pbest/global best),即最近邻(本地最好)的方向,以及当前的旅行方向。旅行的新方向通常是所有这些价值观的“妥协”。
强化学习环境中的代理行为
算法类型:预测建模
生物启示:经典条件作用
用例:视频游戏,控制自动车辆,生产线软件,金融系统
基于基础心理学和经典条件反射,强化学习(RL)支持为代理人采取的有力行动提供积极的数字响应。强化学习的经典案例:Pavlov’s Dogs,当狗被喂食时,会自动分泌唾液。从本质上讲,如果一个RL代理采取了好的行为,就会得到一个数字奖励。所以代理将使用策略不断学习,以争取在每个步骤最大限度的获得奖励。
RL算法与其他机器学习技术(如神经网络)相结合是很常见的。这通常被称为深度强化学习。神经网络常被用来估量应当给予RL代理人的奖励。Deep Mind采用深度Q学习方法来解决更为普遍的问题,例如处理特别复杂的游戏如“星际争霸II”。
作为参考,Q学习是一种无模型的强化学习算法。它可用于求解有限马尔可夫决策过程的最优行为选择策略。在程序初始化时,每个动作值对的Q值由开发者定义,并在每一步中由RL算法更新。下图是更新Q动作值对的示例。
人工免疫系统的组成部分
算法类型:预测建模
生物学启发:免疫系统
用例:安全软件,自主导航系统,调度系统,故障检测软件
免疫系统是一种通过产生免疫反应来保护机体免受物质和病原体侵害的系统。人工免疫系统(AIS)是自适应系统,受理论免疫学的启发并用于解决问题的免疫功能。AIS系统是一个与机器学习和人工智能有关联的,由生物启发的计算和自然计算的子领域。有多种算法与AIS相关:
·克隆选择
·树突细胞
·否定选择
·人工免疫识别
与生物免疫系统一样,AIS能够将系统内的所有细胞分类为“自体”和“非自体”细胞。参与免疫的两种最重要的细胞类型为B细胞和T细胞(白细胞)。T细胞分为三类,一种是激活B细胞,一种是结合并破坏入侵者,还有一种是抑制自身免疫问题。而B细胞负责产生能够与抗原结合成特定蛋白质的抗体。人工免疫系统能够监视入侵检测,所以被用来防御网络攻击,并经常集成到企业级的软件中。
本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。
文章原标题《5 Ways mother nature inspires artificial intelligence》
作者:Luke JamesFollow
译者:奥特曼,审校:袁虎。
文章为简译,更为详细的内容,请查看原文
文章浏览阅读4.2w次,点赞329次,收藏2.7k次。Python 入门的60个基础练习_练习python基础语法
文章浏览阅读1w次。用Xcode5运行一下应用,第一个看到的就是status bar的变化。在iOS6中,status bar是系统在处理,应用_ios7 statusbar
文章浏览阅读2.1k次。问题描述:,在gdb调试程序输出变量:p var,会提示No symbol "var" in current context.原因:程序编译时开启了优化选项,那么在用GDB调试被优化过的程序时,可能会发生某些变量不能访问,或是取值错误码的情况。这个是很正常的,因为优化程序会删改程序,整理程序的语句顺序,剔除一些无意义的变量等,所以在GDB调试这种程序时,运行时的指令和你所编写指_no registers调试显示
文章浏览阅读3.4k次。import java.util.Random;import org.drools.util.UUIDGenerator;/** * * * 类名称:GenerateIdUtil * 类描述: 主键生成工具类 * @author chenly * 创建时间:Jul 10, 2012 8:10:43 AM * 修改人: * 修改时间:Jul 10, 2012 8..._idgeneratorutils.generateid()
文章浏览阅读5k次。BX:跳转到寄存器reg给出的目的地址处,如:BX R2BLX:跳转到寄存区reg给出的目的地址处并将返回地址存储到LR(R14)使用这两个指令时有一点特别需要注意:跳转的目的地址必须是奇数,若不是奇数则在后面加1,如某函数的起始地址是0x80000f00,则要跳转到此函数则应该跳转到0x80000f01处!否则会进入硬件错误中断!..._汇编blx
文章浏览阅读2.6k次,点赞2次,收藏4次。vue打包后,其实就剩index.html和一堆静态资源,页面的加载和替换都是通过刷新index.html种的dom来实现的(应该是这样,可能表述不是很好),所以做个重定向就可以了。(博主是这么解决的,网上还有很多人是各种路径错误,大家可以尝试下自己是哪个原因)import org.springframework.boot.web.server.ConfigurableWebServerFa..._前端项目放入resource
文章浏览阅读9.7k次。1.问题展示2.解决方案1.任意窗口, 打开git bash2.命令行界面, 输入cd C:3.cat ~/.ssh/id_rsa.pub正常下面应该显示一大串公钥如果没有,显示如下图, 则进行下一步, 创建公钥4.创建公钥, 输入 ssh-keygen5.然后一直下一步, 直到出现6.再次输入cat ~/.ssh/id_rsa.pub下面一大串数字便是公钥,复制这些字符串, 打开github, 点击头像, 打开settings, 打开SSH and GPG Keys_cmd warning: permanently added
文章浏览阅读154次。[code="java"]1. SQL/Plus 常用命令 a. help [topic] 查看命令的使用方法,topic表示需要查看的命令名称。 如: help desc; b. host 该命令可以从SQL*Plus环境切换到操作系统环境,以便执行操作系统命名。 c. host [command] 在sql*plus环境中执行操作系统命令,如:host notepad.exe..._sql+plus的使用方法
文章浏览阅读441次。该文档均来自互联网,如果侵犯了您的个人权益,请联系我们将立即删除!**学校毕 业 论 文**学校园网络服务器的配置与管理姓 名: **学 号: **指导老师:系 名:专 业: 计算机网络技术班 级:二0一一年十二月十五日摘 要随着网络技术的不断发展和Internet的日益普及,许多学校都建立了校园网络并投入使用,这无疑对加快信息处理,提高工作效..._服务器配置与应用论文
文章浏览阅读1k次。一、单实例多库:一个mysql实例,创建多个数据目录。规划:实例路径:/usr/local/mysql数据目录路径:(1)/usr/local/mysql/data(2)/usr/local/mysql/data2步骤:安装mysql。配置my.cnf文件。初始化各个数据库。用mysqld_multi启动。1、安装mysql。平常安装。2、m..._数据库单实例和多实例
文章浏览阅读6.3k次。今天装了第三方的MFC软件库Xtreme ToolkitPro v15.0.1,听说搞MFC的人都知道它的强大,我刚学习,所以装了一个,然后想运行一下它自带的例子看看。出现一个“找不到mfc90.dll“的问题,百度一下,记录如下:vs2008已经打过sp1补丁,编译C++程序会提示找不到mfc90.dll文件的错误,但是如果是release版的话就能正常运行csdn看到解决方案,粘贴_microsoft v90.debugmfc
文章浏览阅读2.1k次。以前使用CJK进行中文的排版,需要自己生成字体库,近日,出现了XeTeX,可以比较好的解决中文字体问题,不需要额外生成LaTeX字体库,直接使用计算机系统里的字体,本文以在Linux下为例说明XeTeX的使用。操作系统: UbuntuTeX:除了texlive包外,还需要安装的包是texlive-xetex。字体:可以使用fc-list查看你自己的字体库,注意字体的完整名称,在XeTe..._latex 中文排版 texlive