模型训练方法、装置、存储介质及电子设备

文档序号:26630457发布日期:2021-09-14 22:49阅读:71来源:国知局
模型训练方法、装置、存储介质及电子设备

1.本技术涉及计算机技术领域,具体涉及一种模型训练方法、装置、存储介质及电子设备。


背景技术:

2.近年来,深度学习(deep learning,dl)技术不断发展,在各个领域都取得了许多重大成果,并且应用愈加广泛。凭借深度神经网络优异的特征表示能力,解决了许多学术界、工业界的难题。强化学习(reinforcement learning,rl)作为解决序列决策的重要方法,赋予智能体自监督学习能力,能过自主与环境进行交互,通过获得的奖励不断修正策略。而深度神经网络的引入,使得强化学习取得了长足的进步,作为强化学习中的一个非常基础但又非常重要的概念和问题,探索和利用困境问题仍是其中最为值得深入研究的领域之一。
3.探索与利用困境一直是深度强化学习中的主要矛盾,很多国外学者对探索与利用困境问题进行了深入的研究,现有技术中通常采用将深度探索与深度神经网络相结合、基于信息增益的内在奖励、基于计数的探索或者基于信息增益的好奇心机制探索等方法来解决问题。但现有算法均用来和强化学习结合解决探索与利用困境问题,虽然在一些简单的环境中有较好的探索效果,但在稍复杂的环境中大多表现并不出色,探索的难度也相应增大。


技术实现要素:

4.本技术实施例提供了一种模型训练方法、装置、存储介质及电子设备,可以避免噪声电视问题,加强模型的探索能力。所述技术方案如下:
5.第一方面,本技术实施例提供了一种模型训练方法,包括:
6.获取状态信息和动作信息;其中,所述状态信息与所述动作信息存在映射关系;
7.计算所述状态信息和所述动作信息对应的状态特征和预测动作信息;其中,所述状态特征包括实际状态特征、预测状态特征和固定状态特征;
8.通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标;其中,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征;
9.基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。
10.第二方面,本技术实施例提供了一种模型训练装置,所述装置包括:
11.获取模块,用于获取状态信息和动作信息;其中,所述状态信息与所述动作信息存在映射关系;
12.第一计算模块,用于计算所述状态信息和所述动作信息对应的状态特征和预测动作信息;其中,所述状态特征包括实际状态特征、预测状态特征和固定状态特征;
13.第二计算模块,用于通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标;其中,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征;
14.确定模块,用于基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。
15.第三方面,本技术实施例提供了一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
16.第四方面,本技术实施例提供了一种电子设备,包括:存储器和处理器;其中,所述存储器存储有计算机程序,所述计算机程序适用于由所述处理器加载并执行上述的方法步骤。
17.本技术一些实施例提供的技术方案带来的有益效果至少包括:
18.本技术实施例通过获取状态信息和动作信息,计算所述状态信息和所述动作信息对应的状态特征和预测动作信息,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。本技术通过添加固定参数的目标模块来约束特征模块的变化,使得训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,以及避免了快速陷入次优解的训练情况,加强了模型的探索能力。
附图说明
19.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是本技术实施例提供的一种模型训练系统的网络架构示意图;
21.图2是本技术实施例提供的一种模型训练方法的交互示意图;
22.图3是本技术实施例提供的一种模型训练方法的另一交互示意图;
23.图4是本技术实施例提供的一种信息上传示意图;
24.图5是本技术实施例提供的一种环境交互示意图;
25.图6是本技术实施例提供的一种状态动作值关联示意图;
26.图7是本技术实施例提供的一种模型结构示意图;
27.图8是本技术实施例提供的一种模型训练装置的结构示意图;
28.图9是本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
29.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。
30.下面的描述设计附图时,除非另有表示,不同附图中的相同数字表示相同的或相似的要素。以下示例性实施例中描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
31.在本技术的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本技术中的具体含义。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
32.下面结合具体的实施例对本技术进行详细说明。
33.图1示出了可以应用于本技术的问答推理方法的示例性系统架构100。
34.如图1所示,系统架构100可以包括用户101、电子设备102和网络103。网络103用于在用户101和电子设备102之间提供通信链路的介质。其中,系统构架100可以应用于各种实际应用场景,例如,当系统构架100应用于无人驾驶算法模型训练系统时,用户101可以为试驾员等研究人员,用户101可以用于触发电子设备102上的用户操作,例如:用户101可以通过控制电子设备102(例如但不限于汽车)的转向和速度等动作信息。电子设备102可以但不限于用于负责读取用户101触发的各种用户操作,对用户操作译码并执行用户操作,完成用户101触发的训练业务。例如:电子设备102可以先接收来自用户101的动作信息,然后电子设备102可以通过传感器或者摄像头等设备采集周围的状态信息,主要可以包括道路、车辆位置和障碍物信息等,最后电子设备102可以从通过获取的已知的状态信息和环境信息来训练无人驾驶算法模型,使得电子设备102可以在遇到类似的状态信息后,自主选择对应的动作信息,实现自动驾驶。
35.示例性的,在算法模型训练的过程中,电子设备102可以先接收来自用户101上传动作信息(例如但不限于打开左转向灯,减少,左转行驶)的用户操作,然后电子设备102同时可以通过传感器或者摄像头等设备采集电子设备102周围的状态信息(例如但不限于周围图像),其中动作信息和状态信息存在对应关系,例如:在状态a的情况下标记的是对应的动作a,在状态b的情况下标记的是对应的动作b,电子设备102可以通过已知的连续多步的动作信息和对应的状态信息作为预先设置的模型的输入,其中,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,来确定模型中特征模块、前向模块和反向模块对应的训练参数,目标模块对应的训练参数是固定的,主要用于约束特征模块的变化,使得训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,加强模型的探索能力等。
36.电子设备102可以是硬件,也可以是软件。当电子设备102为硬件时,可以是具有模型训练的各种设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等。当电子设备102为软件时,可以实现成多个软件或软件模块(例如:用来提供分布式处理服务),也可以实现成单个软件或软件模块,在此不作具体限定。
37.网络103可以包括各种类型的有线通信链路或无线通信链路,用户101和电子设备102之间可以通过网络103进行数据交互,例如:有线通信链路包括光纤、双绞线或同轴电缆的,无线通信链路包括蓝牙通信链路、无线保真(wireless

fidelity,wi

fi)通信链路或微波通信链路等。
38.应理解,图1中的用户101、电子设备102和网络103的数目仅是示意性的。根据实现需要,可以是任意数量的用户101、电子设备102和网络103,且都支持分布式集群方式部署。
39.在下述方法实施例中,为了便于说明,仅以各步骤的执行主体为电子设备进行介绍说明。
40.下面将结合附图2至图3,对本技术实施例提供的模型训练方法进行详细介绍。
41.请参见图2,为本技术实施例提供了一种模型训练方法的交互示意图。所述方法可以包括以下步骤:
42.s201、获取状态信息和动作信息。
43.具体的,强化学习的核心目标是通过与环境交互,在探索和试错中学习能获取最大奖励的最优策略。强化学习的电子设备学习最优策略的方式是最类似人类的学习某一技能的方式,强化学习从最开始简单的棋牌游戏领域拓展到了游戏人工智能(artificial intelligence,ai)、推荐系统、计算机视觉、自动控制和无人车等多种领域。强化学习的学习效率是极低的,其原因是强化学习必须通过试错来更新算法策略,才能获得最大期望奖励的最优策略,这个学习特性导致了强化学习需要不断的平衡探索和利用的关系:利用原有的样本数据提高自己的策略,同时还需要探索更多的状态,搜集更多的样本,更加精准评估当前电子设备运行的策略。这就要求电子设备与环境做大量的互动,有些互动是有效的,有些是毫无意义的,如重复探索某一个奖励已知,且奖励极低的状态,就是一种毫无意义互动。
44.状态信息可以是指用来表示当前环境状态的完整描述,当前环境都可以用状态信息来进行表示,状态信息可以包括图像信息、音频信息、文本信息等不同类型形式,不作具体限定。动作信息可以是指电子设备与环境进行互动的信息,动作信息可以包括电子设备的运动信息(例如但不限于速度大小、运动方向和运动状态等),具体选择对象的指令信息,或者具体选项的概率分布(例如但不限于选项a概率为0.1,选项b概率为0.2,选项c概率为0.3,选项d概率为0.4)等不同形式,不作具体限定。例如:在问答推荐系统中,动作信息可以是指是指用户上传的音频数据,状态信息可以是指电子设备显示的答案实体文本数据等;在游戏ai领域中,动作信息可以是指用户针对游戏角色上传的控制指令(例如但不限于上下左右移动控制),状态信息可以是游戏画面对应的每一帧的图像显示数据等。状态信息和动作信息一般可以用向量、数组、矩阵或更高阶的张量等表示形式作为电子设备进行模型训练的输入,例如:电子设备输入的状态信息为1024*659大小的图像矩阵数据,输入的动作信息为1*10大小的一维向量数据等。
45.在本技术中,所述状态信息与所述动作信息存在映射关系,由于不同的状态选择
不同的动作,也即不同的动作会导致不同的状态,在模型的训练过程中,输入的是已知多个连续两步的状态信息和对应的动作信息,一组状态信息和动作信息可以使得模型训练的运行增加一个步骤,电子设备可以通过连续两步的状态信息和动作信息使得模型完成一次迭代。所述状态信息与所述动作信息的映射关系的表现形式多种多样,本技术不作具体限定,电子设备可以将状态信息和动作信息设置相同的编号来表示映射关系,例如:电子设备可以将状态信息进行编号为状态信息1、状态信息2和状态信息3等,然后对动作信息进行编号为动作信息1、动作信息2和动作信息3等,那么电子设备可以确定状态信息1和动作信息1可以作为模型训练第一步的输入,状态信息2和动作信息2可以作为模型训练第二步的输入,状态信息3和动作信息3可以作为模型训练第三步的输入等。
46.在一种可能的实施例中,电子设备可以实时获取状态信息和动作信息,例如:电子设备可以通过传感器或摄像头等设备采集周围的状态信息,通过读取用户的操作指令来获取动作信息等。电子设备还可以获取用户上传的状态信息和动作信息,例如:电子设备可以接收来自用户预先标记、预处理好的状态信息和动作信息,直接用于模型训练,不同获取方式可以提高电子设备训练的多样性和高效性。
47.s202、计算所述状态信息和所述动作信息对应的状态特征和预测动作信息。
48.具体的,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,所述实际状态特征可以是指所述状态信息对应的实际的状态特征,所述预测状态特征可以是指电子设备通过所述动作信息和所述实际状态特征预测出的下一步的状态特征。所述固定状态特征可以是指电子设备基于所述状态信息通过固定的公式计算出来的状态特征,也即所述固定状态特征的计算公式中的参数在整个训练过程中始终是固定不变的,所述预测动作信息可以是指电子设备通过连续两步的状态信息预测出来的动作信息,所述特征可以是指向量、矩阵等数据表示形式。
49.电子设备获取状态信息和动作信息后,首先可以计算出状态特征和预测动作信息,电子设备训练模型中的计算方式多种多样,可以自定义设置模型的层数、每层的节点个数和节点对应权重等,例如:电子设备确定所述状态信息为[0,1,2,3,4],所述动作信息为[5,6,7,8,9],那么电子设备可以通过预先设置的网络模型计算出所述实际状态特征为[1,2,3],所述预测状态特征为[2,3,4],所述固定状态特征为[4,3,2,1],所述预测动作信息为[9,8,7,6,5]等,有助于后续准确选定对应的训练参数。
[0050]
在本技术中预训练的模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,不同模块具有不同的功能。在本技术中的模型训练也即确定所述特征模块、所述前向模块和所述反向模块对应的训练参数,各模块基于预先设置的学习率调整各自对应的训练参数,例如:电子设备设置特征模块中的训练参数a每次增加0.1等,电子设备再确定最合适的训练参数,所述目标模块对应的参数是由用户初始化时设置的固定参数,不需要随着模型的迭代而进行更新。
[0051]
现有技术中由于可能输入的状态和动作是随机的,导致电子设备基于强化学习算法来训练模型时,计算的奖励值会很大,导致好奇心过大,会出现一个错误的最优解,但这些输入是随机的,模型调节训练这些参数是没有意义的,即会出现噪声电视(noisy

tv)问
题,本技术中使用加入目标模块后可以用于节制、约束特征层的变化,使得计算的奖励值较小,从而使得调节参数变的有意义,避免出现噪声电视问题。
[0052]
s203、通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标。
[0053]
具体的,学习目标可以是指用来确定模型训练效果好坏程度的数据参考量,例如:电子设备采用第一组训练参数计算得到的学习目标为0.5,采用第二组训练参数计算得到的学习目标为0.9,若电子设备确定学习目标值越小,则说明训练效果越好,那么电子设备可以确定第一组训练参数作为模型的训练参数,可以用于后续输入状态信息预测动作信息等的模型预测过程。电子设备计算所述状态信息和所述动作信息对应的状态特征和预测动作信息后,可以计算出模型当前迭代步骤对应的学习目标,例如:电子设备计算出所述实际状态特征为[1,2,3]、所述预测状态特征为[2,3,4]、所述预测动作信息为[9,8,7,6,5]和所述固定状态特征为[4,3,2,1],然后电子设备可以计算出各向量的模长分别为3.74、5.39、15.97和5.48,然后相加得到对应的学习目标为30.58等。
[0054]
s204、基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0055]
具体的,电子设备通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标后,可以调节模型对应的训练参数,例如:点设备计算出采用不同训练参数对应的多个学习目标,采用a组训练参数计算出的学习目标为0.2,采用b组训练参数计算出的学习目标为0.4,采用c组训练参数计算出的学习目标为0.6,采用d组训练参数计算出的学习目标为0.8等,然后电子设备可以将a组训练参数记录为模型对应的参数,然后电子设备继续采用不同的参数来训练,若得到的学习目标更小,则继续更新模型对应的训练参数,将更小的学习目标对应的训练参数记录为模型对应的新的参数。
[0056]
现有技术中基于强化学习来进行模型训练时,需要更新模型中所有模块对应的训练参数,但训练过程中可能会出现噪声电视问题,噪声电视问题可以理解为:如果环境中的状态信息是完全随机的,那么即使有一个完美的动态模型,期望的回报也会是转移矩阵的熵,电子设备会寻找环境中的熵值最大的,因为不确定性越大,熵值越大,电子设备越感兴趣。这会带来一个新的问题,就是如果电子设备正在看电视,有一个遥控器可以更换频道,因为频道切换具有不可预测及意外的特性,还能产生巨大熵,电子设备就会被吸引在电视机前而停止对环境的探索。循环播放所有频道一次,然后进行随机选择频道,也可以保证每次选择都有意外,原因在于电子设备对频道变换后的节目进行预判,但极大可能产生意外,导致预判出错。关键地方在于电子设备对每个频道的每个节目都观看一遍,随机的频道选择还是会产生意外,所以电子设备对意外产生的好奇心会一直看电视,但并不是寻找奖励巨大的物品,类似拖延状态。本技术电子设备在模型训练过程中通过预设不同功能的模块直接剔除了死亡所提供的信息,即当电子设备训练死亡状态(例如但不限于循环调节遥控器观看不同频道节目等状态)时,直接让电子设备恢复到出生点,而不是需要终结回合或者给予任何外在惩罚,同时由于基于动态生成的好奇心的电子设备很熟悉出生点的情况,会失去兴趣获得很少内在奖励从而间接驱使电子设备避免死亡状态。
[0057]
由上述内容可知,获取状态信息和动作信息,计算所述状态信息和所述动作信息
对应的状态特征和预测动作信息,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。本技术通过添加固定参数的目标模块来约束特征模块的变化,使得训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,以及避免了快速陷入次优解的训练情况,加强了模型的探索能力。
[0058]
请参见图3,为本技术实施例提供了一种模型训练方法的另一交互示意图。该模型训练方法可以包括以下步骤:
[0059]
s301、获取状态信息和动作信息。
[0060]
具体的,状态信息可以是指用来表示当前环境状态的完整描述,当前环境都可以用状态信息来进行表示,状态信息可以包括图像信息、音频信息、文本信息等不同类型形式,不作具体限定。动作信息可以是指电子设备与环境进行互动的信息,动作信息可以包括电子设备的运动信息(例如但不限于速度大小、运动方向和运动状态等),具体选择对象的指令信息,或者具体选项的概率分布(例如但不限于选项a概率为0.1,选项b概率为0.2,选项c概率为0.3,选项d概率为0.4)等不同形式,不作具体限定。例如:在问答推荐系统中,动作信息可以是指是指用户上传的音频数据,状态信息可以是指电子设备显示的答案实体文本数据等;在游戏ai领域中,动作信息可以是指用户针对游戏角色上传的控制指令(例如但不限于上下左右移动控制),状态信息可以是游戏画面对应的每一帧的图像显示数据等。状态信息和动作信息一般可以用向量、数组、矩阵或更高阶的张量等形式作为模型训练的输入,例如:电子设备输入的状态信息为1024*659大小的图像矩阵数据,输入的动作信息为1*10大小的一维向量数据等。
[0061]
在本技术中,所述状态信息与所述动作信息存在映射关系,由于不同的状态选择不同的动作,也即不同的动作会导致不同的状态,在模型的训练过程中,输入的是已知多个连续两步的状态信息和对应的动作信息,一组状态信息和动作信息可以使得模型训练的运行增加一个步骤,电子设备可以通过连续两步的状态信息和动作信息使得模型完成一次迭代。所述状态信息与所述动作信息的映射关系的表现形式多种多样,本技术不作具体限定,电子设备可以将状态信息和动作信息设置相同的编号来表示映射关系,例如:电子设备可以将状态信息进行编号为状态信息1、状态信息2和状态信息3等,然后对动作信息进行编号为动作信息1、动作信息2和动作信息3等,那么电子设备可以确定状态信息1和动作信息1可以作为模型训练第一步的输入,状态信息2和动作信息2可以作为模型训练第二步的输入,状态信息3和动作信息3可以作为模型训练第三步的输入等。
[0062]
在一种可能的实施例中,电子设备可以实时获取状态信息和动作信息,例如:电子设备可以通过传感器或摄像头等设备采集周围的状态信息,通过读取用户的操作指令来获取动作信息等。电子设备还可以获取用户上传的状态信息和动作信息,例如:电子设备可以接收来自用户预先标记、预处理好的状态信息和动作信息,直接用于模型训练,不同获取方式可以提高电子设备训练的多样性和高效性。如图4所示,用户可以在电子设备显示屏的信
息输入界面上传信息,例如:在信息输入界面导入预先处理后的状态信息1和动作信息1、状态信息2和动作信息2以及状态信息3和动作信息3等,有助于电子设备快速准确地进行模型训练,然后用户可以通过点击电子设备显示屏上的“上传”按钮,将多组状态信息和对应的动作信息上传到电子设备,进行模型训练确定对应的训练参数。
[0063]
s302、计算所述状态信息和所述动作信息对应的状态特征和预测动作信息。
[0064]
具体的,所述状态特征包括实际状态特征、预测状态特征和固定状态特征。所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征。电子设备确定获取状态信息和动作信息后,可以计算所述状态信息和所述动作信息对应的状态特征和预测动作信息,例如:电子设备确定所述状态信息为[0,1,2,3,4],所述动作信息为[5,6,7,8,9],那么电子设备可以通过预先设置的网络模型计算出所述实际状态特征为[1,2,3],所述预测状态特征为[2,3,4],所述固定状态特征为[4,3,2,1],所述预测动作信息为[9,8,7,6,5]等,有助于后续准确选定对应的训练参数。
[0065]
在本技术实施例中,所述特征模块主要可以用来负责提取输入信号(也即状态信息和动作信息)中的有用信息,并嵌入特征空间,所述特征空间是指强化学习中状态和动作的集合。所述前向模块主要可以用来根据输入的当前状态信息和当前采取的动作信息输出预测的下一步的状态信息。所述反向模块主要可以用来从状态信息中筛选掉可能会影响电子设备选定具体动作的特征,将没用的特征进行抛弃,利用反向预测状态特征之间的差来训练特征模块,这样处理的好处是使所述特征模块输出的特征空间限于电子设备能够控制、改变的空间里,如果电子设备出现强化学习中的沙发土豆(couch potato)问题,当所述特征模块无法从电视中获得奖励(因为电子设备发现无法通过动作改变电视上播放的内容),特征模块就不会在意电视屏幕上的内容了,也就不会提供好奇心奖励,同时也就避免了沙发土豆问题的产生。所述目标模块主要可以用来负责单纯依靠预测差产生好奇心带来的问题,避免电子设备在训练过程中陷入噪声电视困境等。
[0066]
如图5所示,表示电子设备与环境交互示意图,每一次电子设备与环境交互作为一种步骤(time step),电子设备与环境之间的交互是离散的,即第1步、第2步、第t步、第t+1步等。在每一步中,电子设备在当前状态依照某种概率分布或者规则,选取当前动作,环境在此时会给出一个当前奖励,然后按照状态转移概率转移到一个新的状态,即下一步状态,再继续确定下一步动作等。
[0067]
在一种可能的实施例中,所述实际状态特征通过如下公式进行计算:
[0068]
φ(s
t
)=f1(s
t
;θ
e
);
[0069]
其中,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t
表示第t步的状态信息,t为正整数,θ
e
表示特征模块对应的训练参数,f1()表示特征模块对应的映射关系。例如:电子设备确定状态信息为[0,1,2,3,4],输入到需要训练的模型中通过特征模块进行计算后可以得到实际状态特征为[1,2,3]等。
[0070]
在一种可能的实施例中,所述预测状态特征通过如下公式进行计算:
[0071]
[0072]
其中,表示状态信息s
t+1
对应的预测状态特征,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t+1
表示第t+1步的状态信息,s
t
表示第t步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
f
表示前向模块对应的训练参数,f2()表示前向模块对应的映射关系。例如:电子设备确定实际状态特征为[1,2,3]以及动作信息为[5,6,7,8,9],输入到需要训练的模型中通过前向模块进行计算后可以得到预测状态特征为[2,3,4]等。
[0073]
在一种可能的实施例中,所述预测动作信息通过如下公式进行计算:
[0074][0075]
其中,表示第t步的预测动作信息,φ(s
t
)表示状态信息s
t
对应的实际状态特征,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,s
t
表示第t步的状态信息,s
t+1
表示第t+1步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
i
表示反向模块对应的训练参数,g()表示反向模块对应的映射关系。例如:电子设备确定当前步骤的实际状态特征为[1,2,3]以及下一步的实际状态特征为[4,5,6],输入到需要训练的模型中通过反向模块进行计算后可以得到当前步骤的预测动作信息为[9,8,7,6,5]等。
[0076]
在一种可能的实施例中,所述固定状态特征通过如下公式进行计算:
[0077]
ψ(s
t+1
)=f3(s
t+1
;θ
p
);
[0078]
其中,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,θ
p
表示目标模块对应的训练参数,f3()表示目标模块对应的映射关系。例如:电子设备确定状态信息为[0,1,2,3,4],输入到需要训练的模型中通过目标模块进行计算后可以得到固定状态特征为[4,3,2,1]等。
[0079]
s303、基于所述实际状态特征和所述预测状态特征通过所述前向模块计算第一损失函数。
[0080]
具体的,所述第一损失函数为所述前向模块对应的损失函数,所述第一损失函数用于计算后续的学习目标,从而确定各模块对应的训练参数。电子设备计算所述状态信息和所述动作信息对应的状态特征和预测动作信息后,可以计算出所述前向模块对应的损失函数,例如:电子设备确定实际状态特征为[1,2,3]以及预测状态特征为[2,3,4],输入到需要训练的模型中通过前向模块进行计算(例如但不限于计算向量的模的和等)后可以得到第一损失函数的值为6.56。
[0081]
在一种可能的实施例中,所述第一损失函数通过如下公式进行计算:
[0082][0083]
其中,l
f
()表示前向模块对应的第一损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。例如:电子设备确定实际状态特征为[1,2,3]以及预测状态特征为[2,3,4],输入到需要训练的模型中通过前向模块进行计算后可以得到第一损失函数的值为1.5。
[0084]
s304、基于所述动作信息和所述预测动作信息通过所述反向模块计算第二损失函数。
[0085]
具体的,所述第二损失函数为所述反向模块对应的损失函数,所述第二损失函数
用于计算后续的学习目标,从而确定各模块对应的训练参数。电子设备计算所述第一损失函数后,可以计算出所述反向模块对应的损失函数,例如:电子设备确定动作信息为[5,6,7,8,9]以及预测动作信息为[9,8,7,6,5],输入到需要训练的模型中通过反向模块进行计算(例如但不限于计算向量的模的和等)后可以得到第二损失函数的值为31.94。
[0086]
在一种可能的实施例中,所述第二损失函数通过如下公式进行计算:
[0087][0088]
其中,l
i
()表示反向模块对应的第二损失函数,a
t
表示第t步的实际动作信息,表示第t步的预测动作信息,t为正整数,表示取最小值,θ
i
表示反向模块对应的训练参数。例如:电子设备确定动作信息的值为15以及预测动作信息的值为10,输入到需要训练的模型中通过反向模块进行计算后可以得到第二损失函数的值为10。
[0089]
如图6所示,表示q值表示意图,现有的强化学习探索算法,都仅仅适用于离散的环境,所有算法的更新和使用都是在离散环境下进行的。离散环境是一种非常理想的环境,其所有的状态和动作都是离散的,且所有的状态空间和动作空间都是有限的、可数的。面对这样的环境,经典的强化学习可以将每一个状态所对应动作的所有奖励值都保存在一张表格中,需要用到某一个状态动作值q(s,a)的时候,则直接通过状态动作来索引相对应的值,输入训练模型来确定对应的训练参数,左侧纵向列表示动作,上方横行表示状态,其中的值表示相对应的状态动作值q(s,a)。
[0090]
s305、基于所述实际状态特征和所述固定状态特征通过所述目标模块计算第三损失函数。
[0091]
具体的,所述第三损失函数为所述目标模块对应的损失函数,所述第三损失函数用于计算后续的学习目标,从而确定各模块对应的训练参数。电子设备计算所述第二损失函数后,可以计算出所述目标模块对应的损失函数,例如:电子设备确定实际动作特征为[0,1,2,3,4]以及固定动作特征为[1,2,3,4,5],输入到需要训练的模型中通过目标模块进行计算(例如但不限于计算向量的模的和等)后可以得到第三损失函数的值为2.24。
[0092]
在一种可能的实施例中,所述第三损失函数通过如下公式进行计算:
[0093][0094]
其中,l
p
()表示目标模块对应的第三损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。例如:电子设备确定实际动作特征为[0,1,2,3,4]以及固定动作特征为[1,2,3,4,5],输入到需要训练的模型中通过目标模块进行计算后可以得到第三损失函数的值为2.5。
[0095]
在本技术实施例中,电子设备计算出第三损失函数后,可以基于所述实际状态特征、所述预测状态特征和所述固定状态特征计算整体奖励,其中,所述整体奖励为所述模型对应的奖励。例如:电子设备可以通过对所述实际状态特征、所述预测状态特征和所述固定状态特征进行简单的四则运算法则计算,得到所述整体奖励。例如:电子设备确定所述实际状态特征对应的模为1,所述预测状态特征对应的模为2,所述固定状态特征对应的模为3,然后相加得到所述整体奖励为6。
[0096]
电子设备计算所述整体奖励的方式多种多样,在本技术实施例中不作具体限定,在一种可能的实施例中,电子设备可以通过步骤s306方式来计算所述整体奖励:
[0097]
s306、通过公式计算第一奖励,通过公式计算第二奖励,基于所述第一奖励和所述第二奖励通过公式计算整体奖励。
[0098]
具体的,所述第一奖励可以是指所述前向模块对应的好奇心奖励,所述第二奖励可以是指所述目标模块对应的蒸馏奖励,主要是基于蒸馏神经网络技术来设置的,所述整体奖励可以是指激励电子设备训练模型的整体的奖励,电子设备计算第三损失函数后,可以确定第一奖励和第二奖励,再基于所述第一奖励和所述第二奖励计算整体奖励,例如:电子设备可以通过固定状态特征、实际状态特征和预测状态特征确定第一奖励为5,通过动作信息和预测动作信息确定第二奖励为7,电子设备可以通过相加得到整体奖励为12等。
[0099]
在一种可能的实施例中,通过如下公式计算第一奖励:
[0100][0101]
其中,r
ticm
表示前向模块第t步对应的第一奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,η表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。例如电子设备确定实际状态特征为[1,2,3]以及预测状态特征为[2,3,4],超参数η设置为0.5,输入到需要训练的模型中通过前向模块进行计算后可以得到第一奖励的值为0.7。
[0102]
通过如下公式计算第二奖励:
[0103][0104]
其中,r
trnd
表示目标模块第t步对应的第二奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,δ表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。电子设备确定实际动作特征为[0,1,2,3,4]以及固定动作特征为[1,2,3,4,5],超参数δ设置为0.5,输入到需要训练的模型中通过目标模块进行计算后可以得到第二奖励的值为1.75。
[0105]
基于所述第一奖励和所述第二奖励通过如下公式计算整体奖励:
[0106]
r
t
=r
te
+r
ticm
+r
trnd

[0107]
其中,r
t
表示模型第t步对应的整体奖励,r
te
表示第t步对应的自定义设置的外部奖励,r
ticm
表示前向模块第t步对应的第一奖励,r
trnd
表示目标模块第t步对应的第二奖励,t为正整数。例如:电子设备确定第一奖励的值为0.7,第二奖励的值为1.75,自定义设置的外部奖励为0.25,那么电子设备可以确定整体奖励值为2.7等。
[0108]
s307、基于所述第一损失函数、所述第二损失函数、所述第三损失函数和所述整体奖励计算学习目标。
[0109]
具体的,电子设备计算整体奖励后,可计算学习目标,例如:电子设备确定所述第一损失函数为1.5、所述第二损失函数为10、所述第三损失函数为2.5以及所述整体奖励计为2.7,那么电子设备可以通过相加得到所述学习目标为16.7等。
[0110]
在一种可能的实施例中,所述学习目标通过如下公式进行计算:
[0111][0112]
其中,z
t
第t步的学习目标,用于调整训练参数,表示表示为期望,即随机变量平均取值的大小,∑表示累积求和,r
t
表示模型第t步对应的整体奖励,l
f
表示前向模块对应的第一损失函数,l
i
表示反向模块对应的第二损失函数,l
p
表示目标模块对应的第三损失函数,λ、β和γ表示自定义的超参数,t表示学习步长,t为正整数,θ
p
表示目标模块对应的训练参数,θ
i
表示反向模块对应的训练参数,θ
f
表示前向模块对应的训练参数。例如:电子设备确定所述第一损失函数为1.5、所述第二损失函数为10、所述第三损失函数为2.5以及所述整体奖励计为2.7,自定义的超参数β为0.5,γ为0.8,λ为1,计算出的期望为4.3,那么电子设备可以确定当前步骤的学习目标为1.4等。
[0113]
s308、从不同训练参数计算的多个学习目标中确定最小的学习目标。
[0114]
具体的,电子设备计算学习目标后,电子设备可以根据由于一组训练参数计算出一个学习目标,电子设备通过预先设置的学习率可以一直更新对应的训练参数,那么电子设备可以计算出的多个学习目标,例如:a组训练参数得到的学习目标为1.3,b组训练参数得到的学习目标为1.7,c组训练参数得到的学习目标为0.9等,然后电子设备可以确定最小的学习目标为0.9。
[0115]
s309、基于所述最小的学习目标确定所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0116]
具体的,电子设备确定最小的学习目标后,可以确定对应的训练参数,例如:电子设备确定有3个学习目标1.3、1.7和0.9,那么电子设备可以将学习目标为0.9对应的a组训练参数作为模型训练好的参数,后续可以对模型进行迭代运行更新模型训练好的参数,例如:电子设备确定d组训练参数计算出的学习目标为0.6,那么将d组训练参数作为模型训练好的参数,舍弃a组训练参数。
[0117]
如图7所示,表示预训练模型结构示意图,开始输入状态信息和动作信息,预训练模型至少可以包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,最后在计算出整体奖励。预训练模型通过采用预先设置的策略网络与环境进行交互,多次迭代连续步骤,训练对应的训练参数。特征模块可以是由tanh激励函数和神经网络层组合设置的,前向模块和目标模块可以是由不同神经网络层拼接形成的,反向模块可以是由view激励函数和神经网络层组合设置的。
[0118]
本技术实施例的方案在执行时,获取状态信息和动作信息,计算所述状态信息和所述动作信息对应的状态特征和预测动作信息,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向
模块对应的训练参数。本技术通过添加固定参数的目标模块来约束特征模块的变化,使得训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,以及避免了快速陷入次优解的训练情况,加强了模型的探索能力。
[0119]
下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
[0120]
请参见图8,其示出了本技术一个示例性实施例提供的模型训练装置的结构示意图,以下简称训练装置8。训练装置8可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。包括:
[0121]
获取模块801,用于获取状态信息和动作信息;其中,所述状态信息与所述动作信息存在映射关系;
[0122]
第一计算模块802,用于计算所述状态信息和所述动作信息对应的状态特征和预测动作信息;其中,所述状态特征包括实际状态特征、预测状态特征和固定状态特征;
[0123]
第二计算模块803,用于通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标;其中,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征;
[0124]
确定模块804,用于基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0125]
在一种可能的实施例中,所述实际状态特征通过如下公式进行计算:
[0126]
φ(s
t
)=f1(s
t
;θ
e
);
[0127]
其中,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t
表示第t步的状态信息,t为正整数,θ
e
表示特征模块对应的训练参数,f1()表示特征模块对应的映射关系。
[0128]
在一种可能的实施例中,所述预测状态特征通过如下公式进行计算:
[0129][0130]
其中,表示状态信息s
t+1
对应的预测状态特征,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t+1
表示第t+1步的状态信息,s
t
表示第t步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
f
表示前向模块对应的训练参数,f2()表示前向模块对应的映射关系。
[0131]
在一种可能的实施例中,所述预测动作信息通过如下公式进行计算:
[0132][0133]
其中,表示第t步的预测动作信息,φ(s
t
)表示状态信息s
t
对应的实际状态特征,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,s
t
表示第t步的状态信息,s
t+1
表示第t+1步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
i
表示反向模块对应的训练参数,g()表示反向模块对应的映射关系。
[0134]
在一种可能的实施例中,所述固定状态特征通过如下公式进行计算:
[0135]
ψ(s
t+1
)=f3(s
t+1
;θ
p
);
[0136]
其中,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信
息,t为正整数,θ
p
表示目标模块对应的训练参数,f3()表示目标模块对应的映射关系。
[0137]
在一种可能的实施例中,所述第二计算模块803包括:
[0138]
第一计算单元,用于基于所述实际状态特征和所述预测状态特征通过所述前向模块计算第一损失函数;其中,所述第一损失函数为所述前向模块对应的损失函数;
[0139]
第二计算单元,用于基于所述动作信息和所述预测动作信息通过所述反向模块计算第二损失函数;其中,所述第二损失函数为所述反向模块对应的损失函数;
[0140]
第三计算单元,用于基于所述实际状态特征和所述固定状态特征通过所述目标模块计算第三损失函数;其中,所述第三损失函数为所述目标模块对应的损失函数;
[0141]
第四计算单元,用于基于所述实际状态特征、所述预测状态特征和所述固定状态特征计算整体奖励;其中,所述整体奖励为所述模型对应的奖励;
[0142]
第五计算单元,用于基于所述第一损失函数、所述第二损失函数、所述第三损失函数和所述整体奖励计算学习目标。
[0143]
在一种可能的实施例中,所述第一损失函数通过如下公式进行计算:
[0144][0145]
其中,l
f
()表示前向模块对应的第一损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。
[0146]
在一种可能的实施例中,所述第二损失函数通过如下公式进行计算:
[0147][0148]
其中,l
i
()表示反向模块对应的第二损失函数,a
t
表示第t步的实际动作信息,表示第t步的预测动作信息,t为正整数,表示取最小值,θ
i
表示反向模块对应的训练参数。
[0149]
在一种可能的实施例中,所述第三损失函数通过如下公式进行计算:
[0150][0151]
其中,l
p
()表示目标模块对应的第三损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。
[0152]
在一种可能的实施例中,所述第四计算单元包括:
[0153]
第一计算子单元,用于通过如下公式计算第一奖励:
[0154][0155]
其中,r
ticm
表示前向模块第t步对应的第一奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,η表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数;
[0156]
第二计算子单元,用于通过如下公式计算第二奖励:
[0157][0158]
其中,r
trnd
表示目标模块第t步对应的第二奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,δ表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数;
[0159]
第三计算子单元,用于基于所述第一奖励和所述第二奖励通过如下公式计算整体奖励:
[0160]
r
t
=r
te
+r
ticm
+r
trnd

[0161]
其中,r
t
表示模型第t步对应的整体奖励,r
te
表示第t步对应的自定义设置的外部奖励,r
ticm
表示前向模块第t步对应的第一奖励,r
trnd
表示目标模块第t步对应的第二奖励,t为正整数。
[0162]
在一种可能的实施例中,所述学习目标通过如下公式进行计算:
[0163][0164]
其中,z
t
第t步的学习目标,用于调整训练参数,表示表示为期望,即随机变量平均取值的大小,∑表示累积求和,r
t
表示模型第t步对应的整体奖励,l
f
表示前向模块对应的第一损失函数,l
i
表示反向模块对应的第二损失函数,l
p
表示目标模块对应的第三损失函数,λ、β和γ表示自定义的超参数,t表示学习步长,t为正整数,θ
p
表示目标模块对应的训练参数,θ
i
表示反向模块对应的训练参数,θ
f
表示前向模块对应的训练参数。
[0165]
在一种可能的实施例中,所述确定模块804包括:
[0166]
筛选单元,用于从不同训练参数计算的多个学习目标中确定最小的学习目标;
[0167]
选定单元,用于基于所述最小的学习目标确定所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0168]
本技术实施例和图2至图3的方法实施例基于同一构思,其带来的技术效果也相同,具体过程可参照图2至图3的方法实施例的描述,此处不再赘述。
[0169]
所述装置8可以为实现相关功能的现场可编程门阵列(field

programmable gate array,fpga),专用集成芯片,系统芯片(system on chip,soc),中央处理器(central processor unit,cpu),网络处理器(network processor,np),数字信号处理电路,微控制器(micro controller unit,mcu),还可以采用可编程控制器(programmable logic device,pld)或其他集成芯片。
[0170]
本技术实施例的方案在执行时,获取状态信息和动作信息,计算所述状态信息和所述动作信息对应的状态特征和预测动作信息,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。本技术通过添加固定参数的目标模块来约束特征模块的变化,使得
训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,以及避免了快速陷入次优解的训练情况,加强了模型的探索能力。
[0171]
本技术实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述的方法步骤,具体执行过程可以参见图2或图3所示实施例的具体说明,在此不进行赘述。
[0172]
本技术还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的模板的控制方法。
[0173]
请参见图9,为本技术实施例提供了一种电子设备的结构示意图。如图9所示,所述电子设备900可以包括:至少一个处理器901,至少一个网络接口904,用户接口903,存储器905,至少一个通信总线902。
[0174]
其中,通信总线902用于实现这些组件之间的连接通信。
[0175]
其中,用户接口903可以包括显示屏(display)、摄像头(camera),可选用户接口903还可以包括标准的有线接口、无线接口。
[0176]
其中,网络接口904可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。
[0177]
其中,处理器901可以包括一个或者多个处理核心。处理器901利用各种借口和线路连接整个电子设备900内的各个部分,通过运行或执行存储在存储器905内的指令、程序、代码集或指令集,以及调用存储在存储器905内的数据,执行电子设备900的各种功能和处理数据。可选的,处理器901可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field

programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器901可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器901中,单独通过一块芯片进行实现。
[0178]
其中,存储器905可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read

only memory)。可选的,该存储器905包括非瞬时性计算机可读介质(non

transitory computer

readable storage medium)。存储器905可用于存储指令、程序、代码、代码集或指令集。存储器905可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器905可选的还可以是至少一个位于远离前述处理器901的存储装置。如图9所示,作为一种计算机存储介质的存储器905中可以包括操作系统、网络通信模块、用户接口模块以及模型训练应用程序。
[0179]
在图9所示的电子设备900中,用户接口903主要用于为用户提供输入的接口,获取用户输入的数据;而处理器901可以用于调用存储器905中存储的模型训练应用程序,并具体执行以下操作:
[0180]
获取状态信息和动作信息;其中,所述状态信息与所述动作信息存在映射关系;
[0181]
计算所述状态信息和所述动作信息对应的状态特征和预测动作信息;其中,所述状态特征包括实际状态特征、预测状态特征和固定状态特征;
[0182]
通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标;其中,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征;
[0183]
基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0184]
在一种可能的实施例中,所述实际状态特征通过如下公式进行计算:
[0185]
φ(s
t
)=f1(s
t
;θ
e
);
[0186]
其中,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t
表示第t步的状态信息,t为正整数,θ
e
表示特征模块对应的训练参数,f1()表示特征模块对应的映射关系。
[0187]
在一种可能的实施例中,所述预测状态特征通过如下公式进行计算:
[0188][0189]
其中,表示状态信息s
t+1
对应的预测状态特征,φ(s
t
)表示状态信息s
t
对应的实际状态特征,s
t+1
表示第t+1步的状态信息,s
t
表示第t步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
f
表示前向模块对应的训练参数,f2()表示前向模块对应的映射关系。
[0190]
在一种可能的实施例中,所述预测动作信息通过如下公式进行计算:
[0191][0192]
其中,表示第t步的预测动作信息,φ(s
t
)表示状态信息s
t
对应的实际状态特征,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,s
t
表示第t步的状态信息,s
t+1
表示第t+1步的状态信息,t为正整数,a
t
表示第t步的实际动作信息,θ
i
表示反向模块对应的训练参数,g()表示反向模块对应的映射关系。
[0193]
在一种可能的实施例中,所述固定状态特征通过如下公式进行计算:
[0194]
ψ(s
t+1
)=f3(s
t+1
;θ
p
);
[0195]
其中,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,θ
p
表示目标模块对应的训练参数,f3()表示目标模块对应的映射关系。
[0196]
在一种可能的实施例中,处理器901执行所述通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标时,具体执行:
[0197]
基于所述实际状态特征和所述预测状态特征通过所述前向模块计算第一损失函数;其中,所述第一损失函数为所述前向模块对应的损失函数;
[0198]
基于所述动作信息和所述预测动作信息通过所述反向模块计算第二损失函数;其中,所述第二损失函数为所述反向模块对应的损失函数;
[0199]
基于所述实际状态特征和所述固定状态特征通过所述目标模块计算第三损失函数;其中,所述第三损失函数为所述目标模块对应的损失函数;
[0200]
基于所述实际状态特征、所述预测状态特征和所述固定状态特征计算整体奖励;
其中,所述整体奖励为所述模型对应的奖励;
[0201]
基于所述第一损失函数、所述第二损失函数、所述第三损失函数和所述整体奖励计算学习目标。
[0202]
在一种可能的实施例中,所述第一损失函数通过如下公式进行计算:
[0203][0204]
其中,l
f
()表示前向模块对应的第一损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。
[0205]
在一种可能的实施例中,所述第二损失函数通过如下公式进行计算:
[0206][0207]
其中,l
i
()表示反向模块对应的第二损失函数,a
t
表示第t步的实际动作信息,表示第t步的预测动作信息,t为正整数,表示取最小值,θ
i
表示反向模块对应的训练参数。
[0208]
在一种可能的实施例中,所述第三损失函数通过如下公式进行计算:
[0209][0210]
其中,l
p
()表示目标模块对应的第三损失函数,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数。
[0211]
在一种可能的实施例中,处理器901执行所述基于所述实际状态特征、所述预测状态特征和所述固定状态特征计算整体奖励时,具体执行:
[0212]
通过如下公式计算第一奖励:
[0213][0214]
其中,r
ticm
表示前向模块第t步对应的第一奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,表示状态信息s
t+1
对应的预测状态特征,η表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数;
[0215]
通过如下公式计算第二奖励:
[0216][0217]
其中,r
trnd
表示目标模块第t步对应的第二奖励,φ(s
t+1
)表示状态信息s
t+1
对应的实际状态特征,ψ(s
t+1
)表示状态信息s
t+1
对应的固定状态特征,δ表示自定义的超参数,s
t+1
表示第t+1步的状态信息,t为正整数,||
·
||表示l2范数;
[0218]
基于所述第一奖励和所述第二奖励通过如下公式计算整体奖励:
[0219]
r
t
=r
te
+r
ticm
+r
trnd

[0220]
其中,r
t
表示模型第t步对应的整体奖励,r
te
表示第t步对应的自定义设置的外部
奖励,r
ticm
表示前向模块第t步对应的第一奖励,r
trnd
表示目标模块第t步对应的第二奖励,t为正整数。
[0221]
在一种可能的实施例中,所述学习目标通过如下公式进行计算:
[0222][0223]
其中,z
t
第t步的学习目标,用于调整训练参数,表示表示为期望,即随机变量平均取值的大小,∑表示累积求和,r
t
表示模型第t步对应的整体奖励,l
f
表示前向模块对应的第一损失函数,l
i
表示反向模块对应的第二损失函数,l
p
表示目标模块对应的第三损失函数,λ、β和γ表示自定义的超参数,t表示学习步长,t为正整数,θ
p
表示目标模块对应的训练参数,θ
i
表示反向模块对应的训练参数,θ
f
表示前向模块对应的训练参数。
[0224]
在一种可能的实施例中,处理器901执行所述基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数时,具体执行:
[0225]
从不同训练参数计算的多个学习目标中确定最小的学习目标;
[0226]
基于所述最小的学习目标确定所述特征模块、所述前向模块和所述反向模块对应的训练参数。
[0227]
本技术实施例的技术构思和图2或图3的技术构思相同,具体过程可参照图2或图3的方法实施例,此处不再赘述。
[0228]
在本技术实施例中,获取状态信息和动作信息,计算所述状态信息和所述动作信息对应的状态特征和预测动作信息,所述状态特征包括实际状态特征、预测状态特征和固定状态特征,通过模型基于所述实际状态特征、所述预测状态特征、所述预测动作信息和所述固定状态特征计算学习目标,所述模型至少包括特征模块、前向模块、反向模块和目标模块,所述特征模块用于计算所述实际状态特征,所述前向模块用于计算所述预测状态特征,所述反向模块用于计算所述预测动作信息,所述目标模块用于计算所述固定状态特征,基于所述学习目标确定所述模型中的所述特征模块、所述前向模块和所述反向模块对应的训练参数。本技术通过添加固定参数的目标模块来约束特征模块的变化,使得训练过程中计算出的奖励较小,也即学习目标较小,得到较低的好奇心,从而使得模型可以避免出现噪声电视问题,以及避免了快速陷入次优解的训练情况,加强了模型的探索能力。
[0229]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
[0230]
以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1