首页 理论教育 学习智能体

学习智能体

时间:2022-02-11 理论教育 版权反馈
【摘要】:学习还有另一个优点,如我们前面特别提到的,它使得智能体可以在初始未知的环境中运转,并逐渐变得比只具有初始知识的时候更有能力。评论元件根据固定的性能标准告诉学习元件:智能体的运转情况如何。学习智能体的最后一个组件是问题产生器。智能化智能体的学习可以被总结为智能体的每个组件的修改过程,修改使得各组件与能得到的反馈信息更加一致,从而改进智能体的总体性能。

2.4.6 学习智能体

我们已经描述了使用各种方法选择下一步行动的智能体程序。不过迄今为止我们还没有说明这些智能体程序是如何形成的。在图灵的一篇早期的著名论文中(1950),他考虑了通过人工实际编制程序实现他的智能机器的思想。他估计了这可能需要多少工作,结论是“看来需要某种更迅速的方法。”他提出的方法是建造学习机器,然后教育它们。在人工智能的许多领域,现在这是创造最新技术水平的系统的首选方法。学习还有另一个优点,如我们前面特别提到的,它使得智能体可以在初始未知的环境中运转,并逐渐变得比只具有初始知识的时候更有能力。在本节中,我们简要地介绍学习智能体的主要思想。在本书的几乎所有章节中,我们将评论特定种类智能体的学习的机会和方法。第六部分将更深入地讨论各种学习算法自身。

学习智能体可以被划分为四个概念上的组件,如图2.15所示。最重要的区别体现在学习元件和执行元件之间,学习元件负责改进,而执行元件负责选择外部动作。执行元件是我们先前当作整个智能体来考虑的:它接受感知信息并进行行动的决策。学习元件利用来自评论元件的反馈评价智能体做得如何,并决定应该如何修改执行元件以在未来做得更好。

图2.15 学习智能体的一般模型

学习元件的设计很大程度上取决于执行元件的设计。当试图设计学习特定能力的智能体时,第一个问题不是“我怎样才能让智能体学习这个能力?”,而是“我的智能体一旦学会了这个能力需要何种执行元件来使用该能力?”给定一个智能体设计,可以构造学习机制来改进智能体的每个部分。

评论元件根据固定的性能标准告诉学习元件:智能体的运转情况如何。评论元件是必要的,因为感知信息自身不能提供智能体成功程度的指标。例如,国际象棋程序可以接收到感知信号,指出已经将死对手,但是它需要一个性能标准来知道这是好棋;感知信息自己是不会说这个的。性能标准是固定的,这一点很重要。概念上讲,应该把性能标准作为智能体之外的东西加以考虑,因为智能体不应该修改性能标准去适应它自己的行为。

学习智能体的最后一个组件是问题产生器。它负责提议可以导致新的和有信息价值的经验的行动。关键是如果执行元件自行其是,它将一直根据自己已知的知识采取最佳行动。但是如果智能体希望进行少量探索,做一些短期内可能不是最优的行动,那么它可能发现对长期而言更好的行动。问题发生器的任务就是提出关于这些探索性的行动的建议。这也是科学家进行实验时要做的。伽利略不认为从比萨斜塔上扔下来的石头自身有价值。他并不是试图打破那些石头,也不想修改那些不幸路过的人的头脑。他的目标是通过确认一种更好的物体运动理论而修改他自己的头脑。

为了使整体设计更为具体一些,让我们回到自动出租车的例子。执行元件由出租车用来选择驾驶行动的全部知识和过程集合组成。出租车在公路上行驶的时候,使用的就是这个执行元件。评论元件观察世界并把信息传给学习元件。例如,在汽车快速左转横穿三条车道之后,评论元件观察到其他司机惊呼的语言。从这次经历,学习元件能制定出一条规则表示这是一个不好的行动,并安装该规则来修改执行元件。问题产生器可能会为了改进的需要而确定一定的行为领域并提议进行各种实验,诸如在不同的路面、不同的条件下试验刹车。

学习元件可以更改智能体结构图(图2.9、2.11、2.13和2.14)中所示的任何“知识”组件。最简单的情况包括直接从感知序列学习。观察环境的相继状态对,可以让智能体学到“世界是如何发展的”,而观察行动的结果,可以让智能体学到“我的行动做了什么”。例如,如果出租车在潮湿的路面上驾驶时施加特定的刹车压力,那么它会迅速发现实际达到的减速度是多少。显而易见,如果环境只是部分可观察的,这两种学习任务会更困难。

上一段所述的学习形式并不需要使用外在的性能标准——在某种意义上,该标准是通用的,它能做出和实验相符的预测。这种情形对于希望知道效用信息的基于效用的智能体而言稍微有点复杂。例如,假设出租车驾驶智能体没有得到来自乘客的任何小费,因为乘客在旅途中被彻底晃晕了。外在的性能标准必须告知智能体,未得到小费的损失将对它的整体性能起负作用;然后智能体也许能学到:猛烈的机动对它自己的效用没有贡献。在某种意义上,性能标准对到来的感知信息的一部分进行辨别,区分奖励或惩罚,根据智能体行为的质量提供直接反馈。硬性的性能标准诸如动物的疼痛和饥饿可以按照这种方式来理解。我们将在第二十一章中进一步讨论这个问题。

总之,智能体具有各种组件,而这些组件在智能体程序中可以用很多方式表示,因此学习方法显然也有众多的变种。不过,有唯一的统一主题。智能化智能体的学习可以被总结为智能体的每个组件的修改过程,修改使得各组件与能得到的反馈信息更加一致,从而改进智能体的总体性能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈