笔者正在学习AI的入门阶段,在人工智能产品经理的道路上,还有很多知识需要学习。
前言:我是一名PC/移动互联网的产品经理,现在正在努力转型进入人工智能领域。本篇文章总结了一个刚刚学习到的AI产品设计框架,框架中整合了很多目前AI方面的知识体系。也许这个设计框架能够给想学习AI的朋友们一个知识框架,也就是学习AI到底都要学习哪些知识的一个框架,希望借此文章能够给大家抛砖引玉,与大家共同学习。 本文分为两个主要章节。首先,从基础概念的角度给大家介绍一下这个产品设计框架。第二章则使用了一个小示例来讲解如何应用框架。
简单Agent 一、AI产品设计框架基础知识 如上图,这就是本篇要讲解的AI产品设计框架。其中左侧的Agent就是今天的主角,可以称为“学习的基于效用的Agent”。这个名称中包含了三个部分,我们就先来解释一下这三个部分: Agent:能够行动的某种东西。(第二章示例所讲解的Agent,对应的就是一个可以自主玩牌的Agent)。 学习的Agent:可以简单理解为可以自主学习自我升级的Agent。 基于效用的Agent:可以简单理解为此类Agent在选择执行的行为时,总是选择期望能得到最大化收益的行为。 上图中右侧的是环境,也就是Agent所处的环境,可以理解为Agent的外部环境。这个环境可以是真实环境,也可以是网络虚拟环境。 Agent可以通过传感器来感知环境的当前情况,通过执行器对环境产生影响。举个例子:假如一个机器人Agent,就是将摄像头或麦克风作为传感器来获取图像与声音,将机器手臂与机器腿作为执行器来进行特的定操作与移动物理位置。再比如微软的聊天机器人小冰也是一个Agent,只不过所处的环境是网络,他通过获取文字输入的接口作为传感器,通过发送回复信息的接口作为执行器。 已经讲解了最基本的一个Agent的结构情况,如果说想让Agent在环境下运行,那么首先要做的事情就是定义环境。 1.1 环境定义 Agent都会有其需要完成的任务,在设计Agent时,第一步就是尽可能完整地详细说明任务环境。任务环境的定义内容包括:性能度量、环境以及Agent的执行器与传感器,称之为PEAS描述(Performance(性能度量),Environment(环境),Actuators(执行器),Sensors(传感器))。我们通过以下描述来理解各个定义内容: 1)Agent在其所处的环境中,通过传感器收集感知信息,形成Agent内部的感知序列。 2)Agent在其所处的环境中,针对感知信息会生成一个行动序列,并由执行器完成。 3)一个理性Agent,对每一个可能的感知序列,根据已知的感知序列和Agent具备的当前知识信息,选择能使其性能度量最大化的行动。 下面给出一个示例:
定义好环境,我们就要回到对主体Agent的设计上来了。 1.2 基于效用的Agent的设计
基于效用的Agent 上图就是基于效用的Agent的设计框架。其中,矩形表示Agent决策处理过程,椭圆形表示对应处理过程所中用到的背景知识信息。 下面我们将按照Agent的处理顺序依次说明每一个处理步骤的具体处理方法,并且会说明每一个步骤为下一步骤所输入的信息。 以上已经完成了对一个基于效用的Agent的设计描述。但真的一个智能Agent就这样就完成了么?如果对于一个不能自主学习并进化系统逻辑的Agent,还不能称其为智能化的。那么我们只需将上述的Agent设计加入一个能够学习的环境中即可。接下来我们看看能够学习的基于效用的Agent是如何设计的吧。 1.3 学习的基于效用的Agent的设计 学习Agent可以被划分为4个概念上的组件:学习组件、性能组件、评判组件、问题产生器。在此部分中的性能组件,就是“学习的基于效用的Agent”中“基于效用的Agent”的整体。设计框架如下图所示:
学习Agent 下面将对于除性能组件外的其他组件进行简单说明: 1.学习元件:利用来自评判元件的反馈评价Agent做的如何,并确定应该如何修改性能元件以便将来做得更好。 (责任编辑:admin) |