文章为作者对人工智能领域产品的学习总结,主要内容为AI茶农的设计框架,希望此文能够给大家一些启发与帮助。我是一名PC/移动互联网的产品经理,现在正在努力转型进入人工智能领域,这是我的第2篇学习总结。本篇文章总结了一个刚刚学习到的AI产品设计框架,框架中整合了很多目前AI方面的知识体系。也许这个设计框架能够给想学习AI的朋友们一个知识框架,也就是学习AI到底都要学习哪些知识的一个框架,希望借此文章能够给大家抛砖引玉,与大家共同学习。 本文分为两个主要章节。首先,从基础概念的角度给大家介绍一下这个产品设计框架。第二章则使用了一个小示例来讲解如何应用框架。
一、AI产品设计框架基础知识
如上图,这就是本篇要讲解的AI产品设计框架。其中左侧的Agent就是今天的主角,可以称为“学习的基于效用的Agent”。这个名称中包含了三个部分,我们就先来解释一下这三个部分:- Agent:能够行动的某种东西。(第二章示例所讲解的Agent,对应的就是一个可以自主玩牌的Agent)。
- 学习的Agent:可以简单理解为可以自主学习自我升级的Agent。
1.1 环境定义
Agent都会有其需要完成的任务,在设计Agent时,第一步就是尽可能完整地详细说明任务环境。任务环境的定义内容包括:性能度量、环境以及Agent的执行器与传感器,称之为PEAS描述(Performance(性能度量),Environment(环境),Actuators(执行器),Sensors(传感器))。我们通过以下描述来理解各个定义内容:- Agent在其所处的环境中,通过传感器收集感知信息,形成Agent内部的感知序列。
- Agent在其所处的环境中,针对感知信息会生成一个行动序列,并由执行器完成。
- 一个理性Agent,对每一个可能的感知序列,根据已知的感知序列和Agent具备的当前知识信息,选择能使其性能度量最大化的行动。
1.2 基于效用的Agent的设计
定义好环境,我们就要回到对主体Agent的设计上来了。 上图就是基于效用的Agent的设计框架。其中,矩形表示Agent决策处理过程,椭圆形表示对应处理过程所中用到的背景知识信息。 下面我们将按照Agent的处理顺序依次说明每一个处理步骤的具体处理方法,并且会说明每一个步骤为下一步骤所输入的信息。1.3 学习的基于效用的Agent的设计
以上已经完成了对一个基于效用的Agent的设计描述。但真的一个智能Agent就这样就完成了么?如果对于一个不能自主学习并进化系统逻辑的Agent,还不能称其为智能化的。那么我们只需将上述的Agent设计加入一个能够学习的环境中即可。接下来我们看看能够学习的基于效用的Agent是如何设计的吧。 学习Agent可以被划分为4个概念上的组件:学习组件、性能组件、评判组件、问题产生器。在此部分中的性能组件,就是“学习的基于效用的Agent”中“基于效用的Agent”的整体。设计框架如下图所示: 下面将对于除性能组件外的其他组件进行简单说明:- 学习元件:利用来自评判元件的反馈评价Agent做的如何,并确定应该如何修改性能元件以便将来做得更好。
- 评判元件:根据固定的性能标准告诉学习元件Agent的运转情况。评判元件是必要的,原因是感知信息自身无法指出Agent的成功程度。性能标准是固定的。概念上说,应该把性能标准置于Agent之外加以考虑,理由是Agent不应该修改性能标准来适应他自己的行为。
- 问题产生器:负责可以得到新的和有信息的经验的行动建议。如果性能元件自行其是,他会一直根据已知的知识采取最佳行动。但是,如果Agent希望进行少量探索,做一些短期内可能次优的行动,那么他也许会发现对长期而言更好的行动。问题发生器的任务就是建议探索性行动。它的目标是发现一种更好的物体运动的理论并改进自己的头脑。
二、一个简单的产品定义示例
下面将要分享的简单事例是《自动斗地主Agent》,一个YY的成果,自己玩耍而已大家不要太过认真。 我的想法是,设计一款能够自主学习优化并且帮我最大化获胜的某个移动端斗地主App游戏的智能自动化游戏Agent。第一步:首先定义一下游戏的环境
模型信息:关于独立于Agent的世界如何变化的规则信息与Agent自身的行动会影响世界的规则信息,此处会将游戏中对于斗地主的全部规则录入,诸如:发牌规则、叫地主规则、出牌规则、加分规则、获胜规则等等。并且会录入一般化的出牌策略,诸如:压制策略、辅助同伙策略等等。第二步:对于基于效用的Agent,我们做如下定义
- 效用判断的规则信息:这里根据环境中已经出过的牌,每个选手的出牌历史、角色以及猜测可能剩余的牌等信息,判断出最能符合最大化收益的出牌行为。
- 传感器就是获取环境中当前的游戏状态信息,如:谁出了什么牌等;
- 执行器就是能够模拟手机点击来执行叫地主、出牌等操作;
第三步:对于学习的Agent,我们做如下定义
- 性能标准:根据初始时手中的牌、过程中的得分情况与最终完成后其他选手中剩余牌的情况给出一个对于一轮玩牌结果的奖励或惩罚的分数。
- 学习组件:会不断对更为一般化的开局与出牌策略、更为一般化的农民合作策略、针对识别某个人或某种类型的人的开局与出牌策略、如何试探其他玩家的出牌策略等策略提出学习目标,并根据结果修正Agent中的效用判断。
附:我的学习计划
- 《人工智能:一种现代的方法(第3版)》
- 《深度学习》书籍中的数学知识
- 《终极算法:机器学习和人工智能如何重塑世界》
- 《传感器实战全攻略》
- 《数学之美》
【转载说明】  若上述素材出现侵权,请及时联系我们删除及进行处理:8088013@qq.com