最近看了《人工智能(一种现代的方法)》,书太厚了,前期为了可以快速搭建入门框架,把它26个章节尽可能的画出重点,3-10分钟看完一章
第二章概念术语超级多,属于为学习后期内容服务的储备知识,花10分钟做到有个印象即可,后面不懂再跳回来看,别浪费太多时间纠结一些暂时无法理解的术语
提示:因为作者是英文翻译过来的中文术语,所以有些中文翻译的术语和其它书或者网上的文章翻译的不一样,理解术语那意思就可以了,避免陷入学生思维纠结中文字面意思
2 智能Agent
2.1 Agent和环境
2.1.1 Agent: 通过传感器感知环境,通过执行器作出反馈
例子:手机接受人类的指示,然后在屏幕显示信息;这里的手机就是一个Agent
2.1.2 感知信息: 某个时刻的数据
2.1.3 感知序列: 感知输入数据的整个历史集合
2.1.4 Agent函数: 将感知序列映射到行为
2.1.5 Agent程序: 实现Agent函数,所以和2.1.4Agent函数的区别在于:Agent程序将当前信息作为输入,Agent函数是将感知历史作为输入
2.2 好的行为:理性的概念
2.2.1 理性Agent: 对每个感知序列(the environment it can perceive),依据先验知识(the prior knowledge it has)和感知序列的提供痕迹,选择性能度量(performance measure)最大化的可执行行动(actions it can perform)
什么是理性的判断依赖4方面:性能度量、先验知识、可执行行动、感知序列
2.2.2 全知者,学习,自主性
全知者: 知道最终结果并作出行动,现实不存在这种情况
理性: 理性是期望性能最大化,不要求全知,只依赖当下的感知序列
自主性: 通过学习弥补不完整或者不正确的先验知识
2.2.3 环境的性质
PEAS(性能Performance,环境 Environment, 执行器Actuators, 传感器Sensors)称为任务环境;
结合图像就能很好的记忆啦
2.3 环境的性质
2.3.1 环境特性
环境范围很大,知道可以划分以下维度即可:完全可观察和部分可观察、单智能Agent和多智能Agent、确定的和随机的、片段式和延续式、静态和动态、离散的和连续的、未知的和已知的
2.4 Agent的结构
2.4.1 Agent = 体系结构 + Agent程序
体系结构: 程序在某个具备执行器和传感器的装置运行
Agent程序: 将接收的每一个感知信息(percept )添加到一个感知序列(a percepts sequence)中,依据先验知识的映射表(LOOKUP(percepts, table))反馈一个行动(action)
function TABLE-DRIVEN-AGENT(percept)returns an action
static:percepts, a sequence, initially empty
table: a table of action, indexed by percept sequences, initially fully specified
append percept to the end of percepts
action <-- LOOKUP(percepts, table)
return action
Agent程序可分以下4类
2.4.2 简单反射Agent: 仅只基于当前状态反馈一个行动,忽略历史感知信息
2.4.3 基于模型的Agent: 它内部状态可以根据感知历史,预测到目前看不到的环境;
下面这句话非重点可跳过,我理解了很久才概括出来,作者想表达的是虽然我不知道未来会发生的事,但是我可以根据环境建模预测出未来; 世界(WORLD)是如何运转的?可以分为两类问题:环境\世界的建模是独立于Agent如何发展的;Agent行为是如何影响环境\世界的—称为世界模型,基于这种模型的Agent就是基于模型的Agent
2.4.4 基于目标的Agent: Agent将目的(Goals)与2.4.3 基于模型的Agent结合起来的行为
2.4.5 基于效用的Agent: 预期效用最大化的行为
以上四种都属于学习Agent
2.4.6 学习Aent
4个元件
学习元件(Learning element): 负责改进 性能元件(Performance element): 负责选择行动 评判元件(Critic): 负责评判agent的工作表现性能 问题生成器(?Problem generator): 负责探索问题
这部分中文翻译出来没内味,看英文一下就懂了 Learning element: responsible for making improvements?—?Performance element: responsible for selecting external actions. It is what we considered as agent so far.?—?Critic: How well is the agent is doing w.r.t. a ?xed performance standard.?—?Problem generator: allows the agent to explore.
例子:一个公司里有4个人,有人负责做事,有人负责学习知识,有人负责评判做的事效率,有人负责去探索新的问题出来研究
2.4.7 Agent各部件如何工作
Agent程序使用了各种组件解释以下问题:
1.当前状态是什么 2.当前应该采取什么行动 3.行动后果会怎么样
文中这部分内容没有把重心放在解释这些问题上(因为太复杂了),而是研究用什么方法去表达各种组件
用以下方法去表达各种组件:
1.原子表示(Atomic representation ): 想成一个盒子,内部结构不可见
2.要素化表示(Factored Representation ): 想象一个盒子里有很多可以用数值量化的图形
3.结构化表示(Structured Representation ): 想象一个盒子里有很多可以用关联表示的图形
https://learnetutorials.com/artificial-intelligence/intelligent-agents-in-ai https://hackernoon.com/rational-agents-for-artificial-intelligence-caf94af2cec5
|