CN117035122A - 一种强化学习模型构建方法、装置、存储介质及电子设备 - Google Patents

一种强化学习模型构建方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN117035122A
CN117035122A CN202311293168.1A CN202311293168A CN117035122A CN 117035122 A CN117035122 A CN 117035122A CN 202311293168 A CN202311293168 A CN 202311293168A CN 117035122 A CN117035122 A CN 117035122A
Authority
CN
China
Prior art keywords
component
reinforcement learning
learning model
training
behaviors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311293168.1A
Other languages
English (en)
Other versions
CN117035122B (zh
Inventor
王永恒
董子铭
曾洪海
肖恒进
巫英才
王超
陈卫
邵彬
韩珺婷
鲁艺
金星
张杨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202311293168.1A priority Critical patent/CN117035122B/zh
Publication of CN117035122A publication Critical patent/CN117035122A/zh
Application granted granted Critical
Publication of CN117035122B publication Critical patent/CN117035122B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书公开了一种强化学习模型构建方法、装置、存储介质及电子设备。可以通过指定强化学习模型框架中为用户提供的各种类型不同的组件,使得用户仅需要选择组件、配置组件初始的参数和变量、编辑函数体组件中的逻辑、配置行为时间规则后,通过触发JEP执行器运行代码从而训练用户定义的强化学习模型,从而可以提升用户构建强化学习模型的效率。

Description

一种强化学习模型构建方法、装置、存储介质及电子设备
技术领域
本说明书涉及强化学习技术领域,尤其涉及一种强化学习模型构建方法、装置、存储介质及电子设备。
背景技术
随着计算机技术的发展,强化学习模型在诸如:人工智能、机器人控制等领域中得到广泛的应用。
通常情况下,由于强化学习模型由智能体、环境、状态、行为、模块等复杂的组成部分构成,使得用户在构建强化学习模型时,需要花费较多时间构建各种复杂的元素、状态、模块,并且在构建强化学习模型的过程中极易出现错误,例如:遗漏了构建强化学习模型所需的某个组成部分的错误,从而使得用户还需要花费大量时间进行纠错以及调试,进而使得强化学习模型的构建效率极低。
因此,如何提升用户构建强化学习模型的效率,则是一个亟待解决的问题。
发明内容
本说明书提供一种强化学习模型构建方法、装置、存储介质及电子设备,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种强化学习模型构建方法,所述方法应用于指定强化学习框架,所述方法包括:
获取用户在所述指定强化学习框架中输入的各操作指令;
根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件;
根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件进行配置,所述位移行为用于通过所述智能体组件执行指定动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型,并对所述初始强化学习模型进行训练,得到目标强化学习模型。
可选地,所述智能体组件以及所述全局环境组件包括:参数组件、变量组件;
根据所述各操作指令,确定构建强化学习模型所需的各组件,具体包括:
根据所述各操作指令,确定构建强化学习模型所需的智能体组件和全局环境组件,并确定每个所述智能体组件以及所述全局环境组件中包含的参数组件和变量组件。
可选地,根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,具体包括:
针对每种组件,从预设的各检测方法中确定出与该种组件相匹配的检测方法,作为目标检测方法,并通过所述目标检测方法,对该种组件进行检测;
根据各组件的检测结果,判断所述各组件中是否存在异常组件;
若否,则根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序。
可选地,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件之前,所述方法还包括:
判断各行为对应的函数体组件运行所需的依赖包是否存在;
若否,则向指定设备返回异常信息;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,具体包括:
若各行为对应的函数体组件运行所需的依赖包均存在,则获取各行为对应的函数体组件运行所需的依赖包并加载;
在确定各行为对应的函数体组件运行所需的依赖包加载完成后,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件。
可选地,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件之前,所述方法还包括:
若构建所述强化学习模型所需的所述智能体组件的数量超过预设阈值,则从各所述智能体组件中抽样得到各目标智能体组件;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,具体包括:
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,并针对所述目标智能体组件,将所述目标智能体组件中包含的变量组件的值通过预设的可视化组件进行展示。
可选地,对所述初始强化学习模型进行训练,得到目标强化学习模型,具体包括:
若所述训练行为的数量大于一,则针对每个训练行为,通过该训练行为配置得到候选强化学习训练板块,所述候选强化学习训练板块包括:观测子板块、奖励惩罚子板块、动作子板块、训练环境子板块、训练网络子板块、启动/终止条件子板块;
通过每个候选强化学习训练板块,对所述初始强化学习模型进行训练,得到目标强化学习模型。
可选地,通过每个候选强化学习训练板块,对所述初始强化学习模型进行训练,得到目标强化学习模型,具体包括:
针对每个候选强化学习训练板块,通过该候选强化学习训练板块对所述初始强化学习模型进行训练,得到该候选强化学习训练板块对应的候选强化学习模型;
根据每个候选强化学习模型的输出结果,从各候选强化学习模型中确定出目标强化学习模型。
本说明书提供了一种强化学习模型构建装置,包括:
获取模块,用于获取用户在指定强化学习框架中输入的各操作指令;
第一确定模块,用于根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件;
第二确定模块,用于根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件进行配置,所述位移行为用于通过所述智能体组件执行指定动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置;
训练模块,用于根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型,并对所述初始强化学习模型进行训练,得到目标强化学习模型。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述强化学习模型构建方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述强化学习模型构建方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的强化学习模型构建方法中,首先获取用户在指定强化学习框架中输入的各操作指令,根据各操作指令,确定构建强化学习模型所需的各组件,其中,各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件,根据行为时间规则组件,确定构建强化学习模型所需的各行为之间的先后顺序,各行为包括:赋值行为、位移行为、训练行为,其中,赋值行为用于对智能体组件、全局环境组件进行配置,位移行为用于通过智能体组件执行指定动作以及用于通过预设的可视化组件对各组件的数据进行展示,训练行为用于对训练组件进行配置,根据各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型,并对初始强化学习模型进行训练,得到目标强化学习模型。
从上述方法可以看出,可以通过预设的指定强化学习框架,使得用户可以以低代码的形式选取用于构建强化学习模型所需的各组件,并对各组件进行配置,进而可以基于用户配置的行为时间规则组件,确定各行为之间执行的先后顺序并执行,从而可以构建用户所需的强化学习模型并训练,以提升用户构建强化学习模型的效率。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中提供的一种强化学习模型构建方法的流程示意图;
图2为本说明书中提供的各组件的确定过程的示意图;
图3为本说明书中提供的强化学习模型的构建、训练过程示意图;
图4为本说明书提供的一种强化学习模型构建装置的示意图;
图5为本说明书提供的一种对应于图1的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书中提供的一种强化学习模型构建方法的流程示意图,包括以下步骤:
S101:获取用户在所述指定强化学习框架中输入的各操作指令。
强化学习是机器学习的一个分支,在用户需要通过强化学习模型进行任务执行时,可以根据待执行的任务,构建用于进行任务执行的强化学习模型,在构建的强化学习模型中,可以包含若干个智能体以及一个全局环境,进而可以以一个智能体怎么在全局环境中去极大化它能获得的奖励,来对强化学习模型进行训练。即,可以使智能体作出不同的动作,并通过感知智能体所作出的动作对全局环境的状态的影响(即奖励或惩罚),来指导智能体作出更好的动作,从而获得最大的收益,实现对强化学习模型的训练,从而可以通过训练后的强化学习模型进行任务执行。
例如:在围棋这个应用场景中,可以针对进行对弈的每个棋手,构建一个智能体,即,可以构建两个智能体,并可以针对棋盘中的两个角色各自棋子的“气”或者“目数”,构建全局环境,其中,针对每个智能体,该智能体所作出的动作可以为在棋盘的不同位置落子,而全局环境可以根据该智能体的每次的动作,返回相应的状态(即每轮落子后棋盘上两种棋子所占的“气”的数量或者“目数”),进而可以使得该智能体根据全局环境基于每个动作的变化,学习到每次落子动作的好坏,以使得该智能体能够作出更好的动作。
从上述内容中可以看出,用户可以基于各种不同的任务场景,构建相应的强化学习模型,进而可以通过构建出的强化学习模型,进行任务执行,因此,如何提升用户构建强化学习模型的效率,可以使得强化学习模型得到更广泛的应用。
基于此,业务平台可以为用户提供指定强化学习框架,以使用户能够在指定强化学习框架中以无代码或低代码的形式,构建所需的强化学习模型并训练,其中,上述的指定强化学习框架中提供有诸如:智能体组件、全局环境组件、参数组件、变量组件、函数体组件、训练组件、行为时间规则组件等组件供用户选取以及配置。
上述的智能体组件包含有参数组件、变量组件、以及用于对变量组件进行赋值的函数体组件作为子组件,智能体组件可以在强化学习模型训练过程中,可以获取到全局环境组件的状态,可以与其它智能体组件进行实时动态交互,可以根据训练组件中配置的奖励惩罚子板块来学习,以从预设的动作库中选择一个合适的动作并执行,从而最大化智能体的长期总收益。例如:上述围棋模型中每个棋手对应一个智能体组件。
上述的全局环境组件包含有参数组件、变量组件作为子组件,全局环境可以接收到智能体的动作,并且给出反馈,反馈以变量的形式传递给智能体组件,同时全局环境组件也提供了可观测或部分可观测的状态给智能体,例如:在围棋模型中,全局环境组件给出的反馈可以为智能体组件每轮落子后的“气”的数量的变化量,全局环境组件的状态可以为当前两种棋子的“气”的数量。
上述的参数组件为预定义的常量组件,不受其它组件的影响,可以理解为全局环境组件或智能体组件自带的属性信息,例如:在围棋模型中存在黑棋先下、白棋的目数为棋盘上白棋的目数再加上6.5目,因此,在围棋模型中可以为执黑棋的智能体组件设置先落子的属性,为执白棋的智能体组件设置计算的棋子的目数固定加6.5的属性,棋子,这里的先落子以及6.5即为两个智能体自带的属性信息,可以通过在智能体组件中设置相应的参数组件设置。
上述的变量组件为动态化的活跃组件,需要先被预定义数值类型(例如:整型int、浮点型float、字符型char等)以及初始值,变量组件的值会受其它组件的影响而产生变化。例如:在围棋模型中每个智能体在棋盘上的棋子的数量则设置为变量组件,其初始值为0,棋子的数量在下棋的过程中会随着落子不断的变化。
上述的函数体组件为预定义好的组件,用来编写脚本语言来对定义好或者代码中新生成的变量进行赋值,配置强化学习所需函数体的代码量会远小于基于传统的脚本语言的搭建方式。例如:在围棋模型中根据智能体组件的落子的动作可以被定义为函数体组件。
上述的训练组件为动态变化的活跃组件,用户可以在训练组件中定义训练强化学习模型的方法的属性,业务平台可以根据用户定义的训练组件,配置得到强化学习训练板块,这里的强化学习训练板块包含所有强化学习所需要的子板块,诸如:观测子板块、奖励惩罚子板块、动作子板块、训练环境子板块、训练网络子板块、启动/终止条件子板块。每个子板块都可以配置变量和函数体来声明算法逻辑,每个子板块可以上下拖动以调整训练模块的执行顺序,最终可以通过在时间行为规则组件中配置相应的行为被执行。
行为时间规则组件为动态变化的可调整组件,用于编排构建所述强化学习模型所需的各行为之间的先后顺序。这里的行为包括:赋值行为、位移行为、训练行为,其中,赋值行为用于对智能体组件、全局环境组件进行配置,位移行为用于通过智能体组件执行指定动作以及用于通过预设的可视化组件对各组件的数据进行展示,训练行为用于对训练组件进行配置。
上述的可以对各组件的数据进行展示可以为在强化学习模型训练过程中的每个周期结束后,将各个组件中包含的变量组件的值通过预设的可视化组件进行展示。
进一步地,用户在需要构建强化学习模型时,可以通过在上述的指定强化学习框架中输入各操作指令,以使业务平台获取用户在指定强化学习框架中输入的各操作指令,并根据用户输入的各操作指令,确定用户所选择各组件以及用户输入的各组件的配置参数,从而可以根据用户输入的各组件的配置参数对用户所选择各组件进行初始化配置,进而可以根据初始化配置后的各组件为用户构建强化学习模型并训练。
其中,上述的各操作指令可以为诸如:点击、拖曳、文本输入等操作指令。
上述的初始化配置可以为对智能体的名称、编号等参数进行配置,对智能体中的变量赋初始值等。
需要说明的是,上述的指定强化学习框架可以为通过Java语言编写的指定强化学习框架,在根据用户配置的行为时间规则组件为用户构建强化学习模型并训练时,可以通过Java表达式转换器(Java expression parser,JEP)工具来启动Python执行器来运行各函数体组件,从而为用户构建强化学习模型并训练。
另外,由于业务平台在通过指定强化学习框架构建并训练强化学习模型时,可以通过JEP创建多个线程,进而可以多个线程并行运行各函数体组件,以为用户构建强化学习模型并训练,从而可以避免通过全量复杂脚本的Python语言的单线程模型训练强化学习模型而存在的构建强化学习模型的效率低以及训练强化学习模型的效率低的问题。
在本说明书中,用于实现强化学习模型构建方法的执行主体,可以是指由服务器等设置于业务平台中的指定设备,也可以是指诸如台式电脑、笔记本电脑等终端设备,为了便于描述,下面仅以服务器是执行主体为例,对本说明书提供的强化学习模型构建方法进行说明。
S102:根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件。
服务器可以根据用户输入的各操作指令,确定构建强化学习模型所需的各组件,具体如图2所示。
图2为本说明书中提供的各组件的确定过程的示意图。
结合图2可以看出,服务器可以根据用户输入的各操作指令,确定构建强化学习模型所需的至少一个智能体组件和全局环境组件,并确定每个智能体组件以及全局环境组件中包含的参数组件和变量组件,以及,可以根据用户输入的各操作指令,确定训练强化学习模型所需的训练组件。
另外,服务器还可以根据用户输入的各操作指令,配置事件监控器、对比图表等组件。
上述的事件监控器用于对强化学习配置以及训练过程中产生的事件进行监控,上述的对比图表组件用于对创建参数、修改参数后的不同配置的强化学习模型进行展示。
需要说明的是,用户对智能体组件、全局环境组件、训练组件中包含的变量组件、函数体组件的配置可以参考图2,例如:用户可以配置变量名为“Reward”,备注为“奖励”,数据类型为Int的变量组件,以及,用户可以在函数体组件中提供的窗口中,输入函数体组件的逻辑程序,如:“Import numpy as np; Import tensorflow as tf;Env=agentEnv( );RL=DeepQNetwork{env.n_actions,Learning_rato, Reward=0.9, O_gready}”。
S103:根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件进行配置,所述位移行为用于生效所述智能体组件的动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置。
进一步地,服务器可以针对每种组件,从预设的各检测方法中确定出与该种组件相匹配的检测方法,作为目标检测方法,并通过目标检测方法,对该种组件进行检测,根据各组件的检测结果,判断各组件中是否存在异常组件,若否,则根据行为时间规则组件,确定构建强化学习模型所需的各行为之间的先后顺序,若是,则生成异常信息,并将生成的异常信息发送至指定设备。
其中,上述预设的各检测方法可以为检测全局环境组件和智能体的参数、变量、函数体唯一标识名称是否冲突,数据类型是否合法、检测训练组件中的子板块是否配置完整,且配置项是否符合强化学习领域中的指定规则、检测函数体中的脚本语法是否合法,不合法的语句可以向用户展示相应的提示信息,这里的提示信息用于提醒用户不合法语句所处的位置,检测不同类型的行为的配置是否合规,不允许存在为空的时间行为配置项。
S104:根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型以及对所述初始强化学习模型进行训练,得到目标强化学习模型,并通过所述目标强化学习模型进行任务执行。
在本说明书中,服务器可以根据确定出的各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型,并对初始强化学习模型进行训练,得到目标强化学习模型,具体如图3所示。
图3为本说明书中提供的强化学习模型的构建、训练过程示意图。
结合图3可以看出,服务器可以在确定出各行为之间的先后顺序后,服务器可以接收用户在指定强化学习框架中输入的任务配置指令,并根据用户输入的任务配置指令,确定任务信息,进而可以根据任务信息,为用户创建构建以及训练强化学习模型任务。
上述的任务信息包括:任务类型、任务名称、任务进度、强化学习模型训练周期数、强化学习模型训练周期单位、时间粒度。
另外,服务器还可以根据用户输入的任务配置指令,确定是否需要导入数据库中保存的训练结果(可以为预训练的强化学习模型经过预训练后得到的一组模型参数),若是,则可以导入训练结果以对构建出的强化学习模型进行配置,并基于导入的训练结果,以及行为时间规则组件,对构建出的强化学习模型进行训练。
进一步地,服务器可以执行构建以及训练强化学习模型任务,通过预设的JEP计算引擎,根据确定出的各行为之间的先后顺序,运行每个行为对应的函数体组件,以对初始强化学习模型进行配置,并对初始强化学习模型进行训练,得到目标强化学习模型。
另外,服务器还可以在执行构建以及训练强化学习模型任务的每个周期结束后,将该周期中强化学习模型的每个变量组件的值保存到预设的数据池中,并生成该周期的日志文件并保存,例如:在围棋模型中,两个智能体组件的一局对弈即为一个周期,在这两个智能体组件一局对弈结束后,可以将这局对弈中智能体组件、全局环境组件中变量的值进行保存。
除此之外,服务器还可以在根据各行为之间的先后顺序,运行每个行为对应的函数体组件之前,判断各行为对应的函数体组件运行所需的依赖包是否存在,若否,则向指定设备返回异常信息,若各行为对应的函数体组件运行所需的依赖包均存在,则获取各行为对应的函数体组件运行所需的依赖包并加载,在确定各行为对应的函数体组件运行所需的依赖包加载完成后,根据各行为之间的先后顺序,运行每个行为对应的函数体组件。
进一步地,若确定构建强化学习模型所需的智能体组件的数量超过预设阈值,则可以从各智能体组件中抽样得到各目标智能体组件,根据各行为之间的先后顺序,运行每个行为对应的函数体组件,并针对目标智能体组件,在执行构建以及训练强化学习模型任务的每个周期结束后,将目标智能体组件中包含的变量组件的值通过预设的可视化组件进行展示。
在实际应用场景,对强化学习模型进行训练的方法可以有多种,例如:尝试基于理解环境Model-based和直接学习策略Model-free等,而不同的训练方法对于不同的强化学习模型的训练效果可能不同,用户可以通过上述的指定强化学习框架,配置多个训练组件,并在行为时间规则组件中配置相应的行为,进而可以通过多种不同的训练方法,分别对强化学习模型进行训练,并可以对采用不同训练方法训练出的强化学习模型的训练效果进行对比,以确定出最优的训练方法,对强化学习模型进行训练。
具体地,若根据上述行为时间规则组件确定出的训练行为的数量大于一,则服务器可以针对每个训练行为,通过该训练行为配置得到候选强化学习训练板块,通过每个候选强化学习训练板块,对初始强化学习模型进行训练,得到目标强化学习模型,针对每个候选强化学习训练板块,通过该候选强化学习训练板块对所述初始强化学习模型进行训练,得到该候选强化学习训练板块对应的候选强化学习模型,根据每个候选强化学习模型的输出结果,从各候选强化学习模型中确定出目标强化学习模型,其中,候选强化学习训练板块包括:观测子板块、奖励惩罚子板块、动作子板块、训练环境子板块、训练网络子板块、启动/终止条件子板块。
进一步地,服务器可以得到目标强化学习模型后,可以通过目标强化学习模型进行任务执行,例如:在无人车领域中,可以针对每个无人车构建一个智能体组件,针对路况构建全局环境组件,最终可以通过目标强化学习模型,执行为每个无人车进行路径规划任务等。
从上述方法可以看出,由于指定强化学习框架中为用户提供了智能体组件、全局环境组件、变量组件、参数组件、函数体组件、训练组件、行为时间规则组件,并且组件之间可以灵活交互和共享数据。使得用户只需选择组件、配置组件初始的参数和变量、编辑函数体组件中的简单逻辑后,即可通过JEP执行器构建并训练出用户所需的强化学习模型,从而可以实现低代码构建并训练强化学习模型,提升了用户构建强化学习模型的效率。
除此之外,用户还可以通过对时间行为规则组件进行配置,实现构建以及训练强化学习模型过程的灵活性和可调整性,并且可以通过可视化组件对构建以及训练强化学习模型过程中的数据进行展示。
以上为本说明书的一个或多个实施强化学习模型构建方法,基于同样的思路,本说明书还提供了相应的强化学习模型构建装置,如图4所示。
图4为本说明书提供的一种强化学习模型构建装置的示意图,包括:
获取模块401,用于获取用户在所述指定强化学习框架中输入的各操作指令;
第一确定模块402,用于根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件;
第二确定模块403,用于根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件中的变量进行赋值,所述位移行为用于通过所述智能体组件执行指定动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置;
训练模块404,用于根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型以及对所述初始强化学习模型进行训练,得到目标强化学习模型,并通过所述目标强化学习模型进行任务执行。
可选地,所述智能体组件以及所述全局环境组件包括:参数组件、变量组件;
所述第一确定模块402具体用于,根据所述各操作指令,确定构建强化学习模型所需的智能体组件和全局环境组件,并确定每个所述智能体组件以及所述全局环境组件中包含的参数组件和变量组件。
可选地,所述第二确定模块403具体用于,针对每种组件,从预设的各检测方法中确定出与该种组件相匹配的检测方法,作为目标检测方法,并通过所述目标检测方法,对该种组件进行检测;根据各组件的检测结果,判断所述各组件中是否存在异常组件;若否,则根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序。
可选地,所述第二确定模块403具体用于,判断各行为对应的函数体组件运行所需的依赖包是否存在;若否,则向指定设备返回异常信息;若各行为对应的函数体组件运行所需的依赖包均存在,则获取各行为对应的函数体组件运行所需的依赖包并加载;在确定各行为对应的函数体组件运行所需的依赖包加载完成后,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件。
可选地,所述第二确定模块403具体用于,若构建所述强化学习模型所需的所述智能体组件的数量超过预设阈值,则从各所述智能体组件中抽样得到各目标智能体组件;根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,并针对所述目标智能体组件,将所述目标智能体组件中包含的变量组件的值通过预设的可视化组件进行展示。
可选地,所述训练模块404具体用于,若所述训练行为的数量大于一,则针对每个训练行为,通过该训练行为配置得到候选强化学习训练板块,所述候选强化学习训练板块包括:观测子板块、奖励惩罚子板块、动作子板块、训练环境子板块、训练网络子板块、启动/终止条件子板块;通过每个候选强化学习训练板块,对所述初始强化学习模型进行训练,得到目标强化学习模型。
可选地,所述训练模块404具体用于,针对每个候选强化学习训练板块,通过该候选强化学习训练板块对所述初始强化学习模型进行训练,得到该候选强化学习训练板块对应的候选强化学习模型;根据每个候选强化学习模型的输出结果,从各候选强化学习模型中确定出目标强化学习模型。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1提供的一种强化学习模型构建方法。
本说明书还提供了图5所示的一种对应于图1的电子设备的示意结构图。如图5所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的强化学习模型构建方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(ProgrammableLogic Device, PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(HardwareDescription Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(AdvancedBoolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(JavaHardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby HardwareDescription Language)等,目前最普遍使用的是VHDL(Very-High-Speed IntegratedCircuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (10)

1.一种强化学习模型构建方法,其特征在于,所述方法应用于指定强化学习框架,所述方法包括:
获取用户在所述指定强化学习框架中输入的各操作指令;
根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件;
根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件中的变量进行赋值,所述位移行为用于通过所述智能体组件执行指定动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型以及对所述初始强化学习模型进行训练,得到目标强化学习模型,并通过所述目标强化学习模型进行任务执行。
2.如权利要求1所述的方法,其特征在于,所述智能体组件以及所述全局环境组件包括:参数组件、变量组件;
根据所述各操作指令,确定构建强化学习模型所需的各组件,具体包括:
根据所述各操作指令,确定构建强化学习模型所需的智能体组件和全局环境组件,并确定每个所述智能体组件以及所述全局环境组件中包含的参数组件和变量组件。
3.如权利要求1所述的方法,其特征在于,根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,具体包括:
针对每种组件,从预设的各检测方法中确定出与该种组件相匹配的检测方法,作为目标检测方法,并通过所述目标检测方法,对该种组件进行检测;
根据各组件的检测结果,判断所述各组件中是否存在异常组件;
若否,则根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序。
4.如权利要求1所述的方法,其特征在于,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件之前,所述方法还包括:
判断各行为对应的函数体组件运行所需的依赖包是否存在;
若否,则向指定设备返回异常信息;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,具体包括:
若各行为对应的函数体组件运行所需的依赖包均存在,则获取各行为对应的函数体组件运行所需的依赖包并加载;
在确定各行为对应的函数体组件运行所需的依赖包加载完成后,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件。
5.如权利要求1所述的方法,其特征在于,根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件之前,所述方法还包括:
若构建所述强化学习模型所需的所述智能体组件的数量超过预设阈值,则从各所述智能体组件中抽样得到各目标智能体组件;
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,具体包括:
根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,并针对所述目标智能体组件,将所述目标智能体组件中包含的变量组件的值通过预设的可视化组件进行展示。
6.如权利要求1所述的方法,其特征在于,对所述初始强化学习模型进行训练,得到目标强化学习模型,具体包括:
若所述训练行为的数量大于一,则针对每个训练行为,通过该训练行为配置得到候选强化学习训练板块,所述候选强化学习训练板块包括:观测子板块、奖励惩罚子板块、动作子板块、训练环境子板块、训练网络子板块、启动/终止条件子板块;
通过每个候选强化学习训练板块,对所述初始强化学习模型进行训练,得到目标强化学习模型。
7.如权利要求6所述的方法,其特征在于,通过每个候选强化学习训练板块,对所述初始强化学习模型进行训练,得到目标强化学习模型,具体包括:
针对每个候选强化学习训练板块,通过该候选强化学习训练板块对所述初始强化学习模型进行训练,得到该候选强化学习训练板块对应的候选强化学习模型;
根据每个候选强化学习模型的输出结果,从各候选强化学习模型中确定出目标强化学习模型。
8.一种强化学习模型构建装置,其特征在于,包括:
获取模块,用于获取用户在指定强化学习框架中输入的各操作指令;
第一确定模块,用于根据所述各操作指令,确定构建强化学习模型所需的各组件,所述各组件包括:智能体组件、全局环境组件、函数体组件、训练组件、行为时间规则组件;
第二确定模块,用于根据行为时间规则组件,确定构建所述强化学习模型所需的各行为之间的先后顺序,所述各行为包括:赋值行为、位移行为、训练行为,其中,所述赋值行为用于对所述智能体组件、所述全局环境组件进行配置,所述位移行为用于通过所述智能体组件执行指定动作以及用于通过预设的可视化组件对所述各组件的数据进行展示,所述训练行为用于对所述训练组件进行配置;
训练模块,用于根据所述各行为之间的先后顺序,运行每个行为对应的函数体组件,以构建初始强化学习模型,并对所述初始强化学习模型进行训练,得到目标强化学习模型。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
CN202311293168.1A 2023-10-08 2023-10-08 一种强化学习模型构建方法、装置、存储介质及电子设备 Active CN117035122B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311293168.1A CN117035122B (zh) 2023-10-08 2023-10-08 一种强化学习模型构建方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311293168.1A CN117035122B (zh) 2023-10-08 2023-10-08 一种强化学习模型构建方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN117035122A true CN117035122A (zh) 2023-11-10
CN117035122B CN117035122B (zh) 2024-01-26

Family

ID=88645205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311293168.1A Active CN117035122B (zh) 2023-10-08 2023-10-08 一种强化学习模型构建方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN117035122B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117725985A (zh) * 2024-02-06 2024-03-19 之江实验室 一种强化学习模型训练和业务执行方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200285995A1 (en) * 2019-03-05 2020-09-10 Hrl Laboratories, Llc Robust, scalable and generalizable machine learning paradigm for multi-agent applications
CN114004365A (zh) * 2021-10-29 2022-02-01 深圳市商汤科技有限公司 智能体的强化学习方法、装置、计算机设备及存储介质
CN114021737A (zh) * 2021-11-04 2022-02-08 中国电子科技集团公司信息科学研究院 一种基于博弈的强化学习方法、系统、终端及存储介质
CN114418128A (zh) * 2022-03-25 2022-04-29 新华三人工智能科技有限公司 一种模型部署的方法及装置
CN114519433A (zh) * 2022-02-18 2022-05-20 星环信息科技(上海)股份有限公司 多智能体强化学习、策略执行方法及计算机设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200285995A1 (en) * 2019-03-05 2020-09-10 Hrl Laboratories, Llc Robust, scalable and generalizable machine learning paradigm for multi-agent applications
CN114004365A (zh) * 2021-10-29 2022-02-01 深圳市商汤科技有限公司 智能体的强化学习方法、装置、计算机设备及存储介质
CN114021737A (zh) * 2021-11-04 2022-02-08 中国电子科技集团公司信息科学研究院 一种基于博弈的强化学习方法、系统、终端及存储介质
CN114519433A (zh) * 2022-02-18 2022-05-20 星环信息科技(上海)股份有限公司 多智能体强化学习、策略执行方法及计算机设备
CN114418128A (zh) * 2022-03-25 2022-04-29 新华三人工智能科技有限公司 一种模型部署的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHIAO- TING CHEN等: "Cloning Strategies from Trading Records using Agent-based Reinforcement Learning Algorithm", 《 IEEE XPLORE》 *
程晓北;沈晶;刘海波;顾国昌;张国印;: "分层强化学习研究进展", 计算机工程与应用, no. 13 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117725985A (zh) * 2024-02-06 2024-03-19 之江实验室 一种强化学习模型训练和业务执行方法、装置及电子设备
CN117725985B (zh) * 2024-02-06 2024-05-24 之江实验室 一种强化学习模型训练和业务执行方法、装置及电子设备

Also Published As

Publication number Publication date
CN117035122B (zh) 2024-01-26

Similar Documents

Publication Publication Date Title
CN117035122B (zh) 一种强化学习模型构建方法、装置、存储介质及电子设备
CN109062782B (zh) 一种回归测试用例的选择方法、装置及设备
CN110378400B (zh) 一种用于图像识别的模型训练方法及装置
CN110598855B (zh) 深度学习模型生成方法、装置、设备及存储介质
CN110032698A (zh) 信息显示方法和装置、信息处理方法和装置
CN116185532B (zh) 一种任务执行系统、方法、存储介质及电子设备
CN116909532A (zh) 一种代码生成与缺陷修复方法和装置
CN115686631B (zh) 一种基于知识基的随机指令生成方法、装置及存储介质
CN114861665B (zh) 一种强化学习模型训练以及确定数据关系的方法及装置
CN114840426A (zh) 一种代码测试的方法及装置
CN112035341A (zh) 一种自动化测试方法及装置
CN116304720A (zh) 一种代价模型训练的方法、装置、存储介质及电子设备
Solter et al. Professional C++
CN108763039B (zh) 一种业务故障模拟方法、装置及设备
CN116091895B (zh) 一种面向多任务知识融合的模型训练方法及装置
CN111950852A (zh) 一种用户行为分析与指导方法、装置、电子设备和可读存储装置
CN111476291A (zh) 数据处理方法,装置及存储介质
CN116136952A (zh) 一种针对元器件的仿真测试方法及装置
US20090210372A1 (en) Rule-based programming languages for entities in environments
CN110704742B (zh) 一种特征提取方法及装置
CN104915295A (zh) 游戏软件调试方法及装置
CN108733564B (zh) 一种浏览器性能测试方法、装置及设备
CN110032624B (zh) 一种样本筛选方法及装置
CN116361138A (zh) 测试方法及设备
CN111596946A (zh) 一种区块链智能合约的推荐方法、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant