KR102241404B1 - 시각 입력을 이용한 에이전트 네비게이션 - Google Patents

시각 입력을 이용한 에이전트 네비게이션 Download PDF

Info

Publication number
KR102241404B1
KR102241404B1 KR1020197023399A KR20197023399A KR102241404B1 KR 102241404 B1 KR102241404 B1 KR 102241404B1 KR 1020197023399 A KR1020197023399 A KR 1020197023399A KR 20197023399 A KR20197023399 A KR 20197023399A KR 102241404 B1 KR102241404 B1 KR 102241404B1
Authority
KR
South Korea
Prior art keywords
environment
time step
characteristic
agent
spatially scaled
Prior art date
Application number
KR1020197023399A
Other languages
English (en)
Other versions
KR20190104587A (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 KR20190104587A publication Critical patent/KR20190104587A/ko
Application granted granted Critical
Publication of KR102241404B1 publication Critical patent/KR102241404B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/387Organisation of map data, e.g. version management or database structures
    • G01C21/3878Hierarchical structures, e.g. layering
    • G06T3/18
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Abstract

방법들, 시스템들 및 장치들은 시각 입력을 이용한 네비게이션을 위한, 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램을 포함한다. 시스템들 중 하나는 복수의 시간 단계의 각각의 시간 단계에서, 그 시간 단계에서 환경의 이미지로부터 환경의 특성을 생성하도록 구성된 매핑 서브 시스템을 포함하며, 상기 특성은 특정 특성을 갖는 환경 내의 위치들을 식별하는 환경 맵을 포함하고, 상기 특성을 생성하는 단계는 각 시간 단계에 대해: 시간 단계에서 환경의 이미지를 획득하는 단계와, 시간 단계에 대한 제1 초기 특성을 생성하도록 이미지를 처리하는 단계와, 이전 시간 단계에 대한 최종 특성을 획득하는 단계와, 시간 단계에 대한 제2 초기 특성을 생성하도록 이전 시간 단계에 대한 특성을 처리하는 단계와, 시간 단계에 대한 최종 특성을 생성하도록 제1 초기 특성과 제2 초기 특성을 결합하는 단계를 포함한다.

Description

시각 입력을 이용한 에이전트 네비게이션
본 명세서는 환경을 통한 에이전트 네비게이션에 관한 것이다.
시각 입력(visual inputs)을 사용하는 환경을 통해 로봇과 같은 에이전트를 네비게이션하는 것은 시각 입력을 처리하여 환경에 관한 정보를 추출하고 그 환경에 관한 추출된 정보가 주어질 때 적절한 액션을 취할 것을 요구한다. 일부 시스템에서는 신경망을 사용하여 에이전트가 수행할 액션을 선택한다.
신경망은 수신된 입력에 대한 출력을 예측하기 위해 하나 이상의 비선형 단위 계층을 사용하는 기계 학습 모델이다. 일부 신경망은 출력 계층 이외에 하나 이상의 은닉 계층을 포함한다. 각 은닉 계층의 출력은 네트워크의 다음 계층, 즉 다음 은닉 계층 또는 출력 계층의 입력으로 사용된다. 네트워크의 각 계층은 각 파라미터 세트의 현재 값에 따라 수신 입력으로부터 출력을 생성한다.
일부 신경망은 순환 신경망이다. 순환 신경망은 입력 시퀀스를 수신하여 그 입력 시퀀스로부터 출력 시퀀스를 생성하는 신경망이다. 특히, 순환 신경망은 현재 시간 단계에서 출력을 계산할 때 이전 시간 단계로부터의 네트워크의 내부 상태 중의 일부 또는 전부를 사용할 수 있다. 순환 신경망의 예는 하나 이상의 장단기 (LSTM) 메모리 블록을 포함하는 LSTM 신경망이다. 각각의 LSTM 메모리 블록은, 셀이 예를 들어 현재 활성화를 생성하는데 사용하거나 LSTM 신경망의 다른 구성 요소로 제공될 셀에 대한 이전 상태를 저장할 수 있도록 하는 입력 게이트, forget 게이트 및 출력 게이트를 각각 포함하는 하나 이상의 셀을 포함할 수 있다.
본 명세서는 일반적으로 환경을 통해 네비게이팅하는 에이전트를 제어하는, 즉 에이전트에 의해 수행될 액션을 선택한 다음 에이전트로 하여금 그 선택된 액션을 수행하게 하는 네비게이션 시스템을 기술한다.
상기 기술된 주제의 하나의 혁신적인 양태에서, 하나 이상의 컴퓨터 및 실행될 때 하나 이상의 컴퓨터로 하여금 복수의 시간 단계의 각 시간 단계에서, 환경의 이미지로부터 환경의 특성(characterization)을 생성하기 위해 구성된 맵핑 서브 시스템을 구현하게 하는 명령들을 저장하는 하나 이상의 저장 디바이스를 포함하는 시스템으로서, 상기 특성은 특정 특성을 갖는 환경 내의 위치들을 식별하는 환경 맵을 포함하고, 상기 특성을 생성하는 것은, 각 시간 단계에 대해: 상기 시간 단계에서 환경의 이미지를 획득하는 단계와, 시간 단계에 대한 상기 환경의 제1 초기 특성을 생성하기 위해 이미지를 처리하는 단계와, 시간 단계에 선행하는 이전 시간 단계에 대한 상기 환경의 최종 특성을 획득하는 단계와, 시간 단계에 대한 환경의 제2 초기 특성을 생성하기 위해 이전 시간 단계에 대한 환경의 특성을 처리하는 단계와, 상기 시간 단계에 대한 환경의 최종 특성을 생성하도록 제1 초기 특성과 제2 초기 특성을 결합하는 단계를 포함한다.
일부 구현예에서, 상기 제1 초기 특성을 생성하기 위해 이미지를 처리하는 단계는 제1 초기 특성을 생성하도록 신경망을 사용하여 이미지를 처리하는 단계를 포함한다.
일부 구현예에서, 상기 이미지는 환경을 통해 이동하는 에이전트에 의해 캡쳐된 이미지이고, 상기 시간 단계에 대한 환경의 제2 초기 특성을 생성하기 위해 이전 시간 단계에 대한 환경의 특성을 처리하는 단계는, 이전 시간 단계과 시간 단계 사이의 상기 에이전트의 이동 측정치를 획득하는 단계와, 제 2 초기 특성을 생성하기 위해 이전 시간 단계에 대한 환경의 최종 특성 및 상기 이동 측정치에 차등 워핑 함수를 적용하는 단계를 포함한다.
일부 구현예에서, 상기 워핑 함수는 쌍선형 샘플링을 사용하여 보간을 수행하는 함수이다.
일부 구현예에서, 상기 이미지는 에이전트의 1 인칭 자기 중심 시점에서 나온 것이고, 상기 제1 초기 특성, 제2 초기 특성, 이전 시간 단계에 대한 최종 특성 및 시간 단계에 대한 최종 특성은 하향식 시점으로부터 나온 것이다.
일부 구현예에서, 상기 시간 단계에 대한 최종 특성을 생성하도록 제1 초기 특성과 제2 초기 특성을 결합하는 단계는, 최종 특성을 생성하기 위해 제1 초기 특성과 제2 초기 특성에 업데이트 함수를 적용하는 단계를 포함한다.
일부 구현예에서, 각 특성은 (i) 환경 내의 복수의 위치가 특정 특성을 갖는지 여부를 나타내는 스코어 세트 및 (ii) 상기 스코어 세트의 신뢰도 측정치 세트를 포함하고, 상기 업데이트 함수는 다음 방정식의 연산을 수행하는 것을 포함한다.
Figure 112019081476055-pct00001
Figure 112019081476055-pct00002
여기서, ft는 시간 단계에 대한 최종 특성의 스코어 세트, ct는 시간 단계에 대한 최종 특성의 스코어 세트의 신뢰도 측정치 세트, f't는 제1 초기 특성에 대한 스코어 세트, c't는 제1 초기 특성에 대한 스코어 세트내의 신뢰도 측정치 세트, ft-1는 제2 초기 특성에 대한 스코어 세트, ct-1는 제2 초기 특성에 대한 스코어 세트의 신뢰도 측정치 세트이다.
일부 구현예에서, 업데이트 함수는 순환 신경망에 의해 수행되고, 순환 신경망은 복수의 시간 단계의 각 시간 단계에 대해, 시간 단계에 대한 최종 특성을 생성하도록 시간 단계에 대한 제1 초기 특성과 제2 초기 특성을 처리하도록 구성된다.
일부 구현예에서, 시간 단계에 대한 상기 환경 맵은, 환경 내의 복수의 위치 각각에 대해: 상기 위치가 특정 특성을 갖는지 여부를 나타내는 스코어를 포함하고, 상기 특성은 위치 각각에 대해, 그 위치에 대한 스코어의 신뢰도 측정치를 포함한다.
일부 구현예에서, 상기 시스템은 복수의 시간 단계 각각에 대해: 상기 맵핑 서브 시스템으로부터 시간 단계에 대한 최종 특성을 획득하고, 상기 시간 단계에서 환경과 상호 작용하는 에이전트에 의해 수행될 제안된 액션을 선택하기 위해 최종 특성을 처리하도록 구성된 플래닝 서브 시스템을 더 포함한다.
다른 혁신적인 양태에서, 시스템은 플래닝 서브 시스템을 포함하여, 복수의 시간 단계의 각각의 시간 단계에 대해, 그 시간 단계에 대한 목표를 달성하기 위한 액션을 수행하는 에이전트 환경의 최종 특성을 획득하고, 상기 에이전트의 환경의 최종 특성은 특정 특성을 갖는 환경 내의 위치들을 식별하는 환경 맵을 포함하고; 상기 최종 특성으로부터 공간적으로 스케일링된 환경 맵들의 시퀀스를 생성하고, 상기 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵은 시퀀스 내의 임의의 후속의 공간적으로 스케일링된 환경 맵에 비해 다운 샘플링되고; 최대 다운 샘플링된 공간적으로 스케일링된 환경 맵으로 시작하는 시퀀스내의 각각의 공간적으로 스케일링된 환경 맵에 대해, 시퀀스 내의 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하기 위해 공간적으로 스케일링된 환경 맵 및 그 공간적으로 스케일링된 환경 맵과 관련된 하나 이상의 입력을 처리하고, 상기 가치 맵은 공간적으로 스케일링된 환경의 복수의 영역의 각 영역에 대해, 목표를 달성하기 위해 그 영역에 있는 에이전트의 가치 추정치를 포함하고; 마지막 공간적으로 스케일링된 환경 맵 이외의 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵에 대해, 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 업데이트된 가치 맵을 시퀀스 내의 후속의 공간적으로 스케일링된 환경 맵과 관련된 입력으로서 제공하고; 그리고 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 상기 업데이트된 가치 맵에 기초하여 제안된 액션을 선택하도록 구성된다.
일부 구현예에서, 상기 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵과 관련된 입력은 에이전트에 대한 목표를 식별하는 데이터를 포함한다.
일부 구현예에서, 상기 목표는 에이전트가 도달하려고 시도하는 환경 내의 위치이다.
일부 구현예에서, 상기 목표는 에이전트가 위치하려고 시도하는 환경 내의 객체이다.
일부 구현예에서, 상기 최대 다운 샘플링된 공간적으로 스케일링된 환경 맵에 대한 입력은 시간 단계에 대한 최종 특성을 포함한다.
일부 구현예에서, 상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하기 위해 공간적으로 스케일링된 환경 맵과 관련된 입력을 처리하는 단계는, 상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 초기 가치 맵을 생성하도록 공간적으로 스케일링된 환경 맵과 관련된 입력을 처리하는 단계; 및 상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하도록 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 초기 가치 맵상에서 하나 이상의 가치 반복을 수행하는 단계를 포함한다.
일부 구현예에서, 상기 제안된 액션을 선택하기 위해 최종 특성을 처리하는 단계는, 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 상기 제안된 액션을 선택하는 단계를 포함한다.
일부 구현예에서, 상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 제안된 액션을 선택하는 단계는, 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들로부터, 가장 큰 가치 추정치를 갖는 업데이트된 가치 맵의 특정 영역을 결정하는 단계와; 그리고 시간 단계에 대한 제안된 액션으로서 에이전트를 특정 영역으로 가져가는 액션을 선택하는 단계를 포함한다.
일부 구현예에서, 상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 제안된 액션을 선택하는 단계는, 제안된 액션을 선택하도록 하나 이상의 정류된 선형 유닛을 포함하는 신경망을 통해 가치 맵들을 처리하는 단계를 포함한다.
본 명세서에서 기술된 본 발명의 특정 실시예들은 다음의 이점 중 하나 이상을 실현하도록 구현될 수 있다.
맵핑 및 플래닝 서브 시스템을 포함하는 환경에서 에이전트를 탐색하기 위한 시스템은 종단간 교육될 수 있어, 이들이 트레이닝된 후에 이러한 시스템의 효율성과 정확도를 높일 수 있다. 즉, 맵퍼와 플래너에 의해 수행된 동작들은 완전히 차별화될 수 있으므로 맴퍼는 플래너로부터의 오류를 역 전파함으로써 트레이닝될 수 있다. 예를 들어, 플래닝 서브 시스템은 맵핑 서브 시스템이 보다 나은 환경 맵을 생성하는 방법을 학습하는 동안 맵핑 서브 시스템에 의해 생성된 환경 맵을 사용하는 방법을 학습할 수 있다. 환경 맵을 공간적으로 스케일링함으로써 에이전트에 대한 액션 플래닝을 계산상 보다 효율적으로 만들 수 있어, 매우 정확한 액션 플랜을 생성하면서 더 많은 다운 샘플링된 공간적으로 스케일링된 환경 맵에 대한 가치 반복 정밀도를 최소화할 수 있다.
본 명세서에 기술된 주제의 하나 이상의 실시예의 세부 사항은 첨부된 도면 및 이하의 설명에서 설명된다. 주제의 다른 특징, 양태 및 장점은 상세한 설명, 도면 및 청구 범위로부터 명백해질 것이다.
도 1은 예시적인 네비게이션 시스템을 도시한다.
도 2는 차등 맵퍼의 아키텍처 예를 도시한다.
도 3은 차등적 계층 플래너의 예시적인 아키텍처를 도시한다.
도 4는 주어진 시간 단계에서 이미지를 처리하기 위한 예시적인 프로세스의 흐름도이다.
다양한 도면에서 동일한 참조 번호 및 명칭은 동일한 요소를 나타낸다.
도 1은 예시적인 네비게이션 시스템(100)을 도시한다. 네비게이션 시스템 (100)은 이하에서 기술된 시스템들, 구성 요소들 및 기술들이 구현될 수 있는, 하나 이상의 위치에 있는 하나 이상의 컴퓨터상의 컴퓨터 프로그램으로 구현되는 시스템의 예이다.
네비게이션 시스템(100)은 환경의 이미지를 수신하고 그 수신된 이미지에 응답하여 에이전트에 의해 수행될 액션을 선택함으로써 에이전트가 환경을 통해 이동할 때 에이전트를 제어한다.
일반적으로 환경은 실제 환경이고, 에이전트는 목표(goal를 달성하기 위해 실제 환경과 상호 작용하는 기계적 에이전트이다. 예를 들어, 에이전트는 특정 목표를 달성하기 위해, 예를 들어 환경의 특정 위치로 이동하거나 환경 내의 특정 객체를 위치시키기 위해 환경과 상호 작용하는 로봇일 수 있다. 다른 예로서, 에이전트는 목표를 달성하기 위해 환경을 통해 네비게이팅하는 즉 특정 위치로 네비게이팅하는 자율 또는 반자율 차량일 수 있다.
특히, 네비게이션 시스템(100)은 환경의 이미지를 반복적으로 수신하고, 각각의 이미지에 응답하여, 가능한 액션 세트로부터 에이전트에 의해 수행될 액션을 선택하고 상기 에이전트로 하여금 그 선택된 액션을 수행하게 한다. 이미지를 수신 한 다음 그 이미지에 응답하여 액션을 수행하는 각각의 반복은 본 명세서에서 시간 단계(time step)로 언급될 것이다. 이러한 방식으로 액션들을 반복적으로 선택함으로써, 시스템(100)은 에이전트가 목표를 달성하도록 한다.
일반적으로, 수신된 이미지는 에이전트가 환경을 통해 이동할 때 에이전트에 의해 캡쳐된 이미지, 즉 카메라 또는 에이전트의 다른 센서에 의해 캡쳐된 이미지이다. 따라서, 이미지는 에이전트에 대한 환경의 1 인칭 이미지이다.
예를 들어, 주어진 시간 단계에서, 시스템(100)은 환경의 이미지(102) 및 이전 시간 단계에 대한 에이전트의 에고모션(egomotion)(104)을 식별하는 데이터를 수신한다. 에로 모션(104)은 이전 시간 단계와 상기 시간 단계 사이의 에이전트의 이동 측정치(measure), 즉 에이전트의 위치가 이전 시간 단계에 비해 얼마나 변했는지를 나타내는 측정치이다.
그런 다음 시스템(100)은 이미지(102), 에고모션(104), 및 에이전트가 도달하려는 목표(122)를 식별하는 데이터를 사용하여 시간 단계에 대한 액션(132)을 선택하여, 그 액션(132)에 대응하는 특정 제어 입력을 제출하도록 에이전트의 제어 시스템에 지시함으로써 에이전트가 액션(132)을 수행하도록 한다. 즉, 액션들은 에이전트가 환경을 통해 이동하게 하는 에이전트의 제어 입력이다.
특히, 시스템(100)은 차등(differentiable) 맵퍼(110) 및 차등적 계층 플래너(planner)(120)를 포함한다.
이하의 설명으로부터 알 수 있는 바와 같이, 주어진 이미지에 응답하여 액션을 선택하는 동안 이들 서브 시스템 각각에 의해 수행되는 동작들은 완전히 차별화 가능하기 때문에 맵퍼(110) 및 플래너(120)는 "차등"으로 지칭된다. 이는 시스템 (100)이 맵퍼(110) 및 플래너(120)를 종단 간에서 트레이닝하여 그 트레이닝된 시스템의 성능을 향상시킨다. 맵퍼(110)와 플래너(120)에 대한 트레이닝은 도 4를 참조하여 보다 상세히 설명될 것이다.
각각의 시간 단계에서, 맵퍼(110)는 시간 단계에 대한 이미지(102)와 에고모션(104)을 수신하여 환경의 특성(characterization)(112)을 생성한다.
상기 특성(112)는 일반적으로 빌리프(belief) 데이터와 신뢰도(confidence) 데이터를 포함한다.
상기 빌리프 데이터는 플래너(120)에게 유용할 몇몇 특성을 갖는 환경 내의 위치들을 식별하는 환경 맵이다. 특히, 맵퍼(110)가 트레이닝되는 방식때문에, 특정 특성은 사전 결정되기보다는 학습된다. 즉, 맵퍼는 플래너(120)로부터의 오류를 역 전파함으로써 트레이닝되기 때문에, 맵은 환경의 잠재적 표현에 해당한다. 후술되는 바와 같이, 맵은 학습된 플래너(120)에 직접 공급되기 때문에, 맵은 환경의 사전 결정된 특성을 인코딩할 필요는 없지만, 그 대신 플래너(120)에 의해 사용되는 일반적인 공간 메모리, 즉 환경 내의 다양한 위치의 일부 특성을 인코딩하는 메모리로서 기능할 수 있다.
보다 구체적으로, 맵은 환경의 하향식 뷰(top-down view)로부터의 것이며, 하향식 뷰 내의 다수의 위치 각각에 대해, 그 위치가 특정 특성을 가질 가능성을 나타내는 개별 스코어를 포함한다.
신뢰도 데이터는 빌리프 데이터가 정확한지를 맵퍼(110)가 얼마나 확신하는지를 식별하는 데이터이다. 예를 들어, 신뢰도 데이터는 맵 내의 각각의 위치에 대해, 맵퍼(110)가 그 위치에 대한 가능성에 얼마나 자신이 있는지를 나타내는 신뢰 스코어를 포함할 수 있다.
상기 맵퍼(110) 및 특성을 생성하는 것은 도 2를 참조하여 보다 상세히 설명될 것이다.
플래너(120)는 특성(112)을 수신하여, 그 특성(112)에 기초하여 에이전트가 목표(122)를 달성하도록 하기 위해 에이전트에 의해 수행될 액션(132)을 선택한다. 일반적으로, 플래너(120)는 특성(112)을 사용하여 다수의 스케일에서 가치 반복 (value iteration)을 수행하여 에이전트에 의해 수행될 액션을 선택한다.
플래너(120) 및 특성에 기초하여 액션을 선택하는 것은 도 3을 참조하여 보다 상세히 설명될 것이다.
그런 다음 시스템(100)은 선택된 액션(132)을 에이전트가 수행하게 한다.
일반적으로, 선택된 액션(132)은 에이전트에 대한 제어 입력이고, 시스템은 그 제어 입력을 에이전트로 직접 제출하거나 또는 에이전트가 그에 따라 지시하도록 제어 시스템에 명령함으로써 상기 선택된 액션(132)을 수행하게 한다.
도 2는 차등 플래너(110)의 예시적인 아키텍처를 도시한다.
주어진 시간 단계에 대한 최종 특성(112)을 생성하기 위해, 플래너(110)는 이미지(102)와 에고모션(104)을 처리하여 시간 단계에 대한 2개의 초기 특성을 생성한다. 최종 특성과 마찬가지로, 2개의 초기 특성은 각각 빌리프 데이터와 신뢰도 데이터를 포함하지만, 최종 특성보다 가능성이 다른 스코어와 신뢰도를 가진다. 플래너(110)는 2개의 초기 특성을 결합하여 최종 특성(112)을 생성한다.
특히, 플래너는 신경망(220)을 사용하여 이미지(102)를 처리하여, 시간 단계에 대한 환경의 제1 초기 특성(222)을 생성한다. 도 2에서 알 수 있는 바와 같이, 신경망(220)은 잔여 연결을 사용하는 컨벌루션 인코더를 포함하고, 2차원(2D) 이미지 공간에서 이미지(102) 내의 장면의 표현을 생성한다. 이 표현은 완전 연결 계층들을 통해 자기 중심 2D 하향식 뷰에 있는 것으로 변환된다. 이 하향식 뷰 표현은 제1 초기 특성이 획득하기 위해 업-컨볼루션 계층들(잔여 연결 포함)을 사용하여 업-샘플링된다.
플래너(110)는 또한 에고모션(104)을 사용하여 이전 시간 단계로부터의 최종 특성(202)을 처리하여 시간 단계에 대한 제2 초기 특성(212)을 생성한다.
보다 구체적으로, 플래너(110)는 이전 시간 단계로부터의 최종 특성(202)과 상기 에고모션(104)에 차등 워핑 함수(differentiable warping function)(212)를 적용하여, 제2 초기 특성(212)을 생성한다. 워핑 함수는 이전 시간 단계로부터의 최종 특성(202)을 차등 방식으로 워핑하는 임의의 함수일 수 있다.
예를 들어, 워핑 함수는 쌍선형 샘플링을 사용하여 실현되는 함수일 수 있다. 특히 에고모션이 주어지면, 시스템은 제2 초기 특성(212)의 각 픽셀을 그것이 유래되어야 하는 최종 특성(202)내의 위치로 매핑하는 역방향 유동장(backward flow field)을 계산할 수 있다. 이러한 역방향 흐름은 에고모션으로부터 분석적으로 계산될 수 있다. 그런 다음 함수는 쌍선형 샘플링을 사용하여 이 유동장을 최종 특성(202)에 적용하여 제2 초기 특성(212)을 생성할 수 있다.
그런 다음 플래너(110)는 제1 초기 특성(222)과 제2 초기 특성(212)을 결합하여 시간 단계에 대한 환경의 최종 특성(112)을 생성한다. 보다 구체적으로, 플래너(110)는 결합 함수(230)를 적용하여 제1 초기 특성(222)과 제2 특성(212)을 결합하여 시간 단계에 대한 최종 특성(112)을 생성한다. 일부 구현예에서, 결합 함수(230)는 분석 함수이다. 특히, 업데이트 함수는 다음과 같이 표현될 수 있다.
Figure 112019081476055-pct00003
Figure 112019081476055-pct00004
여기서 ft는 시간 단계에 대한 최종 특성의 스코어 세트, ct는 시간 단계에 대한 최종 특성의 스코어 세트의 신뢰도 측정치 세트, f't는 제1 초기 특성에 대한 스코어 세트, c't는 제1 초기 특성에 대한 스코어 세트내의 신뢰도 측정치 세트, ft-1는 제2 초기 특성에 대한 스코어 세트, ct-1는 제2 초기 특성에 대한 스코어 세트의 신뢰도 측정치 세트이다.
일부 다른 구현예에서, 결합 함수(230)는 신경망, 예를 들어 장단기 메모리(LSTM) 신경망과 같은 순환 신경망에 의해 실현된다.
이 설명으로부터 알 수 있는 바와 같이, 이미지(102), 에고모션(104) 및 최종 특성(202)상의 플래너(110)에 의해 수행되는 각각의 연산은 차등 연산, 즉 신경망 연산 또는 차등 분석 함수 중 하나이다.
일단 플래너(110)가 최종 특성(112)을 생성하면, 플래너(110)는 그 최종 특성(112)을 맵퍼(120)에 제공하여 시간 단계에서 액션을 선택하는데 사용한다.
도 3은 차등적 계층 플래너(120)의 예시적인 아키텍처를 도시한다.
일반적으로, 계층 플래너(120)는 다수의 공간 스케일로 계획한다. 특히, 계층 플래너(120)는 다수의 공간 스케일 각각에 대한 개별(respectiv) 가치 서브 시스템 (310A-N)을 포함한다. 이 예에서는 가치 서브 시스템(310M 및 3ION)만 도시되어 있으나 플래너(120)는 일반적으로 2개 이상의 가치 서브 시스템을 포함할 것이다.
서브 시스템들(310A-N)의 제1 가치 서브 시스템(310A)은 k번 공간적으로 다운 샘플링된 맵에 대응하고, 마지막 가치 서브 시스템(310N)은 오리지널 해상도, 즉 맵퍼(110)로부터 수신된 맵의 해상도에 대응한다.
각 가치 서브 시스템은 대응하는 공간 스케일에서
Figure 112019081476055-pct00005
회 가치 반복을 수행하여, 해당 공간 스케일에 있는 하나 이상의 가치 맵을 생성한다. 가치 맵은 공간 스케일에 대응하는 공간적으로 스케일링된 환경 맵에서 복수의 영역의 각 영역에 대해, 목표를 달성하기 위한 영역에 있는 에이전트의 가치 추정치, 즉, 해당 영역에 있는 에이전트가 목표를 달성하는데 얼마나 가치가 있는지의 추정치를 포함한다.
그런 다음 플래너(120)는 중심을 자르고 하나 이상의 가치 맵을 업 샘플링하여, 상기 중심이 잘려지고 업 샘플링된 출력을 다음 가치 서브 시스템의 입력으로 제공함으로써 보다 정밀한 스케일로 가치 반복을 수행하기 위해 상기 잘린 중심 및 업 샘플링된 출력을 사용한다. 플래너(120)는 오리지널 문제의 해결책에 도달하도록 이 프로세스를 여러 번, 즉 각 가치 서브 시스템에 대해 한 번씩 반복한다.
일단 마지막 가치 서브 시스템(310N)이 맵퍼(110)로부터 수신된 환경 맵과 동일한 스케일의 하나 이상의 가치 맵을 생성하면, 플래너(120)는 이들 가치 맵을 사용하여 에이전트(132)에 의해 수행될 액션을 선택한다. 도 3의 예에서, 플래너(120)는 정류된 선형 유닛 활성화 기능을 갖는 완전 연결 계층들의 세트를 사용하여 이들 가치 맵을 처리하여, 에이전트에 의해 수행될 수 있는 가능 액션들에 대한 스코어 분포를 생성한 다음 그 스코어 분포로부터 액션(132)을 선택한다. 다른 예들에서, 플래너(120)는 마지막 가치 맵으로부터, 에이전트의 현재 위치로부터 도달될 수 있고 가장 큰 가치 추정치를 갖는 업데이트된 가치 맵들의 특정 영역을 결정한 다음, 다음 시간 단계에 대한 제안된 액션(proposed actions)(132)으로서 에이전트를 특정 영역으로 가져가는 액션을 선택한다.
보다 구체적으로, 플래너(120)는 시간 단계에 대한 최종 특성(112)을 수신하여, 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵이 그 시퀀스내의 임의의 후속의 공간적으로 스케일링된 환경 맵에 비해 다운 샘플링되고 가치 서브 시스템(310A-N) 중 다른 하나에 대응하는, 공간적으로 스케일링된 환경 맵의 시퀀스를 최종 특성으로부터 생성한다.
주어진 공간 스케일에 대해, 그 스케일에 대한 가치 서브 시스템은 (i) 대응하는 스케일의 공간적으로 스케일링된 환경 맵 및 (ii) 공간적으로 스케일링된 환경 맵과 관련된 하나 이상의 입력을 처리하여, 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성한다.
공간적으로 스케일링된 환경 맵과 관련된 입력은 일반적으로 시퀀스내의 이전 공간 스케일에 대한 하나 이상의 가치 맵 및 에이전트에 대한 목표를 식별하는 데이터를 포함한다. 즉, 시퀀스의 최종 가치 서브 시스템이외의 각 가치 서브 시스템은 가치 서브 시스템에 의해 생성된 하나 이상의 가치 맵을 시퀀스 내의 후속의 공간적으로 스케일링된 환경 맵과 연관된 입력으로서, 즉 시퀀스내의 다음 가치 서브 시스템에 대한 입력으로 제공한다. 시퀀스내의 제1 가치 서브 시스템, 즉 최대 다운 샘플링된 가치 서브 시스템에 대해, 가치 맵은 하나 이상의 사전 결정된 초기 가치 맵일 수 있다.
목표가 위치인 경우, 주어진 가치 서브 시스템의 입력인 목표를 식별하는 데이터는 서브 시스템과 동일한 스케일의 맵일 수 있다. 따라서, 미세 스케일의 경우, 에이전트가 목표로부터 멀리 떨어져 있을 때, 그 목표는 대응하는 서브 시스템에 대한 입력으로 제공되는 데이터에 표시되지 않을 수 있다.
각 가치 서브 시스템은 퓨저(fuser)(320) 및 가치 반복 모듈(330)을 포함한다.
퓨저(320)는 (i) 대응하는 스케일의 공간적으로 스케일링된 환경 맵 및 (ii) 공간적으로 스케일링된 환경 맵과 관련된 하나 이상의 입력을 결합하여, 상기 공간적으로 스케일링된 환경 맵과 동일한 스케일의 하나 이상의 가치 맵을 포함하는 가치 반복 입력을 생성한다. 특히, 퓨저(320)는 이전의 가치 서브 시스템으로부터 하나 이상의 가치 맵을 중심 자르기 및 업 샘플링하고, 깊이(depth)는 목표 데이터, 공간적으로 스케일링된 환경 맵 및 상기 잘리고 업 샘플링된 가치 맵들을 연결 (concatenates)하여 가치 반복 입력을 생성한다.
그런 다음 가치 반복 모듈(330)은 가치 반복 신경망을 사용하여, 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하기 위해 가치 반복 입력에 대해, 즉 하나 이상의 초기 가치 맵에 대해
Figure 112019081476055-pct00006
회 가치 반복을 수행한다. 가치 반복은 다익스트라(Dijkstra) 알고리즘의 일반화로 생각할 수 있으며, 여기서 각 상태의 값은 그의 이웃들의 값을 최대치로 취하고 각 이웃 상태로의 전환의 보상을 더하여 각각의 반복에서 반복적으로 계산된다. 가치 반복을 수행하는 가치 반복 신경망은 플래너(120)가 그 입력에 대해 차별화될 수 있게 하는, 교번 컨볼루션 및 채널-단위 최대 풀링 연산(channel-wise max pooling operations)을 갖는 신경망이다. 가치 반복 및 가치 반복 신경망은 A. Tamar, S. Levine 및 P. Abbeel에 의한 2016년, NIPS의 가치 반복 네트워크에 보다 자세히 설명되어 있다.
도 4는 주어진 시간 단계에서 이미지를 처리하기 위한 예시적인 프로세스(400)의 흐름도이다. 편의상, 프로세스(400)는 하나 이상의 위치에 위치한 하나 이상의 컴퓨터의 시스템에 의해 수행되는 것으로 설명될 것이다. 예를 들어, 네비게이션 시스템, 예를 들어 도 1의 네비게이션 시스템(100)은 적절하게 프로그램되어 프로세스(400)를 수행할 수 있다.
시스템은 환경의 이미지, 즉 에이전트가 환경을 통해 이동하는 동안 에이전트의 센서에 의해 캡쳐된 이미지를 획득한다(단계 402). 시스템은 또한 이전 시간 단계로부터 에이전트의 에고모션을 식별하는 데이터를 수신한다.
시스템은 이미지 및 에고모션으로부터 환경의 특성을 생성한다(단계 404). 특성은 빌리프 데이터 및 신뢰도 데이터를 포함한다. 즉, 상기 특성은 맵의 각 위치에 스코어들이 있는 환경의 하향식 맵 및 스코어들에 대한 신뢰도 측정치를 포함한다.
시스템은 에이전트에 의해 수행될 제안된 액션을 선택한다(단계 406). 특히 시스템은 에이전트의 목표를 식별하는 데이터와 상기 환경의 특성을 사용하여 다수의 공간 스케일로 가치 반복을 수행하여 하나 이상의 최종 가치 맵을 생성한다. 그런 다음 시스템은 하나 이상의 최종 가치 맵을 사용하여 에이전트에 의해 수행될 상기 제안된 액션을 선택한다.
만약 프로세스(400)가 플래너 및 맵퍼의 트레이닝 중에 수행되면, 시스템은 최적의 액션, 즉 에이전트에 의해 수행되었어야 하는 액션을 획득한다(단계 408).
시스템은 선택된 액션과 상기 최적 액션 사이의 오류 측정치의 구배 (gradient)를 결정한다(단계 410).
시스템은 플래너 및 맵퍼를 통해 구배를 역 전파하여, 맵퍼 및 플래너의 파라미터들에 대한 업데이트를 결정한다(단계 412). 따라서, 시스템은 맵퍼 및 플래너를 종단간으로 트레이닝하며, 즉, 트레이닝 동안 제안된 액션의 오류는 플래너의 파라미터뿐만 아니라 맵퍼의 파라미터에 대한 업데이트를 초래한다. 특히, 일부 구현 예에서, 제안된 액션의 오류는 맵퍼의 파라미터를 조정하는데 사용되는 유일한 피드백이므로, 맵퍼는 임의의 추가 지도없이 올바른 액션을 선택하는데 있어 플래너에게 유용한 맵들을 생성하도록 학습한다. 특히 맵퍼가 생성한 빌리프 데이터의 특정 특성이 무엇인지 지정하는 외부 레이블이 없으므로, 맵퍼는 플래너에게 유용한 특성을 학습할 수 있다.
프로세스(400)가 트레이닝 후에 수행되는 경우, 시스템은 에이전트로 하여금 상기 제안된 액션을 수행하게 할 수 있다. 프로세스(400)가 트레이닝 중에 수행되는 경우, 시스템은 환경을 통해 이동하는 에이전트로 하여금 확률(p)로 제안된 액션을 수행하게 하고 확률(1-p)로 최적의 액션을 수행하게 할 수 있다. 이를 통해 에이전트는 환경을 탐색하여 목표를 달성할 때 향상된 성과로 이어질 수 있는 액션을 잠재적으로 발견할 수 있다. 일부 경우, 시스템은 최적의 액션을 선택하는 확률을 어닐링하기 위해 에이전트 동작 중에 p를 증가시킨다.
본 명세서는 시스템 및 컴퓨터 프로그램 구성 요소와 관련하여 "구성된"이라는 용어를 사용한다. 특정 동작이나 액션을 수행하도록 구성된 하나 이상의 컴퓨터의 시스템은 그 시스템에 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합이 설치되어, 동작시 그 시스템으로 하여금 상기 동작 또는 액션을 수행하게 함을 의미한다. 특정 동작 또는 액션을 수행하도록 구성된 하나 이상의 컴퓨터 프로그램이 하나 이상의 프로그램이 데이터 처리 장치에 의해 실행될 때 그 장치로 하여금 동작 또는 액션을 수행하게 하는 명령들을 포함함을 의미한다.
본 명세서에 기술된 주제 및 기능적 동작의 실시예는 본 명세서 및 그 구조적 등가물에 개시된 구조 또는 이들 중 하나 이상의 조합을 포함하여, 디지털 전자 회로, 유형적으로 구현된 컴퓨터 소프트웨어 또는 펌웨어, 컴퓨터 하드웨어로 구현될 수 있다. 본 명세서에 기재된 주제의 실시예는 데이터 처리 장치에 의해 실행되거나 또는 데이터 처리 장치의 동작을 제어하기 위한 유형의 비-일시적 저장 매체 상에 인코딩된 하나 이상의 컴퓨터 프로그램, 즉 컴퓨터 프로그램 명령의 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터 저장 매체는 기계-판독 가능 저장 디바이스, 기계-판독 가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 이들 중 하나 이상의 조합일 수 있다. 대안으로 또는 부가적으로, 프로그램 명령은 데이터 처리 장치에 의한 실행을 위해 적절한 수신기 장치로의 송신을 위해 정보를 인코딩하기 위해 생성되는 인위적으로 생성된 전파된 신호, 예를 들어, 기계-생성의 전기적, 광학적 또는 전자기적 신호 상에 인코딩될 수 있다.
"데이터 처리 장치"라는 용어는 데이터 처리 하드웨어를 지칭하며, 예를 들어 프로그램 가능 프로세서, 컴퓨터, 또는 다중 프로세서 또는 컴퓨터를 포함하여, 데이터를 처리하기 위한 모든 종류의 장치, 디바이스 및 머신을 포함한다. 상기 장치는 또한 특수 목적 논리 회로, 예를 들어, FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(주문형 집적 회로)일 수 있거나, 이를 더 포함할 수 있다. 상기 장치는 하드웨어에 추가하여, 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 이들의 하나 이상의 조합을 구성하는 코드를 선택적으로 포함할 수 있다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 애플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로 지칭되거나 기술될 수 있는 컴퓨터 프로그램은 컴파일된 또는 해석된 언어, 또는 선언적 또는 절차적 언어를 포함하여 임의의 형태의 프로그래밍 언어로 작성될 수 있고, 독립 실행형 프로그램 또는 모듈, 구성 요소, 서브 루틴 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛을 포함하여 임의의 형태로 배포될 수 있다. 프로그램은 파일 시스템의 파일에 해당할 수 있지만 그렇지 않을 수도 있다. 프로그램은 다른 프로그램이나 데이터(예컨대, 마크 업 언어 문서에 저장된 하나 이상의 스크립트)를 보유하고 있는 파일의 일부분, 문제의 프로그램 전용의 단일 파일 또는 다수의 조정 파일(예컨대, 하나 이상의 모듈, 서브 프로그램 또는 코드의 일부를 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 한 사이트에 있거나 여러 사이트에 분산되어 있으며 데이터 통신 네트워크로 상호 연결된 다수의 컴퓨터상에서 실행되도록 배포될 수 있다.
본 명세서에서, "데이터베이스"라는 용어는 임의의 데이터 수집을 나타내기 위해 광범위하게 사용되고, 데이터는 임의의 특정 방식으로 구조화되거나 전혀 구조화될 필요가 없으며 하나 이상의 위치에 있는 저장 디바이스에 저장될 수 있다. 따라서, 예를 들어, 색인 데이터베이스는 다수의 데이터 집합(collection)을 포함할 수 있으며, 각각의 집합은 다르게 구성되고 액세스될 수 있다.
유사하게, 본 명세서에서, "엔진"이라는 용어는 하나 이상의 특정 기능을 수행하도록 프로그래밍된 소프트웨어 기반 시스템, 서브 시스템, 또는 프로세스를 지칭하도록 광범위하게 사용된다. 일반적으로 엔진은 하나 이상의 소프트웨어 모듈 또는 구성 요소로 구현되며 하나 이상의 위치에 있는 하나 이상의 컴퓨터상에 설치된다. 일부 경우, 하나 이상의 컴퓨터는 특정 엔진 전용으로 사용되고, 다른 경우에는 다수의 엔진이 동일한 컴퓨터 또는 컴퓨터들상에 설치되어 실행될 수 있다.
본 명세서에서 설명된 프로세스 및 논리 흐름은 입력 데이터를 조작하고 출력을 생성함으로써 기능을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램 가능 컴퓨터에 의해 수행될 수 있다. 프로세스 및 논리 흐름은 또한 특수 목적 논리 회로, 예를 들어 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 (24)

  1. 하나 이상의 컴퓨터 및 실행될 때 하나 이상의 컴퓨터로 하여금 복수의 시간 단계의 각 시간 단계에서, 환경의 이미지로부터 환경의 특성(characterization)을 생성하기 위해 구성된 맵핑 서브 시스템을 구현하게 하는 명령들을 저장하는 하나 이상의 저장 디바이스를 포함하는 시스템으로서, 상기 특성은 특정 특성을 갖는 환경 내의 위치들을 식별하는 환경 맵을 포함하고, 상기 환경 이미지는 환경을 이동하는 에이전트에 의해 캡처되고 에이전트의 1 인칭 자기 중심 관점(first-person ego-centric perspective)에서 캡처되며, 상기 환경 맵은 환경의 하향식 뷰이고, 상기 특정 특성은 맵핑 서브 시스템과 그 맵핑 서브 시스템에 의해 생성된 특성을 사용하여 에이전트에 의해 수행될 액션들을 계획하는 플래닝(planning) 서브 시스템과의 공동 트레이닝 중에 학습되는 잠재적 특성이고, 상기 특성을 생성하는 것은, 각 시간 단계에 대해:
    상기 시간 단계에서 에이전트의 1 인칭 자기 중심 관점에서 캡처된 환경의 이미지를 획득하는 단계와,
    상기 시간 단계에 대한 환경의 제1 초기 특성을 생성하기 위해 신경망을 사용하여 이미지를 처리하는 단계와, 상기 신경망은 에이전트의 1인칭 자기 중심 관점의 이미지를 수신하고 1 인칭 자기 중심 관점의 이미지를 환경의 하향식 뷰인 제1 환경 맵을 포함하는 환경의 제1 초기 특성으로 변환하도록 구성되고,
    상기 시간 단계에 선행하는 이전 시간 단계에 대한 환경의 최종 특성을 획득하는 단계와, 상기 이전 시간 단계에 대한 환경의 최종 특성은 환경의 하향식 뷰인 이전 시간 단계의 최종 환경 맵을 포함하고,
    상기 이전 시간 단계과 상기 시간 단계 사이의 에이전트의 이동 측정치를 획득하는 단계와,
    상기 시간 단계에 대한 환경의 제2 초기 특성을 생성하도록 이전 시간 단계에 대한 환경의 특성을 처리하는 단계로서, 상기 제 2 초기 특성을 생성하기 위해 이전 시간 단계에 대한 환경의 최종 특성 및 상기 이동 측정치에 차등 워핑 함수(warping function)를 적용하는 단계를 포함하고, 상기 제2 초기 특성은 환경의 하향식 뷰인 제2 환경 맵을 포함하고; 그리고
    상기 시간 단계에 대한 환경의 최종 특성을 생성하도록 제1 초기 특성과 제2 초기 특성을 결합하는 단계를 포함하는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서,
    상기 워핑 함수는 쌍선형 샘플링을 사용하여 보간을 수행하는 함수인 것을 특징으로 하는 시스템.
  3. 제1항에 있어서,
    상기 환경의 하향식 뷰는 에이전트의 현재 위치를 중심으로 하는 자기 중심 하향식 관점인 것을 특징으로 하는 시스템.
  4. 제1항에 있어서,
    상기 시간 단계에 대한 최종 특성을 생성하도록 제1 초기 특성과 제2 초기 특성을 결합하는 단계는,
    상기 최종 특성을 생성하기 위해 제1 초기 특성과 제2 초기 특성에 업데이트 함수를 적용하는 단계를 포함하는 것을 특징으로 하는 시스템.
  5. 제4항에 있어서,
    각 특성은 (i) 환경 내의 복수의 위치가 특정 특성을 갖는지 여부를 나타내는 스코어 세트 및 (ii) 상기 스코어 세트의 신뢰도 측정치 세트를 포함하고, 상기 업데이트 함수는 다음 방정식의 연산을 수행하는 것을 포함하는 것을 특징으로 하는 시스템.
    Figure 112019081476055-pct00007

    Figure 112019081476055-pct00008

    여기서 ft는 시간 단계에 대한 최종 특성의 스코어 세트, ct는 시간 단계에 대한 최종 특성의 스코어 세트의 신뢰도 측정치 세트, f't는 제1 초기 특성에 대한 스코어 세트, c't는 제1 초기 특성에 대한 스코어 세트내의 신뢰도 측정치 세트, ft-1는 제2 초기 특성에 대한 스코어 세트, ct-1는 제2 초기 특성에 대한 스코어 세트의 신뢰도 측정치 세트이다.
  6. 제4항에 있어서,
    상기 업데이트 함수는 순환 신경망에 의해 수행되고,
    상기 순환 신경망은 복수의 시간 단계의 각 시간 단계에 대해, 시간 단계에 대한 최종 특성을 생성하도록 시간 단계에 대한 제1 초기 특성과 제2 초기 특성을 처리하도록 구성되는 것을 특징으로 하는 시스템.
  7. 제1항에 있어서,
    시간 단계에 대한 상기 환경 맵은,
    상기 환경 내의 복수의 위치 각각에 대해:
    상기 위치가 특정 특성을 갖는지 여부를 나타내는 스코어를 포함하고, 상기 특성은 상기 위치 각각에 대해, 그 위치에 대한 스코어의 신뢰도 측정치를 포함하는 것을 특징으로 하는 시스템.
  8. 제1항에 있어서,
    플래닝 서브 시스템을 더 포함하고, 상기 플래닝 서브 시스템은 복수의 시간 단계 각각에 대해:
    상기 맵핑 서브 시스템으로부터 시간 단계에 대한 최종 특성을 획득하고, 그리고
    상기 시간 단계에서 환경과 상호 작용하는 에이전트에 의해 수행될 제안된 액션을 선택하기 위해 최종 특성을 처리하는 것을 특징으로 하는 시스템.
  9. 제8항에 있어서,
    상기 에이전트는 목표(goal)를 달성하기 위한 액션을 수행하고 있으며, 상기 시간 단계에 대한 제안된 액션을 선택하기 위해 최종 특성을 처리하는 것은,
    상기 시간 단계에 대한 최종 특성으로부터 공간적으로 스케일링된 환경 맵들의 시퀀스를 생성하는 단계와, 상기 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵은 시퀀스 내의 임의의 후속의 공간적으로 스케일링된 환경 맵에 비해 다운 샘플링되고; 그리고
    최대 다운 샘플링된 공간적으로 스케일링된 환경 맵으로 시작하는 시퀀스내의 각각의 공간적으로 스케일링된 환경 맵에 대해,
    상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하기 위해 공간적으로 스케일링된 환경 맵 및 그 공간적으로 스케일링된 환경 맵과 관련된 하나 이상의 입력을 처리하는 단계와, 상기 가치 맵은 공간적으로 스케일링된 환경의 복수의 영역의 각 영역에 대해, 상기 목표를 달성하기 위해 그 영역에 있는 에이전트의 가치 추정치를 포함하고, 그리고
    마지막 공간적으로 스케일링된 환경 맵 이외의 상기 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵에 대해, 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 시퀀스 내의 후속의 공간적으로 스케일링된 환경 맵과 관련된 입력으로서 제공하는 단계를 포함하는 것을 특징으로 하는 시스템.
  10. 제9항에 있어서,
    상기 시퀀스 내의 각각의 공간적으로 스케일링된 환경 맵과 관련된 입력은 에이전트에 대한 목표를 식별하는 데이터를 포함하는 것을 특징으로 하는 시스템.
  11. 제10항에 있어서,
    상기 목표는 에이전트가 도달하려는 환경 내의 위치인 것을 특징으로 하는 시스템.
  12. 제10항에 있어서,
    상기 목표는 에이전트가 위치하려는 환경 내의 객체인 것을 특징으로 하는 시스템.
  13. 제9항에 있어서,
    상기 최대 다운 샘플링된 공간적으로 스케일링된 환경 맵에 대한 입력은 시간 단계에 대한 최종 특성을 포함하는 것을 특징으로 하는 시스템.
  14. 제9항에 있어서,
    상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하기 위해 상기 공간적으로 스케일링된 환경 맵과 관련된 입력을 처리하는 단계는,
    상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 초기 가치 맵을 생성하도록 상기 공간적으로 스케일링된 환경 맵과 관련된 입력을 처리하는 단계; 및
    상기 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 가치 맵을 생성하도록 공간적으로 스케일링된 환경 맵에 대한 하나 이상의 초기 가치 맵상에서 하나 이상의 가치 반복(value iterations)을 수행하는 단계를 포함하는 것을 특징으로 하는 시스템.
  15. 제9항에 있어서,
    상기 제안된 액션을 선택하기 위해 최종 특성을 처리하는 단계는,
    상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 제안된 액션을 선택하는 단계를 포함하는 것을 특징으로 하는 시스템.
  16. 제15항에 있어서,
    상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 제안된 액션을 선택하는 단계는,
    상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들로부터, 가장 큰 가치 추정치를 갖는 업데이트된 가치 맵의 특정 영역을 결정하는 단계와; 그리고
    상기 시간 단계에 대한 제안된 액션으로서 에이전트를 특정 영역으로 가져가는 액션을 선택하는 단계를 포함하는 것을 특징으로 하는 시스템.
  17. 제15항에 있어서,
    상기 시퀀스 내의 마지막 공간적으로 스케일링된 환경 맵에 대한 가치 맵들에 기초하여 제안된 액션을 선택하는 단계는,
    상기 제안된 액션을 선택하도록 하나 이상의 정류된 선형 유닛을 포함하는 신경망을 통해 가치 맵들을 처리하는 단계를 포함하는 것을 특징으로 하는 시스템.
  18. 맵핑 서브 시스템 및 플래닝 서브 시스템을 포함하는 시스템을 트레이닝하는 방법으로서, 상기 방법은 복수의 시간 단계 각각에서:
    시간 단계에서 환경을 이동하는 에이전트에 의해 캡처된 이미지를 획득하는 단계;
    시간 단계에서 환경의 최종 특성을 결정하도록 맵핑 서브 시스템을 사용하여 이미지를 처리하는 단계;
    상기 이미지의 시간 단계에 대한 제안된 액션을 선택하도록 플래닝 서브 시스템을 사용하여 최종 특성을 처리하는 단계, 상기 제안된 액션은 시간 단계에서 상기 환경에서 이동하는 에이전트에 의해 수행될 액션이고;
    상기 이미지의 시간 단계에 대한 최적의 액션을 획득하는 단계;
    상기 플래닝 서브 시스템에 의해 선택된 액션과 상기 최적의 액션 사이의 오류 측정치의 구배(gradient)를 결정하는 단계; 및
    상기 맵핑 서브 시스템 및 플래닝 서브 시스템의 파라미터에 대한 업데이트를 결정하기 위해 맵핑 서브 시스템 및 플래닝 서브 시스템을 통해 구배를 역 전파함으로써 상기 플래닝 서브 시스템에 의해 선택된 액션과 상기 최적의 액션 사이의 오류 측정치에 기초하여 (i) 상기 플래닝 서브 시스템에 의해 선택된 제안된 액션들 및 (ii) 상기 맵핑 서브 시스템에 의해 생성된 최종 특성들 모두를 업데이트하는 단계를 포함하는 것을 특징으로 하는 방법.
  19. 제18항에 있어서,
    확률(p)로 제안된 액션을 수행하고, 확률(1-p)로 최적의 액션을 수행하기 위해 에이전트가 환경을 통해 이동하게 하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  20. 제19항에 있어서,
    상기 최적의 액션을 선택하는 확률을 어닐링하기 위해 에이전트의 동작 동안 p를 증가시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  21. 제1항 내지 제17항 중 어느 한 항의 서브 시스템 중 임의의 하나에 의해 수행되는 동작들을 포함하는 것을 특징으로 하는 방법.



  22. 삭제
  23. 삭제
  24. 삭제
KR1020197023399A 2017-02-09 2018-02-09 시각 입력을 이용한 에이전트 네비게이션 KR102241404B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762456945P 2017-02-09 2017-02-09
US62/456,945 2017-02-09
PCT/US2018/017666 WO2018148574A1 (en) 2017-02-09 2018-02-09 Agent navigation using visual inputs

Publications (2)

Publication Number Publication Date
KR20190104587A KR20190104587A (ko) 2019-09-10
KR102241404B1 true KR102241404B1 (ko) 2021-04-16

Family

ID=63107124

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197023399A KR102241404B1 (ko) 2017-02-09 2018-02-09 시각 입력을 이용한 에이전트 네비게이션

Country Status (6)

Country Link
US (1) US11010948B2 (ko)
EP (1) EP3563344A4 (ko)
JP (1) JP7021236B2 (ko)
KR (1) KR102241404B1 (ko)
CN (1) CN110268338B (ko)
WO (1) WO2018148574A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10706840B2 (en) * 2017-08-18 2020-07-07 Google Llc Encoder-decoder models for sequence to sequence mapping
KR20210011422A (ko) * 2018-09-27 2021-02-01 딥마인드 테크놀로지스 리미티드 모델 없는 강화 학습을 위한 스택형 컨볼루션 장단기 메모리
US11017499B2 (en) * 2018-12-21 2021-05-25 Here Global B.V. Method, apparatus, and computer program product for generating an overhead view of an environment from a perspective image
CN111044045B (zh) * 2019-12-09 2022-05-27 中国科学院深圳先进技术研究院 基于神经网络的导航方法、装置及终端设备
KR102430442B1 (ko) 2020-08-19 2022-08-09 경기대학교 산학협력단 에이전트 학습 보상 시스템

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100204101B1 (ko) * 1990-03-02 1999-06-15 가나이 쓰도무 화상처리장치
US6954544B2 (en) * 2002-05-23 2005-10-11 Xerox Corporation Visual motion analysis method for detecting arbitrary numbers of moving objects in image sequences
CN1166922C (zh) * 2002-07-18 2004-09-15 上海交通大学 多传感器多目标信息融合方法
JP2004110802A (ja) * 2002-08-26 2004-04-08 Sony Corp 環境同定装置、環境同定方法、プログラム及び記録媒体、並びにロボット装置
US7889905B2 (en) * 2005-05-23 2011-02-15 The Penn State Research Foundation Fast 3D-2D image registration method with application to continuously guided endoscopy
US7835820B2 (en) * 2005-10-11 2010-11-16 Vanderbilt University System and method for image mapping and visual attention
CN101466305B (zh) * 2006-06-11 2012-05-30 沃尔沃技术公司 用于确定和分析视觉兴趣位置的方法
US8175617B2 (en) * 2009-10-28 2012-05-08 Digimarc Corporation Sensor-based mobile search, related methods and systems
JP5560794B2 (ja) * 2010-03-16 2014-07-30 ソニー株式会社 制御装置、制御方法およびプログラム
WO2011116309A1 (en) * 2010-03-19 2011-09-22 Digimarc Corporation Intuitive computing methods and systems
CN102243537B (zh) * 2010-05-14 2014-01-15 深圳市汇春科技有限公司 运动图像位移检测方法及装置、光电鼠标
EP2609567A4 (en) * 2010-08-25 2014-05-14 Univ Sydney PROCESSING SENSOR DATA
JP2012064131A (ja) * 2010-09-17 2012-03-29 Tokyo Institute Of Technology 地図生成装置、地図生成方法、移動体の移動方法、及びロボット装置
US8553964B2 (en) * 2010-10-20 2013-10-08 Siemens Aktiengesellschaft Unifying reconstruction and motion estimation in first pass cardiac perfusion imaging
US8885941B2 (en) * 2011-09-16 2014-11-11 Adobe Systems Incorporated System and method for estimating spatially varying defocus blur in a digital image
CN102592287B (zh) * 2011-12-31 2014-06-04 浙江大学 基于3d视频的时空域运动分割与估计模型的凸优化方法
IN2015DN03877A (ko) * 2012-11-12 2015-10-02 Behavioral Recognition Sys Inc
US8700320B1 (en) * 2012-11-13 2014-04-15 Mordechai Teicher Emphasizing featured locations during a journey
US9761014B2 (en) * 2012-11-15 2017-09-12 Siemens Healthcare Gmbh System and method for registering pre-operative and intra-operative images using biomechanical model simulations
US9195654B2 (en) * 2013-03-15 2015-11-24 Google Inc. Automatic invocation of a dialog user interface for translation applications
CN105229422B (zh) * 2013-03-15 2018-04-27 大众汽车有限公司 自动驾驶路线规划应用
JP2015031922A (ja) * 2013-08-06 2015-02-16 Kddi株式会社 情報端末装置及びプログラム
EP2869239A3 (en) * 2013-11-04 2015-08-19 Facebook, Inc. Systems and methods for facial representation
WO2016108847A1 (en) * 2014-12-30 2016-07-07 Nokia Technologies Oy Methods and apparatus for processing motion information images
US10062010B2 (en) * 2015-06-26 2018-08-28 Intel Corporation System for building a map and subsequent localization
RU2686030C1 (ru) * 2015-07-24 2019-04-23 Дипмайнд Текнолоджиз Лимитед Непрерывное управление с помощью глубокого обучения с подкреплением
US10093021B2 (en) * 2015-12-02 2018-10-09 Qualcomm Incorporated Simultaneous mapping and planning by a robot
US10788836B2 (en) * 2016-02-29 2020-09-29 AI Incorporated Obstacle recognition method for autonomous robots
CN105957060B (zh) * 2016-04-22 2019-01-11 天津师范大学 一种基于光流分析的tvs事件分簇方法
US9661473B1 (en) * 2016-06-17 2017-05-23 Qualcomm Incorporated Methods and apparatus for determining locations of devices in confined spaces
US10061987B2 (en) * 2016-11-11 2018-08-28 Google Llc Differential scoring: a high-precision scoring method for video matching
US10607134B1 (en) * 2016-12-19 2020-03-31 Jasmin Cosic Artificially intelligent systems, devices, and methods for learning and/or using an avatar's circumstances for autonomous avatar operation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Viorica Patraucean et al., "Spatio-temporal video autoencoder with differentiable memory", Workshop track-ICLR, pp.1~13, 1 September 2016.*

Also Published As

Publication number Publication date
JP7021236B2 (ja) 2022-02-16
CN110268338B (zh) 2022-07-19
EP3563344A1 (en) 2019-11-06
US11010948B2 (en) 2021-05-18
JP2020507857A (ja) 2020-03-12
KR20190104587A (ko) 2019-09-10
EP3563344A4 (en) 2020-07-22
US20190371025A1 (en) 2019-12-05
CN110268338A (zh) 2019-09-20
WO2018148574A1 (en) 2018-08-16

Similar Documents

Publication Publication Date Title
KR102241404B1 (ko) 시각 입력을 이용한 에이전트 네비게이션
KR102424893B1 (ko) 보조 작업들을 통한 강화 학습
US11074481B2 (en) Environment navigation using reinforcement learning
CN108027897B (zh) 利用深度强化学习的连续控制
CN110326004B (zh) 使用路径一致性学习训练策略神经网络
US10296825B2 (en) Dueling deep neural networks
CN112106073A (zh) 使用网格代码执行导航任务
JP7181415B2 (ja) 観測値の尤度を使用して環境を探索するためのエージェントを制御すること
US20210103815A1 (en) Domain adaptation for robotic control using self-supervised learning
US20230281966A1 (en) Semi-supervised keypoint based models
EP4014165A1 (en) Data-driven robot control
CN113330458A (zh) 使用潜在计划控制代理
US11341596B2 (en) Robot and method for correcting position of same
CN115315708A (zh) 通过整合代理运动和优化预测目标来生成空间嵌入

Legal Events

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