KR102596158B1 - 이중 액터 크리틱 알고리즘을 통한 강화 학습 - Google Patents

이중 액터 크리틱 알고리즘을 통한 강화 학습 Download PDF

Info

Publication number
KR102596158B1
KR102596158B1 KR1020217027623A KR20217027623A KR102596158B1 KR 102596158 B1 KR102596158 B1 KR 102596158B1 KR 1020217027623 A KR1020217027623 A KR 1020217027623A KR 20217027623 A KR20217027623 A KR 20217027623A KR 102596158 B1 KR102596158 B1 KR 102596158B1
Authority
KR
South Korea
Prior art keywords
action
model
loss function
policy
copy
Prior art date
Application number
KR1020217027623A
Other languages
English (en)
Other versions
KR20210118182A (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
Application filed by 소니그룹주식회사, 소니 코포레이션 오브 아메리카 filed Critical 소니그룹주식회사
Publication of KR20210118182A publication Critical patent/KR20210118182A/ko
Application granted granted Critical
Publication of KR102596158B1 publication Critical patent/KR102596158B1/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/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing 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)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)
  • Feedback Control In General (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

이중 액터 크리틱(DAC) 강화 학습 알고리즘은, 정책의 치명적인 과적합 없이 안정적인 정책 개선 및 적극적인 뉴럴-넷 최적화를 제공한다. DAC는 오프라인 및 온라인 학습 양측 모두에서 임의적인 이력의 데이터를 사용하여 모델들을 트레이닝시키고, 일부 다른 수단에 의해 학습 또는 정의되는 기존 정책에 대해 원활하게 개선시키는 데 사용될 수 있다. 결국, DAC는 이산 및 연속 액션 공간들에 의한 강화 학습 문제들을 최적화시킬 수 있다.

Description

이중 액터 크리틱 알고리즘을 통한 강화 학습
본 발명의 실시예들은 일반적으로 머신 학습 시스템들 및 방법들에 관한 것이다. 더 구체적으로는, 본 발명은, 지능형 인공 에이전트(intelligent artificial agent)와 같은, 디바이스에 대한 강화 학습(reinforcement learning)을 위한 이중 액터 크리틱 알고리즘(double actor critic algorithm)을 사용하기 위한 시스템들 및 방법들에 관한 것이다.
다음의 배경 정보는, 선행 기술의 추가 양태들에 대해 독자를 추가로 교육시키는 데 도움이 될 것으로 예상되었지만, 본 발명 또는 그의 임의의 실시예들을, 그 안에서 언급 또는 암시되거나 또는 그에 대해 추론된 것으로 제한하는 것으로서 해석되어서는 안 되는, 선행 기술의 특정 양태들(예를 들어, 제한 없이, 접근법들, 사실들, 또는 보편적 지혜)의 예들을 제시할 수도 있다.
어떠한 기존 액터-크리틱 알고리즘도, 본 발명의 실시예들에 의해 다루어지는 아래에 논의된 것들을 포함하여, 산업적 사용 사례들에 대한 다수의 중요한 특성들을 지원하지 않는다. 대부분의 종래의 알고리즘들은, 가장 최근 버전의 액터 모델로부터의 판정들을 사용하여 생성되는 매우 엄격한 세트들의 데이터를 요구한다. 다른 종래의 알고리즘들은, 판정들이 어떻게 행해졌는지의 명시적 지식(예를 들어, 데이터를 생성한 시스템으로부터의 판정 확률)을 요구한다. 일부 종래의 알고리즘들은 이산(discrete) 또는 연속(continuous) 액션 도메인들만을 단지 지원하고, 이들 양측 모두를 지원하지 않는다. 많은 접근법들에는 치명적인 과적합(overfitting)을 회피하기 위한 메커니즘들이 결여되어 있다. 일부 종래의 방법들은 다른 학습 패러다임들 또는 배경 지식과의 통합을 제한하는 항들을 이들의 목적 함수들에 도입한다. 결국, 어떠한 기존 시스템도 안정적인 정책 반복(policy iteration)을 위한 목적들 양측 모두에서 스테일 액터 및 크리틱 모델(stale actor and critic model)들 양측 모두를 사용하지 않는다.
전술한 것의 관점에서, 종래의 방법들의 결점들 중 일부 또는 전부를 충족시킬 수 있는 알고리즘에 대한 필요성이 있다는 것이 분명하다.
이중 액터 크리틱(Double Actor Critic)(DAC)은, 다음의 것을 포함하여, 산업적 사용 사례들에 대한 다수의 중요한 특성들을 만족시킨다: (1) DAC는 임의의 임의적인 정책에 따라 수집된 이력 데이터(historical data)에 대해 동작할 수 있고; (2) DAC는 데이터에서의 관찰된 판정들이 어떻게 행해졌는지에 관한 어떠한 특별한 지식도 요구하지 않고; (3) DAC는 이산 액션 문제들과 연속 액션 문제들에 대한 지원을 제공하고; (4) DAC는 제한된 데이터에 대한 치명적인 과적합 없이 적극적인 정책 최적화를 수행하고; (5) DAC는 시연(demonstration)으로부터의 학습과 같은 다른 정책 학습 패러다임들 또는 배경 지식과 통합될 수 있으며; (6) DAC는 안정적인 반복을 제공하여, 노이즈가 있는 크로스 목적 모델 변경(cross-objective model change)들로 인한 적합 에러(fitting error)들을 회피시킨다.
예를 들어, DAC는 상이한 구역들 내의 온도, 시각(time of day), 영역 내의 사람들의 수 등의 측정치들에 기초하여, 판정들이, 상이한 난방 및 냉방 시스템들을 턴 온(turn on)시킬지 또는 턴 오프시킬지 여부와 관련된 이산 액션 HVAC 제어 문제를 해결하는 데 사용될 수도 있다. DAC는 카메라로부터의 이미지들 및 조인트(joint)들의 포지션에 기초하여 객체들을 픽 앤 플레이스(pick and place)하기 위해 로봇 팔 및 조작기를 제어하는 방법과 같은 연속 액션 제어 문제들을 해결하는 데 또한 사용될 수도 있다.
본 발명의 실시예들은 에이전트에 대한 강화 학습 알고리즘을 제공하는데, 이 알고리즘은, 정책 모델(policy model)을 트레이닝시키기 위해 액션 가치 모델(action-value model)을 사용하는 것 - 액션 가치 모델은, 에이전트의 하나 이상의 프로세서들 내에서, 에이전트의 현재 관찰 하에서 가상 액션(hypothetical action)이 선택되었고 그 후 에이전트의 거동이 뒤따른 경우 받게 될 예상되는 장래 할인 보상(expected future discounted reward)을 추정함 -; 및 액션 가치 모델과 정책 모델 양측 모두의 스테일 카피(stale copy)를 유지하는 것을 포함하고, 여기서 스테일 카피는 프레시 카피(fresh copy)와 동일하게 초기화되고, 프레시 카피에 대해 학습 업데이트들이 수행됨에 따라 프레시 카피와 매칭되도록 느리게 이동되고, 여기서 이 알고리즘은, 이전에 수집된 데이터를 사용하여 알고리즘이 트레이닝되는 오프라인 변형(offline variant)과, 알고리즘이 정책 모델을 트레이닝시킴에 따라 데이터가 수집되는 온라인 변형 양측 모두를 갖는다.
본 발명의 실시예들은 에이전트의 액션 가치 모델 및 정책 모델을 트레이닝시키는 방법을 추가로 제공하는데, 이 방법은, 액션 가치 모델에 의해 에이전트의 하나 이상의 프로세서들 내에서, 에이전트의 현재 관찰 하에서 가상 액션이 에이전트에 의해 선택되었고 그 후 에이전트의 거동이 뒤따른 경우 받게 될 예상되는 장래 할인 보상을 추정하는 단계 - 예상되는 장래 할인 보상 Q
에 의해 결정되고,
여기서 r t 는 시간 단계 t에서 받은 보상이고, s는 환경 상태의 현재 관찰이고, a는 가상 액션이고, π는 정책 모델이고, γ는, 얼마나 가치있는 장래 보상들이 더 즉각적인 보상들에 대한 것인지를 정의하는 도메인에서의 할인 인자(discount factor) [0, 1)임 -; 및 액션 가치 모델과 정책 모델 양측 모두의 스테일 카피를 유지하는 단계를 포함하고, 여기서 스테일 카피는 프레시 카피와 동일하게 초기화되고, 프레시 카피에 대해 학습 업데이트들이 수행됨에 따라 프레시 카피와 매칭되도록 단계적으로 이동되고, 여기서 알고리즘은, 이전에 수집된 데이터를 사용하여 알고리즘이 트레이닝되는 오프라인 변형과, 알고리즘이 정책 모델을 트레이닝시킴에 따라 데이터가 수집되는 온라인 변형 양측 모두를 가지며; 정책 모델의 스테일 카피는, 액션 가치 모델 크리틱의 프레시 카피에 의해 평가되는 오래된 정책으로서 작용하고; 액션 가치 모델의 스테일 카피는, 프레시 정책 모델이 개선시키는 보다 앞선 정책 모델의 Q-값들을 제공한다.
본 발명의 실시예들은 실행가능 프로그램이 저장되는 비일시적 컴퓨터 판독가능 저장 매체를 또한 제공하고, 여기서 이 프로그램은, 다음의 단계들 (1) 정책 모델을 트레이닝시키기 위해 액션 가치 모델을 사용하는 단계 - 액션 가치 모델은, 에이전트의 하나 이상의 프로세서들 내에서, 에이전트의 현재 관찰 하에서 가상 액션이 선택되었고 그 후 에이전트의 거동이 뒤따른 경우 받게 될 예상되는 장래 할인 보상을 추정함 -; 및 (2) 액션 가치 모델과 정책 모델 양측 모두의 스테일 카피를 유지하는 단계를 수행하도록 하나 이상의 프로세서들에게 명령하고, 여기서 스테일 카피는 프레시 카피와 동일하게 초기화되고, 프레시 카피에 대해 학습 업데이트들이 수행됨에 따라 프레시 카피와 매칭되도록 느리게 이동되고, 여기서 알고리즘은, 이전에 수집된 데이터를 사용하여 알고리즘이 트레이닝되는 오프라인 변형과, 알고리즘이 정책 모델을 트레이닝시킴에 따라 데이터가 수집되는 온라인 변형 양측 모두를 갖는다.
본 발명의 이들 그리고 다른 피처(feature)들, 양태들 및 이점들은 다음의 도면들, 설명 및 청구범위를 참조하여 더 잘 이해될 것이다.
본 발명의 일부 실시예들은 일 예로서 예시되고 첨부된 도면들의 도면들에 의해 제한되지 않으며, 여기서 유사한 참조 번호들은 유사한 요소들을 나타낼 수도 있다.
도 1은 본 발명의 실시예들에 따른 방법들 및 알고리즘들을 수행하도록 동작가능한 인공 지능 에이전트(artificial intelligent agent)의 블록 다이어그램을 예시한다.
도 2는 본 발명의 예시적인 실시예에 따른 이중 액터 크리틱 알고리즘에 대한 일반적인 방법 단계들을 예시한다.
달리 나타내지 않는 한, 도면들에서의 예시들은 반드시 일정한 비율로 그려진 것은 아니다.
본 발명 및 그의 다양한 실시예들은 이제, 예시된 실시예들이 설명되는 다음의 상세한 설명을 참조함으로써 더 잘 이해될 수 있다. 예시된 실시예들은 청구범위에 궁극적으로 정의된 바와 같은 본 발명에 대해 제한들이 아닌 예들로서 제시된다는 것이 명백히 이해되어야 한다.
본 명세서에서 사용되는 전문용어는 단지 특정 실시예들을 설명할 목적을 위한 것이며 본 발명을 제한하려는 것으로 의도되지 않는다. 본 명세서에서 사용되는 바와 같이, 용어 "및/또는(and/or)"은 연관된 리스팅된 아이템들 중 하나 이상의 아이템의 임의의 그리고 모든 조합들을 포함한다. 본 명세서에서 사용되는 바와 같이, 문맥상 명확히 달리 나타내지 않는 한, 단수형들 "a", "an", 및 "the"는 단수형들뿐만 아니라 복수형들도 포함하도록 의도된다. 용어들 "포함하다(comprises)" 및/또는 "포함하는(comprising)"은, 본 명세서에서 사용될 때, 언급된 피처들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 피처들, 단계들, 동작들, 요소들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제시키지 않는다는 것이 추가로 이해될 것이다.
달리 정의되지 않는 한, 본 명세서에서 사용되는 모든 용어들(기술적 및 과학적 용어들을 포함함)은 본 발명이 속하는 본 기술분야의 통상의 기술자에 의해 통상적으로 이해되는 것과 동일한 의미를 갖는다. 통상적으로 사용되는 사전들에 정의된 것들과 같은 용어들은 본 개시내용 및 관련 기술의 맥락에서 이들의 의미와 일관된 의미를 갖는 것으로서 해석되어야 하고, 본 명세서에서 명시적으로 이상화된 또는 지나치게 형식적인 의미로 정의되지 않는 한 그와 같은 의미로 해석되지 않을 것이라는 것이 추가로 이해될 것이다.
본 발명을 설명함에 있어서, 다수의 기법들 및 단계들이 개시된다는 것이 이해될 것이다. 이들 각각은 개별 이익을 가지며, 그 각각은 또한 다른 개시된 기법들 중 하나 이상과 함께, 또는 일부 경우들에서는 이들 모두와 함께 사용될 수 있다. 이에 따라, 명확성을 위해, 이 설명은 불필요한 방식으로 개별 단계들의 모든 가능한 조합을 반복하는 것을 자제할 것이다. 그럼에도 불구하고, 본 명세서 및 청구범위는 그러한 조합들이 청구범위 및 본 발명의 범위 내에 완전히 있다는 이해 하에 판독되어야 한다.
다음의 설명에서, 설명의 목적들을 위해, 다수의 특정 세부사항들이 본 발명의 완전한 이해를 제공하기 위해 제시된다. 그러나, 본 발명이 이들 특정 세부사항들 없이 실시될 수도 있다는 것이 본 기술분야의 통상의 기술자에게 명백할 것이다.
본 개시내용은 본 발명의 예시로서 고려되어야 하고, 본 발명을 아래의 도면들 또는 설명에 의해 예시된 특정 실시예들로 제한하도록 의도되지 않는다.
"컴퓨터" 또는 "컴퓨팅 디바이스"는, 구조화된 입력을 수용하고, 규정된 규칙들에 따라 구조화된 입력을 프로세싱하며, 프로세싱의 결과들을 출력으로서 생성하는 것이 가능한 하나 이상의 시스템들 및/또는 하나 이상의 장치를 지칭할 수도 있다. 컴퓨터 또는 컴퓨팅 디바이스의 예들은: 컴퓨터; 고정식 및/또는 휴대용 컴퓨터; 단일 프로세서, 다수의 프로세서들, 또는 멀티-코어 프로세서들 - 이들은 병렬로 동작하거나 그리고/또는 병렬로 동작하지 않을 수도 있다 - 을 갖는 컴퓨터; 범용 컴퓨터; 슈퍼컴퓨터; 메인프레임; 슈퍼 미니-컴퓨터; 미니-컴퓨터; 워크스테이션; 마이크로-컴퓨터; 서버; 클라이언트; 대화형 텔레비전; 웹 어플라이언스; 인터넷 액세스를 이용하는 전기통신 디바이스; 컴퓨터와 대화형 텔레비전의 하이브리드 조합; 휴대용 컴퓨터; 태블릿 퍼스널 컴퓨터(personal computer)(PC); 개인 휴대 정보 단말기(personal digital assistant)(PDA); 휴대용 전화기; 예를 들어, 디지털 신호 프로세서(digital signal processor)(DSP), 필드 프로그래밍가능 게이트 어레이(field programmable gate array)(FPGA), 애플리케이션 특정 집적 회로(application specific integrated circuit)(ASIC), 애플리케이션 특정 명령어-세트 프로세서(application specific instruction-set processor)(ASIP), 칩, 칩들, 시스템 온 칩(system on a chip), 또는 칩셋과 같은, 컴퓨터 및/또는 소프트웨어를 에뮬레이션하기 위한 애플리케이션 특정 하드웨어; 데이터 취득 디바이스; 광학 컴퓨터; 양자 컴퓨터; 생물학적 컴퓨터; 그리고 일반적으로, 데이터를 수용하고, 하나 이상의 저장된 소프트웨어 프로그램들에 따라 데이터를 프로세싱하고, 결과들을 생성하며, 전형적으로 입력, 출력, 저장, 산술, 로직, 및 제어 유닛들을 포함할 수도 있는 장치를 포함할 수도 있다.
"소프트웨어" 또는 "애플리케이션"은 컴퓨터를 동작시키기 위한 규정된 규칙들을 지칭할 수도 있다. 소프트웨어 또는 애플리케이션들의 예들은, 하나 이상의 컴퓨터 판독가능 언어들의 코드 세그먼트들; 그래픽 및 또는/텍스트 명령어들; 애플릿들; 미리 컴파일된 코드(pre-compiled code); 인터프리트된 코드(interpreted code); 컴파일된 코드; 및 컴퓨터 프로그램들을 포함할 수도 있다.
본 명세서에서 설명되는 예시적인 실시예들은 컴퓨터 상에 설치되는 컴퓨터 실행가능 명령어들(예를 들어, 소프트웨어)을 포함하는 동작 환경에서, 하드웨어로, 또는 소프트웨어와 하드웨어의 조합으로 구현될 수 있다. 컴퓨터 실행가능 명령어들은 컴퓨터 프로그래밍 언어로 작성될 수 있거나 또는 펌웨어 로직으로 구체화될 수 있다. 인정된 표준을 준수하는 프로그래밍 언어로 작성된 경우, 그러한 명령어들은 다양한 하드웨어 플랫폼들 상에서 그리고 다양한 운영 체제들에 대한 인터페이스들에 대해 실행될 수 있다. 이에 제한되지 않지만, 본 발명의 양태들에 대한 동작들을 수행하기 위한 컴퓨터 소프트웨어 프로그램 코드는, 객체 지향 프로그래밍 언어들 및/또는 종래의 절차형 프로그래밍 언어들, 및/또는, 예를 들어, 하이퍼텍스트 마크업 언어(Hypertext Markup Language)(HTML), 동적 HTML, 확장성 마크업 언어(Extensible Markup Language)(XML), 확장성 스타일시트 언어(Extensible Stylesheet Language)(XSL), 문서 스타일 의미 및 사양 언어(Document Style Semantics and Specification Language)(DSSSL), 캐스케이딩 스타일 시트들(Cascading Style Sheets)(CSS), 동기식 멀티미디어 통합 언어(Synchronized Multimedia Integration Language)(SMIL), 무선 마크업 언어(Wireless Markup Language)(WML), Java.TM., Jini.TM., C, C++, 스몰토크(Smalltalk), 파이썬(Python), 펄(Perl), UNIX Shell, 비주얼 베이식(Visual Basic) 또는 비주얼 베이식 스크립트(Visual Basic Script), 가상 현실 마크업 언어(Virtual Reality Markup Language)(VRML), ColdFusion.TM. 또는 다른 컴파일러들, 어셈블러들, 인터프리터들 또는 다른 컴퓨터 언어들 또는 플랫폼들과 같은 프로그래밍 언어들을 포함하는 하나 이상의 적합한 프로그래밍 언어들의 임의의 조합으로 작성될 수 있다.
본 발명의 양태들에 대한 동작들을 수행하기 위한 컴퓨터 프로그램 코드는 자바(Java), 스몰토크, C++ 또는 이와 유사한 것과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어들과 같은 종래의 절차형 프로그래밍 언어들을 포함하는 하나 이상의 프로그래밍 언어들의 임의의 조합으로 작성될 수도 있다. 프로그램 코드는 사용자의 컴퓨터 상에서 전체적으로, 사용자의 컴퓨터 상에서 부분적으로, 독립형 소프트웨어 패키지로서, 사용자의 컴퓨터 상에서 부분적으로 그리고 원격 컴퓨터 상에서 부분적으로 또는 원격 컴퓨터 또는 서버 상에서 전체적으로 실행할 수도 있다. 후자의 시나리오에서, 원격 컴퓨터는 로컬 영역 네트워크(local area network)(LAN) 또는 광역 네트워크(wide area network)(WAN)를 포함하는 임의의 타입의 네트워크를 통해 사용자의 컴퓨터에 연결될 수도 있거나, 또는 (예를 들어, 인터넷 서비스 제공자를 사용하는 인터넷을 통해) 외부 컴퓨터에 연결이 행해질 수도 있다. 프로그램 코드는 또한, 각각의 유닛이 총 컴퓨테이션의 일 부분을 프로세싱하는 복수의 컴퓨테이션 유닛들 간에 분산될 수도 있다.
본 발명의 양태들은 본 발명의 실시예들에 따른 방법들, 장치(시스템들) 및 컴퓨터 프로그램 제품들의 흐름도 예시들 및/또는 블록 다이어그램들을 참조하여 아래에 설명된다. 흐름도 예시들 및/또는 블록 다이어그램들의 각각의 블록, 및 흐름도 예시들 및/또는 블록 다이어그램들에서의 블록들의 조합들은, 컴퓨터 프로그램 명령어들에 의해 구현될 수 있다는 것이 이해될 것이다. 이들 컴퓨터 프로그램 명령어들은 범용 컴퓨터, 특수 목적 컴퓨터, 또는 다른 프로그래밍가능 데이터 프로세싱 장치의 프로세서에 제공되어, 컴퓨터 또는 다른 프로그래밍가능 데이터 프로세싱 장치의 프로세서를 통해 실행되는 명령어들이 흐름도 및/또는 블록 다이어그램의 블록 또는 블록들에 특정된 기능들/작용들을 구현하기 위한 수단을 생성하도록 하는 머신을 생성할 수도 있다.
컴퓨터, 다른 프로그래밍가능 데이터 프로세싱 장치, 또는 다른 디바이스들에게 특정 방식으로 기능하도록 지시할 수 있는 이들 컴퓨터 프로그램 명령어들은 컴퓨터 판독가능 매체에 또한 저장될 수도 있어서, 컴퓨터 판독가능 매체에 저장된 명령어들이 흐름도 및/또는 블록 다이어그램의 블록 또는 블록들에 특정된 기능/작용을 구현하는 명령어들을 포함하는 제조 물품을 생성하도록 한다.
추가로, 프로세스 단계들, 방법 단계들, 알고리즘들 또는 이와 유사한 것이 순차적인 순서로 설명될 수도 있지만, 그러한 프로세스들, 방법들 및 알고리즘들은 대안적인 순서들로 작동하도록 구성될 수도 있다. 다시 말해, 설명될 수도 있는 단계들의 임의의 시퀀스 또는 순서가, 반드시 단계들이 그 순서대로 수행된다는 요건을 표시하는 것은 아니다. 본 명세서에서 설명되는 프로세스들의 단계들은 실제적인 임의의 순서로 수행될 수도 있다. 추가로, 일부 단계들은 동시에 수행될 수 있다.
본 명세서에서 설명되는 다양한 방법들 및 알고리즘들이, 예를 들어, 적절히 프로그래밍된 범용 컴퓨터들 및 컴퓨팅 디바이스들에 의해 구현될 수도 있다는 것이 쉽게 명백해질 것이다. 전형적으로, 프로세서(예를 들어, 마이크로프로세서)는 메모리 또는 유사한 디바이스로부터 명령어들을 수신하고, 이들 명령어들을 실행하여, 그에 의해 이들 명령어들에 의해 정의된 프로세스를 수행할 것이다. 추가로, 그러한 방법들 및 알고리즘들을 구현하는 프로그램들은 다양한 알려진 매체들을 사용하여 저장 및 송신될 수도 있다.
본 명세서에서 사용되는 바와 같은 용어 "컴퓨터 판독가능 매체"는 컴퓨터, 프로세서 또는 유사한 디바이스에 의해 판독될 수도 있는 데이터(예를 들어, 명령어들)를 제공하는 데 관여하는 임의의 매체를 지칭한다. 그러한 매체는, 비휘발성 매체들, 휘발성 매체들, 및 송신 매체들을 포함하지만 이에 제한되지 않는 많은 형태들을 취할 수도 있다. 비휘발성 매체들은, 예를 들어, 광학 또는 자기 디스크들 및 다른 영구 메모리를 포함한다. 휘발성 매체들은, 메인 메모리를 전형적으로 구성하는 동적 랜덤 액세스 메모리(dynamic random-access memory)(DRAM)를 포함한다. 송신 매체들은, 프로세서에 커플링되는 시스템 버스를 포함하는 와이어들을 포함하여, 동축 케이블들, 구리 와이어 및 광 섬유들을 포함한다. 송신 매체들은, 라디오 주파수(radio frequency)(RF) 및 적외선(infrared)(IR) 데이터 통신들 동안 생성되는 것들과 같은, 음향파들, 광파들 및 전자기 방출들을 포함하거나 또는 이들을 반송할 수도 있다. 컴퓨터 판독가능 매체들의 통상적인 형태들은, 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 임의의 다른 자기 매체, CD-ROM, DVD, 임의의 다른 광학 매체, 펀치 카드들, 종이 테이프, 홀(hole)들의 패턴들을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASHEEPROM, 임의의 다른 메모리 칩 또는 카트리지, 이후에 설명되는 바와 같은 반송파, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다.
다양한 형태들의 컴퓨터 판독가능 매체들이 프로세서에 명령어들의 시퀀스들을 반송하는 것에 관련될 수도 있다. 예를 들어, 명령어의 시퀀스들은 (i) RAM으로부터 프로세서로 전달될 수도 있거나, (ii) 무선 송신 매체를 통해 반송될 수도 있거나, 그리고/또는 (iii) 수많은 포맷들, 표준들 또는 프로토콜들, 예컨대 블루투스, TDMA, CDMA, 3G, 4G, 5G 및 이와 유사한 것에 따라 포맷팅될 수도 있다.
본 발명의 실시예들은, 본 명세서에 개시된 동작들을 수행하기 위한 장치들을 포함할 수도 있다. 장치는 원하는 목적들을 위해 특수하게 구성될 수도 있거나, 또는 그것은, 디바이스에 저장된 프로그램에 의해 선택적으로 활성화 또는 재구성되는 범용 디바이스를 포함할 수도 있다.
달리 구체적으로 언급되지 않는 한, 그리고 다음의 설명 및 청구범위로부터 명백할 수도 있는 바와 같이, 본 명세서 전반에 걸쳐 "프로세싱(processing)", "컴퓨팅(computing)", "계산(calculating)", "결정(determining)", 또는 이와 유사한 것과 같은 용어들을 이용하는 설명들은, 컴퓨팅 시스템의 레지스터들 및/또는 메모리들 내의 물리적, 예컨대 전자, 수량들로서 표현되는 데이터를, 컴퓨팅 시스템의 메모리들, 레지스터들 또는 다른 그러한 정보 저장, 송신 또는 디스플레이 디바이스들 내의 물리적 수량들로서 유사하게 표현되는 다른 데이터로 조작 및/또는 변환하는 컴퓨터 또는 컴퓨팅 시스템, 또는 유사한 전자 컴퓨팅 디바이스의 액션 및/또는 프로세스들을 지칭한다는 것이 인식되어야 한다.
유사한 방식으로, 용어 "프로세서"는 레지스터들 및/또는 메모리로부터의 전자 데이터를 프로세싱하여, 그 전자 데이터를, 레지스터들 및/또는 메모리에 저장될 수도 있거나 또는 외부 디바이스의 물리적 변화들 또는 작동을 야기시키도록 외부 디바이스에 통신될 수도 있는 다른 전자 데이터로 변환하는 임의의 디바이스 또는 디바이스의 부분을 지칭할 수도 있다.
알고리즘이 여기서는, 그리고 일반적으로는, 원하는 결과로 이어지는 일관성 있는 시퀀스의 작용들 또는 동작들인 것으로 간주된다. 이들은 물리적 수량들의 물리적 조작들을 포함한다. 통상적으로, 반드시 그런 것은 아니지만, 이들 수량들은 저장, 전송, 조합, 비교, 그리고 이와 달리 조작되는 것이 가능한 전기적 또는 자기적 신호들의 형태를 취한다. 주로 통상적인 사용의 이유로, 이들 신호들을 비트들, 값들, 요소들, 심볼들, 문자들, 항들, 숫자들 또는 이와 유사한 것으로 지칭하는 것이 때때로 편리한 것으로 입증되었다. 그러나, 이들 그리고 유사한 용어들 모두는 적절한 물리적 수량들과 연관되어야 하고, 단지 이들 수량들에 적용되는 편리한 라벨들일 뿐이라는 것이 이해되어야 한다.
용어 "에이전트" 또는 "지능형 에이전트" 또는 "인공 에이전트" 또는 "인공 지능 에이전트"는 관찰들에 응답하여 액션들을 선정하는 임의의 인간 제조 엔티티(man-made entity)를 지칭하는 것으로 의도된다. "에이전트"는 로봇으로, 시뮬레이션된 로봇으로, 소프트웨어 에이전트 또는 "봇(bot)", 적응형 에이전트, 인터넷 또는 웹 봇으로 제한 없이 지칭할 수도 있다.
용어 "로봇"은 감지들 또는 관찰들에 응답하여 액션들 또는 커맨드들을 발행하는 컴퓨터 또는 컴퓨팅 시스템에 의해 직접적으로 또는 간접적으로 제어되는 임의의 시스템을 지칭할 수도 있다. 이 용어는 카메라들, 터치 센서들, 레인지 센서들, 및 이와 유사한 것과 같은 물리적 센서들을 갖는 전통적인 물리적 로봇, 또는 가상 시뮬레이션에 존재하는 시뮬레이션된 로봇, 또는 네트워크에 소프트웨어로서 존재하는 메일봇(mailbot) 또는 서치봇(searchbot)과 같은 "봇"을 제한 없이 지칭할 수도 있다. 그것은 임의의 사지형 로봇(limbed robot)들, 보행 로봇들, 산업용 로봇들(조립, 도장, 수리, 유지보수 등의 자동화를 위해 사용되는 로봇들을 포함하지만 이에 제한되지 않음), 바퀴 달린 로봇들, 진공 청소 또는 잔디 깎기 로봇들, 개인 비서 로봇들, 서비스 로봇들, 의료 또는 수술 로봇들, 비행 로봇들, 운전 로봇들, 항공기 또는 우주선 로봇들, 또는 실질적으로 자율 제어 하에서 동작하고 지능형 가정 또는 작업장 어플라이언스들과 같은 고정형 로봇들을 또한 포함하는, 차량과 관련되거나 또는 그렇지 않으면 실제의 또는 시뮬레이션된 임의의 다른 로봇들을 제한 없이 지칭할 수도 있다.
용어들 "관찰" 또는 "관찰들"은 에이전트가 에이전트의 환경 또는 그 자신에 관해 임의의 수단에 의해 수신하는 임의의 정보를 지칭한다. 일부 실시예들에서, 그 정보는, 카메라들, 터치 센서들, 레인지 센서들, 온도 센서들, 파장 센서들, 사운드 또는 음성 센서들, 포지션 센서들, 압력 또는 힘 센서들, 속도 또는 가속도 또는 다른 모션 센서들, 위치 센서들(예를 들어, GPS) 등과 같은(제한 없음) 감각 디바이스들을 통해 수신되는 감각 정보 또는 신호들일 수도 있다. 다른 실시예들에서, 그 정보는, 저장된 정보와 조합되는 감각 디바이스들의 집합으로부터 컴파일되는 컴파일된, 추상, 또는 상황 정보를 제한 없이 또한 포함할 수 있다. 비제한적인 예에서, 에이전트는 그 자신 또는 다른 객체들의 위치 또는 특성들에 관련하여 관찰 추상 정보로서 수신할 수도 있다. 일부 실시예들에서, 이 정보는 사람들 또는 고객들, 또는 이들의 특성들, 예컨대 구매 습관들, 개인 연락처 정보, 개인 선호도들 등을 지칭할 수도 있다. 일부 실시예들에서, 관찰들은, 고유 감각 정보(proprioceptive information) 또는 에이전트의 현재 또는 과거 액션들에 관련된 다른 정보, 에이전트의 내부 상태에 관한 정보, 또는 에이전트에 의해 이미 컴퓨팅 또는 프로세싱된 정보와 같은(제한 없음), 에이전트의 내부 부분들에 관한 정보일 수도 있다.
용어 "액션"은, 에이전트의 장래의 액션들, 액션 선택들, 또는 액션 선호도들을 결국 제어하거나 또는 그에 영향을 줄 수도 있는, 에이전트의 환경, 에이전트의 물리적인 또는 시뮬레이션된 자신 또는 에이전트의 내부 기능을 제어하거나, 그에 영향을 미치거나, 또는 그에 영향을 주기 위한 에이전트의 임의의 수단을 지칭한다. 많은 실시예들에서, 액션들은 물리적인 또는 시뮬레이션된 서보(servo) 또는 액추에이터를 직접 제어할 수도 있다. 일부 실시예들에서, 액션들은, 궁극적으로 에이전트의 선정들에 영향을 주는 것으로 의도된 선호도 또는 선호도들의 세트의 표현일 수도 있다. 일부 실시예들에서, 에이전트의 액션(들)에 관한 정보는, 에이전트의 액션(들)에 대한 확률 분포, 및/또는 에이전트의 궁극적인 액션 선정에 영향을 주는 것으로 의도된 유출 정보(outgoing information)를 제한 없이 포함할 수도 있다.
용어 "상태" 또는 "상태 정보"는, 에이전트의 현재 및/또는 과거 관찰들에 관한 정보를 제한 없이 포함할 수도 있는, 환경 또는 에이전트의 상태에 관련된 정보의 임의의 집합을 지칭한다.
용어 "정책"은 임의의 전체 또는 부분 상태 정보로부터 임의의 액션 정보로의 임의의 함수 또는 매핑을 지칭한다. 정책들은, 임의의 강화 학습 방법 또는 제어 최적화 방법을 제한 없이 포함하는 임의의 적절한 학습 또는 교육 방법으로 하드 코딩될 수도 있거나 또는 수정, 적응 또는 트레이닝될 수도 있다. 정책은, 특정 척도, 값, 또는 함수를 최적화시키는 것으로부터 발생될 수도 있는 것과 같은(제한 없음), 명시적 매핑일 수도 있거나 또는 암시적 매핑일 수도 있다. 정책은, 정책이 어떤 조건들 하에서 시작 또는 계속될 수도 있는지를 반영하는 시작 조건들(또는 확률들), 정책이 어떤 조건들 하에서 종료될 수도 있는지를 반영하는 종료 조건들(또는 확률들)과 같은(제한 없음), 연관된 추가 정보, 피처들, 또는 특성들을 포함할 수도 있다.
대체로, 본 발명의 실시예들은, 정책의 치명적인 과적합 없이 안정적인 정책 개선 및 적극적인 뉴럴-넷(neural-net) 최적화를 제공하는 DAC 강화 학습 알고리즘을 제공한다. DAC 알고리즘은 오프라인 및 온라인 학습 양측 모두에서 임의적인 이력의 데이터를 사용하여 모델들을 트레이닝시키고, 일부 다른 수단에 의해 학습 또는 정의되는 기존 정책에 대해 원활하게 개선시키는 데 사용될 수 있다. 결국, DAC 알고리즘은 이산 및 연속 액션 공간들에 의한 강화 학습 문제들을 최적화시킬 수 있다.
도 1을 참조하면, 지능형 에이전트(10)가 관찰 데이터를 획득하기 위해 하나 이상의 프로세서들(12), 메모리(14) 및 센서들(16)을 갖는 것으로서 개략적으로 도시되어 있다. 물론, 본 기술분야에 알려져 있는 종래의 지능형 에이전트들에 존재하는 것으로 이해될 수도 있는 바와 같이, 다른 센서들 및 컴포넌트들이 에이전트(10)에 포함될 수도 있다. 도 1에 제공된 표현은 단지 개략적인 목적들만을 위한 것이고, 에이전트의 피처들을 제한하는 것으로서 해석되어서는 안 된다. 에이전트(10)는 도 2에 도시된 바와 같은 방법(20)을 수행할 수 있다. 도 2의 방법의 추가 세부사항들이 아래의 명세서 및 청구범위에 설명되어 있다.
높은 레벨에서, 높은 레벨에서의 DAC의 알고리즘 구현은 뉴럴-네트워크 모델 구현들을 사용하는 이산 및 연속 액션 경우들 양측 모두에 대해 사용될 수 있다. 추가적으로, DAC는 일부 다른 수단에 의해 하드 코딩 또는 트레이닝되었을 수도 있는 기존 액터 모델에 대해 개선시키는 데 사용될 수 있다.
DAC는, 액터라고 불리는 정책 모델을 트레이닝시키는 것에 주로 관련되지만, 그것은, 크리틱이라고 불리는 액션 가치 모델도 또한 트레이닝시킨다. 크리틱은 액터를 트레이닝시키는 서비스에서 사용되고, 현재 관찰 하에서 가상 액션이 선택되고 그 후 액터의 규정된 거동이 뒤따른 경우 받게 될 예상되는 장래 할인 보상을 추정한다. 공식적으로, 크리틱은,
로서 정의된 함수 Q를 추정하고,
여기서 r t 는 시간 단계 t에서 받은 보상이고, s는 환경 상태의 현재 관찰이고, a는 가상 액션이고, π는 액터이고, γ는, 얼마나 가치있는 장래 보상들이 더 즉각적인 것들에 대한 것인지를 정의하는 도메인에서의 할인 인자 [0, 1)이다.
DAC는 액터와 크리틱 양측 모두가 미분가능한 뉴럴-넷으로서 구현될 것을 요구한다. 그것은 또한, 액터가 파라메트릭 확률적 정책(parametric stochastic policy)을 정의할 것을 요구한다. 그것은, 환경 상태의 주어진 관찰(s)에 대한, 액터의 출력 π(s)가, 액션 공간의 도메인에 대한 확률 분포들의 파라미터들이라는 것을 의미한다. 이산 액션 공간들의 경우, 이들 출력 파라미터들은 전형적으로 확률 질량 값들(또는 로그 확률 질량 값들)이고; 연속 n차원 액션 공간들의 경우, 출력 파라미터들은 종종 액션 공간에 대한 다변량 가우시안 분포(multivariate Gaussian distribution)의 평균 및 공분산이다.
DAC는 액터 및 크리틱 네트워크 양측 모두의 스테일 카피를 유지한다. 일부 프레시 모델의 스테일 모델은, 프레시 모델과 동일하게 초기화되고 프레시 모델에 대해 학습 업데이트들이 수행됨에 따라 프레시 모델과 매칭되도록 단계적 방식으로 느리게 이동되는 모델이다. 프레시 모델이 고정된 포인트로 수렴한다고 가정하면, 그의 스테일 모델은 동일한 포인트로 수렴할 것이지만, 스테일 모델은, 프레시 모델을 향한 그의 느린 이동으로 인해, 프레시 모델의 것보다 더 늦은 시간에 수렴의 고정된 포인트에 도달할 수 있다.
본 명세서에서는 다음의 표기법이 사용되고, 여기서
s는 환경 상태의 관찰들의 미니배치(minibatch)를 표현하고;
a는 환경에서 실행될 수 있는 액션 선택들의 미니배치를 표현하고;
s'는 일부 액션이 실행된 후의 환경 상태의 결과적인 관찰들의 미니배치를 표현하고;
r은 스칼라 보상 신호의 미니배치를 표현하고;
a'는 환경에서 실행될 수 있는 액션 선택들의 미니배치를 표현한다. 이 표현은 표현식이 a에 추가적으로 액션들의 두 번째의 별개의 미니배치를 고려할 때 사용된다. 예를 들어, a'는, 이전 관찰(s)보다는 오히려, 결과적인 관찰(s')과 관련된 가능한 액션들을 지칭할 수도 있고;
θ는 "프레시" 크리틱 뉴럴 넷 가중치들을 표현하고;
θ'는 "스테일" 크리틱 뉴럴 넷 가중치들을 표현하고;
Q(s, a; θ)는 뉴럴 넷 가중치들 θ를 사용하여, 가상 액션 a가 취해질 때 관찰 미니배치 s에 대한 Q-값들의 크리틱 추정치를 표현하고;
는 "프레시" 액터 뉴럴-넷 가중치들을 표현하고;
는 "스테일" 액터 뉴럴-넷 가중치들을 표현하고;
는 관찰 미니배치 s에 대한 가중치들 를 갖는 액터로부터의 액션 확률 분포 파라미터들을 표현하고;
는 액터가 미니배치 s를 관찰할 때 미니배치 a를 선택하기 위한 가중치들 를 갖는 액터의 확률 밀도들을 표현하며;
x ∼ z는 분포 파라미터들 z에 의해 정의된 분포로부터 변수 x가 도출된다는 것을 표현한다.
DAC는, 이전에 수집된 데이터를 사용하여 트레이닝되는 오프라인 변형과, DAC가 액터를 트레이닝시킴에 따라 데이터가 수집되는 온라인 변형 양측 모두를 갖는다.
오프라인 알고리즘은 아래의 알고리즘 1에 나타나 있다. 알고리즘 1은 가용 데이터로부터 (s, a, r, s') 튜플들의 미니배치들을 샘플링하고, 크리틱 손실(L Q ) 및 액터 손실(L π )을 컴퓨팅하고, 크리틱 및 액터 뉴럴-넷 파라미터들과 관련하여 각각의 손실을 미분하고, 파라미터들에 대해 확률적 경사 하강법 기반 업데이트(stochastic gradient-descent-based update)(SGD)를 수행하고, 그 후에 기하 계수(k)에 의해 스테일 뉴럴-넷 파라미터들을 새로운 뉴럴 넷 파라미터들을 향해 업데이트한다. 데이터로부터 미니배치들을 샘플링하는 방법은 임의의 수의 샘플링 스킴(sampling scheme)들을 수반할 수도 있는데, 가장 단순한 것은 데이터로부터 균일하게 랜덤한 미니배치들을 샘플링하는 것이다.
알고리즘 1 오프라인 DAC
DAC의 정의에 대해 중요한 것은, 손실 함수들의 타깃, 그리고 이들 손실 함수들이 이산 및 연속 액션 경우들에 대해 구성되는 방법이다. 손실 함수의 타깃은, 손실을 최소화하면 생성될 최적의 솔루션이다. 주어진 보상, 및 결과적인 관찰에 대한 크리틱 손실 함수의 타깃(T Q )은 스칼라 값이다:
타깃은 스테일 액터와 스테일 크리틱을 사용하여 다음 단계로부터의 값을 부트스트랩한다. 액터가 액션들에 대한 확률 분포를 정의하기 때문에, 액터 손실 함수의 타깃(T π )은 확률 분포이다. 구체적으로는, 타깃은,
로서 각각의 액션에 대한 밀도가 정의되는 스테일 크리틱으로부터의 Q-값들에 대한 볼츠만 분포(Boltzmann distribution)이다.
이 정의에서, τ는, 타깃 분포가 가장 높은 스코어링 Q-값(highest scoring Q-value)을 향해 얼마나 탐욕스러운지를 정의하는 "온도" 하이퍼파라미터(hyperparameter)이다. 값들이 0에 가까워질수록, 분포는 더 탐욕스러워지고, 그것이 무한대에 가까워질수록, 분포는 더 균일해진다.
타깃으로서 볼츠만 분포를 사용하면 액터가 2개의 방식들로 현재 Q-값 추정치들을 과적합시키는 것을 방지한다. 첫 번째로, 그것은, 정책이, 환경에서 사용될 때 탐험(exploration)을 방해할 결정론적(deterministic)이 되는 것을 방지한다. 두 번째로, 부최적 액션 선택(suboptimal action selection)을 과대평가하는 Q-함수 추정치의 작은 에러들이, 그 작은 에러를 탐사(exploit)하는 액터 최적화를 발생시키지 않을 것이다. 그 대신에, 액션 선택은 단지 작은 추정 에러들 때문에 달라지는 유사한 스코어링 액션들에 걸쳐 분포될 것이다.
확률적 경사 하강법은, 타깃에 수렴하기 위해 많은 미니배치들에 걸쳐 많은 단계들을 요구하는 노이즈가 있는 프로세스이다. DAC는 최적화의 많은 요구된 단계들을 통해 학습을 안정화시키기 위해 개개의 타깃들에서 느리게 이동하는 스테일 액터 및 크리틱을 사용한다.
게다가, 스테일 모델들의 사용은, 테이블형 상태 및 액션 공간들에 대한 고전적인 정책 반복(PI) 알고리즘과 일관성 있는 더 안정적인 정책 개선을 발생시킨다. PI에서, 입력 정책이 2개의 단계들에 의해 개선된다. 첫 번째로, 정책에 대한 Q-값들이 철저하게 평가된다. 두 번째로, Q-값들을 최대화하는 정책을 발견함으로써 개선된 정책이 컴퓨팅된다. PI는 최적의 정책이 발견될 때까지 새롭게 개선된 정책에 대해 이 개선 프로세스를 반복한다.
DAC에서, 스테일 액터는, 프레시 크리틱에 의해 평가되는 오래된 정책으로서 작용하고, 스테일 크리틱은, 프레시 액터가 개선시키는 보다 앞선 정책의 Q-값들을 제공한다.
이산 액션 경우에 대해, 크리틱에 대한 타깃(T Q )은 스테일 액터에 의한 각각의 액션 선택의 확률에 대해 주변화(marginalizing)함으로써 정확히 컴퓨팅될 수 있다. 그 후에, 크리틱과 타깃 사이의 차이의 임의의 놈(norm)을 사용하여 손실 함수가 표현될 수도 있다. 전형적인 L2 놈 경우에 대해, 손실은
이다.
액터 손실의 경우, 타깃 분포(T π )가 또한 정확히 컴퓨팅될 수 있고, 크로스 엔트로피 손실 함수(cross entropy loss function)가 사용되어 액터를 타깃과 매칭시키게 한다.
크로스 엔트로피가 선정되는데, 이는 그것이 이산 분포들을 향한 빠른 최적화를 가능하게 하기 때문이다. 타깃 분포가 Q-값들에 걸쳐 평활하기 때문에, 크로스 엔트로피 손실을 사용하면 결정론적 분포로 붕괴되는 것까지는 되지 않는 적극적인 최적화, 또는 작은 에러들을 잘못 탐사하는 것을 발생시킬 것이다.
연속 액션 경우에서는, 무한한 수의 액션들이 있기 때문에, 크리틱 및 액터 손실 함수들의 타깃이 정확히 컴퓨팅될 수 없다. 그 대신에, 액터 및 스테일 액터로부터의 샘플링이 타깃들을 확률적으로 근사시키는 데 사용된다. 샘플링으로부터의 분산은 확률적 경사 하강법의 프로세스에 의해 평활화된다.
연속 액션 크리틱 손실은, 그것이 주변화 대신에 스테일 액터로부터의 액션 샘플을 사용한다는 점을 제외하고는, 이산 액션 크리틱 손실과 매우 유사하게 보인다.
액터 손실을 구현하기 위한 2개의 도전과제들은 (1) 연속 액션들에 대한 볼츠만 분포가 정확히 컴퓨팅될 수 없고; (2) 액터 모델의 파라메트릭 연속 확률 분포가 연속 볼츠만 분포를 완벽하게 표현하는 것이 가능하지 않을 수도 있다는 것이다.
이들 도전과제들을 해결하기 위해, 볼츠만 분포로부터 액터 분포로의 KL 발산이 액터에 대한 손실 함수로서 사용될 수 있다. 액터의 확률 분포가 액터를 상태의 결정론적 함수 와 일부 외부 샘플링된 노이즈(ε)로 재파라미터화함으로써 샘플링될 수도 있다고 가정하면, KL 발산 손실은
로서 확률적으로 추정될 수 있다.
많은 파라메트릭 연속 분포들은, 액터가, 공통 가우시안 분포를 포함하여, 외부 샘플링된 노이즈를 사용하도록 재파라미터화되게 한다.
온라인 알고리즘은 오프라인 알고리즘 스텝 함수를 사용하여 정의되고 알고리즘 2에 나타나 있다.
알고리즘 2 온라인 DAC
온라인 알고리즘은, 데이터세트 대신에, 그것이 상호작용할 수 있는 환경에 대한 레퍼런스를 수신한다는 점을 제외하고는, 오프라인 알고리즘과 동일한 하이퍼파라미터들을 취한다. 시작 시에, 에이전트는 초기에 비어 있는 데이터세트를 구성한다. 그 후에, 그것은 그것이 현재 상태를 관찰하는 환경과의 일련의 상호작용들을 반복하고; 액터를 사용하여 액션을 선택 및 실행하고; 결과적인 상태 및 보상을 관찰하고; 그의 데이터세트에 전이(transition)를 추가하며; 그 후에 오프라인 알고리즘 단계를 실행한다.
일부 맥락들에서, 액터가 다른 학습 패러다임(예를 들어, 시연으로부터의 학습)을 사용하여 이전에 트레이닝되었을 수도 있거나, 또는 일부 수단에 의해 하드 코딩되었을 수도 있다. 이 경우에, DAC는 중단된 액터의 상태에 대해 개선시켜야 한다. 그러나, 크리틱이 랜덤하게 초기화된 파라미터들을 갖는 새로운 모델인 경우, 그러면 랜덤 크리틱 모델을 최대화하기 위해 액터 모델을 최적화시키면 액터를 더 균일하게 랜덤한 정책을 향해 되돌릴 것이다. 이 이슈를 해결하기 위해, 온라인 DAC 알고리즘이 알고리즘 3에 나타낸 바와 같이 수정된다.
알고리즘 3 온라인 DAC
DAC의 이 온라인 개선 변형은 단지 크리틱만을 트레이닝시키는 데 처음 b개의 단계들을 소비한다. 이 번인 기간(burn-in period) 후에, 알고리즘은 온라인 DAC(알고리즘 2)와 같이 진행된다. 결과적으로, 액터에 대한 업데이트들이 시작될 때, 그것은, 개선시킬 액터의 의미있는 평가를 사용하게 될 것이다.
본 발명의 사상 및 범위로부터 벗어남이 없이 본 기술분야의 통상의 기술자들에 의해 많은 변경들 및 수정들이 이루어질 수도 있다. 그에 따라, 예시된 실시예들은 단지 예들의 목적들을 위해 제시되었고 이들은 다음의 청구범위에 의해 정의된 바와 같은 본 발명을 제한하는 것으로서 간주되어서는 안 된다는 것이 이해되어야 한다. 예를 들어, 청구항의 요소들이 특정 조합으로 아래에 제시된다는 사실에도 불구하고, 본 발명은 개시된 요소들의 더 적거나, 더 많거나 또는 상이한 것들의 다른 조합들을 포함한다는 것이 명백히 이해되어야 한다.
본 발명 및 그의 다양한 실시예들을 설명하기 위해 본 명세서에서 사용되는 단어들은, 이들의 통상적으로 정의된 의미들의 의미로 이해되어야 할 뿐만 아니라, 이들이 단일 종(single species)을 표현한 일반적인 구조체, 재료 또는 작용들을 특수한 정의에 의해 본 명세서에 포함시키는 것으로 이해되어야 한다.
그에 따라, 다음의 청구범위의 단어들 또는 요소들의 정의들은 문자 그대로 제시된 요소들의 조합을 포함할 뿐만 아니라 본 명세서에 정의된다. 그에 따라, 이러한 의미에서 아래의 청구범위의 요소들 중 임의의 하나에 대해 2개 이상의 요소들의 동등한 대체가 이루어질 수도 있거나 또는 청구항의 2개 이상의 요소들에 대해 단일 요소가 대체될 수도 있다는 것이 고려된다. 요소들은 특정 조합들로 작용하는 것으로서 상술되고 심지어 초기에는 그와 같이 청구될 수도 있지만, 청구된 조합으로부터의 하나 이상의 요소들은 일부 경우들에서 그 조합으로부터 삭제될 수 있고, 청구된 조합이 하위 조합 또는 하위 조합의 변형으로 유도될 수도 있다는 것이 명백히 이해되어야 한다.
현재 알려져 있거나 또는 추후에 안출될, 본 기술분야의 통상의 기술자에게 보여지는 바와 같은 청구된 대상물로부터의 비실질적 변경들이 청구범위의 범위 내에 동등하게 있는 것으로서 명백히 고려된다. 그에 따라, 본 기술분야의 통상의 기술자에게 현재 알려져 있거나 또는 추후에 알려질 명백한 대체들은 정의된 요소들의 범위 내에 있는 것으로 정의된다.
따라서, 청구범위는 상기에 구체적으로 예시되고 설명된 것, 개념적으로 동등한 것, 명백히 대체될 수 있는 것 그리고 또한 본 발명의 본질적인 아이디어를 포함한 것을 포함하는 것으로 이해되어야 한다.

Claims (20)

  1. 에이전트의 액션 가치 모델(action-value model) 및 정책 모델(policy model)을 트레이닝시키는 방법으로서,
    정책 모델을 트레이닝시키기 위해 액션 가치 모델을 사용하는 단계 - 상기 액션 가치 모델은, 상기 에이전트의 하나 이상의 프로세서들 내에서, 상기 에이전트의 현재 관찰 하에서 가상 액션(hypothetical action)이 선택되었고 그 후 상기 에이전트의 거동이 뒤따른 경우 받게 될 예상되는 장래 할인 보상(expected future discounted reward)을 추정함 -; 및
    상기 액션 가치 모델과 상기 정책 모델 양측 모두의 스테일 카피(stale copy)를 유지하는 단계
    를 포함하고,
    상기 스테일 카피는 프레쉬 정책 모델 및 프레쉬 액션 가치 모델의 프레시 카피(fresh copy)와 동일하게 초기화되고, 상기 프레시 카피에 대해 학습 업데이트들이 수행됨에 따라 상기 프레시 카피와 매칭되도록 단계적으로 이동(moved stepwise)되고,
    상기 정책 모델의 스테일 카피는, 상기 프레쉬 액션 가치 모델에 의해 평가되는 오래된 정책으로서 작용하고,
    상기 액션 가치 모델의 스테일 카피는, 상기 프레쉬 정책 모델이 개선시키는 보다 앞선 정책 모델의 Q-값들을 제공하며,
    강화 학습 알고리즘은, 이전에 수집된 데이터를 사용하여 상기 강화 학습 알고리즘이 트레이닝되는 오프라인 변형(offline variant)과, 상기 강화 학습 알고리즘이 상기 정책 모델을 트레이닝시킴에 따라 데이터가 수집되는 온라인 변형 양측 모두를 갖는, 방법.
  2. 제1항에 있어서,
    상기 액션 가치 모델은 상기 예상되는 장래 할인 보상 Q

    로서 추정하고,
    rt 는 시간 단계 t에서 받은 보상이고, s는 환경 상태의 현재 관찰이고, a는 상기 가상 액션이고, π는 상기 정책 모델이고, γ는, 얼마나 가치있는 장래 보상들이 더 즉각적인 보상들에 대한 것인지를 정의하는 도메인에서의 할인 인자(discount factor) [0, 1)인, 방법.
  3. 제1항에 있어서,
    상기 스테일 카피는, 상기 프레시 카피와 동일한 수렴 포인트(convergence point)로 수렴하고,
    상기 스테일 카피는 상기 프레시 카피로의 단계적 이동으로 인해 프레시 카피보다 더 늦은 시각에 상기 동일한 수렴 포인트에 도달하는, 방법.
  4. 제1항에 있어서,
    환경 상태의 주어진 관찰(s)에 대한, 상기 정책 모델의 출력 π(s)는, 액션 공간의 도메인에 대한 확률 분포들의 파라미터들인, 방법.
  5. 제4항에 있어서,
    상기 액션 공간이 이산 액션 공간(discrete action space)일 때, 상기 출력된 파라미터들은 확률 질량 값들인, 방법.
  6. 제4항에 있어서,
    상기 액션 공간이 연속 n차원 액션 공간일 때, 상기 출력된 파라미터들은, 상기 액션 공간에 대한 다변량 가우시안 분포(multivariate Gaussian distribution)의 평균 및 공분산인, 방법.
  7. 제1항에 있어서,
    상기 오프라인 변형은 오프라인 알고리즘을 포함하고, 상기 오프라인 알고리즘은:
    가용 데이터로부터 튜플들의 미니배치(minibatch)들을 샘플링하는 것;
    크리틱 손실 함수 LQ 및 액터 손실 함수(actor loss function) 를 컴퓨팅하는 것;
    뉴럴-넷 파라미터(neural-net parameter)들과 관련하여 상기 크리틱 손실 함수와 상기 액터 손실 함수 각각을 미분하는 것;
    상기 뉴럴-넷 파라미터들에 대해 확률적 경사 하강법 기반 업데이트(stochastic gradient-descent-based update)를 수행하는 것; 및
    기하 계수에 의해 상기 스테일 카피를 상기 프레시 카피를 향해 업데이트하는 것
    을 포함하는, 방법.
  8. 제7항에 있어서,
    이산 액션 경우에 대해, 상기 크리틱 손실 함수에 대한 타깃이 스테일 정책 모델에 의한 각각의 액션 선택의 확률에 대해 주변화(marginalizing)함으로써 정확히 컴퓨팅되고;
    이산 액션 경우에 대해, 상기 액터 손실에 대한 타깃이 정확히 컴퓨팅되고 크로스 엔트로피 손실 함수(cross entropy loss function)가 사용되어 상기 정책 모델을 상기 타깃과 매칭시키게 하는, 방법.
  9. 제7항에 있어서,
    연속 액션 경우에 대해, 상기 크리틱 손실 함수와 상기 액터 손실 함수의 타깃들이 정확히 컴퓨팅되지 않고, 상기 정책 모델 및 상기 정책 모델의 스테일 카피로부터의 샘플링이 상기 타깃들을 확률적으로 근사시키는 데 사용되고, 상기 샘플링으로부터의 분산이 확률적 경사 하강법의 프로세스에 의해 평활화되는, 방법.
  10. 제7항에 있어서,
    상기 크리틱 손실 함수와 상기 액터 손실 함수 각각의 타깃은, 개개의 크리틱 손실 함수 및 액터 손실 함수를 최소화하면 생성될 솔루션인, 방법.
  11. 제7항에 있어서,
    주어진 보상, 및 결과적인 관찰에 대한 상기 크리틱 손실 함수의 타깃(TQ )은, 공식 -

    에 의해 정의된 스칼라 값인, 방법.
  12. 제7항에 있어서,
    상기 액터 손실 함수의 타깃(Tπ )은,

    로서 각각의 액션에 대한 밀도가 정의되는 상기 액션 가치 모델의 스테일 카피로부터의 Q-값들에 대한 확률 분포이고,
    τ는, 타깃 분포가 가장 높은 스코어링 Q-값(highest scoring Q-value)을 향해 얼마나 탐욕스러운지를 정의하는 온도 하이퍼파라미터(temperature hyperparameter)이고, 상기 온도 하이퍼파라미터가 제로에 가까워질수록, 상기 확률 분포는 더 탐욕스러워지고, 상기 온도 하이퍼파라미터가 무한대에 가까워질수록, 상기 확률 분포는 더 균일해지는, 방법.
  13. 제12항에 있어서,
    상기 확률 분포는 (1) 상기 정책 모델이, 환경에서 사용될 때 탐험(exploration)을 방해할 결정론적(deterministic)이 되는 것을 방지하는 것, 그리고 (2) 부최적 액션 선택(suboptimal action selection)을 과대평가하는 Q-값 추정치의 비교적 작은 에러를 탐사(exploit)하는 것에 의한 상기 정책 모델의 최적화를 방지하는 것에 의해 상기 정책 모델이 상기 Q-값 추정치를 과적합(overfitting)시키는 것을 방지하는, 방법.
  14. 제1항에 있어서,
    상기 에이전트는 이전에 트레이닝된 에이전트이고, 상기 액션 가치 모델은 미리 결정된 수의 초기 단계들에 걸쳐 상기 에이전트를 트레이닝시키는 데에만 단지 사용되는, 방법.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 실행가능 프로그램이 저장되는 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 프로그램은, 하나 이상의 프로세서에 제1항 내지 제14항 중 어느 한 항에 따른 방법을 수행하도록 지시하는, 비일시적 컴퓨터 판독가능 저장 매체.
  20. 삭제
KR1020217027623A 2019-03-20 2020-02-25 이중 액터 크리틱 알고리즘을 통한 강화 학습 KR102596158B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962821243P 2019-03-20 2019-03-20
US62/821,243 2019-03-20
PCT/US2020/019652 WO2020190460A1 (en) 2019-03-20 2020-02-25 Reinforcement learning through a double actor critic algorithm

Publications (2)

Publication Number Publication Date
KR20210118182A KR20210118182A (ko) 2021-09-29
KR102596158B1 true KR102596158B1 (ko) 2023-11-01

Family

ID=72515874

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217027623A KR102596158B1 (ko) 2019-03-20 2020-02-25 이중 액터 크리틱 알고리즘을 통한 강화 학습

Country Status (6)

Country Link
US (1) US11816591B2 (ko)
EP (1) EP3921785A4 (ko)
JP (1) JP2022525423A (ko)
KR (1) KR102596158B1 (ko)
CN (1) CN113574547B (ko)
WO (1) WO2020190460A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7171520B2 (ja) * 2019-07-09 2022-11-15 株式会社日立製作所 機械学習システム
US11670028B1 (en) * 2019-09-26 2023-06-06 Apple Inc. Influencing actions of agents
CN113239634B (zh) * 2021-06-11 2022-11-04 上海交通大学 一种基于鲁棒模仿学习的模拟器建模方法
CN114770523B (zh) * 2022-05-31 2023-09-15 苏州大学 一种基于离线环境交互的机器人控制方法
CN114859734A (zh) * 2022-06-15 2022-08-05 厦门大学 一种基于改进sac算法的温室环境参数优化决策方法
CN115319741B (zh) * 2022-08-05 2023-10-10 美的集团(上海)有限公司 机器人控制模型的训练方法和机器人控制方法
WO2024050712A1 (en) * 2022-09-07 2024-03-14 Robert Bosch Gmbh Method and apparatus for guided offline reinforcement learning
CN116192760B (zh) * 2023-01-12 2023-08-29 中国人民解放军军事科学院系统工程研究院 一种空间太赫兹通信网络流量整形方法及装置
CN115802465B (zh) * 2023-02-01 2023-04-21 中国传媒大学 基于强化学习框架的d2d边缘缓存网络能耗管理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040073764A1 (en) 2002-07-31 2004-04-15 Bea Systems, Inc. System and method for reinforcement learning and memory management

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070203871A1 (en) * 2006-01-23 2007-08-30 Tesauro Gerald J Method and apparatus for reward-based learning of improved systems management policies
GB201215649D0 (en) * 2012-09-03 2012-10-17 Isis Innovation System monitoring
US9679258B2 (en) * 2013-10-08 2017-06-13 Google Inc. Methods and apparatus for reinforcement learning
WO2017019555A1 (en) 2015-07-24 2017-02-02 Google Inc. Continuous control with deep reinforcement learning
WO2017044842A1 (en) * 2015-09-11 2017-03-16 Google Inc. Training reinforcement learning neural networks
JP6256538B2 (ja) 2016-07-06 2018-01-10 栗田工業株式会社 ボイラ用脱酸素剤、及びボイラ水系の脱酸素方法
EP3516595B1 (en) * 2016-11-03 2020-09-09 Deepmind Technologies Limited Training action selection neural networks
JP6926203B2 (ja) * 2016-11-04 2021-08-25 ディープマインド テクノロジーズ リミテッド 補助タスクを伴う強化学習
CN116957055A (zh) 2017-06-05 2023-10-27 渊慧科技有限公司 使用多模态输入选择动作
CN110651279B (zh) * 2017-06-28 2023-11-07 渊慧科技有限公司 利用学徒来训练动作选择神经网络
US20190019082A1 (en) * 2017-07-12 2019-01-17 International Business Machines Corporation Cooperative neural network reinforcement learning
JP6963511B2 (ja) 2018-01-12 2021-11-10 株式会社日立製作所 解探索処理装置および解探索処理方法
US11107002B2 (en) * 2018-06-11 2021-08-31 Traxen Inc. Reinforcement learning based ground vehicle control techniques
CN109190720B (zh) * 2018-07-28 2021-08-06 深圳市商汤科技有限公司 智能体强化学习方法、装置、设备及介质
CN109299237B (zh) * 2018-09-26 2020-06-16 苏州大学 基于行动者评论家强化学习算法的循环网络人机对话方法
US11574148B2 (en) * 2018-11-05 2023-02-07 Royal Bank Of Canada System and method for deep reinforcement learning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040073764A1 (en) 2002-07-31 2004-04-15 Bea Systems, Inc. System and method for reinforcement learning and memory management

Also Published As

Publication number Publication date
CN113574547A (zh) 2021-10-29
US20200302323A1 (en) 2020-09-24
EP3921785A4 (en) 2022-04-20
US11816591B2 (en) 2023-11-14
JP2022525423A (ja) 2022-05-13
KR20210118182A (ko) 2021-09-29
CN113574547B (zh) 2024-01-19
WO2020190460A1 (en) 2020-09-24
EP3921785A1 (en) 2021-12-15

Similar Documents

Publication Publication Date Title
KR102596158B1 (ko) 이중 액터 크리틱 알고리즘을 통한 강화 학습
US11836625B2 (en) Training action selection neural networks using look-ahead search
Kurniawati et al. An online POMDP solver for uncertainty planning in dynamic environment
US8965834B2 (en) Particle methods for nonlinear control
CN110447041B (zh) 噪声神经网络层
KR20220130177A (ko) 학습된 은닉 상태를 사용한 에이전트 제어 플래닝
WO2020152300A1 (en) Controlling an agent to explore an environment using observation likelihoods
Tutsoy et al. An analysis of value function learning with piecewise linear control
Loisy et al. Deep reinforcement learning for the olfactory search POMDP: a quantitative benchmark
WO2022046197A1 (en) Training actor-critic algorithms in laboratory settings
Steckelmacher et al. Sample-efficient model-free reinforcement learning with off-policy critics
Buffet et al. Reinforcement learning
CN117223011A (zh) 使用加权策略投影的多目标强化学习
CN115039111A (zh) 用于强化学习的任务优先化的经验回放算法
Ravela et al. Dynamic Data-Driven Applications Systems and Information-Inference Couplings
Lambert Synergy of Prediction and Control in Model-based Reinforcement Learning
Chen et al. Reinforcement Learning for Mobile Robot Obstacle Avoidance with Deep Deterministic Policy Gradient
Čík et al. Reinforcement learning as a service
Hwang et al. Adaptive model learning based on dyna-Q learning
Gašić et al. Optimisation for POMDP-based spoken dialogue systems
Cao et al. Long-Horizon Route-Constrained Policy for Learning Continuous Control Without Exploration
Li et al. Offline Multi-Policy Gradient for Latent Mixture Environments
Zhao et al. Artificial intelligence warm-start approach: optimizing the generalization capability of QAOA in complex energy landscapes
Rafatirad et al. Reinforcement Learning
Cui et al. A Deep Reinforcement Learning Based Leader-Follower Control Policy for Swarm Systems

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right