WO2023101112A1 - Method for offline meta-reinforcement learning of multiple tasks and computing device for performing same - Google Patents

Method for offline meta-reinforcement learning of multiple tasks and computing device for performing same Download PDF

Info

Publication number
WO2023101112A1
WO2023101112A1 PCT/KR2022/006128 KR2022006128W WO2023101112A1 WO 2023101112 A1 WO2023101112 A1 WO 2023101112A1 KR 2022006128 W KR2022006128 W KR 2022006128W WO 2023101112 A1 WO2023101112 A1 WO 2023101112A1
Authority
WO
WIPO (PCT)
Prior art keywords
tasks
transition
metamodel
transition set
policy
Prior art date
Application number
PCT/KR2022/006128
Other languages
French (fr)
Korean (ko)
Inventor
장병탁
김준호
Original Assignee
서울대학교 산학협력단
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
Priority claimed from KR1020220049648A external-priority patent/KR20230082531A/en
Application filed by 서울대학교 산학협력단 filed Critical 서울대학교 산학협력단
Publication of WO2023101112A1 publication Critical patent/WO2023101112A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • Embodiments disclosed herein relate to an offline meta-reinforcement learning method for a plurality of tasks and a computing device for performing the same.
  • offline reinforcement learning technology has a limitation in that reinforcement learning must be performed using only given data.
  • a metamodel approximating an environment for a plurality of tasks as a model is generated using data on a plurality of tasks, and a policy policy is generated using the generated metamodel.
  • reinforcement learning can be performed through a model approximated using pre-prepared data without interaction with the real environment, so that not only the time for learning is drastically reduced, but also various Since the environment model for a task is approximated as a metamodel, knowledge sharing between tasks is well done, and a policy with better performance can be obtained than in the case of learning each task separately.
  • FIG. 1 is a diagram showing the configuration of a computing device that performs a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
  • 2 and 3 are flowcharts for explaining a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
  • FIG. 4 is a diagram for explaining a process of learning a global environment model (meta-model) and a context encoder according to an embodiment
  • FIG. 5 is a diagram for explaining a process of learning a policy agent according to an embodiment.
  • a reinforcement learning method for establishing one policy for performing a plurality of tasks uses data for the plurality of tasks,
  • the method may include generating a metamodel in which an environment for tasks is approximated as a model, and learning the one policy using the metamodel.
  • the reinforcement learning method for establishing one policy for performing a plurality of tasks includes the plurality of tasks. It may include generating a metamodel in which the environment for the plurality of tasks is approximated as one model by using data on the tasks of, and learning the one policy using the metamodel. there is.
  • a computer-readable recording medium on which a program for performing a reinforcement learning method for establishing one policy for performing a plurality of tasks is recorded, and one policy for performing a plurality of tasks is recorded.
  • the reinforcement learning method includes generating a metamodel that approximates the environment for the plurality of tasks as one model using data for the plurality of tasks, and using the metamodel to determine the one policy It may include the step of learning.
  • the computing device for performing video story question and answering includes data related to reinforcement learning. and an input/output unit for receiving commands and outputting reinforcement learning results, a storage unit for storing data and programs for performing reinforcement learning, and at least one processor, which executes the program to perform reinforcement learning. and a control unit, by executing the program, generating a metamodel that approximates the environment for the plurality of tasks as a model using data on the plurality of tasks, and generating the metamodel.
  • the one policy can be learned using
  • Embodiments described in this specification relate to reinforcement learning that establishes a policy for performing all of a plurality of tasks well, and in particular, in a state in which data for a plurality of tasks are prepared in advance. These are embodiments in which reinforcement learning can be effectively performed without additional interaction by approximating an environmental model for a plurality of tasks using corresponding data.
  • a computing device 100 may include an input/output unit 110, a control unit 120, and a storage unit 130.
  • the input/output unit 110 is a component for receiving data and commands related to reinforcement learning and outputting results of reinforcement learning.
  • the input/output unit 110 may include various types of input devices (e.g. keyboard, touch screen, etc.) for receiving input from a user, and may also include a connection port or communication module for transmitting and receiving data necessary for reinforcement learning. may be
  • the control unit 120 is a component including at least one processor such as a CPU, and can perform reinforcement learning according to a process presented below by executing a program stored in the storage unit 130 . A method for the controller 120 to perform reinforcement learning will be described in detail below.
  • the storage unit 130 is a configuration in which files and programs can be stored and may be configured through various types of memories. In particular, data and programs that allow the controller 120 to perform reinforcement learning according to a process presented below may be stored in the storage unit 130 .
  • a reinforcement learning method for establishing one policy for performing a plurality of tasks approximates the environment for a plurality of tasks as one model without additional interaction in a situation in which data for a plurality of tasks is given. It proceeds by creating a metamodel (global environment model) and learning policies through the created metamodel. In the case of this reinforcement learning method, since the environmental models for multiple tasks are approximated as a single metamodel, knowledge sharing between tasks is well done, and a policy with better performance can be obtained than when each task is trained separately. .
  • 2 and 3 are flowcharts for explaining a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
  • control unit 120 may generate a metamodel (global environment model) approximating the environment for a plurality of tasks into one model using data on a plurality of tasks. there is.
  • a metamodel global environment model
  • the data for the plurality of tasks includes transition tuples composed of a state, action, reward, and next state for each task, and each task It may be stored in advance in a buffer corresponding to .
  • FIG. 3 shows detailed steps included in step 201 of FIG. 2 .
  • the controller 120 in step 301, the controller 120 generates context vectors by performing embedding on transition tuples for each of a plurality of tasks.
  • control unit 120 may generate a global environment model (meta-model) by approximating an environment model for each task by conditioning the context vectors, and may train the global environment model.
  • a global environment model metal-model
  • the control unit 120 may implement a context encoder, a metamodel generator, and a policy agent learning module by executing programs stored in the storage unit 130 .
  • the above three configurations are not physically separated hardware configurations, but correspond to software configurations arbitrarily classified based on operations performed.
  • the context encoder creates a context vector by performing embedding on the transitions of each of a plurality of tasks
  • the metamodel generator creates a metamodel (global environment model) approximated for all tasks by conditioning the context vector
  • the policy The agent learning module uses a metamodel to learn one policy for all tasks.
  • a specific method for the control unit 120 to learn the context encoder, metamodel, and policy agent will be described in detail with reference to FIGS. 4 and 5 below.
  • the process of performing reinforcement learning by the computing device 100 is largely (1) a process of learning a global environment model (meta-model) and a context encoder (a process of generating a meta-model) and (2) a policy It consists of the process of learning the agent.
  • a process of learning a global environment model (meta-model) and a context encoder a process of generating a meta-model
  • a policy It consists of the process of learning the agent.
  • M transition tuples state (s), action (a), reward (r), next state (s')
  • the computing device 100 [0043] Examples of performing the above two processes will be described.
  • FIG. 4 is a diagram for explaining a process of learning a global environment model (meta model) and a context encoder
  • FIG. 5 is a diagram for explaining a process of learning a policy agent.
  • the controller 120 of the computing device 100 selects N tasks from among a plurality of tasks.
  • the controller 120 performs a process using data of the selected N tasks, and the task buffer 410 shown in FIG. 4 is a buffer corresponding to any one of the selected N tasks. That is, the controller 120 may perform the process described with reference to FIG. 4 for each of the selected N tasks.
  • the controller 120 randomly samples some of the transition tuples stored in the task buffer 410 as a first transition set and a second transition set.
  • the first transition set and the second transition set are separately and randomly sampled, and some of the transition tuples included in each set may overlap each other.
  • the first set of transitions can be used as an input to the context encoder 420, and the second set of transitions can be used to train the metamodel 430.
  • the control unit 120 converts the sampled first transition set to the context encoder 420. is applied as an input to obtain a first context vector describing each task through embedding.
  • the context vector z is expressed as Equation 1 below.
  • the control unit 120 uses the second transition set and the third transition set to calculate the metamodel 430 through a loss function expressed by Equation 2 below. can be learned.
  • the loss function of Equation 2 includes mean squared errors of the second transition set and the third transition set.
  • T means the number of types of a plurality of tasks.
  • the control unit 120 repeats the process described above (from the operation of selecting N tasks to the operation of calculating the loss function of Equation 2) while repeating so that the error of does not exceed a preset threshold and can be learned.
  • the controller 120 of the computing device 100 selects N tasks from among a plurality of tasks.
  • the controller 120 performs a process using data of the selected N tasks, and the task buffer 510 shown in FIG. 5 is a buffer corresponding to any one of the selected N tasks. That is, the controller 120 may perform the process described with reference to FIG. 5 for each of the selected N tasks.
  • the controller 120 randomly samples some of the transition tuples stored in the task buffer 510 as a fourth transition set and a fifth transition set.
  • the fourth transition set and the fifth transition set are individually and randomly sampled, and some of the transition tuples included in each set may overlap each other.
  • the fourth transition set is used as an input of the context encoder 520, and the fifth transition set can be used for training of the policy agent.
  • the control unit 120 converts the sampled fourth transition set to the context encoder 520. is applied as an input to obtain a second context vector describing each task through embedding.
  • the context vector z is expressed as in Equation 1 above.
  • the control unit 120 obtains a sixth transition set (s', r) new by applying the conditioned second context vector z and (s, a) extracted from the fifth transition set to the metamodel 530 as inputs. Among them, a penalty due to the uncertainty of the model may be reflected for the compensation r. In detail, the controller 120 may give a penalty to the reward r in the sixth transition set (s', r) new by calculating the Probius norm of the variance matrix of the prediction distribution of the model. Equation 3 for calculating compensation r new reflecting the penalty due to uncertainty is as follows.
  • the control unit 120 uses a transition set newly obtained through penalty reflection (a transition set in which a penalty due to uncertainty in compensation is reflected in the sixth transition set) and a second context vector, expressed by Equations 4 to 6 below.
  • the policy ⁇ , the state value function V, and the action value function Q can be learned through the loss function.
  • reinforcement learning can be performed through a model approximated using pre-prepared data without interaction with the real environment, so that not only the time required for learning is drastically reduced, but also the time required for learning is significantly reduced. Since the environment model is approximated as a metamodel, knowledge sharing between tasks is well done, and thus, a policy with better performance can be obtained than when each task is trained separately.
  • ' ⁇ unit' used in the above embodiments means software or a hardware component such as a field programmable gate array (FPGA) or ASIC, and ' ⁇ unit' performs certain roles.
  • ' ⁇ part' is not limited to software or hardware.
  • ' ⁇ bu' may be configured to be in an addressable storage medium and may be configured to reproduce one or more processors. Therefore, as an example, ' ⁇ unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • components and ' ⁇ units' may be implemented to play one or more CPUs in a device or a secure multimedia card.
  • the offline meta-reinforcement learning method for a plurality of tasks can also be implemented in the form of a computer-readable medium that stores instructions and data executable by a computer.
  • instructions and data may be stored in the form of program codes, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation.
  • computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • a computer-readable medium may be a computer recording medium, which is a volatile and non-volatile memory implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. It can include both volatile, removable and non-removable media.
  • the computer recording medium may be a magnetic storage medium such as HDD and SSD, an optical recording medium such as CD, DVD, and Blu-ray disc, or a memory included in a server accessible through a network.
  • the offline meta-reinforcement learning method for a plurality of tasks may be implemented as a computer program (or computer program product) including instructions executable by a computer.
  • a computer program includes programmable machine instructions processed by a processor and may be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language.
  • the computer program may be recorded on a tangible computer-readable recording medium (eg, a memory, a hard disk, a magnetic/optical medium, or a solid-state drive (SSD)).
  • SSD solid-state drive
  • a computing device may include at least some of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device.
  • a processor may include at least some of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device.
  • Each of these components are connected to each other using various buses and may be mounted on a common motherboard or mounted in any other suitable manner.
  • the processor may process commands within the computing device, for example, to display graphic information for providing a GUI (Graphic User Interface) on an external input/output device, such as a display connected to a high-speed interface.
  • GUI Graphic User Interface
  • Examples include instructions stored in memory or storage devices.
  • multiple processors and/or multiple buses may be used along with multiple memories and memory types as appropriate.
  • the processor may be implemented as a chipset comprising chips including a plurality of independent analog and/or digital processors.
  • Memory also stores information within the computing device.
  • the memory may consist of a volatile memory unit or a collection thereof.
  • the memory may be composed of a non-volatile memory unit or a collection thereof.
  • Memory may also be another form of computer readable medium, such as, for example, a magnetic or optical disk.
  • a storage device may provide a large amount of storage space to the computing device.
  • a storage device may be a computer-readable medium or a component that includes such a medium, and may include, for example, devices in a storage area network (SAN) or other components, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, flash memory, or other semiconductor memory device or device array of the like.
  • SAN storage area network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A reinforcement learning method for establishing one policy for performing multiple tasks comprises the steps of: using data on the multiple tasks to generate a meta-model in which environments for the multiple tasks are approximated in a single model; and teaching the one policy by using the meta-model. Accordingly, since reinforcement learning can be performed through a model approximated using data prepared in advance without interaction with actual environments, learning time is dramatically reduced. In addition, since environment models for multiple tasks are approximated in a single meta-model, knowledge is readily shared amongst the tasks, and thus a policy having better performance can be obtained than a case where each of the tasks are learned separately.

Description

복수의 태스크에 대한 오프라인 메타 강화학습 방법 및 이를 수행하기 위한 컴퓨팅 장치Offline meta-reinforcement learning method for multiple tasks and computing device for performing the same
본 명세서에서 개시되는 실시예들은 복수의 태스크에 대한 오프라인 메타 강화학습 방법 및 이를 수행하기 위한 컴퓨팅 장치에 관한 것이다.Embodiments disclosed herein relate to an offline meta-reinforcement learning method for a plurality of tasks and a computing device for performing the same.
본 연구는 과학기술정보통신부와 정보통신기획평가원의 ICT융합산업혁신기술개발 사업 "촉각이 가능한 로봇 손으로 다양한 물체를 다루는 방법과 절차를 학습하는 로봇 손 조작 지능 개발"과제에 대한 연구결과로 수행되었음(IITP-2018-0-00622).This study was conducted as a result of the research on the ICT convergence industry innovative technology development project of the Ministry of Science and ICT and the Institute of Information and Communication Planning and Evaluation, "Development of robot hand manipulation intelligence that learns how to handle various objects with a tactile robot hand and procedures." has been (IITP-2018-0-00622).
본 연구는 산업통상자원부와 한국산업기술진흥원의 산업기술국제협력 사업 "인간을 물리적 상호작용을 통해 지원하는 로봇을 위한 가상현실 환경 인간시연을 모방하는 학습 기술 개발"과제에 대한 연구결과로 수행되었음(KIAT-P0006720).This study was conducted as a result of the research on the project "Development of learning technology that mimics human demonstration in a virtual reality environment for robots that support humans through physical interaction", an international cooperation project for industrial technology by the Ministry of Trade, Industry and Energy and the Korea Institute for Advancement of Technology. (KIAT-P0006720).
본 연구는 과학기술정보통신부와 정보통신기획평가원의 SW컴퓨팅산업원천기술개발 사업 "(SW 스타랩) 일상생활학습 기반의 인지에이전트 SW 개발"과제에 대한 연구결과로 수행되었음(IITP-2015-0-00310).This study was conducted as a result of research on the task "(SW Star Lab) development of cognitive agent SW based on daily life learning" of the Ministry of Science and ICT and the Institute of Information and Communications Technology Evaluation and Planning (IITP-2015-0) -00310).
강화학습을 시뮬레이션이 아닌 실제 로봇에 적용할 때 로봇이 환경과 상호작용하는데 많은 시간이 소요되므로 실시간으로 데이터를 수집하여 학습하기 어렵다는 문제점이 있다. 따라서, 환경과의 상호작용 없이 좋은 정책을 얻는 오프라인 강화학습 기술에 대한 연구가 꾸준히 이루어지고 있고, 로봇 자동화가 필요한 물류 시스템이나 무인 시스템 등에 적용되고 있다.When reinforcement learning is applied to a real robot rather than a simulation, it takes a lot of time for the robot to interact with the environment, so it is difficult to learn by collecting data in real time. Therefore, research on offline reinforcement learning technology that obtains good policies without interaction with the environment is steadily being conducted, and it is applied to logistics systems or unmanned systems that require robot automation.
다만, 오프라인 강화학습 기술은 주어진 데이터만을 이용하여 강화학습을 수행해야 한다는 한계가 있다.However, offline reinforcement learning technology has a limitation in that reinforcement learning must be performed using only given data.
이러한 한계를 극복하기 위해, 복수의 태스크들에 대한 데이터가 주어져 있지만, 각 태스크에 대한 환경과 직접 상호작용할 수 없는 환경에서 모든 태스크들을 잘 수행할 수 있는 하나의 정책을 얻기 위한 강화학습 방법에 대한 연구를 실시하였고, 그 결과 본 명세서에서 소개하는 실시예들에 따른 강화학습 방법을 도출할 수 있었다.In order to overcome this limitation, a reinforcement learning method for obtaining one policy that can perform all tasks well in an environment where data on a plurality of tasks is given but cannot directly interact with the environment for each task. Research was conducted, and as a result, a reinforcement learning method according to the embodiments introduced in this specification could be derived.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the above-mentioned background art is technical information that the inventor possessed for derivation of the present invention or acquired in the process of derivation of the present invention, and cannot necessarily be said to be known art disclosed to the general public prior to filing the present invention. .
본 명세서에서 개시되는 실시예들을 통해, 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법 및 이를 수행하기 위한 컴퓨팅 장치를 제공하고자 한다.Through the embodiments disclosed in this specification, it is intended to provide a reinforcement learning method for establishing one policy for performing a plurality of tasks and a computing device for performing the same.
본 명세서에서 개시되는 실시예들에 따르면, 복수의 태스크들에 대한 데이터를 이용하여, 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하고, 생성된 메타모델을 이용하여 정책을 학습시킴으로써, 복수의 태스크를 모두 잘 수행할 수 있는 하나의 정책을 학습시킬 수 있다.According to the embodiments disclosed herein, a metamodel approximating an environment for a plurality of tasks as a model is generated using data on a plurality of tasks, and a policy policy is generated using the generated metamodel. By learning, it is possible to learn one policy capable of performing all of the plurality of tasks well.
전술한 과제 해결 수단 중 어느 하나에 의하면, 실제 환경과의 상호작용 없이 미리 준비된 데이터를 이용하여 근사화한 모델을 통해 강화학습을 수행할 수 있으므로 학습에 수행되는 시간이 획기적으로 감축될 뿐만 아니라, 여러 태스크에 대한 환경모델을 하나의 메타모델로 근사화하기 때문에 태스크 간 지식 공유가 잘 이루어져 각각의 태스크를 별도로 학습시키는 경우보다 더 좋은 성능의 정책을 얻을 수 있는 효과가 있다.According to any one of the above-described task solving means, reinforcement learning can be performed through a model approximated using pre-prepared data without interaction with the real environment, so that not only the time for learning is drastically reduced, but also various Since the environment model for a task is approximated as a metamodel, knowledge sharing between tasks is well done, and a policy with better performance can be obtained than in the case of learning each task separately.
개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable from the disclosed embodiments are not limited to those mentioned above, and other effects not mentioned are clear to those skilled in the art from the description below to which the disclosed embodiments belong. will be understandable.
도 1은 일 실시예에 따른 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 수행하는 컴퓨팅 장치의 구성을 도시한 도면이다.1 is a diagram showing the configuration of a computing device that performs a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
도 2 및 도 3은 일 실시예에 따른 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 설명하기 위한 순서도들이다.2 and 3 are flowcharts for explaining a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
도 4는 일 실시예에 따라 글로벌 환경모델(메타모델) 및 콘텍스트 인코더를 학습시키는 과정을 설명하기 위한 도면이고, 도 5는 일 실시예에 따라 정책 에이전트를 학습시키는 과정을 설명하기 위한 도면이다.4 is a diagram for explaining a process of learning a global environment model (meta-model) and a context encoder according to an embodiment, and FIG. 5 is a diagram for explaining a process of learning a policy agent according to an embodiment.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따르면 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법은, 상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하는 단계 및 상기 메타모델을 이용하여 상기 하나의 정책을 학습시키는 단계를 포함할 수 있다.As a technical means for achieving the above-described technical problem, according to an embodiment, a reinforcement learning method for establishing one policy for performing a plurality of tasks uses data for the plurality of tasks, The method may include generating a metamodel in which an environment for tasks is approximated as a model, and learning the one policy using the metamodel.
다른 실시예에 따르면, 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 수행하기 위한 컴퓨터 프로그램으로서, 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법은, 상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하는 단계 및 상기 메타모델을 이용하여 상기 하나의 정책을 학습시키는 단계를 포함할 수 있다.According to another embodiment, as a computer program for performing a reinforcement learning method for establishing one policy for performing a plurality of tasks, the reinforcement learning method for establishing one policy for performing a plurality of tasks includes the plurality of tasks. It may include generating a metamodel in which the environment for the plurality of tasks is approximated as one model by using data on the tasks of, and learning the one policy using the metamodel. there is.
또 다른 실시예에 따르면, 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체로서, 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법은, 상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하는 단계 및 상기 메타모델을 이용하여 상기 하나의 정책을 학습시키는 단계를 포함할 수 있다.According to another embodiment, a computer-readable recording medium on which a program for performing a reinforcement learning method for establishing one policy for performing a plurality of tasks is recorded, and one policy for performing a plurality of tasks is recorded. The reinforcement learning method includes generating a metamodel that approximates the environment for the plurality of tasks as one model using data for the plurality of tasks, and using the metamodel to determine the one policy It may include the step of learning.
다른 실시예에 따르면, 비디오 스토리 질의응답을 수행하기 위한 컴퓨팅 장치는, 복수의 태스크를 수행하기 위한 하나의 정책(policy)을 수립하는 강화학습 방법을 수행하기 위한 컴퓨팅 장치는, 강화학습과 관련된 데이터 및 명령 등을 입력받고, 강화학습 결과를 출력하기 위한 입출력부, 강화학습을 수행하기 위한 데이터 및 프로그램이 저장되는 저장부 및 적어도 하나의 프로세서를 포함하며, 상기 프로그램을 실행함으로써 강화학습을 수행하는 제어부를 포함하며, 상기 제어부는 상기 프로그램을 실행함으로써, 상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하고, 상기 메타모델을 이용하여 상기 하나의 정책을 학습시킬 수 있다.According to another embodiment, the computing device for performing video story question and answering, the computing device for performing a reinforcement learning method of establishing one policy for performing a plurality of tasks, includes data related to reinforcement learning. and an input/output unit for receiving commands and outputting reinforcement learning results, a storage unit for storing data and programs for performing reinforcement learning, and at least one processor, which executes the program to perform reinforcement learning. and a control unit, by executing the program, generating a metamodel that approximates the environment for the plurality of tasks as a model using data on the plurality of tasks, and generating the metamodel. The one policy can be learned using
아래에서는 첨부한 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 아래에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여, 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략하였다. 그리고, 도면에서 실시예들의 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings. Embodiments described below may be modified and implemented in various different forms. In order to more clearly describe the characteristics of the embodiments, detailed descriptions of matters widely known to those skilled in the art to which the following embodiments belong are omitted. And, in the drawings, parts irrelevant to the description of the embodiments are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐 아니라, '그 중간에 다른 구성을 사이에 두고 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.Throughout the specification, when a component is said to be “connected” to another component, this includes not only the case of being “directly connected” but also the case of being “connected with another component intervening therebetween”. In addition, when a certain component "includes" a certain component, this means that other components may be further included without excluding other components unless otherwise specified.
본 명세서에서 설명되는 실시예들은 복수의 태스크들을 모두 잘 수행하기 위한 하나의 정책(policy)을 수립하는 강화학습(reinforcement learning)에 관한 것들이며, 특히 복수의 태스크들에 대한 데이터가 미리 준비된 상태에서 해당 데이터를 이용하여 복수의 태스크들에 대한 환경모델을 근사화함으로써, 추가적인 상호작용 없이도 효과적으로 강화학습을 수행할 수 있도록 하는 실시예들이다.Embodiments described in this specification relate to reinforcement learning that establishes a policy for performing all of a plurality of tasks well, and in particular, in a state in which data for a plurality of tasks are prepared in advance. These are embodiments in which reinforcement learning can be effectively performed without additional interaction by approximating an environmental model for a plurality of tasks using corresponding data.
이하에서는 먼저 강화학습을 수행하기 위한 컴퓨팅 장치의 구성에 대해서 간단히 설명하고, 이어서 컴퓨팅 장치가 강화학습을 수행하는 프로세스에 대해서 자세히 설명한다.Hereinafter, a configuration of a computing device for performing reinforcement learning will be briefly described, and then a process in which the computing device performs reinforcement learning will be described in detail.
도 1은 일 실시예에 따른 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 수행하는 컴퓨팅 장치의 구성을 도시한 도면이다. 도 1을 참조하면, 일 실시예에 따른 컴퓨팅 장치(100)는 입출력부(110), 제어부(120) 및 저장부(130)를 포함할 수 있다.1 is a diagram showing the configuration of a computing device that performs a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment. Referring to FIG. 1 , a computing device 100 according to an embodiment may include an input/output unit 110, a control unit 120, and a storage unit 130.
입출력부(110)는 강화학습과 관련된 데이터 및 명령 등을 입력받고, 강화학습 결과를 출력하기 위한 구성이다. 입출력부(110)는 사용자로부터 입력을 수신하기 위한 다양한 종류의 입력장치(e.g. 키보드, 터치스크린 등)를 포함할 수 있으며, 또한 강화학습에 필요한 데이터를 송수신하기 위한 연결 포트나 통신 모듈을 포함할 수도 있다.The input/output unit 110 is a component for receiving data and commands related to reinforcement learning and outputting results of reinforcement learning. The input/output unit 110 may include various types of input devices (e.g. keyboard, touch screen, etc.) for receiving input from a user, and may also include a connection port or communication module for transmitting and receiving data necessary for reinforcement learning. may be
제어부(120)는 CPU 등과 같은 적어도 하나의 프로세서를 포함하는 구성으로서, 저장부(130)에 저장된 프로그램을 실행함으로써 이하에서 제시되는 프로세스에 따라 강화학습을 수행할 수 있다. 제어부(120)가 강화학습을 수행하는 방법에 대해서는 아래에서 자세히 설명한다.The control unit 120 is a component including at least one processor such as a CPU, and can perform reinforcement learning according to a process presented below by executing a program stored in the storage unit 130 . A method for the controller 120 to perform reinforcement learning will be described in detail below.
저장부(130)는 파일 및 프로그램이 저장될 수 있는 구성으로서 다양한 종류의 메모리를 통해 구성될 수 있다. 특히, 저장부(130)에는 제어부(120)가 이하에서 제시되는 프로세스에 따라 강화학습을 수행할 수 있도록 하는 데이터 및 프로그램이 저장될 수 있다.The storage unit 130 is a configuration in which files and programs can be stored and may be configured through various types of memories. In particular, data and programs that allow the controller 120 to perform reinforcement learning according to a process presented below may be stored in the storage unit 130 .
이하에서는 제어부(120)가 저장부(130)에 저장된 프로그램을 실행시킴으로써 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습을 수행하는 과정에 대해서 자세히 설명한다. 아래에서 설명되는 프로세스들은 특별히 다른 언급이 없는 한 제어부(120)가 저장부(130)에 저장된 프로그램을 실행시킴으로써 수행하는 것이다.Hereinafter, a process of performing reinforcement learning in which one policy for performing a plurality of tasks is established by the controller 120 executing a program stored in the storage unit 130 will be described in detail. The processes described below are performed by the control unit 120 executing a program stored in the storage unit 130 unless otherwise specified.
일 실시예에 따른 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법은, 복수의 태스크에 대한 데이터가 주어진 상황에서 추가적인 상호작용 없이 복수의 태스크에 대한 환경을 하나의 모델로 근사화한 메타모델(글로벌 환경모델)을 생성하고, 생성된 메타모델을 통해 정책을 학습시키는 방식으로 진행된다. 이와 같은 강화학습 방식에 따를 경우, 여러 태스크에 대한 환경모델을 하나의 메타모델로 근사화하기 때문에 태스크 간 지식 공유가 잘 이루어져 각각의 태스크를 별도로 학습시키는 경우보다 더 좋은 성능의 정책을 얻을 수 있게 된다.A reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment approximates the environment for a plurality of tasks as one model without additional interaction in a situation in which data for a plurality of tasks is given. It proceeds by creating a metamodel (global environment model) and learning policies through the created metamodel. In the case of this reinforcement learning method, since the environmental models for multiple tasks are approximated as a single metamodel, knowledge sharing between tasks is well done, and a policy with better performance can be obtained than when each task is trained separately. .
도 2 및 3은 일 실시예에 따른 복수의 태스크를 수행하기 위한 하나의 정책을 수립하는 강화학습 방법을 설명하기 위한 순서도들이다.2 and 3 are flowcharts for explaining a reinforcement learning method for establishing one policy for performing a plurality of tasks according to an embodiment.
도 2를 참고하면, 제어부(120)는 201 단계에서 복수의 태스크들에 대한 데이터를 이용하여, 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델(글로벌 환경모델)을 생성할 수 있다.Referring to FIG. 2 , in step 201, the control unit 120 may generate a metamodel (global environment model) approximating the environment for a plurality of tasks into one model using data on a plurality of tasks. there is.
이때 복수의 태스크들에 대한 데이터는, 태스크 각각에 대한 상태(state), 행동(action), 보상(reward) 및 다음 상태(next state)로 구성된 트랜지션 튜플(transition tuple)들을 포함하며, 각각의 태스크에 대응되는 버퍼(buffer)에 미리 저장될 수 있다.At this time, the data for the plurality of tasks includes transition tuples composed of a state, action, reward, and next state for each task, and each task It may be stored in advance in a buffer corresponding to .
도 3에는 도 2의 201 단계에 포함되는 세부 단계들을 도시하였다. 도 3을 참고하면, 301 단계에서 제어부(120)는 복수의 태스크들 각각에 대한 트랜지션 튜플들에 임베딩을 수행함으로써 콘텍스트 벡터(context vector)들을 생성한다.FIG. 3 shows detailed steps included in step 201 of FIG. 2 . Referring to FIG. 3 , in step 301, the controller 120 generates context vectors by performing embedding on transition tuples for each of a plurality of tasks.
이어서, 302 단계에서 제어부(120)는 콘텍스트 벡터들을 컨디셔닝(conditioning)함으로써 각각의 태스크에 대한 환경모델을 근사화하여 글로벌 환경모델(메타모델)을 생성하고, 이를 학습시킬 수 있다.Subsequently, in step 302, the control unit 120 may generate a global environment model (meta-model) by approximating an environment model for each task by conditioning the context vectors, and may train the global environment model.
제어부(120)는 저장부(130)에 저장된 프로그램을 실행함으로써 콘텍스트 인코더(context encoder), 메타모델 생성부(metamodel generator) 및 정책 에이전트 학습 모듈(policy agent learning module)을 구현할 수 있다. 위의 3가지 구성들은 물리적으로 분리되어 존재하는 하드웨어 구성은 아니고, 수행하는 동작을 기준으로 임의적으로 구분한 소프트웨어 구성에 해당한다.The control unit 120 may implement a context encoder, a metamodel generator, and a policy agent learning module by executing programs stored in the storage unit 130 . The above three configurations are not physically separated hardware configurations, but correspond to software configurations arbitrarily classified based on operations performed.
콘텍스트 인코더는 복수의 태스크 각각의 트랜지션들에 임베딩을 수행함으로써 콘텍스트 벡터를 생성하고, 메타모델 생성부는 콘텍스트 벡터를 컨디셔닝함으로써 모든 태스크에 대하여 근사화된 하나의 메타모델(글로벌 환경모델)을 생성하며, 정책 에이전트 학습 모듈은 메타모델을 이용하여 모든 태스크에 대한 하나의 정책을 학습시킨다. 제어부(120)가 콘텍스트 인코더, 메타모델 및 정책 에이전트를 학습시키는 구체적인 방법에 대해서는 아래에서 도 4 및 5를 참조하여 자세히 설명한다.The context encoder creates a context vector by performing embedding on the transitions of each of a plurality of tasks, and the metamodel generator creates a metamodel (global environment model) approximated for all tasks by conditioning the context vector, and the policy The agent learning module uses a metamodel to learn one policy for all tasks. A specific method for the control unit 120 to learn the context encoder, metamodel, and policy agent will be described in detail with reference to FIGS. 4 and 5 below.
일 실시예에 따르면, 컴퓨팅 장치(100)가 강화학습을 수행하는 과정은 크게 (1) 글로벌 환경모델(메타모델) 및 콘텍스트 인코더를 학습시키는 과정(메타모델을 생성하는 과정)과 (2) 정책 에이전트를 학습시키는 과정으로 구성된다. 이하에서는 복수의 태스크들 각각에 대해서 트랜지션 튜플 (state (s), action (a), reward (r), next state (s'))이 M개씩 버퍼에 저장되어 있다는 전제 하에, 컴퓨팅 장치(100)가 위 두 개의 과정을 수행하는 실시예들에 대해서 설명한다.According to an embodiment, the process of performing reinforcement learning by the computing device 100 is largely (1) a process of learning a global environment model (meta-model) and a context encoder (a process of generating a meta-model) and (2) a policy It consists of the process of learning the agent. Hereinafter, on the assumption that M transition tuples (state (s), action (a), reward (r), next state (s')) are stored in the buffer for each of the plurality of tasks, the computing device 100 [0043] Examples of performing the above two processes will be described.
도 4는 글로벌 환경모델(메타모델) 및 콘텍스트 인코더를 학습시키는 과정을 설명하기 위한 도면이고, 도 5는 정책 에이전트를 학습시키는 과정을 설명하기 위한 도면이다.4 is a diagram for explaining a process of learning a global environment model (meta model) and a context encoder, and FIG. 5 is a diagram for explaining a process of learning a policy agent.
(1) 글로벌 환경모델(메타모델) 및 콘텍스트 인코더를 학습시키는 과정(메타모델을 생성하는 과정)(1) The process of learning the global environment model (meta-model) and context encoder (the process of creating a meta-model)
컴퓨팅 장치(100)의 제어부(120)는 복수의 태스크들 중에서 N개의 태스크를 선택한다. 제어부(120)는 선택된 N개의 태스크들의 데이터를 이용하여 프로세스를 수행하는데, 도 4에 도시된 태스크 버퍼(410)는 선택된 N개의 태스크들 중 어느 하나의 태스크에 대응되는 버퍼이다. 즉, 제어부(120)는 도 4를 통해 설명되는 프로세스를, 선택된 N개의 태스크들에 대해서 각각 수행할 수 있다.The controller 120 of the computing device 100 selects N tasks from among a plurality of tasks. The controller 120 performs a process using data of the selected N tasks, and the task buffer 410 shown in FIG. 4 is a buffer corresponding to any one of the selected N tasks. That is, the controller 120 may perform the process described with reference to FIG. 4 for each of the selected N tasks.
도 4를 참고하면, 제어부(120)는 태스크 버퍼(410)에 저장된 트랜지션 튜플들 중에서 일부를 랜덤하게 제1 트랜지션 세트 및 제2 트랜지션 세트로 샘플링(sampling)한다. 이때, 제1 트랜지션 세트 및 제2 트랜지션 세트는 각각 별도로 랜덤하게 샘플링되는 것으로서, 각 세트에 포함된 트랜지션 튜플들 중 일부가 서로 겹칠 수도 있다. 제1 트랜지션 세트는 콘텍스트 인코더(420)의 입력으로 사용되고, 제2 트랜지션 세트는 메타모델(430)의 학습에 사용될 수 있다.Referring to FIG. 4 , the controller 120 randomly samples some of the transition tuples stored in the task buffer 410 as a first transition set and a second transition set. In this case, the first transition set and the second transition set are separately and randomly sampled, and some of the transition tuples included in each set may overlap each other. The first set of transitions can be used as an input to the context encoder 420, and the second set of transitions can be used to train the metamodel 430.
제어부(120)는 샘플링된 제1 트랜지션 세트를 콘텍스트 인코더(420)
Figure PCTKR2022006128-appb-img-000001
에 입력으로 인가하여 임베딩을 통해 각각의 태스크를 설명하는 제1 콘텍스트 벡터를 획득한다. 콘텍스트 벡터 z는 다음의 수학식 1과 같이 표현된다.
The control unit 120 converts the sampled first transition set to the context encoder 420.
Figure PCTKR2022006128-appb-img-000001
is applied as an input to obtain a first context vector describing each task through embedding. The context vector z is expressed as Equation 1 below.
[수학식 1][Equation 1]
Figure PCTKR2022006128-appb-img-000002
Figure PCTKR2022006128-appb-img-000002
도 4에서 확인할 수 있는 바와 같이, 제2 트랜지션 세트에서 추출된 (s, a)가, 컨디셔닝된 제1 콘텍스트 벡터 z와 함께 메타모델(430)의 입력으로서 인가되고, 메타모델(430)에서는 (s', r)이 제3 트랜지션 세트로서 출력된다.As can be seen in FIG. 4, (s, a) extracted from the second transition set is applied as an input to the metamodel 430 together with the conditioned first context vector z, and in the metamodel 430 ( s', r) are output as the third transition set.
제어부(120)는 제2 트랜지션 세트 및 제3 트랜지션 세트를 이용하여 다음의 수학식 2로 표현되는 손실함수를 통해 메타모델(430)
Figure PCTKR2022006128-appb-img-000003
를 학습시킬 수 있다. 수학식 2의 손실함수는 제2 트랜지션 세트와 제3 트랜지션 세트의 평균 제곱 오차(mean squared error)를 포함한다.
The control unit 120 uses the second transition set and the third transition set to calculate the metamodel 430 through a loss function expressed by Equation 2 below.
Figure PCTKR2022006128-appb-img-000003
can be learned. The loss function of Equation 2 includes mean squared errors of the second transition set and the third transition set.
[수학식 2][Equation 2]
Figure PCTKR2022006128-appb-img-000004
Figure PCTKR2022006128-appb-img-000004
이때, T는 복수의 태스크의 종류의 수를 의미한다.At this time, T means the number of types of a plurality of tasks.
제어부(120)는 위에서 설명한 과정(N개의 태스크를 선택하는 동작부터 수학식 2의 손실함수를 계산하는 동작까지)을 반복하면서
Figure PCTKR2022006128-appb-img-000005
의 오차가 미리 설정된 임계값을 초과하지 않도록
Figure PCTKR2022006128-appb-img-000006
Figure PCTKR2022006128-appb-img-000007
를 학습시킬 수 있다.
The control unit 120 repeats the process described above (from the operation of selecting N tasks to the operation of calculating the loss function of Equation 2) while repeating
Figure PCTKR2022006128-appb-img-000005
so that the error of does not exceed a preset threshold
Figure PCTKR2022006128-appb-img-000006
and
Figure PCTKR2022006128-appb-img-000007
can be learned.
(2) 정책 에이전트를 학습시키는 과정(2) The process of training the policy agent
컴퓨팅 장치(100)의 제어부(120)는 복수의 태스크들 중에서 N개의 태스크를 선택한다. 제어부(120)는 선택된 N개의 태스크들의 데이터를 이용하여 프로세스를 수행하는데, 도 5에 도시된 태스크 버퍼(510)는 선택된 N개의 태스크들 중 어느 하나의 태스크에 대응되는 버퍼이다. 즉, 제어부(120)는 도 5를 통해 설명되는 프로세스를, 선택된 N개의 태스크들에 대해서 각각 수행할 수 있다.The controller 120 of the computing device 100 selects N tasks from among a plurality of tasks. The controller 120 performs a process using data of the selected N tasks, and the task buffer 510 shown in FIG. 5 is a buffer corresponding to any one of the selected N tasks. That is, the controller 120 may perform the process described with reference to FIG. 5 for each of the selected N tasks.
도 5를 참고하면, 제어부(120)는 태스크 버퍼(510)에 저장된 트랜지션 튜플들 중에서 일부를 랜덤하게 제4 트랜지션 세트 및 제5 트랜지션 세트로 샘플링한다. 이때, 제4 트랜지션 세트 및 제5 트랜지션 세트는 각각 별도로 랜덤하게 샘플링되는 것으로서, 각 세트에 포함된 트랜지션 튜플들 중 일부가 서로 겹칠 수도 있다. 제4 트랜지션 세트는 콘텍스트 인코더(520)의 입력으로 사용되고, 제5 트랜지션 세트는 정책 에이전트의 학습에 사용될 수 있다.Referring to FIG. 5 , the controller 120 randomly samples some of the transition tuples stored in the task buffer 510 as a fourth transition set and a fifth transition set. In this case, the fourth transition set and the fifth transition set are individually and randomly sampled, and some of the transition tuples included in each set may overlap each other. The fourth transition set is used as an input of the context encoder 520, and the fifth transition set can be used for training of the policy agent.
제어부(120)는 샘플링된 제4 트랜지션 세트를 콘텍스트 인코더(520)
Figure PCTKR2022006128-appb-img-000008
에 입력으로 인가하여 임베딩을 통해 각각의 태스크를 설명하는 제2 콘텍스트 벡터를 획득한다. 콘텍스트 벡터 z는 위의 수학식 1과 같이 표현된다.
The control unit 120 converts the sampled fourth transition set to the context encoder 520.
Figure PCTKR2022006128-appb-img-000008
is applied as an input to obtain a second context vector describing each task through embedding. The context vector z is expressed as in Equation 1 above.
제어부(120)는 컨디셔닝된 제2 콘텍스트 벡터 z와, 제 5 트랜지션 세트에서 추출된 (s, a)를 메타모델(530)에 입력으로 인가함으로써 제6 트랜지션 세트 (s', r)new를 얻을 수 있는데, 이 중 보상 r에 대해서는 모델의 불확실성(uncertainty)으로 인한 페널티를 반영할 수 있다. 자세하게는, 제어부(120)는 제6 트랜지션 세트 (s', r)new 중 보상 r에 대해서는 모델의 예측분포의 분산 매트릭스의 프로비우스 놈을 계산함으로써 페널티를 줄 수 있다. 불확실성으로 인한 페널티를 반영한 보상 rnew을 계산하기 위한 수학식 3은 다음과 같다.The control unit 120 obtains a sixth transition set (s', r) new by applying the conditioned second context vector z and (s, a) extracted from the fifth transition set to the metamodel 530 as inputs. Among them, a penalty due to the uncertainty of the model may be reflected for the compensation r. In detail, the controller 120 may give a penalty to the reward r in the sixth transition set (s', r) new by calculating the Probius norm of the variance matrix of the prediction distribution of the model. Equation 3 for calculating compensation r new reflecting the penalty due to uncertainty is as follows.
[수학식 3][Equation 3]
Figure PCTKR2022006128-appb-img-000009
Figure PCTKR2022006128-appb-img-000009
제어부(120)는 페널티 반영을 통해 새롭게 얻은 트랜지션 세트(제6 트랜지션 세트에 보상에 대한 불확실성으로 인한 페널티를 반영한 트랜지션 세트)와, 제2 콘텍스트 벡터를 이용하여 다음의 수학식 4 내지 6으로 표현되는 손실함수를 통해 정책 π, 상태 가치함수 V 및 행동 가치함수 Q를 학습시킬 수 있다.The control unit 120 uses a transition set newly obtained through penalty reflection (a transition set in which a penalty due to uncertainty in compensation is reflected in the sixth transition set) and a second context vector, expressed by Equations 4 to 6 below. The policy π, the state value function V, and the action value function Q can be learned through the loss function.
[수학식 4][Equation 4]
Figure PCTKR2022006128-appb-img-000010
Figure PCTKR2022006128-appb-img-000010
[수학식 5][Equation 5]
Figure PCTKR2022006128-appb-img-000011
Figure PCTKR2022006128-appb-img-000011
[수학식 6][Equation 6]
Figure PCTKR2022006128-appb-img-000012
Figure PCTKR2022006128-appb-img-000012
이상 살펴본 실시예들에 따르면, 실제 환경과의 상호작용 없이 미리 준비된 데이터를 이용하여 근사화한 모델을 통해 강화학습을 수행할 수 있으므로 학습에 수행되는 시간이 획기적으로 감축될 뿐만 아니라, 여러 태스크에 대한 환경모델을 하나의 메타모델로 근사화하기 때문에 태스크 간 지식 공유가 잘 이루어져 각각의 태스크를 별도로 학습시키는 경우보다 더 좋은 성능의 정책을 얻을 수 있는 효과가 있다.According to the above-described embodiments, reinforcement learning can be performed through a model approximated using pre-prepared data without interaction with the real environment, so that not only the time required for learning is drastically reduced, but also the time required for learning is significantly reduced. Since the environment model is approximated as a metamodel, knowledge sharing between tasks is well done, and thus, a policy with better performance can be obtained than when each task is trained separately.
이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.The term '~unit' used in the above embodiments means software or a hardware component such as a field programmable gate array (FPGA) or ASIC, and '~unit' performs certain roles. However, '~ part' is not limited to software or hardware. '~bu' may be configured to be in an addressable storage medium and may be configured to reproduce one or more processors. Therefore, as an example, '~unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.Functions provided within components and '~units' may be combined into smaller numbers of components and '~units' or separated from additional components and '~units'.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.In addition, components and '~units' may be implemented to play one or more CPUs in a device or a secure multimedia card.
도 2 내지 도 5를 통해 설명된 실시예들에 따른 복수의 태스크에 대한 오프라인 메타 강화학습 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다.The offline meta-reinforcement learning method for a plurality of tasks according to the embodiments described with reference to FIGS. 2 to 5 can also be implemented in the form of a computer-readable medium that stores instructions and data executable by a computer. . In this case, instructions and data may be stored in the form of program codes, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation. Also, computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, a computer-readable medium may be a computer recording medium, which is a volatile and non-volatile memory implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. It can include both volatile, removable and non-removable media. For example, the computer recording medium may be a magnetic storage medium such as HDD and SSD, an optical recording medium such as CD, DVD, and Blu-ray disc, or a memory included in a server accessible through a network.
또한 도 2 내지 도 5를 통해 설명된 실시예들에 따른 복수의 태스크에 대한 오프라인 메타 강화학습 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다. In addition, the offline meta-reinforcement learning method for a plurality of tasks according to the embodiments described with reference to FIGS. 2 to 5 may be implemented as a computer program (or computer program product) including instructions executable by a computer. A computer program includes programmable machine instructions processed by a processor and may be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language. . Also, the computer program may be recorded on a tangible computer-readable recording medium (eg, a memory, a hard disk, a magnetic/optical medium, or a solid-state drive (SSD)).
따라서 도 2 내지 도 5를 통해 설명된 실시예들에 따른 복수의 태스크에 대한 오프라인 메타 강화학습 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다.Therefore, the offline meta-reinforcement learning method for a plurality of tasks according to the embodiments described with reference to FIGS. 2 to 5 can be implemented by executing the computer program as described above by a computing device. A computing device may include at least some of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device. Each of these components are connected to each other using various buses and may be mounted on a common motherboard or mounted in any other suitable manner.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.Here, the processor may process commands within the computing device, for example, to display graphic information for providing a GUI (Graphic User Interface) on an external input/output device, such as a display connected to a high-speed interface. Examples include instructions stored in memory or storage devices. As another example, multiple processors and/or multiple buses may be used along with multiple memories and memory types as appropriate. Also, the processor may be implemented as a chipset comprising chips including a plurality of independent analog and/or digital processors.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다.Memory also stores information within the computing device. In one example, the memory may consist of a volatile memory unit or a collection thereof. As another example, the memory may be composed of a non-volatile memory unit or a collection thereof. Memory may also be another form of computer readable medium, such as, for example, a magnetic or optical disk.
그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다.Also, the storage device may provide a large amount of storage space to the computing device. A storage device may be a computer-readable medium or a component that includes such a medium, and may include, for example, devices in a storage area network (SAN) or other components, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, flash memory, or other semiconductor memory device or device array of the like.
상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above-described embodiments are for illustrative purposes, and those skilled in the art to which the above-described embodiments belong can easily transform into other specific forms without changing the technical spirit or essential features of the above-described embodiments. You will understand. Therefore, it should be understood that the above-described embodiments are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.
본 명세서를 통해 보호 받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.The scope to be protected through this specification is indicated by the following claims rather than the detailed description above, and should be construed to include all changes or modifications derived from the meaning and scope of the claims and equivalent concepts thereof. .

Claims (12)

  1. 복수의 태스크를 수행하기 위한 하나의 정책(policy)을 수립하는 강화학습 방법에 있어서,In the reinforcement learning method of establishing one policy for performing a plurality of tasks,
    상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하는 단계; 및generating a metamodel in which an environment for the plurality of tasks is approximated as one model by using data on the plurality of tasks; and
    상기 메타모델을 이용하여 상기 하나의 정책을 학습시키는 단계를 포함하는, 방법.And learning the one policy using the metamodel.
  2. 제1항에 있어서,According to claim 1,
    상기 복수의 태스크들에 대한 데이터는,Data for the plurality of tasks,
    상기 복수의 태스크 각각에 대한 상태(state), 행동(action), 보상(reward) 및 다음 상태(next state)로 구성된 트랜지션 튜플(transition tuple)들을 포함하는 것을 특징으로 하는 방법.and transition tuples composed of a state, an action, a reward, and a next state for each of the plurality of tasks.
  3. 제1항에 있어서,According to claim 1,
    상기 메타모델을 생성하는 단계는,The step of generating the metamodel,
    상기 복수의 태스크들 각각에 대한 트랜지션 튜플들에 임베딩(embedding)을 수행함으로써 콘텍스트 벡터(context vector)들을 생성하는 단계; 및generating context vectors by performing embedding on transition tuples for each of the plurality of tasks; and
    상기 생성된 콘텍스트 벡터들을 컨디셔닝(conditioning)하여 상기 메타모델을 학습시키는 단계를 포함하는 것을 특징으로 하는 방법.and conditioning the generated context vectors to train the metamodel.
  4. 제1항에 있어서,According to claim 1,
    상기 복수의 태스크 각각에 대응되는 버퍼(buffer)에는, 상기 복수의 태스크에 대한 M개의 트랜지션 튜플들이 미리 저장되며,In a buffer corresponding to each of the plurality of tasks, M transition tuples for the plurality of tasks are stored in advance,
    상기 메타모델을 생성하는 단계는,The step of generating the metamodel,
    상기 복수의 태스크 중에서 N개의 태스크를 선택하는 단계;selecting N tasks from among the plurality of tasks;
    상기 N개의 태스크 각각의 버퍼로부터 랜덤하게 제1 트랜지션 세트 및 제2 트랜지션 세트를 샘플링하는 단계;randomly sampling a first transition set and a second transition set from buffers of each of the N tasks;
    상기 제1 트랜지션 세트를 콘텍스트 인코더에 입력하여 상기 N개의 태스크 각각에 대한 제1 콘텍스트 벡터를 임베딩하는 단계;embedding a first context vector for each of the N tasks by inputting the first transition set to a context encoder;
    상기 제1 콘텍스트 벡터와 상기 제2 트랜지션 세트를 상기 메타모델에 입력함으로써 제3 트랜지션 세트를 획득하는 단계; 및obtaining a third transition set by inputting the first context vector and the second transition set to the metamodel; and
    상기 제2 트랜지션 세트와 상기 제3 트랜지션 세트의 평균 제곱 오차(mean squared error)를 포함하는 손실함수를 이용하여 상기 콘텍스트 인코더 및 상기 메타모델을 학습시키는 단계를 포함하는 것을 특징으로 하는 방법.and training the context encoder and the metamodel using a loss function including mean squared errors of the second transition set and the third transition set.
  5. 제1항에 있어서,According to claim 1,
    상기 복수의 태스크 각각에 대응되는 버퍼(buffer)에는, 상기 복수의 태스크에 대한 M개의 트랜지션 튜플들이 미리 저장되며,In a buffer corresponding to each of the plurality of tasks, M transition tuples for the plurality of tasks are stored in advance,
    상기 하나의 정책을 학습시키는 단계는,The step of learning the one policy,
    상기 복수의 태스크 중에서 N개의 태스크를 선택하는 단계;selecting N tasks from among the plurality of tasks;
    상기 N개의 태스크 각각의 버퍼로부터 랜덤하게 제4 트랜지션 세트 및 제5 트랜지션 세트를 샘플링하는 단계;randomly sampling a fourth transition set and a fifth transition set from buffers of each of the N tasks;
    상기 제4 트랜지션 세트를 상기 콘텍스트 인코더에 입력하여 상기 N개의 태스크 각각에 대한 제2 콘텍스트 벡터를 임베딩하는 단계;embedding a second context vector for each of the N tasks by inputting the fourth transition set to the context encoder;
    상기 제2 콘텍스트 벡터 및 상기 제5 트랜지션 세트를 상기 메타모델에 입력함으로써 제6 트랜지션 세트를 획득하는 단계;obtaining a sixth transition set by inputting the second context vector and the fifth transition set to the metamodel;
    상기 제6 트랜지션 세트에 포함된 트랜지션 튜플 중에서 보상(reward)에 대해서는 불확실성(uncertainty)으로 인한 페널티를 반영하는 단계; 및reflecting a penalty due to uncertainty to a reward among transition tuples included in the sixth transition set; and
    상기 페널티가 반영된 제6 트랜지션 세트 및 상기 제2 콘텍스트 벡터를 포함하는 손실함수를 이용하여 상기 하나의 정책을 학습시키는 단계를 포함하는 것을 특징으로 하는 방법.and learning the one policy using a loss function including a sixth transition set in which the penalty is reflected and the second context vector.
  6. 제1항에 있어서,According to claim 1,
    컴퓨터에 제1항에 기재된 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium storing a program for causing a computer to execute the method according to claim 1.
  7. 컴퓨팅 장치에 의해 수행되며, 제1항에 기재된 방법을 수행하기 위해 기록 매체에 저장된 컴퓨터 프로그램.A computer program executed by a computing device and stored in a recording medium to perform the method according to claim 1 .
  8. 복수의 태스크를 수행하기 위한 하나의 정책(policy)을 수립하는 강화학습 방법을 수행하기 위한 컴퓨팅 장치에 있어서,A computing device for performing a reinforcement learning method for establishing one policy for performing a plurality of tasks,
    강화학습과 관련된 데이터 및 명령 등을 입력받고, 강화학습 결과를 출력하기 위한 입출력부;an input/output unit for receiving data and commands related to reinforcement learning and outputting reinforcement learning results;
    강화학습을 수행하기 위한 데이터 및 프로그램이 저장되는 저장부; 및a storage unit for storing data and programs for performing reinforcement learning; and
    적어도 하나의 프로세서를 포함하며, 상기 프로그램을 실행함으로써 강화학습을 수행하는 제어부를 포함하며,It includes at least one processor, and includes a control unit that performs reinforcement learning by executing the program,
    상기 제어부는 상기 프로그램을 실행함으로써,By executing the program, the controller
    상기 복수의 태스크들에 대한 데이터를 이용하여, 상기 복수의 태스크들에 대한 환경을 하나의 모델로 근사화한 메타모델을 생성하고, 상기 메타모델을 이용하여 상기 하나의 정책을 학습시키는, 컴퓨팅 장치.A computing device that generates a metamodel that approximates an environment for the plurality of tasks as a model using data for the plurality of tasks, and learns the one policy using the metamodel.
  9. 제8항에 있어서,According to claim 8,
    상기 복수의 태스크들에 대한 데이터는,Data for the plurality of tasks,
    상기 복수의 태스크 각각에 대한 상태(state), 행동(action), 보상(reward) 및 다음 상태(next state)로 구성된 트랜지션 튜플(transition tuple)들을 포함하는 것을 특징으로 하는 컴퓨팅 장치.The computing device comprising transition tuples composed of a state, an action, a reward, and a next state for each of the plurality of tasks.
  10. 제8항에 있어서,According to claim 8,
    상기 제어부는 상기 메타모델을 생성함에 있어서,In generating the metamodel, the controller
    상기 복수의 태스크들 각각에 대한 트랜지션 튜플들에 임베딩(embedding)을 수행함으로써 콘텍스트 벡터(context vector)들을 생성하고, 상기 생성된 콘텍스트 벡터들을 컨디셔닝(conditioning)하여 상기 메타모델을 학습시키는 것을 특징으로 하는 컴퓨팅 장치.Characterized in that context vectors are generated by embedding in transition tuples for each of the plurality of tasks, and the metamodel is trained by conditioning the generated context vectors. computing device.
  11. 제8항에 있어서,According to claim 8,
    상기 복수의 태스크 각각에 대응되는 버퍼(buffer)에는, 상기 복수의 태스크에 대한 M개의 트랜지션 튜플들이 미리 저장되며,In a buffer corresponding to each of the plurality of tasks, M transition tuples for the plurality of tasks are stored in advance,
    상기 제어부는 상기 메타모델을 생성함에 있어서,In generating the metamodel, the controller
    상기 복수의 태스크 중에서 N개의 태스크를 선택하고, 상기 N개의 태스크 각각의 버퍼로부터 랜덤하게 제1 트랜지션 세트 및 제2 트랜지션 세트를 샘플링한 후, 상기 제1 트랜지션 세트를 콘텍스트 인코더에 입력하여 상기 N개의 태스크 각각에 대한 제1 콘텍스트 벡터를 임베딩하며, 상기 제1 콘텍스트 벡터와 상기 제2 트랜지션 세트를 상기 메타모델에 입력함으로써 제3 트랜지션 세트를 획득하고, 상기 제2 트랜지션 세트와 상기 제3 트랜지션 세트의 평균 제곱 오차(mean squared error)를 포함하는 손실함수를 이용하여 상기 콘텍스트 인코더 및 상기 메타모델을 학습시키는 것을 특징으로 하는 컴퓨팅 장치.N tasks are selected from among the plurality of tasks, a first transition set and a second transition set are randomly sampled from a buffer of each of the N tasks, and then the first transition set is input to a context encoder to generate the N transition sets. A first context vector for each task is embedded, and a third transition set is obtained by inputting the first context vector and the second transition set into the metamodel, and a combination of the second transition set and the third transition set is obtained. The computing device characterized in that the context encoder and the metamodel are trained using a loss function including a mean squared error.
  12. 제8항에 있어서,According to claim 8,
    상기 복수의 태스크 각각에 대응되는 버퍼(buffer)에는, 상기 복수의 태스크에 대한 M개의 트랜지션 튜플들이 미리 저장되며,In a buffer corresponding to each of the plurality of tasks, M transition tuples for the plurality of tasks are stored in advance,
    상기 제어부는 상기 하나의 정책을 학습시킴에 있어서,In learning the one policy, the control unit
    상기 복수의 태스크 중에서 N개의 태스크를 선택하고, 상기 N개의 태스크 각각의 버퍼로부터 랜덤하게 제4 트랜지션 세트 및 제5 트랜지션 세트를 샘플링한 후, 상기 제4 트랜지션 세트를 상기 콘텍스트 인코더에 입력하여 상기 N개의 태스크 각각에 대한 제2 콘텍스트 벡터를 임베딩하며, 상기 제2 콘텍스트 벡터 및 상기 제5 트랜지션 세트를 상기 메타모델에 입력함으로써 제6 트랜지션 세트를 획득하고, 상기 제6 트랜지션 세트에 포함된 트랜지션 튜플 중에서 보상(reward)에 대해서는 불확실성(uncertainty)으로 인한 페널티를 반영하고, 상기 페널티가 반영된 제6 트랜지션 세트 및 상기 제2 콘텍스트 벡터를 포함하는 손실함수를 이용하여 상기 하나의 정책을 학습시키는 것을 특징으로 하는 컴퓨팅 장치.N tasks are selected from among the plurality of tasks, a fourth transition set and a fifth transition set are randomly sampled from the buffers of each of the N tasks, and then the fourth transition set is input to the context encoder so that the N embedding a second context vector for each of the tasks, obtaining a sixth transition set by inputting the second context vector and the fifth transition set into the metamodel, and among the transition tuples included in the sixth transition set For reward, a penalty due to uncertainty is reflected, and the one policy is learned using a loss function including a sixth transition set to which the penalty is reflected and the second context vector. Characterized in that computing device.
PCT/KR2022/006128 2021-12-01 2022-04-28 Method for offline meta-reinforcement learning of multiple tasks and computing device for performing same WO2023101112A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20210170100 2021-12-01
KR10-2021-0170100 2021-12-01
KR1020220049648A KR20230082531A (en) 2021-12-01 2022-04-21 Offline meta reinforcement learning method for plurality of tasks, and computing apparatus for performing the same
KR10-2022-0049648 2022-04-21

Publications (1)

Publication Number Publication Date
WO2023101112A1 true WO2023101112A1 (en) 2023-06-08

Family

ID=86612423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/006128 WO2023101112A1 (en) 2021-12-01 2022-04-28 Method for offline meta-reinforcement learning of multiple tasks and computing device for performing same

Country Status (1)

Country Link
WO (1) WO2023101112A1 (en)

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
LI JIACHEN, VUONG QUAN, LIU SHUANG, LIU MINGHUA, CIOSEK KAMIL, ROSS KEITH, CHRISTENSEN HENRIK ISKOV, SU HAO: "Multi-task Batch Reinforcement Learning with Metric Learning", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, ARXIV.ORG, 23 October 2020 (2020-10-23), XP093070500 *
SCHWAB DEVIN; RAY SOUMYA: "Offline reinforcement learning with task hierarchies", MACHINE LEARNING, SPRINGER US, NEW YORK, vol. 106, no. 9, 12 July 2017 (2017-07-12), New York, pages 1569 - 1598, XP036313154, ISSN: 0885-6125, DOI: 10.1007/s10994-017-5650-8 *
TIANHE YU; AVIRAL KUMAR; RAFAEL RAFAILOV; ARAVIND RAJESWARAN; SERGEY LEVINE; CHELSEA FINN: "COMBO: Conservative Offline Model-Based Policy Optimization", ARXIV.ORG, 16 February 2021 (2021-02-16), XP081886979 *
TIMOTHY HOSPEDALES; ANTREAS ANTONIOU; PAUL MICAELLI; AMOS STORKEY: "Meta-Learning in Neural Networks: A Survey", ARXIV.ORG, 7 November 2020 (2020-11-07), XP081797264 *
VILLAFLOR ADAM, DOLAN JOHN, SCHNEIDER JEFF: "FINE-TUNING OFFLINE REINFORCEMENT LEARNING WITH MODEL-BASED POLICY OPTIMIZATION", OFFLINE REINFORCEMENT LEARNING WORKSHOP AT NEURAL INFORMATION PROCESSING SYSTEMS, 1 January 2020 (2020-01-01), pages 1 - 11, XP093070501 *

Similar Documents

Publication Publication Date Title
US11699295B1 (en) Machine learning for computing enabled systems and/or devices
WO2019079008A1 (en) Machine learning runtime library for neural network acceleration
US10102449B1 (en) Devices, systems, and methods for use in automation
WO2020231005A1 (en) Image processing device and operation method thereof
US11235468B2 (en) Robot teaching programming method, apparatus and system, and computer-readable medium
CN113642243A (en) Multi-robot deep reinforcement learning system, training method, device and medium
US11308396B2 (en) Neural network layer-by-layer debugging
US8854379B2 (en) Routing across multicore networks using real world or modeled data
WO2023101112A1 (en) Method for offline meta-reinforcement learning of multiple tasks and computing device for performing same
WO2022080582A1 (en) Target-oriented reinforcement learning method, and device for performing same
WO2023136417A1 (en) Method and device for constructing transformer model for video story question answering
CN105225035B (en) A kind of robot realizing that E-Government is unified
US7447618B2 (en) Method and system for ASIC simulation
WO2023068463A1 (en) Storage device system for quantum circuit simulation
Khan ROS-based control of a manipulator arm for balancing a ball on a plate
JP7101709B2 (en) Methods, devices, devices and media for realizing simulators
EP4225536A1 (en) Hybrid robotic motion planning system using machine learning and parametric trajectories
US11599768B2 (en) Cooperative neural network for recommending next user action
US11748622B1 (en) Saving intermediate outputs of a neural network
WO2021040706A1 (en) Qualitative mechanics based system modeling
KR20230082531A (en) Offline meta reinforcement learning method for plurality of tasks, and computing apparatus for performing the same
WO2013176360A1 (en) Test system for assembling learning driving apparatus
WO2023214608A1 (en) Quantum circuit simulation hardware
WO2023238355A1 (en) Conditional branch determination system, conditional branch determination method, and conditional branch determination program
KR102593832B1 (en) Computer system for multi-source domain adaptative training based on single neural network wothout overfitting, and method thereof

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22901475

Country of ref document: EP

Kind code of ref document: A1