KR20220137732A - 적응형 리턴 계산 방식을 사용한 강화 학습 - Google Patents

적응형 리턴 계산 방식을 사용한 강화 학습 Download PDF

Info

Publication number
KR20220137732A
KR20220137732A KR1020227030755A KR20227030755A KR20220137732A KR 20220137732 A KR20220137732 A KR 20220137732A KR 1020227030755 A KR1020227030755 A KR 1020227030755A KR 20227030755 A KR20227030755 A KR 20227030755A KR 20220137732 A KR20220137732 A KR 20220137732A
Authority
KR
South Korea
Prior art keywords
reward
action
return
environment
agent
Prior art date
Application number
KR1020227030755A
Other languages
English (en)
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
Application filed by 딥마인드 테크놀로지스 리미티드 filed Critical 딥마인드 테크놀로지스 리미티드
Publication of KR20220137732A publication Critical patent/KR20220137732A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • G06N3/0472
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/002Special television systems not provided for by H04N7/007 - H04N7/18
    • H04N7/005Special television systems not provided for by H04N7/007 - H04N7/18 using at least one opto-electrical conversion device

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Feedback Control In General (AREA)
  • Geophysics And Detection Of Objects (AREA)

Abstract

적응형 리턴 계산 방식을 사용한 강화 학습을 위한 컴퓨터 저장 매체에 인코딩된 컴퓨터 프로그램들을 포함하는 방법, 시스템 및 장치가 개시된다. 일 양태에서, 방법은: 다수의 상이한 리턴 계산 방식 중에서 선택하기 위한 정책을 지정하는 데이터를 유지관리하는 단계, 각각의 리턴 계산 방식은 작업의 에피소드를 수행하는 동안 환경을 탐색하는 것에 상이한 중요도를 할당하며; 상기 정책을 사용하여, 다수의 상이한 리턴 계산 방식으로부터 리턴 계산 방식을 선택하는 단계; 상기 선택된 리턴 계산 방식에 따라 계산된 리턴을 최대화하기 위해 상기 작업의 에피소드를 수행하도록 에이전트를 제어하는 단계; 상기 에이전트가 작업의 에피소드를 수행한 결과 생성되었던 보상을 식별하는 단계; 및 상기 식별된 보상을 사용하여, 다수의 상이한 리턴 계산 방식 중에서 선택하기 위해 정책을 업데이트하는 단계를 포함한다.

Description

적응형 리턴 계산 방식을 사용한 강화 학습
본 명세서는 기계 학습 모델을 사용하여 데이터를 프로세싱하는 것과 관련된다.
기계 학습 모델은 입력을 수신하고 수신된 입력에 기초하여 예측된 출력과 같은 출력을 생성한다. 일부 기계 학습 모델들은 파라메트릭 모델들이며, 수신된 입력 및 모델의 파라미터들의 값들에 기초하여 출력을 생성한다.
일부 기계 학습 모델들은 모델들의 다수의 레이어들을 사용하여 수신된 입력에 대한 출력을 생성하는 딥 모델들이다. 예를 들어, 딥 신경 네트워크는 출력 레이어와 출력을 생성하기 위해 수신된 입력에 비선형 변환을 각각 적용하는 하나 이상의 히든 레이어들을 포함하는 딥 기계 학습 모델이다.
본 명세서는 환경과 인터렉션하는 에이전트를 제어하기 위한 하나 이상의 액션 선택 신경 네트워크 세트를 트레이닝하기 위해 하나 이상의 위치에 있는 하나 이상의 컴퓨터에서 컴퓨터 프로그램으로 구현된 시스템을 설명한다.
본 명세서에 기술된 본 발명의 특정한 실시예들은 다음의 이점들을 실현하도록 구현될 수 있다.
본 명세서에 설명된 시스템은 시스템이 사용하는 정책을 유지하고 작업을 수행하기 위해 환경과 인터렉션하는 에이전트를 제어하는데 사용되는 하나 이상의 액션 선택 신경 네트워크(들)의 세트의 트레이닝 동안 수행되는 주어진 작업 에피소드에 대해 사용하기에 가장 적절한 리턴 계산 방식을 선택한다. 가능한 각 리턴 계산 방식은 에이전트가 환경과 인터렉션하는 동안 환경을 탐색하는데 서로 다른 중요도를 할당한다. 특히, 각각의 가능한 리턴 보상 방식은 리턴 계산에 사용할 디스카운트 팩터, 전체 보상 계산에 사용되는 내적 보상 스케일링 팩터 또는 둘 모두를 지정한다. 보다 구체적으로, 시스템은 적응형 메커니즘을 사용하여 트레이닝 프로세스 전반에 걸쳐 정책을 조정하므로 트레이닝 중 다른 지점에서 상이한 리턴 계산 방식이 선택될 가능성이 더 높아진다. 이 적응 메커니즘을 사용하면 시스템이 트레이닝 동안 주어진 시간에 리턴, 가장 적절한 탐색 정도 또는 둘 모두를 계산하기 위한 가장 적절한 시간 지평을 효과적으로 선택할 수 있다. 그 결과 다양한 작업을 수행하도록 에이전트를 제어할 때 향상된 성능을 나타낼 수 있는 트레이닝된 신경 네트워크가 생성된다.
또한 일부 구현예에서, 시스템은 임의의 주어진 액션의 "값"을 추정하기 위해 두 개의 개별 신경 네트워크를 사용한다: 외적 보상만 사용하여 트레이닝되는 외적 리턴 액션 선택 신경 네트워크 및 내적 보상만 사용하여 트레이닝되는 내적 리턴 액션 선택 신경 네트워크. 이 새로운 아키텍처 파라미터화는 보다 일관되고 안정적인 학습을 가능하게 하여, 트레이닝 시간과 트레이닝에 필요한 계산 리소스의 양을 줄이고 결과적으로 트레이닝된 신경 네트워크의 성능을 향상시킨다. 특히, 이 두 신경 네트워크는 동일한 궤적에서 트레이닝될 수 있으므로(그러나 궤적에서 다른 유형의 보상을 사용함), 데이터 효율성의 동반 감소 없이 일관성과 안정성을 높일 수 있다.
종래의 시스템과 비교하여, 본 명세서에서 설명된 시스템은 더 적은 트레이닝 반복을 통해 수용 가능한 수준의 성능을 달성하기 위해 액션 선택 신경 네트워크(들)을 트레이닝함으로써 더 적은 계산 리소스(예를 들어, 메모리 및 컴퓨팅 능력)를 소비할 수 있다. 더욱이, 본 명세서에서 설명된 시스템에 의해 트레이닝된 하나 이상의 액션 선택 신경 네트워크의 세트는 에이전트가 대체 시스템에 의해 트레이닝된 액션 선택 신경 네트워크보다 더 효과적으로(예를 들어, 더 빠르게) 작업을 수행할 수 있게 하는 액션을 선택할 수 있다.
본 명세서의 발명의 하나 이상의 실시예들의 세부 사항은 첨부 도면과 아래의 설명에서 기술된다. 본 발명의 다른 구성들, 양태들 및 이점들은 설명, 도면 및 청구항으로부터 명백해질 것이다.
도 1은 예시적 액션 선택 시스템을 도시한다.
도 2은 예시적 트레이닝 시스템을 도시한다.
도 3은 예시적 내적 보상 시스템을 도시한다.
도 4는 에이전트가 작업 에피소드를 수행하도록 제어하고 리턴 계산 방식 선택 정책을 업데이트하기 위한 예시적 프로세스의 흐름도이다.
다양한 도면들에서 동일한 참조 번호 및 기호는 동일한 컴포넌트를 표시한다.
도 1은 예시적 액션 선택 시스템(100)을 도시한다. 액션 선택 시스템(100)은 이하에 기술된 시스템들, 컴포넌트들 및 기법들이 구현될 수 있는, 하나 이상의 위치들의 하나 이상의 컴퓨터들에서 컴퓨터 프로그램들로서 구현된 시스템의 예시이다.
액션 선택 시스템(100)은 하나 이상의 액션 선택 신경 네트워크(들)(102) 및 정책 데이터(120)를 사용하여, 환경(106)과 인터렉션하는 에이전트(104)를 제어하여, 작업의 에피소드의 수행 동안 다수의 시간 단계 각각에서 에이전트(104)에 의해 수행될 액션(108)을 선택함으로써 작업을 달성한다.
작업의 "에피소드"는 에이전트가 환경의 일부 시작 상태에서 시작하여 작업 인스턴스를 수행하려고 시도하는 인터렉션의 시퀀스이다. 즉, 각 작업 에피소드는 환경이 초기 상태(예: 고정된 초기 상태 또는 무작위로 선택된 초기 상태)에 있는 것으로 시작하여 에이전트가 작업을 성공적으로 완료하거나 일부 종료 기준이 만족될 때(예: 환경이 최종 상태로 지정된 상태에 진입하거나 에이전트가 작업을 성공적으로 완료하지 않고 임계값 수의 액션을 수행)종료된다.
임의의 주어진 작업 에피소드 동안 각 시간 단계에서, 시스템(100)은 시간 단계에서 환경(106)의 현재 상태를 나타내는 관찰(110)을 수신하고, 응답으로, 시간 단계에서 에이전트(104)에 의해 수행될 액션(108)을 선택한다. 에이전트가 액션(108)을 수행한 후, 환경(106)은 새로운 상태로 전환되고 시스템(100)은 환경(106)으로부터 외적 보상(130)을 수신한다.
일반적으로, 외적 보상(130)은 스칼라 수치 값이고, 작업 완료를 향한 에이전트(104)의 진행을 나타낸다.
특정 예로서, 외적 보상(130)은 작업이 성공적으로 완료되지 않으면 0이고, 수행된 액션의 결과로서 작업이 성공적으로 완료되는 경우 1인 희소 바이너리 보상일 수 있다.
다른 특정 예로서, 외적 보상(130)은 작업을 수행하려고 시도하는 에피소드 동안 수신된 개별 관찰에 기초하여 결정된 작업 완료를 향한 에이전트의 진행을 측정하는 촘촘한 보상(dense reward)일 수 있어서, 0이 아닌 보상일 수 있고, 작업이 성공적으로 완료되기 전에 자주 수신될 수 있다.
임의의 주어진 작업 에피소드를 수행하는 동안, 시스템(100)은 작업 에피소드의 과정에 걸쳐 수신되는 리턴을 최대화하려고 시도하기 위해 액션을 선택한다.
즉, 에피소드 동안 각 시간 단계에서, 시스템(100)은 시간 단계로부터 시작하는 작업 에피소드의 나머지에 대해 수신될 리턴을 최대화하려고 시도하는 액션을 선택한다.
일반적으로 주어진 시간 단계에서, 수신될 리턴은 에피소드의 주어진 시간 단계 이후에 있는 시간 단계에서 수신될 보상의 조합이다.
예를 들어, 시간 단계 t에서, 리턴은 다음을 만족할 수 있다:
,
Figure pct00001
여기서 i는 에피소드에서 t 이후의 모든 시간 단계 또는 에피소드 내에서 t 이후의 고정된 수의 시간 단계에 대한 범위이며, γ는 디스카운트 팩터이고, r i 는 시간 단계 i에서의 전체 보상이다. 위 식에서 알 수 있듯이, 디스카운트 팩터의 값이 높을수록 리턴 계산에 대한 긴 시간 지평을 결과로 한다. 즉, 결과적으로 시간 단계 t에서 시간적으로 더 먼 시간 단계의 보상이 리턴 계산에서 더 많은 가중치가 부여된다.
일부 구현예에서, 주어진 시간 단계에 대한 전체 보상은 시간 단계에서 수신된, 즉 이전 시간 단계에서 수행된 액션의 결과로서 수신된 외적 보상과 동일하다.
일부 다른 구현예에서, 시스템(100)은 또한 적어도 시간 단계에서 수신된 관찰로부터 내적 보상(132)을 획득, 즉 수신 또는 생성한다. 내적 보상(132)은 수행되는 액션과 독립적인 방식으로, 즉 외적 보상(130) 대신에 시간 단계에서 작업 완료를 향한 에이전트의 진행을 나타내는 방식으로 시간 단계에서 환경을 탐색하는 에이전트의 진행을 나타낸다. 즉, 내적 보상(132)은 작업에 대한 에이전트의 수행을 측정하기 보다는 환경에 대한 탐색을 측정한다. 예를 들어, 내적 보상은 관찰이 전체 환경 및/또는 그 안에 있는 객체의 가능한 구성에 대한 정보를 제공하는 정도를 나타내는 값일 수 있다; 예를 들어, 환경이 실제 환경이고 관찰이 환경의 대응 부분과 관련된 이미지(또는 기타 센서 데이터)인 경우, 내적 보상은 환경이 이미지 중 적어도 하나에서 얼마나 많이 보이는지를 표시하는 값일 수 있다. 시간 단계에 대한 내적 보상을 계산하는 것은 도 2 및 3을 참조하여 아래에서 더 상세히 설명될 것이다.
이러한 구현예에서, 시스템(100)은 적어도 (i) 시간 단계에 대한 외적 보상, (ii) 시간 단계에 대한 내적 보상 및 (iii) 내적 보상 스케일링 팩터에 기초하여, 시간 단계에서 에이전트에 의해 수신되는 "전체" 보상을 결정할 수 있다.
특정 예로서, 시스템(100)은 예를 들어, 다음과 같이 시간 단계 t에 대한 전체 보상 r t 를 생성할 수 있다:
Figure pct00002
여기서
Figure pct00003
는 시간 단계에 대한 외적 보상을 나타내고,
Figure pct00004
은 시간 단계에 대한 내적 보상을 나타내고, β는 내적 보상 스케일링 팩터를 나타낸다. 내적 보상 스케일링 팩터의 값이 전체 보상에 대한 외적 보상 및 내적 보상의 상대적 중요도를 제어함을 알 수 있고, 예를 들어, 내적 보상 스케일링 팩터의 값이 높을수록 전체 보상에 대한 내적 보상의 기여도가 증가한다. 내적 보상 스케일링 팩터의 값이 전체 보상에 대한 외적 보상과 내적 보상의 상대적 중요도를 조절하는 외적 보상, 내적 보상, 내적 보상 스케일링 팩터로부터 전체 보상을 결정하는 다른 방법도 가능하며, 위의 식은 설명의 목적으로만 제공된다.
정책 데이터(120)는 리턴 계산 방식의 세트로부터 다수의 상이한 리턴 계산 방식 중에서 선택하기 위한 정책을 지정하는 데이터이다.
세트의 각 리턴 계산 방식는 작업의 에피소드를 수행하는 동안 환경을 탐색하는데 서로 다른 중요도를 할당한다. 다시 말해, 세트의 일부 리턴 계산 방식은 환경 탐색, 즉 환경에 대한 새로운 정보 수집에 더 많은 중요도를 부여하는 반면, 세트의 다른 리턴 계산 방식은 환경 활용, 즉 환경에 관한 현재 지식 활용에 더 많은 중요도를 부여한다.
하나의 특정 예로서, 각 리턴 계산 방식은 수익을 생성하기 위해 보상을 결합하는데 사용되는 각각의 디스카운트 팩터 γ를 적어도 지정할 수 있다. 다시 말해서, 일부 리턴 계산 방식은 상대적으로 더 큰 디스카운트 팩터, 즉 다른 리턴 계산 방식보다 현재 시간 단계에 대한 리턴 계산에서 미래 시간 단계의 보상이 상대적으로 더 많이 가중되는 디스카운트 팩터를 지정할 수 있다.
또 다른 특정 예로서, 각 리턴 계산 방식은 리턴을 생성할 때 환경으로부터 수신되는 외적 보상에 대한 내적 보상의 중요도를 정의하는 각각의 내적 보상 스케일링 팩터 β를 적어도 지정할 수 있다.
특히, 위에서 설명한 바와 같이, 내적 보상 스케일링 팩터는 해당 시간 단계에 대한 전체 보상을 생성하기 위해 주어진 시간 단계에 대한 외적 보상에 추가되기 전에 주어진 시간 단계에 대한 내적 보상이 얼마나 스케일링되는지를 정의한다. 다시 말해서, 일부 리턴 계산 방식은 상대적으로 더 큰 내적 보상 스케일링 팩터, 즉 다른 리턴 계산 방식보다 시간 단계의 전체 리턴 계산에서 시간 단계의 내적 보상에 상대적으로 더 큰 가중치가 할당되는 스케일링 팩터를 지정할 수 있다.
또 다른 특정 예로서, 각 리턴 계산 방식은 각각의 디스카운트 팩터(내적 보상 스케일링 팩터 쌍, 즉 γ-β 쌍)를 지정할 수 있으므로, 세트의 각 방식은 방식의 서로 다른 세트로부터 디스카운트 팩터와 스케일링 팩터에 대한 값의 서로 다른 조합을 지정한다.
에피소드를 수행하기 전에, 시스템(100)은 정책 데이터(120)에 의해 현재 지정된 정책을 사용하여 세트 내의 다수의 상이한 방식으로부터 리턴 계산 방식을 선택한다. 예를 들어, 시스템(100)은 정책에 의해 방식에 할당된 보상 점수에 기초하여 방식을 선택할 수 있다. 방식을 선택하는 것은 도 4를 참조하여 아래에서 더 자세히 기술된다. 아래에서 더 자세히 설명하겠지만, 정책은 트레이닝 동안에 적응적으로 수정되어 트레이닝 동안 다른 시간에 다른 계획이 선택될 가능성이 더 높아진다.
그 다음, 시스템(100)은 에이전트(104)가 선택된 방식에 따라 작업 에피소드를 수행하도록, 즉 하나 이상의 액션 선택 신경 네트워크(들)(102)을 사용하여 선택된 방식을 사용하여 계산된 리턴을 최대화하도록 제어한다.
그렇게 하기 위해, 에피소드의 각 시간 단계에서, 시스템(100)은 액션 선택 신경 네트워크(들)(102)을 사용하여 (i) 시간 단계에서 환경의 현재 상태를 나타내는 관찰(110) 및 (ii) 액션 점수(114)를 생성하기 위해 선택된 리턴 계산 방식(112)을 지정하는 선택된 방식 데이터를 포함하는 입력을 프로세싱한다. 선택된 방식 데이터는 선택된 방식(112)을 임의의 적절한 방식으로 지정할 수 있다. 예를 들어, 학습된 임베딩 또는 선택된 방식에 대응하는 포지션에서 값이 "1"이고, 세트의 모든 다른 방식에 대응하는 포지션에서 값이 "0"인 원-핫 벡터로 지정할 수 있다.
액션 점수(114)("리턴 추정치"라고도 함)는 가능한 액션 세트의 각 액션에 대한 각각의 숫자 값을 포함할 수 있고, 시간 단계에 에이전트(104)에 의해 수행될 액션(108)을 선택하는데 시스템(100)에 의해 사용된다.
액션 선택 신경 네트워크(들)(102)은 세트의 가능한 리턴 계산 방식에 의해 인덱싱되는 액션 선택 정책 패밀리를 구현하는 것으로 이해될 수 있다. 특히, 트레이닝 시스템(200)(도 2를 참조하여 보다 상세하게 설명될 것이다)은 선택된 리턴 계산 방식이 대응하는 액션 선택 정책이 "탐색적"인 정도, 즉 에이전트가 환경을 탐색하게 하는 액션을 선택하는 정도를 나타내는 액션 선택 신경 네트워크(들)(102)을 트레이닝할 수 있다. 다시 말해서, 트레이닝 시스템(200)은 액션 선택 신경 네트워크(들)(102)를 트레이닝하여, 선택된 방식에 대한 신경 네트워크(들)을 조절하는 것이 네트워크(들)로 하여금 방식이 선택되었던 환경을 활용하는 것 대비 활용에서 더 많거나 적은 강조를 배치하는 액션 선택 정책을 정의하는 출력을 생성하게 한다.
일부 구현예에서, 하나 이상의 액션 선택 신경 네트워크(102)는 관찰(110) 및 선택된 리턴 계산 방식(112)을 지정하는 데이터를 포함하는 입력을 수신하고 액션 점수(114)를 출력으로서 생성하는 단일 신경 네트워크이다. 즉, 이러한 구현예에서 액션 점수(114)는 단일 액션 선택 신경 네트워크(102)의 출력이다.
액션 선택 신경 네트워크(102)은 설명된 기능을 수행할 수 있도록 하는 임의의 적절한 신경 네트워크 아키텍처로 구현될 수 있다. 일 예에서, 액션 선택 신경 네트워크(102)은 "임베딩" 서브네트워크, "코어" 서브네트워크, 및 "선택" 서브네트워크를 포함할 수 있다. 신경 네트워크의 서브네트워크는 신경 네트워크에서 하나 이상의 신경 네트워크 레이어의 그룹을 지칭한다. 관찰이 이미지일 때, 임베딩 서브네트워크는 시간 단계 동안 관찰을 프로세싱하도록 구성된 하나 이상의 컨볼루션 신경 네트워크 레이어를 포함하는 컨볼루션 서브네트워크일 수 있다. 관찰이 저차원 데이터인 경우, 임베딩 서브네트워크는 완전히 연결된 서브네트워크일 수 있다. 코어 서브네트워크는, 예를 들어, (i) 임베딩 서브네트워크의 출력, (ii) 선택된 리턴 계산 방식을 나타내는 선택된 방식 데이터 및 선택적으로 (iii) 가장 최근에 수신된 외적(및 선택적으로 내적) 보상 및/또는 가장 최근에 수행된 액션을 지정하는 데이터를 프로세싱하도록 구성된 하나 이상의 장단기 메모리(LSTM) 신경 네트워크 레이어를 포함하는 순환 서브네트워크일 수 있다. 선택 서브네트워크는 코어 서브네트워크의 출력을 프로세싱하여 액션 점수(114)를 생성하도록 구성될 수 있다.
일부 다른 구현예에서, 하나 이상의 액션 선택 신경 네트워크(들)(102)는 2개의 개별 신경 네트워크: (i) 환경과의 인터렉션 동안 수신된 관찰에 기초하여 내적 보상 시스템에 의해 생성된 내적 보상으로부터만 계산된 내적 리턴을 추정하는 내적 보상 액션 선택 신경 네트워크; 및 (ii) 환경과의 인터렉션의 결과로 환경으로부터 수신된 외적 보상으로부터만 계산된 외적 수익을 추정하는 외적 보상 액션 선택 신경 네트워크이다.
이러한 구현예에서 두 개의 개별 신경 네트워크는 동일한 아키텍처를 가질 수 있지만 다른 양을 추정하도록 트레이닝된 결과로 즉, 내적 리턴을 추정하도록 트레이닝되는 내적 보상 액션 선택 신경 네트워크 및 외적 리턴을 추정하도록 트레이닝되는 외적 보상 액션 선택 신경 네트워크의 결과로 파라미터 값이 다를 수 있다.
이러한 구현예에서, 시스템(100)은 각 액션에 대한 각각의 내적 액션 점수("추정 내적 리턴")를 생성하기 위해 내적 보상 액션 선택 신경 네트워크를 사용하여 입력을 프로세싱하고, 각 액션에 대한 각각의 외적 액션 점수("추정 외적 리턴")를 생성하기 위해 외적 보상 액션 선택 신경 네트워크를 사용하여 입력을 프로세싱한다.
그 다음, 시스템(100)은 액션에 대한 최종 액션 점수("최종 리턴 추정")을 생성하기 위해 내적 보상 스케일링 팩터에 따라 각 액션에 대한 내적 액션 점수와 외적 액션 점수를 결합할 수 있다.
예를 들어, j번째 방식이 선택되었을 때 관찰 x에 대한 응답으로 액션에 대한 최종 동작 점수 Q(x,a,j;θ)는 다음을 만족할 수 있다:
Figure pct00005
,
여기서
Figure pct00006
는 액션 a에 대한 외적 액션 점수이고,
Figure pct00007
는 액션 a에 대한 내적 액션 점수이고, β j j번째 방식에서 스케일링 팩터이다.
다른 예로서, 최종 액션 점수
Figure pct00008
는 다음을 만족할 수 있다:
Figure pct00009
,
여기서 h는 상태-액션 값 함수, 즉 외부 및 내부 보상 함수를 스케일링하여 신경 네트워크에 대해 더 쉽게 근사할 수 있도록 스케일링하는 단조 증가 및 가역 스쿼싱 함수이다.
따라서 리턴 방식에서 β j 의 다른 값은 최종 액션 점수를 계산할 때 내적 액션 선택 신경 네트워크의 예측에 다르게 가중치를 부여한다.
시스템(100)은 시간 단계에서 에이전트(104)에 의해 수행될 액션(108)을 선택하기 위해 액션 점수(114)를 사용할 수 있다. 예를 들어, 시스템(100)은 가능한 액션 세트에 대한 확률 분포를 생성하기 위해 액션 점수(114)를 프로세스할 수 있고, 그런 다음 확률 분포에 따라 액션을 샘플링함으로써 에이전트(104)에 의해 수행될 액션(108)을 선택할 수 있다. 시스템(100)은 예를 들어, 소프트-맥스 함수를 사용하여 액션 점수(114)를 프로세싱함으로써 가능한 액션0 세트에 대한 확률 분포를 생성할 수 있다. 다른 예로서, 시스템(100)은 최고 액션 점수(114)와 연관된 가능한 액션으로서 에이전트(104)에 의해 수행될 액션(108)을 선택할 수 있다. 선택적으로, 시스템(100)은 탐색 정책, 예를 들어 시스템(100)이 확률 1 - ε로 가장 높은 최종 리턴 추정치를 갖는 액션을 선택하고 확률이 ε로 액션 세트로부터 임의의 작업을 선택하는 ε-그리디 탐색 정책을 사용하여 시간 단계에서 에이전트(104)에 의해 수행될 작업(108)을 선택할 수 있다.
작업 에피소드가 수행되면, 즉 에이전트가 작업을 성공적으로 수행하거나 작업 에피소드에 대한 일부 종료 기준이 충족되면, 시스템(100)은 (i) 정책 데이터(120)에 의해 현재 지정된 리턴 계산 방식들 사이에서 선택하기 위한 정책을 업데이트하고, (ii) 액션 선택 신경 네트워크(들)(102)를 트레이닝하기 위해 또는 둘 모두를 위해 작업 에피소드의 결과를 사용할 수 있다.
보다 일반적으로, 정책 데이터(120)에 의해 지정된 정책 및 액션 선택 신경 네트워크(들)(102)의 파라미터 값 모두는 환경과 에이전트(104)의 인터렉션의 결과로서 생성된 궤적에 기초하여 트레이닝 동안 업데이트된다.
특히, 트레이닝 동안, 시스템(100)은 최근에 생성된 궤적, 예를 들어 가장 최근에 생성된 궤적의 고정된 크기의 슬라이딩 윈도우 내에서 생성된 궤적을 사용하여 리턴 방식 선택 정책을 업데이트한다. 트레이닝 프로세스 전반에 걸쳐 리턴 계산 방식 선택 정책을 조정하기 위해 이 적응 메커니즘을 사용함으로써, 액션 선택 신경 네트워크(들)의 트레이닝 동안 다른 지점에서 다른 리턴 계산 방식이 선택될 가능성이 더 높다. 이 적응 메커니즘을 사용하면 시스템(100)이 트레이닝 동안 주어진 시간에 가장 적절한 시간 지평, 가장 적절한 탐색 정도 또는 둘 모두를 효과적으로 선택할 수 있다. 그 결과 다양한 작업을 수행하도록 에이전트를 제어할 때 향상된 성능을 나타낼 수 있는 트레이닝된 신경 네트워크(들)가 생성된다.
리턴 방식 선택 정책을 업데이트하는 방법은 도 4를 참조하여 아래에서 보다 구체적으로 설명한다.
시스템(100)은 시스템(100)에 의해 생성되고 재생 버퍼로 지칭되는 데이터 저장소에 추가되는 궤적을 사용하여 액션 선택 신경 네트워크(들)(102)를 트레이닝한다. 다시 말해서, 트레이닝 동안 지정된 간격에서, 시스템(100)은 재생 버퍼로부터 궤적을 샘플링하고 궤적에 대한 궤적을 사용하여 신경 네트워크(들)(102)를 트레이닝한다. 일부 구현예에서, 리턴 방식 선택 정책을 업데이트하는데 사용되는 궤적은 또한 신경 네트워크(들)(102)을 트레이닝하는데 나중에 사용하기 위해 재생 버퍼에 추가된다. 다른 구현예에서, 리턴 방식 선택 정책을 업데이트하는데 사용되는 궤적은 재생 버퍼에 추가되지 않고 정책 업데이트에만 사용된다. 예를 들어, 시스템(100)은 정책을 업데이트하는데 사용될 작업 에피소드를 수행하는 것과 재생 버퍼에 추가될 작업 에피소드를 수행하는 것 사이에서 교번할 수 있다.
액션 선택 신경 네트워크(들)를 트레이닝하는 것은 도 2를 참조하여 아래에서 설명된다.
일부 구현예에서, 환경은 현실 세계 환경이고, 에이전트는 현실 세계 환경과 인터렉션(예: 현실 세계 환경 내에서 이동(환경에서 병진 및/또는 회전 및/또는 그 구성 변경) 및/또는 현실 세계 환경을 수정)하는 기계적 에이전트이다. 예를 들어, 에이전트는 환경과 인터렉션하는 로봇일 수 있다(예를 들어, 환경에서 관심 객체를 찾고, 환경에서 관심 객체를 지정된 위치로 이동하고, 환경에서 관심 객체를 물리적으로 조작하고, 또는 환경에서 지정된 목적지로 이동하고); 또는 에이전트는 환경을 통해 환경의 지정된 목적지로 이동하는 자율 또는 반자율 육상, 항공 또는 해상 차량일 수 있다.
이러한 구현예에서, 관찰은 예를 들어 에이전트가 환경과 인터렉션할 때 관찰을 캡처하기 위한 이미지, 객체 포지션 데이터 및 센서 데이터 중 하나 이상 예를 들어 이미지, 거리 또는 포지션 데이터로부터 또는 액츄에이터로부터 예시적 센서 데이터를 포함할 수 있다.
예를 들어 로봇의 경우 관찰은 로봇의 현재 상태를 나타내는 데이터, 예를 들어 관절 포지션, 관절 속도, 관절 힘, 토크 또는 가속도, 예를 들어 중력 보상 예를 들어, 토크 피드백 및 로봇이 들고 있는 아이템의 전체적 또는 상대적인 자세 중 하나 이상을 포함할 수 있다.
로봇 또는 기타 기계적 에이전트 또는 차량의 경우, 관찰은 유사하게 하나 이상의 포지션, 선속도 또는 각속도, 힘, 토크 또는 가속도, 에이전트의 하나 이상의 부분의 전체 또는 상대 자세 중 하나 이상을 포함할 수 있다. 관찰은 1, 2 또는 3차원으로 정의될 수 있으며, 절대 및/또는 상대 관찰일 수 있다.
관찰은 또한 예를 들어 실제 환경을 감지하는 하나 이상의 센서 디바이스에 의해 획득된 데이터; 예를 들어, 모터 전류 또는 온도 신호와 같은 감지된 전자 신호; 및/또는 예를 들어 카메라 또는 LIDAR 센서로부터의 이미지 또는 비디오 데이터, 예를 들어 에이전트의 센서로부터의 데이터 또는 환경에서 에이전트와 별도로 위치하는 센서로부터의 데이터를 포함할 수 있다.
전자 에이전트의 경우, 관찰은 전류, 전압, 전력, 온도 및 기타 센서와 같은 플랜트 또는 서비스 시설의 일부를 모니터링하는 하나 이상의 센서로부터의 데이터 및/또는 장비의 전자 및/또는 기계적 아이템의 기능을 나타내는 전자 신호를 포함할 수 있다.
액션은 로봇을 제어하기 위한 제어 입력, 예를 들어 로봇의 관절에 대한 토크 또는 상위 수준 제어 명령, 또는 자율 또는 반자율 육상 또는 항공 또는 해상 차량(예: 제어 표면에 대한 토크 또는 차량의 제어 요소 또는 상위 제어 명령)일 수 있다.
다시 말해서, 액션은 예를 들어 로봇 또는 다른 기계적 에이전트의 부분의 하나 이상의 관절에 대한 포지션, 속도 또는 힘/토크/가속도 데이터를 포함할 수 있다. 액션은 추가로 또는 대안적으로 모터 제어 데이터와 같은 전자 제어 데이터, 또는 보다 일반적으로 제어가 환경의 관찰된 상태에 영향을 미치는 환경 내의 하나 이상의 전자 디바이스를 제어하기 위한 데이터를 포함할 수 있다. 예를 들어, 자율 또는 반자율 육상, 항공 또는 해상 차량의 경우, 액션은 예를 들어 조향과 같은 이동 및 예를 들어 차량의 제동 및/또는 가속과 같은 움직임을 제어하는 액션을 포함할 수 있다.
일부 구현예에서, 환경은 시뮬레이션된 환경이고 에이전트는 시뮬레이션된 환경과 인터렉션하는 하나 이상의 컴퓨터로 구현된다.
예를 들어 시뮬레이션된 환경은 로봇이나 차량의 시뮬레이션일 수 있으며 시뮬레이션에 대해 액션 선택 네트워크를 트레이닝할 수 있다. 예를 들어, 시뮬레이션된 환경은 운전 시뮬레이션 또는 비행 시뮬레이션과 같은 모션 시뮬레이션 환경일 수 있고, 에이전트는 모션 시뮬레이션을 통해 이동하는 시뮬레이션된 차량일 수 있다. 이러한 구현예에서 액션은 시뮬레이션된 사용자 또는 시뮬레이션된 차량을 제어하기 위한 제어 입력일 수 있다.
다른 예에서, 시뮬레이션된 환경은 비디오 게임일 수 있고 에이전트는 비디오 게임을 플레이하는 시뮬레이션된 사용자일 수 있다.
추가 예에서 환경은 각 상태가 단백질 사슬의 각 상태이고 에이전트는 단백질 사슬을 접는 방법을 결정하기 위한 컴퓨터 시스템인 단백질 접힘 환경일 수 있다. 이 예에서, 액션은 단백질 사슬을 폴딩하기 위한 가능한 폴딩 액션이고, 달성될 결과는 예를 들어 단백질이 안정되고 특정 생물학적 기능을 달성하도록 단백질을 폴딩하는 것을 포함할 수 있다. 다른 예로서, 에이전트는 인간의 인터렉션 없이 자동으로 시스템에 의해 선택된 단백질 접힘 액션을 수행하거나 제어하는 기계적 에이전트일 수 있다. 관찰은 단백질 상태의 직접 또는 간접적 관찰을 포함할 수 있고 및/또는 시뮬레이션으로부터 도출될 수 있다.
일반적으로 시뮬레이션된 환경의 경우, 관찰은 이전에 설명된 관찰 또는 관찰 유형 중 하나 이상의 시뮬레이션된 버전을 포함할 수 있으며, 액션은 이전에 설명된 액션 또는 액션 유형 중 하나 이상의 시뮬레이션된 버전을 포함할 수 있다.
시뮬레이션된 환경에서 에이전트를 트레이닝하면 에이전트가 실제 환경에서 에이전트를 트레이닝하는 것과 연관된 위험, 예를 들어 잘못 선택한 액션을 수행하여 에이전트가 손상되는 것을 방지하면서 대량의 시뮬레이션된 트레이닝 데이터로부터 학습할 수 있다. 시뮬레이션된 환경에서 트레이닝된 에이전트는 이후 실제 환경에 배포될 수 있다.
일부 다른 적용에서, 에이전트는 예를 들어 데이터 센터 또는 그리드 주전원 또는 물 분배 시스템, 또는 제조 공장 또는 서비스 시설에서 장비 아이템을 포함하는 실제 환경에서 액션을 제어할 수 있다. 그런 다음 관찰은 플랜트 또는 시설의 운영과 관련될 수 있다. 예를 들어, 관찰은 장비에 의한 전력 또는 물 사용량 관찰, 발전 또는 배전 제어 관찰 또는 자원 또는 폐기물 생산 사용 관찰을 포함할 수 있다. 에이전트는 예를 들어 리소스 사용을 줄임으로써 효율성을 높이고 및/또는 예를 들어 폐기물을 줄임으로써 환경에서 동작의 환경적 영향을 줄이기 위해 환경에서 액션을 제어할 수 있다. 액션은 플랜트/설비의 장비 아이템에 대한 동작 조건을 제어하거나 부과하는 액션 및/또는 플랜트/설비의 동작에서 설정을 변경하는 액션(예: 플랜트/설비의 컴포넌트를 조정하거나 켜기/끄기)를 포함할 수 있다.
선택적으로, 위의 구현예 중 임의의 것에서, 임의의 주어진 시간 단계에서의 관찰은 환경을 나타내는데 도움이 될 수 있는 이전 시간 단계로부터의 데이터(예: 이전 시간 단계에서 수행된 액션), 이전 시간 단계에서 수행된 액션에 대한 응답으로 수신된 보상을 포함할 수 있다.
트레이닝 시스템(200)은 각 시간 단계에서 에이전트(104)에 의해 수신된 보상을 결정할 수 있고, 에이전트에 의해 수신된 보상의 누적 측정을 최적화하기 위해 강화 학습 기법을 사용하여 액션 선택 신경 네트워크(들)(102)를 트레이닝할 수 있다. 에이전트에 의해 수신된 보상은 예를 들어 스칼라 수치 값으로 표현될 수 있다. 트레이닝 시스템(200)은 시간 단계에서 액션 선택 신경 네트워크(들)(102)에 의해 프로세싱된 내적 보상 스케일링 팩터(112)에 적어도 부분적으로 기초하여 각 시간 단계에서 에이전트에 의해 수신된 보상을 결정할 수 있다. 특히, 내적 보상 스케일링 팩터(112)의 값은 환경(106)의 탐색이 에이전트에 의해 수신되는 보상에 기여하는 정도를 결정할 수 있다. 이러한 방식으로, 트레이닝 시스템(200)은 내적 보상 스케일링 팩터(112)의 더 높은 값에 대해, 액션 선택 신경 네트워크(들)(102)가 에이전트로 하여금 환경을 더 빠르게 탐색하게 하는 액션을 선택하도록 액션 선택 신경 네트워크(들)(102)를 트레이닝할 수 있다.
도 2은 예시적 트레이닝 시스템(200)을 도시한다. 트레이닝 시스템(200)은 이하에 기술된 시스템들, 컴포넌트들 및 기법들이 구현될 수 있는, 하나 이상의 위치들의 하나 이상의 컴퓨터들에서 컴퓨터 프로그램들로서 구현된 시스템의 예시이다.
트레이닝 시스템(200)은 (도 1을 참조하여 설명된 바와 같이) 액션 선택 신경 네트워크(들)(102)을 트레이닝하여 액션 선택 신경 네트워크(들)(102)를 사용하여 선택된 액션을 수행함으로써 에이전트에 의해 수신되는 전체 보상의 누적 측정치를 최적화하기 하도록 구성된다.
전술한 바와 같이, 트레이닝 시스템(200)은 (i) 시간 단계에 대한 "외적" 보상(204), (ii) 시간 단계에 대한 "탐색" 보상(206) 및 (iii) 시간 단계가 속하는 에피소드에 대해 샘플링되었던 리턴 계산 방식(210)에 의해 지정된 내적 보상 스케일링 팩터에 적어도 기초하여 시간 단계에서 에이전트에 의해 수신된 "전체" 보상(202)을 결정할 수 있다.
위에서 설명된 바와 같이, 내적 보상(206)은 시간 단계에서 환경을 탐색하는 방향으로 에이전트의 진행을 나타낼 수 있다. 예를 들어, 트레이닝 시스템(200)은 (i) 시간 단계에서 환경의 상태를 나타내는 관찰(212)의 임베딩 및 (ii) 각각의 이전 시간 단계에서 환경 상태를 나타내는 하나 이상의 이전 관찰의 임베딩 간의 유사도 측정에 기초하여 시간 단계에 대한 내적 보상(206)을 결정할 수 있다. 특히, 시간 단계에서 관찰의 임베딩과 이전 시간 단계에서 관찰의 임베딩 간의 낮은 유사도는 에이전트가 이전에 보지 못한 환경 양태를 탐색하고 있다는 것을 나타낼 수 있으며 따라서 보다 높은 내적 보상(206)을 초래한다. 트레이닝 시스템(200)은 도 3을 참조하여 더 자세히 설명될 내적 보상 시스템(300)을 사용하여 시간 단계에서 환경의 상태를 나타내는 관찰(212)을 프로세싱함으로써 시간 단계에 대한 내적 보상(206)을 생성할 수 있다.
액션 선택 신경 네트워크(들)(102)를 트레이닝하기 위해, 트레이닝 시스템(200)은 작업 에피소드 동안 하나 이상의 (연속적인) 시간 단계에 걸쳐 환경과 에이전트의 인터렉션을 나타내는 "궤적"을 획득한다. 특히, 궤도는 각 시간 단계에 대해: (i) 시간 단계에서 환경의 상태를 나타내는 관찰(212), (ii) 시간 단계에 대한 내적 보상(202) 및 (iii) 시간 단계에 대한 외적 보상을 지정할 수 있다. 궤적은 또한 궤적, 즉 작업 에피소드 동안 에이전트에 의해 수행된 액션을 선택하는데 사용되었던 궤적에 대응하는 리턴 계산 방식을 지정한다.
단일 액션 선택 신경 네트워크가 있는 경우, 트레이닝 엔진(208)은 그 후 상기 기술된 바와 같이, 시간 단계에 대한 내적 보상, 시간 단계에 대한 외적 보상 및 내적 보상 스케일링 팩터 즉, 일정한 내적 보상 스케일링 팩터 또는 다른 리턴 계산 방식이 서로 다른 내적 보상 스케일링 팩터를 지정하는 경우 궤적에 대응하는 리턴 계산 방식에 의해 지정된 내적 보상 스케일링 팩터로부터 각 시간 단계에 대한 각각의 전체 보상을 계산함으로써 액션 선택 신경 네트워크(들)(102)을 트레이닝할 수 있다.
트레이닝 엔진(208)은 그 다음 강화 학습 기법을 사용하여 궤적에 대한 액션 선택 신경 네트워크를 트레이닝할 수 있다. 강화 학습 기법은 예를 들어, 액션 선택 신경 네트워크가 Q 신경 네트워크이고 액션 점수는 대응하는 액션이 에이전트에 의해 수행되었을 경우 수신될 예상 리턴을 추정하는 Q 값인 예를 들어, Q-학습 기법, 예를 들어 Retrace Q-learning 기법 또는 변환된 Bellman 연산자를 포함하는 Retrace Q-learning 기법일 수 있다.
일반적으로 강화 학습 기법은 궤적의 미래 시간 단계에서 수신된 보상에 대한 디스카운트 팩터, 주어진 시간 단계 이후에 수신될 미래 리턴 추정 또는 둘 모두를 사용하여, 액션 선택 신경 네트워크의 트레이닝을 위한 타겟 출력을 계산한다. 궤적에 대해 트레이닝할 때, 시스템(200)은 궤적에 대응하는 리턴 보상 방식에서 디스카운트 팩터를 사용한다. 그 결과 액션 선택 신경 네트워크는 다양한 디스카운트 팩터에 따라 미래 보상에 다르게 가중치를 주는 액션 점수를 생성하도록 트레이닝된다.
두 개의 액션 선택 신경 네트워크(102)가 있는 경우, 트레이닝 엔진(208)은 동일한 궤도에서, 즉 궤적의 시간 단계에 대한 전체 보상을 계산하는 대신에 두 개의 액션 선택 신경 네트워크(102)를 개별적으로 트레이닝할 수 있다. 보다 구체적으로, 트레이닝 엔진(208)은 강화 학습 기법을 사용하여 내적 보상 액션 선택 신경 네트워크를 트레이닝할 수 있지만 궤적의 시간 단계에 대한 내적 보상만을 사용한다. 트레이닝 엔진(208)은 또한 강화 학습 기법을 사용하여 외적 보상 액션 선택 신경 네트워크를 트레이닝할 수 있지만, 궤적의 시간 단계에 대한 외적 보상만을 사용한다.
두 신경 네트워크의 트레이닝을 위해, 트레이닝 엔진(208)은 트레이닝에 대해 동일한 "타겟" 정책, 즉 대응하는 리턴 계산 방식(210)에서 스케일링 팩터를 사용하여 계산된 전체 보상을 최대화하는 액션을 선택하는 정책을 사용할 수 있다. 유사하게, 상기 기술된 바와 같이, 궤적에 대해 트레이닝할 때, 시스템(200)은 궤적에 대응하는 리턴 보상 방식에서 디스카운트 팩터를 사용한다. 그 결과 액션 선택 신경 네트워크들은 다양한 디스카운트 팩터에 따라 미래 보상에 다르게 가중치를 주는 액션 점수를 생성하도록 트레이닝된다.
그렇게 함으로써, 시스템(200)은 내적 보상 액션 선택 신경 네트워크를 트레이닝하여, 대응하는 액션이 에이전트에 의해 수행되었을 경우 수신될 외적 리턴의 추정치인 외적 액션 점수("추정 외적 리턴")를 생성하기 위해 외적 보상 액션 선택 신경 네트워크를 트레이닝하는 동안 대응하는 액션이 에이전트에 의해 수행되었을 경우 수신될 내적 리턴의 추정치인 내적 액션 점수("추정 내적 리턴")를 생성한다.
일부 구현예에서, 트레이닝 동안, 시스템(100)은 다수의 액터 컴퓨팅 유닛을 사용하여 액션 선택 신경 네트워크(들)(102)를 트레이닝할 때 트레이닝 시스템(200)에 의해 사용하기 위한 궤적을 생성할 수 있다. 이러한 구현예 중 일부에서, 각 액터 컴퓨팅 유닛은 다수의 서로 다른 리턴 계산 방식 중에서 선택하기 위한 정책을 유지 관리하고 별도로 업데이트한다. 이것은 다른 액터 컴퓨팅 유닛이 ε-greedy 제어에서 다른 ε 값을 사용하거나 에이전트를 다르게 제어할 때 유용할 수 있다. 일부 다른 구현예에서, 시스템은 모든 액터 컴퓨팅 유닛에 대해 동일한 중앙 정책을 유지할 수 있다.
다수의 액터 컴퓨팅 유닛이 사용되는 경우, 각 액터 컴퓨팅 유닛은 도 1을 참조하여 상술한 동작을 반복적으로 수행하여, 에이전트의 인스턴스를 제어하여 작업 에피소드를 수행하고 작업 에피소드 동안 에이전트의 인터렉션 결과를 사용하여 리턴 계산 방식 선택 정책 즉 중앙 정책 또는 액터 컴퓨팅 유닛에 의해 별도로 유지 관리하는 정책을 업데이트하고, 액션 선택 신경 네트워크(들)를 트레이닝하기 위한 트레이닝 데이터를 생성한다.
컴퓨팅 유닛은 예를 들어, 컴퓨터, 다중 코어를 갖는 컴퓨터 내의 코어, 또는 독립적으로 동작을 수행할 수 있는 컴퓨터 내의 다른 하드웨어 또는 소프트웨어, 예를 들어 전용 스레드일 수 있다. 컴퓨팅 유닛은 프로세서 코어, 프로세서, 마이크로프로세서, 특수 목적 논리 회로, 예를 들어 FPGA(field-programmable gate array) 또는 ASIC(application-specific integrated circuit) 또는 임의의 다른 적절한 컴퓨팅 유닛을 포함할 수 있다. 일부 예에서, 컴퓨팅 유닛들은 모두 동일한 유형의 컴퓨팅 유닛이다. 다른 예에서, 컴퓨팅 유닛들은 상이한 유형의 컴퓨팅 유닛들일 수 있다. 예를 들어, 하나의 컴퓨팅 유닛은 CPU일 수 있고, 다른 컴퓨팅 유닛들은 GPU들일 수 있다.
트레이닝 시스템(200)은 리플레이 버퍼라고 하는 데이터 저장소에 각 액터 컴퓨팅 유닛에 의해 생성된 궤적을 저장하고, 다수의 트레이닝 반복 각각에서, 액션 선택 신경 네트워크(들)(102)를 트레이닝하는데 사용하기 위해 리플레이 버퍼로부터 궤적의 배치(batch)를 샘플링한다. 트레이닝 시스템(200)은 예를 들어 각 저장된 궤적에 각각의 점수를 할당하고 점수들에 따라 궤적들을 샘플링함으로써 우선순위화된 경험 재생 알고리즘에 따라 재생 버퍼로부터 궤적들을 샘플링할 수 있다. 우선순위화된 경험 재생 알고리즘의 예는 T. Schhaul et al., "Prioritized experience replay," arXiv:1511.05952v4(2016)에 설명되어 있다.
세트의 리턴 계산 방식에 포함된 가능한 내적 보상 스케일링 팩터 세트
Figure pct00010
(즉, N은 가능한 내적 보상 스케일링 팩터들의 수)는 전체 보상을 내적 보상과 독립적으로 만드는 "기준" 내적 보상 스케일링 팩터(실질적으로 0)를 포함할 수 있다.
다른 가능한 내적 보상 스케일링 팩터는 각각의 양수일 수 있으며(일반적으로 모두 다른 것과 서로 다름), 액션 선택 신경 네트워크가 각각의 "탐색적(exploratory)" 액션 선택 정책을 구현하도록 하는 것으로 간주될 수 있다. 탐색적 액션 선택 정책은 대응하는 내적 보상 스케일링 팩터에 의해 정의되는 범위 내에서 에이전트가 작업을 해결할 뿐만 아니라 환경을 탐색하도록 권장한다.
액션 선택 신경 네트워크(들)(102)는 탐색적 액션 선택 정책에 의해 제공되는 정보를 사용하여 더 효과적인 탐색적 액션 선택 정책을 학습할 수 있다. 탐색적 정책에 의해 제공되는 정보는 예를 들어, 액션 선택 신경 네트워크(들)의 공유 가중치에 저장된 정보를 포함할 수 있다. 액션 선택 정책들의 범위를 공동으로 학습함으로써, 트레이닝 시스템(200)은 액션 선택 신경 네트워크(들)(102)가 예를 들어 더 적은 트레이닝 반복을 통해 각 개별 액션 선택 정책을 더 효율적으로 학습하게 할 수 있다. 더욱이, 탐색적 정책을 학습하면 외부 보상이 희박한 경우(예: 거의 0이 아닌 경우)라도 시스템이 액션 선택 신경 네트워크를 지속적으로 트레이닝하게 할 수 있다.
액션 선택 신경 네트워크(들)의 트레이닝이 완료된 후, 시스템(100)은 전술한 바와 같이 방식 선택 정책을 업데이트하고 방식을 선택하는 것을 계속하거나 방식 선택 정책을 수정하고 방식 선택 정책이 표시하는 방식이 가장 높은 보상 점수를 갖는 것을 탐욕적으로 선택함으로써 에이전트를 제어한다.
일반적으로 시스템은 내적 보상으로 작업 진행보다는 탐색 진행을 나타내는 모든 종류의 보상을 사용할 수 있다. 내적 보상의 하나의 특정 예 및 내적 보상을 생성하는 시스템에 대한 설명은 도 3을 참조하여 후술된다.
도 3은 예시적 내적 보상 시스템(300)을 도시한다. 내적 보상 시스템(300)은 이하에 기술된 시스템들, 컴포넌트들 및 기법들이 구현될 수 있는, 하나 이상의 위치들의 하나 이상의 컴퓨터들에서 컴퓨터 프로그램들로서 구현된 시스템의 예시이다.
내적 보상 시스템(300)은 환경의 현재 상태를 나타내는 현재 관찰(212)을 프로세싱하여 환경을 탐색하는 에이전트의 진행을 나타내는 내적 보상(206)을 생성하도록 구성된다. 시스템(300)에 의해 생성된 내적 보상(206)은 예를 들어, 도 2를 참조하여 설명된 트레이닝 시스템(200)에 의해 사용될 수 있다.
시스템(300)은 임베딩 신경 네트워크(302), 외부 메모리(304) 및 비교 엔진(306)을 포함하며, 이들 각각은 다음에 더 상세히 설명될 것이다.
임베딩 신경 네트워크(302)는 "제어 가능성 표현"(308)(또는 "임베딩된 제어 가능성 표현")으로 지칭되는 현재 관찰의 임베딩을 생성하기 위해 현재 관찰(212)을 프로세싱하도록 구성된다. 현재 관찰(212)의 제어 가능성 표현(308)은 숫자 값의 정렬된 컬렉션, 예를 들어 숫자 값의 어레이로 표현될 수 있다. 임베딩 신경 네트워크(302)는 임베딩 신경 네트워크(302)의 트레이닝 동안 수정되는 가중치에 의해 정의되는 기능을 수행하는 하나 이상의 레이어와 함께 다수의 레이어들을 갖는 신경 네트워크로 구현될 수 있다. 일부 경우에, 특히 현재 관찰이 적어도 하나의 이미지의 형태일 때, 임베딩 신경 네트워크의 레이어 중 하나 이상, 예를 들어 적어도 첫 번째 레이어는 컨볼루션 레이어로 구현될 수 있다.
시스템(300)은 임베딩 신경 네트워크(302)을 트레이닝하여 에이전트에 의해 제어 가능한 환경 상태의 양태를 나타내는 관찰의 제어 가능성 표현을 생성할 수 있다. 환경 상태의 한 양태는 에이전트에 의해 수행된 액션에 의해 (적어도 부분적으로) 결정되는 경우 에이전트에 의해 제어 가능한 것으로 지칭될 수 있다. 예를 들어, 로봇 에이전트의 액츄에이터에 의해 파지되는 객체의 포지션은 에이전트에 의해 제어될 수 있는 반면, 주변 조명 조건 또는 환경 내의 다른 에이전트의 움직임은 에이전트에 의해 제어될 수 없다. 임베딩 신경 네트워크(302)를 트레이닝하기 위한 예시적 기법은 아래에서 더 자세히 설명된다.
외부 메모리(304)는 이전 시간 단계에서 환경의 상태를 나타내는 이전 관찰의 제어 가능성 표현을 저장한다.
비교 엔진(306)은 현재 관찰(212)의 제어 가능성 표현(308)을 외부 메모리(304)에 저장된 이전 관찰의 제어 가능성 표현과 비교함으로써 내적 보상(206)을 생성하도록 구성된다. 일반적으로, 비교 엔진(306)은 현재 관찰(212)의 제어 가능성 표현(308)이 외부 메모리에 저장된 이전 관찰의 제어 가능성 표현과 덜 유사하다면 더 높은 내적 보상(206)을 생성할 수 있다.
예를 들어, 비교 엔진(306)은 다음과 같이 내적 보상 r t 를 생성할 수 있다:
Figure pct00011
여기서,
Figure pct00012
는 현재 관찰(212)의 제어 가능성 표현(308)에 대해 (예를 들어, 유클리드 유사도 측정에 의해) 가장 높은 유사도를 갖는 외부 메모리(304)의 k 제어 가능성 표현 f i 의 세트를 나타내며(여기서 k는 사전 정의된 양의 정수 값이며 일반적으로 1보다 큼), f(x t )x t 로 표시된 현재 관찰(212)의 제어 가능성 표현(308)을 나타내고,
Figure pct00013
는 "커널" 함수이고, c는 수치적 안정성을 장려하는데 사용되는 미리 정의된 상수 값(예: c=0.001)이다. 커널 함수
Figure pct00014
는 다음과 같이 주어질 수 있다:
Figure pct00015
여기서, d(f(x t ),f i )는 제어 가능성 표현 f(x t )f i 사이의 유클리드 거리를 나타내고,
Figure pct00016
는 수치적 안정성을 장려하는데 사용되는 미리 정의된 상수 값을 나타내며,
Figure pct00017
는 (i) 시간 단계에서 관찰의 제어 가능성 표현과 (ii) 외부 메모리로부터 k 가장 유사한 제어 가능성 표현의 제어 가능성 표현 사이의 평균 제곱 유클리드 거리의 실행 평균(즉, 고정된 복수의 시간 단계들과 같은 다수의 시간 단계들에 걸친)을 나타낸다. 현재 관찰(212)의 제어 가능성 표현(308)이 외부 메모리에 저장된 이전 관찰의 제어 가능성 표현과 덜 유사한 경우 더 높은 내적 보상(206)을 초래하는 내적 보상(206)을 생성하기 위한 다른 기법도 가능하며, 및 식(2)-(3)은 설명 목적으로만 제공된다.
환경 상태의 제어 가능한 양태를 나타내는 제어 가능성 표현에 기초하여 내적 보상(206)을 결정하는 것은 액션 선택 신경 네트워크의 보다 효과적인 트레이닝을 가능하게 할 수 있다. 예를 들어, 환경의 상태는 에이전트에 의해 수행된 액션과 독립적으로 변할 수 있다(예: 조명의 변화와 산만하게 하는 객체들이 존재하는 현실 세계 환경의 경우). 특히, 환경의 현재 상태를 나타내는 관찰은 에이전트가 중간 시간 단계에서 아무 액션도 수행하지 않은 경우라도 환경의 이전 상태를 나타내는 관찰과 실질적으로 다를 수 있다. 따라서, 환경 상태를 나타내는 관찰을 직접 비교하여 결정된 내적 보상을 최대화하도록 트레이닝된 에이전트는 예를 들어 에이전트가 아무런 액션을 수행하지 않더라도 긍정적인 내적 보상을 받을 수 있기 때문에 환경에 대한 의미 있는 탐색을 수행하지 않을 수 있다. 대조적으로, 시스템(300)은 에이전트가 환경의 제어 가능한 양태에 대한 의미 있는 탐색을 달성하도록 장려하는 내적 보상을 생성한다.
현재 시간 단계에 대한 내적 보상(206)을 생성하기 위해 현재 관찰(212)의 제어 가능성 표현(308)을 사용하는 것에 추가하여, 시스템(300)은 외부 메모리(304)에 현재 관찰(212)의 제어 가능성 표현(308)을 저장할 수 있다.
일부 구현예에서, 외부 메모리(304)는 "일화적(episodic)" 메모리일 수 있고, 즉 시스템(300)이 메모리 재설정 기준이 충족될 때마다 (예를 들어, 그 내용을 소거함으로써) 외부 메모리를 "재설정"하도록 한다. 예를 들어, 시스템(300)은 메모리 재설정 기준이 현재 시간 단계 이전에 미리 정의된 수의 시간 단계 N>1를 마지막으로 충족한 경우 또는 에이전트가 현재 시간 단계에서 자신의 작업을 완료한 경우 현재 시간 단계에서 충족되었다고 결정할 수 있다. 외부 메모리(304)가 일시적 메모리인 구현예에서, 비교 엔진(306)에 의해 생성된 내적 보상(206)은 "일시적(episodic)" 내적 보상으로 지칭될 수 있다. 일시적 내적 보상은 에이전트가 환경 상태를 각 가능한 상태로 반복적으로 전환하도록 하는 액션을 수행하여 환경을 지속적으로 탐색하도록 장려할 수 있다.
일시적 내적 보상을 결정하는 것에 더하여, 시스템(300)은 또한 일시적 메모리가 재설정되었던 마지막 시간 이후의 시간 단계만이 아니라 모든 이전 시간 단계에서 환경의 상태에 의존하는 "비일시적" 내적 보상을 결정할 수 있다. 비일시적 내적 보상은 예를 들어 Y. Burda et al.: "Exploration by random network distillation", arXiv:1810.12894v1(2018)을 참조하여 설명된 무작위 네트워크 증류(RND) 보상일 수 있다. 에이전트가 환경을 탐색하고 에이전트가 환경의 가능한 모든 상태를 반복적으로 재방문하도록 권장하지 않을 때 비일시적 내적 보상은 시간이 지남에 따라 줄어들 수 있다.
선택적으로, 시스템(300)은 일시적 보상 및 비-일시적 보상 모두에 기초하여 현재 시간 단계에 대한 내적 보상(206)을 생성할 수 있다. 예를 들어, 시스템(300)은 다음과 같이 시간 단계에 대한 고유 보상 R_t를 생성할 수 있다:
Figure pct00018
여기서,
Figure pct00019
은 예를 들어, 일시적 외부 메모리(304)를 사용하여 비교 엔진(306)에 의해 생성된 일시적인 보상을 나타내고,
Figure pct00020
은 비일시적 보상, 예를 들어 랜덤 네트워크 증류(RND) 보상을 나타내고, 여기서 비일시적 보상의 값은 미리 정의된 범위 [1,L]에서 잘린다(여기서 L>1).
임베딩 신경 네트워크(302)를 트레이닝하기 위한 몇 가지 예시적 기법이 다음에 더 자세히 설명된다.
일 예에서, 시스템(300)은 임베딩 신경 네트워크(302)를 액션 예측 신경 네트워크와 공동으로 트레이닝할 수 있다. 액션 예측 신경 네트워크는 (i) 제1 시간 단계에서 환경의 상태를 나타내는 제1 관찰, 및 (ii) 다음 시간 단계에서 환경의 상태를 나타내는 제2 관찰의 (임베딩 신경 네트워크에 의해 생성된) 각각의 제어가능성 표현을 포함하는 입력을 수신하도록 구성될 수 있다. 액션 예측 신경 네트워크는 입력을 프로세싱하여 환경 상태를 제1 관찰에서 제2 관찰로 전환하게 하는 에이전트에 의해 수행된 액션에 대한 예측을 생성할 수 있다. 시스템(300)은 임베딩 신경 네트워크(302) 및 액션 예측 신경 네트워크를 트레이닝하여 (i)액션 예측 신경 네트워크에 의해 생성된 예측된 액션과 (ii) 에이전트에 의해 실제로 수행되었던 "타겟" 액션 사이의 오차를 측정하는 목적 함수를 최적화할 수 있다. 특히, 시스템(300)은 액션 예측 신경 네트워크를 통해 그리고 다수의 트레이닝 반복 각각에서 임베딩 신경 네트워크(302)로 목적 함수의 기울기를 역전파할 수 있다. 목적 함수는 예를 들어 크로스 엔트로피 목적 함수일 수 있다. 이러한 방식으로 임베딩 신경 네트워크를 트레이닝하면 제어 가능성 표현이 에이전트의 액션, 즉 환경의 제어 가능한 양태에 의해 영향을 받는 환경에 대한 정보를 인코딩하도록 권장한다.
다른 예에서, 시스템(300)은 상태 예측 신경 네트워크와 함께 임베딩 신경 네트워크(302)를 트레이닝할 수 있다. 상태 예측 신경 네트워크는 (i) 시간 단계에서 환경의 상태를 나타내는 관찰의 제어 가능성 표현(임베딩 신경 네트워크(302)에 의해 생성됨) 및 (ii) 시간 단계에서 에이전트에 의해 수행된 액션의 표현을 포함하는 입력을 프로세싱하도록 구성될 수 있다. 상태 예측 신경 네트워크는 다음 단계에서, 즉 에이전트가 액션을 수행한 후 예측된 환경 상태를 나타내는 출력을 생성하기 위해 입력을 프로세싱할 수 있다. 출력은 예를 들어 다음 시간 단계에서 환경의 예측된 상태를 나타내는 예측된 제어 가능성 표현을 포함할 수 있다. 시스템(300)은 임베딩 신경 네트워크(302)와 상태 예측 신경 네트워크를 공동으로 트레이닝하여 (i) 상태 예측 신경 네트워크에 의해 생성된 예측된 제어 가능성 표현과 (ii) 다음 시간 단계에서 환경의 실제 상태를 나타내는 "타겟" 제어 가능성 표현 사이의 오차를 측정하는 목적 함수를 최적화할 수 있다. "타겟" 제어 가능성 표현은 다음 단계에서 환경의 실제 상태를 나타내는 관찰에 기초하여 신경 네트워크를 임베딩하여 생성될 수 있다. 특히, 시스템(300)은 다수의 트레이닝 반복들 각각에서 상태 예측 신경 네트워크를 통해 그리고 임베딩 신경 네트워크(302)으로 목적 함수의 기울기들을 역전파할 수 있다. 목적 함수는 예를 들어 제곱 오차 목적 함수일 수 있다. 이러한 방식으로 임베딩 신경 네트워크를 트레이닝하면 제어 가능성 표현이 에이전트의 액션, 즉 환경의 제어 가능한 양태에 의해 영향을 받는 환경에 대한 정보를 인코딩하도록 권장한다.
도 4는 작업 에피소드를 수행하고 리턴 계산 방식 선택 정책을 업데이트하기 위한 예시적 프로세스(400)의 흐름도이다. 편의상, 프로세스(400)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 액션 선택 시스템, 예를 들어, 본 명세서에 따라 적절하게 프로그램된 도 1의 액션 선택 시스템(100)이 프로세스(500)를 수행할 수 있다.
시스템은 다수의 상이한 리턴 계산 방식 중에서 선택하기 위한 정책을 지정하는 정책 데이터를 유지관리하며(단계 402), 각각의 리턴 계산 방식은 상기 작업의 에피소드를 수행하는 동안 환경을 탐색하는 것에 상이한 중요도를 할당한다.
시스템은 상기 정책을 사용하여, 다수의 상이한 리턴 계산 방식으로부터 리턴 계산 방식을 선택한다(단계 404). 예를 들어, 정책은 방식이 에피소드에 대한 에이전트를 제어하는데 사용되는 경우 수신될 보상 신호의 현재 추정치를 나타내는 각 방식에 각각의 보상 점수를 할당할 수 있다. 일 예시로서, 정책을 선택하기 위해, 시스템은 보상 점수가 가장 높은 방식을 선택할 수 있다. 또 다른 예로, 확률 ε을 사용하여 시스템은 방식들의 세트에서 임의의 방식을 선택할 수 있고, 확률 1 - ε을 사용하여 시스템은 정책에 정의된 가장 높은 보상 점수를 가진 방식을 선택할 수 있다. 다른 예로서, 정책을 선택하기 위해, 시스템은 보상 점수를 리턴 계산 방식들의 세트에 대한 확률 분포에 매핑한 다음 확률 분포로부터 방식을 샘플링할 수 있다.
시스템은 상기 선택된 리턴 계산 방식에 따라 계산된 리턴을 최대화하기 위해 상기 작업의 에피소드를 수행하도록 에이전트를 제어한다(단계 406). 즉, 작업 에피소드 동안, 시스템은 선택된 리턴 계산 방식을 식별하는 데이터에 대해 액션 선택 신경 네트워크(들)를 조절한다.
시스템은 상기 에이전트가 작업의 에피소드를 수행한 결과 생성되었던 보상을 식별한다(단계 408). 특정 예로서, 시스템은 외적 보상, 즉 작업 에피소드의 각 시간 단계에서 수신되었던 작업의 진행을 측정하는 보상을 식별할 수 있다.
시스템은 상기 식별된 보상을 사용하여, 다수의 상이한 리턴 계산 방식 중에서 선택하기 위해 정책을 업데이트한다(단계 410).
일반적으로 시스템은 각각의 리턴 계산 방식들에 대응하는 각각의 암(arm)을 갖는 비고정 다중 암 밴디트 알고리즘(non-stationary multi-armed bandit algorithm)을 사용하여 정책을 업데이트한다.
보다 구체적으로, 시스템은 식별된 보상으로부터 밴디트 알고리즘에 대한 보상 신호를 생성한 다음 보상 신호를 사용하여 정책을 업데이트할 수 있다. 보상 신호는 작업 에피소드 동안 수신된 외적 보상, 예를 들어 수신된 보상의 디스카운트되지 않은 합계인 디스카운트되지 않은 외적 보상의 조합일 수 있다.
시스템은 업데이트를 수행하기 위해 다양한 비고정 다중 암 밴디트 알고리즘을 사용할 수 있다.
특정 예로서, 시스템은 각 방식에 대해 현재 에피소드의 일부 고정된 수의 작업 에피소드 내에서, 즉 고정 길이의 가장 최근 지평 내에서 에피소드에 대해 수신된 보상 신호의 경험적 평균을 계산할 수 있다. 그런 다음 시스템은 방식 대한 경험적 평균으로부터 각 방식에 대한 보상 점수를 계산할 수 있다. 예를 들어, 시스템은 주어진 방식에 대한 경험적 평균에 신뢰 한계 보너스를 추가하여 주어진 방식에 대한 보상 점수를 계산할 수 있다. 신뢰 한계 보너스는 최근 지평 내에서 주어진 방식이 몇 번 선택되었는지에 기초하여 결정될 수 있다. 즉, 더 적은 횟수로 선택된 방식에 더 큰 보너스가 할당된다. 특정 예로서, k번째 작업 에피소드 이후에 계산된 주어진 방식에 대한 보너스는 다음을 만족할 수 있다:
Figure pct00021
또는
Figure pct00022
,
여기서 β는 고정된 가중치,
Figure pct00023
는 최근 지평 내에서 주어진 방식 a가 선택된 횟수, τ는 지평의 길이이다.
따라서, 시스템은 액션 선택 신경 네트워크(들)를 트레이닝하는 동안 리턴 계산 방식 중에서 선택하기 위한 정책을 적응적으로 수정하여, 트레이닝 동안의 다른 시점에서 다른 리턴 계산 방식이 정책에 의해 선호되게 한다(따라서 선택될 가능성이 더 높음). 정책은 트레이닝의 특정 시점에서 서로 다른 방식에 대해 예상되는 보상 신호(외적 보상에 기초함)에 기초하기 때문에, 시스템은 더 높은 외적 보상이 작업 에피소드의 과정에 대해 수집될 가능성이 더 큰 방식을 선택할 가능성이 더 높으며, 액션 선택 신경 네트워크(들)에 대해 더 높은 품질의 트레이닝 데이터가 생성되는 결과를 가져온다.
본 명세서는 시스템 및 컴퓨터 프로그램 컴포넌트들과 관련하여 "구성된"이라는 용어를 사용한다. 하나 이상의 컴퓨터들의 시스템은 특정한 동작들 또는 액션 수단들을 수행하도록 구성되며, 상기 시스템에 소프트웨어, 펌웨어, 하드웨어 또는 그들의 조합이 설치되어 동작시 상기 시스템으로 하여금 동작들 또는 액션들을 수행하게 한다. 하나 이상의 컴퓨터 프로그램들은 특정한 동작들 또는 액션 수단들을 수행하도록 구성되며, 상기 하나 이상의 프로그램들은 데이터 프로세싱 장치에 의해 실행될 때, 상기 장치로 하여금 동작들 또는 액션들을 수행하게 하는 명령어들을 포함한다.
본 발명의 실시예들과 본 명세서에 기술된 기능적 동작들은 본 발명에 개시된 구조들 및 그들의 구조적 균등물들 또는 그들 중 하나 이상의 조합들을 포함하는, 디지털 전자회로에서, 유형적으로 수록된 컴퓨터 소프트웨어 또는 펌웨어에서, 컴퓨터 하드웨어에서 구현될 수 있다. 본 명세서에 기술된 본 발명의 실시예들은 하나 이상의 컴퓨터 프로그램들로서 구현될 수 있다. 즉, 데이터 프로세싱 장치에 의해 실행 또는 데이터 프로세싱 장치의 동작을 제어하기 위한 유형적 비일시적인 저장 매체에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들. 컴퓨터 저장 매체는 기계 판독가능 저장 디바이스, 기계 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스 또는 그들 중 하나 이상의 조합일 수 있다. 대안적으로 또는 추가로, 프로그램 명령어들은 데이터 프로세싱 장치에 의해 실행하기 위한 적절한 수신기 장치에 전송하기 위한 정보를 인코딩하기 위해 생성된 인공적으로 생성된 전파된 신호 즉, 기계-생성 전기, 광학 또는 전자기적 신호에 인코딩될 수 있다.
용어 "데이터 프로세싱 장치"는 데이터 프로세싱 하드웨어를 지칭하며, 예시로서 프로그래머블 프로세서, 컴퓨터, 또는 다수의 프로세서들 또는 컴퓨터들을 포함하는 데이터를 프로세싱하기 위한 모든 종류의 장치, 디바이스들 및 기계들을 포함한다. 상기 장치는 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array) 또는 ASIC (application specific integrated circuit)이거나 특수 목적 논리 회로를 포함할 수 있다. 장치는 하드웨어 이외에 컴퓨터 프로그램들에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 그들 중 하나 이상의 조합을 구성하는 코드를 선택적으로 포함할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 앱, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로도 참조되거나 기술될 수 있음)은 컴파일된 또는 인터프리트된 언어들, 또는 선언적 또는 절차적 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 독립 실행형 프로그램으로서 또는 모듈, 컴포넌트, 서브루틴으로서 또는 컴퓨팅 환경에서 사용하기에 적합한 기타 단위를 포함하는 임의의 형태로 배포될 수 있다. 프로그램은 파일 시스템의 파일에 대응할 수 있지만, 반드시 그런 것은 아니다. 프로그램은 다른 프로그램들이나 데이터, 예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트들을 가지는 파일의 부분에, 문제되는 프로그램 전용 단일의 파일에 또는 다수의 조정된 파일들, 예를 들어, 하나 이상의 모듈들, 서브프로그램 또는 코드의 일부를 저장하는 파일들에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 사이트에 위치되어 있거나 다수의 사이트들에 걸쳐서 분산되어 있고 데이터 통신 네트워크에 의해 상호연결된 다수의 컴퓨터들에서 실행되도록 배포될 수 있다.
본 명세서에서 용어 "엔진"은 하나 이상의 특정 기능을 수행하도록 프로그램된 소프트웨어 기반 시스템, 서브시스템 또는 프로세스를 지칭하기 위해 광범위하게 사용된다. 일반적으로 엔진은 하나 이상의 소프트웨어 모듈 또는 컴포넌트들로 구현될 것이며, 하나 이상의 위치들에 있는 하나 이상의 컴퓨터들에 설치된다. 일부 경우에, 하나 이상의 컴퓨터들은 특정한 엔진 전용일 수 있고; 다른 경우에, 다수의 엔진들이 동일한 컴퓨터나 컴퓨터들에 설치되고 실행될 수 있다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 동작하고 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래머블 컴퓨터들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름은 특수 목적 논리 회로, 예를 들어 FPGA 또는 ASIC에 의해 또는 특수 목적 논리 회로와 하나 이상의 프로그래밍된 컴퓨터의 조합에 의해 수행될 수 있다.
컴퓨터 프로그램의 실행에 적절한 컴퓨터들은 일반적 또는 특수 목적 마이크로프로세서들 또는 둘 모두, 또는 임의의 기타 종류의 중앙 프로세싱 유닛에 기초할 수 있다. 일반적으로, 중앙 프로세싱 유닛은 읽기-전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 엘리먼트들은 명령어들을 수행하거나 실행하기 위한 중앙 프로세싱 유닛 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 중앙 프로세싱 유닛 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 그 안에 통합될 수 있다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대형 저장 디바이스들 예를 들면, 자기적, 자기-광학 디스크들 또는 광학적 디스크들 또한 포함하거나 또는 그로부터 데이터를 수신하거나 그에 데이터를 전송하기 위해 동작적으로 결합될 수 있다. 그러나, 컴퓨터는 상기 디바이스들을 반드시 가져야하는 것은 아니다. 추가로, 컴퓨터는 다른 디바이스, 예를 들어, 몇 가지만 나열하면, 모바일 전화, 개인 휴대 정보 단말기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, GPS 수신기 또는 휴대용 저장 디바이스 예를 들어, 범용 직렬 버스(USB) 플래시 드라이브에 내장될 수 있다.
컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스들과 같은 반도체 메모리 디바이스들; 예를 들어, 내부 하드 디스크들 또는 이동식 디스크들과 같은 자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스들을 포함한다.
사용자와의 인터렉션을 제공하기 위해, 본 명세서에서 기술된 본 발명의 실시예들은 사용자에게 정보를 디스플레이하기 위해 예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터와 같은 디스플레이 디바이스 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스 예를 들어, 마우스 또는 트랙볼을 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 인터렉션을 제공하는데 사용될 수 있다. 예를 들어, 사용자에게 제공되는 피드백은 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각적 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서를 송수신함으로써 예를 들어, 웹 브라우저로부터 수신된 요청에 응답하여, 사용자의 디바이스상의 웹 브라우저에 웹 페이지를 전송함으로써 사용자와 인터렉션할 수 있다. 또한, 컴퓨터는 텍스트 메시지 또는 다른 형태의 메시지를 개인 디바이스(예: 메시징 어플리케이션을 실행 중인 스마트폰)로 보내고, 응답으로 사용자로부터 응답 메시지를 수신함으로써 사용자와 인터렉션할 수 있다.
기계 학습 모델들을 구현하는 데이터 프로세싱 장치는 예를 들어, 기계 학습 트레이닝 또는 생산, 즉 추론, 작업 부하의 공통 및 계산 집중적 부분을 프로세싱하기 위한 특수 목적 하드웨어 가속기 유닛을 포함할 수 있다.
기계 학습 모델들은 기계 학습 프레임 워크(예: TensorFlow 프레임 워크, Microsoft Cognitive Toolkit 프레임 워크, Apache Singa 프레임 워크 또는 Apache MXNet 프레임 워크)를 사용하여 구현 및 배치될 수 있다.
본 명세서에서 기술된 발명의 실시예는 예를 들어 데이터 서버와 같은 백엔드 컴포넌트, 애플리케이션 서버와 같은 미들웨어 컴포넌트 또는 그래픽 사용자 인터페이스를 가지는 사용자 컴퓨터 또는 사용자가 본 명세서에 기술된 본 발명의 구현예와 인터렉션할 수 있는 웹 브라우저 또는 앱과 같은 프론트엔드 컴포넌트 또는 하나 이상의 상기 백엔드, 미들웨어 또는 프론트엔드 컴포넌트들의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신의 임의의 형태 또는 매체, 예를 들어 통신 네트워크에 의해 상호연결될 수 있다. 통신 네트워크들의 예시들은 LAN(local area network) 및 WAN(wide area network) 예를 들어, 인터넷을 포함한다.
컴퓨팅 시스템은 사용자들 및 서버들을 포함할 수 있다. 사용자와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 인터렉션한다. 사용자와 서버의 관계는 각각의 컴퓨터에서 실행되고 서로 사용자-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다. 일부 실시예에서, 서버는 예를 들어, 디바이스와 인터렉션하는 사용자에게 데이터를 디스플레이하고 사용자로부터 사용자 입력을 수신하기 위해, 클라이언트로서 동작하는 사용자 디바이스에 데이터(예: HTML 페이지)를 전송한다. 사용자 디바이스에서 생성된 데이터(예를 들어, 사용자 인터렉션의 결과)는 서버에서 디바이스로부터 수신될 수 있다.
본 명세서는 많은 특정 구현 세부내용을 포함하지만, 이들은 임의의 발명의 범위 또는 청구될 수 있는 범위에 대한 제한으로서 해석되어서는 안되며, 오히려 특정한 발명의 특정한 실시예에 특정적일 수 있는 구성들에 대한 설명으로 해석되어야 한다. 별개의 실시예의 컨텍스트에서 본 명세서에서 기술되는 일정 구성들은 또한 단일 실시예에서 조합하여 구현될 수 있다. 반대로, 단일 실시예의 컨텍스트에서 기술된 다양한 구성들은 또한 다수의 실시예에서 개별적으로 또는 임의의 적절한 서브 조합으로 구현될 수 있다. 게다가, 구성들은 일정 조합으로 동작하고 심지어 초기적으로 그렇게 청구되는 것으로서 상기에서 기술될 수 있지만, 청구된 조합으로부터의 하나 이상의 구성들은 일부 경우, 조합으로부터 제거될 수 있고, 청구된 조합은 서브 조합 또는 서브 조합의 변형으로 안내될 수 있다.
유사하게, 동작들이 특정한 순서로 도면에서 도시되고 청구항들에 기재되었지만, 이는 상기 동작들이 도시된 특정한 순서로 또는 시계열적 순서로 수행되어야 함을 요구하는 것으로서 또는 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안된다. 특정 환경에서, 멀티태스킹과 병렬 프로세싱은 이점이 있다. 게다가, 상기 기술된 실시예에서 다양한 시스템 모듈들 및 컴포넌트들의 분리는 모든 실시예에서 그러한 분리가 필요한 것으로서 이해되어서는 안되며, 일반적으로 기술된 프로그램 컴포넌트들 및 시스템들은 단일의 소프트웨어 제품에 함께 통합되거나 다수의 소프트웨어 제품들에 패키징될 수 있다고 이해되어야 한다.
본 발명의 특정한 실시예들이 기술되었다. 다른 실시예들도 다음의 청구항들의 범위 내에 있다. 예를 들면, 청구항들에서 기재된 액션들은 상이한 순서로 수행되고 여전히 원하는 결과들을 달성할 수 있다. 일 예시로서, 첨부 도면들에 도시된 프로세스들은 원하는 결과들을 달성하기 위해 특정한 도시된 순서, 또는 시계열적 순서를 반드시 필요로 하지 않는다. 일부 경우에, 멀티태스킹과 병렬 프로세싱은 이점이 있다.

Claims (16)

  1. 작업의 에피소드를 수행하기 위해 환경과 인터렉션하는 에이전트를 제어하는 방법으로서,
    다수의 상이한 리턴 계산 방식 중에서 선택하기 위한 정책을 지정하는 데이터를 유지관리하는 단계, 각각의 리턴 계산 방식은 상기 작업의 에피소드를 수행하는 동안 환경을 탐색하는 것에 상이한 중요도를 할당하며;
    상기 정책을 사용하여, 다수의 상이한 리턴 계산 방식으로부터 리턴 계산 방식을 선택하는 단계;
    상기 선택된 리턴 계산 방식에 따라 계산된 리턴을 최대화하기 위해 상기 작업의 에피소드를 수행하도록 에이전트를 제어하는 단계;
    상기 에이전트가 작업의 에피소드를 수행한 결과 생성되었던 보상을 식별하는 단계; 및
    상기 식별된 보상을 사용하여, 다수의 상이한 리턴 계산 방식 중에서 선택하기 위해 정책을 업데이트하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 다수의 상이한 리턴 계산 방식은 적어도 리턴을 생성하기 위해 보상을 결합하는데 사용되는 각각의 디스카운트 팩터를 각각 지정하는, 방법.
  3. 임의의 선행하는 청구항에 있어서,
    상기 다수의 상이한 리턴 계산 방식은 적어도 리턴을 생성할 때 환경으로부터 수신되는 외적 보상에 대한 내적 보상의 중요도를 정의하는 각각의 내적 보상 스케일링 팩터를 각각 지정하는, 방법.
  4. 임의의 선행하는 청구항에 있어서,
    상기 선택된 리턴 계산 방식에 따라 계산된 리턴을 최대화하기 위해 상기 작업의 에피소드를 수행하도록 에이전트를 제어하는 단계는:
    상기 환경의 현재 상태를 나타내는 관찰을 수신하는 단계;
    액션 선택 출력을 생성하기 위해 하나 이상의 액션 선택 신경 네트워크를 사용하여 상기 선택된 리턴 계산 방식을 지정하는 데이터 및 상기 관찰을 프로세싱하는 단계; 및
    상기 액션 선택 출력을 사용하여 상기 에이전트에 의해 수행될 액션을 선택하는 단계를 반복적으로 수행하는 것을 포함하는, 방법.
  5. 청구항 4에 있어서,
    상기 환경은 현실 세계 환경이고, 각각의 관찰은 환경을 감지하도록 구성된 적어도 하나의 센서의 출력이고, 상기 에이전트는 환경과 인터렉션하는 기계적 에이전트인, 방법.
  6. 청구항 4 또는 5에 있어서,
    상기 하나 이상의 액션 선택 신경 네트워크는:
    상기 환경과의 인터렉션 동안 수신된 관찰에 기초하여 내적 보상 시스템에 의해 생성된 내적 보상으로부터만 계산된 내적 리턴을 추정하는 내적 보상 액션 선택 신경 네트워크; 및
    상기 환경과의 인터렉션의 결과로 환경으로부터 수신된 외적 보상으로부터만 계산된 외적 리턴을 추정하는 외적 보상 액션 선택 신경 네트워크를 포함하는, 방법.
  7. 청구항 6에 있어서,
    액션 선택 출력을 생성하기 위해 하나 이상의 액션 선택 신경 네트워크를 사용하여 상기 선택된 리턴 계산 방식을 지정하는 데이터 및 상기 관찰을 프로세싱하는 단계는 액션 세트의 각 액션에 대해:
    상기 에이전트가 상기 관찰에 응답하여 액션을 수행하는 경우 수신될 추정된 내적 리턴을 생성하기 위해 상기 내적 보상 액션 선택 신경 네트워크를 사용하여 선택된 리턴 계산 방식을 지정하는 상기 데이터, 상기 액션 및 상기 관찰을 프로세싱하는 단계;
    상기 에이전트가 상기 관찰에 응답하여 액션을 수행하는 경우 수신될 추정된 외적 리턴을 생성하기 위해 상기 외적 보상 액션 선택 신경 네트워크를 사용하여 선택된 리턴 계산 방식을 지정하는 상기 데이터, 상기 액션 및 상기 관찰을 프로세싱하는 단계; 및
    상기 추정된 내적 보상과 상기 추정된 외적 보상으로부터 최종 리턴 추정치를 결정하는 단계를 포함하는, 방법.
  8. 청구항 7에 있어서,
    상기 액션 선택 출력을 사용하여 상기 에이전트에 의해 수행될 액션을 선택하는 단계는 확률 1 - ε을 갖는 가장 높은 최종 리턴 추정치를 갖는 액션을 선택하는 단계 및 확률 ε을 갖는 액션 세트로부터 랜덤 액션을 선택하는 단계를 포함하는, 방법.
  9. 청구항 6 내지 8 중 어느 한 항에 있어서,
    상기 두 개의 액션 선택 신경 네트워크는 동일한 아키텍처를 갖지만 상이한 파라미터 값을 갖는, 방법.
  10. 청구항 5 내지 9 중 어느 한 항에 있어서,
    작업 에피소드의 수행으로부터 트레이닝 데이터를 생성하는 단계; 및
    강화 학습을 통해 상기 트레이닝 데이터에 대해 하나 이상의 액션 선택 신경 네트워크를 트레이닝하는 단계를 더 포함하는, 방법.
  11. 청구항 10에 있어서,
    청구항 6 내지 9 중 어느 한 항에 또한 종속하는 경우, 상기 트레이닝 데이터에 대해 상기 하나 이상의 액션 선택 신경 네트워크를 트레이닝하는 단계는:
    상기 작업 에피소드의 수행 결과 생성된 내적 보상만을 사용하여 상기 내적 보상 액션 선택 신경 네트워크를 트레이닝하는 단계; 및
    상기 작업 에피소드의 수행 동안에 수신된 외적 보상만을 사용하여 외적 보상 액션 선택 신경 네트워크를 트레이닝하는 단계를 포함하는, 방법.
  12. 임의의 선행하는 청구항에 있어서,
    상기 정책은 각각의 리턴 계산 방식에 각각의 보상 점수를 할당하는, 방법.
  13. 임의의 선행하는 청구항에 있어서,
    상기 정책은 각각의 리턴 계산 방식에 대응하는 각각의 암(arm)을 갖는 비고정 다중 암 밴디트 알고리즘(non-stationary multi-armed bandit algorithm)을 사용하여 업데이트되는, 방법.
  14. 청구항 13에 있어서,
    상기 식별된 보상을 사용하여, 다수의 상이한 리턴 계산 방식 중에서 선택하기 위해 정책을 업데이트하는 단계는:
    상기 작업 에피소드의 수행 동안에 수신된 외적 보상으로부터 디스카운트되지 않은 외적 리턴을 결정하는 단계; 및
    비고정 다중 암 밴디트 알고리즘에 대한 보상 신호로서 디스카운트되지 않은 외적 보상을 사용하여 정책을 업데이트하는 단계를 포함하는, 방법.
  15. 하나 이상의 컴퓨터와 명령어가 저장된 하나 이상의 저장 디바이스를 포함하는 시스템으로서, 상기 명령어는 하나 이상의 컴퓨터에 의해 실행될 때, 상기 하나 이상의 컴퓨터로 하여금 청구항 1 내지 14 중 어느 한 항의 각각의 방법의 동작들을 수행하게 하는, 시스템.
  16. 명령어가 저장된 하나 이상의 컴퓨터 저장 매체로서, 상기 명령어는 하나 이상의 컴퓨터에 의해 실행될 때, 상기 하나 이상의 컴퓨터로 하여금 청구항 1 내지 15 중 어느 한 항의 각각의 방법의 동작들을 수행하게 하는, 컴퓨터 저장 매체.
KR1020227030755A 2020-02-07 2021-02-08 적응형 리턴 계산 방식을 사용한 강화 학습 KR20220137732A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062971890P 2020-02-07 2020-02-07
US62/971,890 2020-02-07
PCT/EP2021/052988 WO2021156518A1 (en) 2020-02-07 2021-02-08 Reinforcement learning with adaptive return computation schemes

Publications (1)

Publication Number Publication Date
KR20220137732A true KR20220137732A (ko) 2022-10-12

Family

ID=74591970

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227030755A KR20220137732A (ko) 2020-02-07 2021-02-08 적응형 리턴 계산 방식을 사용한 강화 학습

Country Status (7)

Country Link
US (1) US20230059004A1 (ko)
EP (1) EP4100881A1 (ko)
JP (1) JP2023512722A (ko)
KR (1) KR20220137732A (ko)
CN (1) CN115298668A (ko)
CA (1) CA3167201A1 (ko)
WO (1) WO2021156518A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114362773B (zh) * 2021-12-29 2022-12-06 西南交通大学 一种面向光学射频对消的实时自适应追踪决策方法
GB202202994D0 (en) * 2022-03-03 2022-04-20 Deepmind Tech Ltd Agent control through cultural transmission
CN114676635B (zh) * 2022-03-31 2022-11-11 香港中文大学(深圳) 一种基于强化学习的光学谐振腔反向设计和优化的方法
CN114492845B (zh) * 2022-04-01 2022-07-15 中国科学技术大学 资源受限条件下提高强化学习探索效率的方法
WO2024056891A1 (en) * 2022-09-15 2024-03-21 Deepmind Technologies Limited Data-efficient reinforcement learning with adaptive return computation schemes
US20240112038A1 (en) * 2022-09-26 2024-04-04 Deepmind Technologies Limited Controlling agents using reporter neural networks

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10977551B2 (en) * 2016-12-14 2021-04-13 Microsoft Technology Licensing, Llc Hybrid reward architecture for reinforcement learning

Also Published As

Publication number Publication date
EP4100881A1 (en) 2022-12-14
US20230059004A1 (en) 2023-02-23
CA3167201A1 (en) 2021-08-12
JP2023512722A (ja) 2023-03-28
WO2021156518A1 (en) 2021-08-12
CN115298668A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
US11663441B2 (en) Action selection neural network training using imitation learning in latent space
US11868894B2 (en) Distributed training using actor-critic reinforcement learning with off-policy correction factors
KR20220137732A (ko) 적응형 리턴 계산 방식을 사용한 강화 학습
US11263531B2 (en) Unsupervised control using learned rewards
JP7335434B2 (ja) 後知恵モデリングを用いた行動選択ニューラルネットワークの訓練
US11627165B2 (en) Multi-agent reinforcement learning with matchmaking policies
US11714990B2 (en) Jointly learning exploratory and non-exploratory action selection policies
EP3788549A1 (en) Stacked convolutional long short-term memory for model-free reinforcement learning
KR20220137956A (ko) 목적별 액션-가치 함수를 사용한 다목적 강화 학습
US20230083486A1 (en) Learning environment representations for agent control using predictions of bootstrapped latents
CN115280322A (zh) 使用学习的隐藏状态规划作用因素控制
CN116324818A (zh) 使用增强时间差异学习训练强化学习智能体
US20220076099A1 (en) Controlling agents using latent plans
EP4085385A1 (en) Generating implicit plans for accomplishing goals in an environment using attention operations over planning embeddings
KR20230010746A (ko) 상대 엔트로피 q-러닝을 사용한 액션 선택 시스템 트레이닝
US20240086703A1 (en) Controlling agents using state associative learning for long-term credit assignment
US20230093451A1 (en) State-dependent action space quantization
US20240104379A1 (en) Agent control through in-context reinforcement learning
WO2024056891A1 (en) Data-efficient reinforcement learning with adaptive return computation schemes
JP2024519271A (ja) 弁別器モデルの集合を使用した強化学習
EP4356302A1 (en) Controlling agents by switching between control policies during task episodes