KR20170118520A - 인터페이스 뉴럴 네트워크 - Google Patents

인터페이스 뉴럴 네트워크 Download PDF

Info

Publication number
KR20170118520A
KR20170118520A KR1020160046426A KR20160046426A KR20170118520A KR 20170118520 A KR20170118520 A KR 20170118520A KR 1020160046426 A KR1020160046426 A KR 1020160046426A KR 20160046426 A KR20160046426 A KR 20160046426A KR 20170118520 A KR20170118520 A KR 20170118520A
Authority
KR
South Korea
Prior art keywords
neural network
input
output
interface
signal
Prior art date
Application number
KR1020160046426A
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 삼성전자주식회사
Priority to KR1020160046426A priority Critical patent/KR20170118520A/ko
Priority to US15/247,160 priority patent/US10867236B2/en
Publication of KR20170118520A publication Critical patent/KR20170118520A/ko
Priority to US17/091,837 priority patent/US20210056394A1/en

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
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

뉴럴 네트워크의 동작 방법 및 신호 처리 장치가 개시된다. 일실시예에 따른 뉴럴 네트워크의 동작 방법은 복수의 뉴럴 네트워크 중 어느 하나의 뉴럴 네트워크로부터 신호를 수신하고, 수신된 신호에 내포된 특징을 다른 뉴럴 네트워크의 입력으로 요구되는 특징에 부합하도록 변환하는 단계들을 포함할 수 있다.

Description

인터페이스 뉴럴 네트워크{INTERFACE NEURAL NETWORK}
아래 실시예들은, 뉴럴 네트워크의 동작 방법 및 뉴럴 네트워크를 이용한 신호 처리 장치에 관한 것이다.
뉴럴 네트워크(Neural Network)는 다양한 종류의 기술 분야에서 활용된다. 복수의 뉴럴 네트워크들 간의 원활한 상호 동작을 위한 기술이 요구된다.
일실시예에 따른 뉴럴 네트워크의 동작 방법은 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신하는 단계; 상기 제1 뉴럴 네트워크로부터 출력되는 제1 특징(feature) 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약(conversion rule)에 기초하여 상기 제1 출력 신호에 내포된 특징을 변경함으로써, 상기 제2 뉴럴 네트워크에 대응하는 제2 입력 신호를 생성하는 단계; 및 상기 제2 입력 신호를 상기 제2 뉴럴 네트워크로 송신하는 단계를 포함한다.
일실시예에 따르면, 상기 제1 출력 신호는 상기 제1 특징에 대응하는 제1 특징 벡터를 포함하고, 상기 제2 입력 신호는 상기 제2 특징에 대응하는 제2 특징 벡터를 포함한다.
일실시예에 따르면, 상기 뉴럴 네트워크는 상기 변환 규약이 적용된 인터페이스 뉴럴 네트워크를 포함한다.
일실시예에 따르면, 상기 인터페이스 뉴럴 네트워크의 입력 차원은 상기 제1 뉴럴 네트워크의 출력 차원과 대응되고, 상기 인터페이스 뉴럴 네트워크의 출력 차원은 상기 제2 뉴럴 네트워크의 입력 차원과 대응될 수 있다.
일실시예에 따르면, 상기 변환 규약은 상기 제1 뉴럴 네트워크의 출력으로 정의된 출력 벡터들, 및 상기 제2 뉴럴 네트워크의 입력으로 정의된 입력 벡터들 사이를 정합(matching)하는 정보를 포함한다.
일실시예에 따르면, 상기 변환 규약은 상기 인터페이스 뉴럴 네트워크의 파라미터들이 최적화되어 정의될 수 있다.
일실시예에 따른 뉴럴 네트워크의 동작 방법은 상기 제1 뉴럴 네트워크가 제3 뉴럴 네트워크로 교체되는 경우, 상기 변환 규약을 상기 제3 뉴럴 네트워크로부터 출력되는 제3 특징 및 상기 제2 뉴럴 네트워크의 입력으로 요구되는 상기 제2 특징 간의 변환 규약으로 갱신하는 단계를 더 포함한다.
일실시예에 따르면, 상기 갱신하는 단계는 상기 제3 특징 및 상기 제2 특징 간의 관계에 기초하여, 상기 인터페이스 뉴럴 네트워크의 파라미터들을 조절하는 단계를 포함한다.
일실시예에 따르면, 상기 제3 뉴럴 네트워크 및 제1 뉴럴 네트워크는 입출력 모달리티(modality), 입출력 차원 및 입출력 특징 중 적어도 하나의 측면에서 서로 구별된다.
일실시예에 따르면, 상기 갱신된 변환 규약에 기초한 제2 입력 신호의 유형은 상기 갱신전 변환 규약에 기초한 제2 입력 신호의 유형과 같다.
일실시예에 따른 뉴럴 네트워크의 동작 방법은 제3 뉴럴 네트워크가 추가로 연결되는 경우, 상기 제3 뉴럴 네트워크로부터 출력되는 제3 특징 및 상기 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약을 생성하는 단계를 더 포함한다.
일실시예에 따르면, 상기 뉴럴 네트워크는 상기 제1 뉴럴 네트워크의 출력 특징을 상기 제2 뉴럴 네트워크의 입력 특징으로 적응(adapt)시킬 수 있다.
일실시예에 따르면, 상기 제1 출력 신호는 상기 제1 뉴럴 네트워크에 의해 객체로부터 추출된 특징 벡터이고, 상기 제2 뉴럴 네트워크는 상기 제2 입력 신호에 기초하여, 상기 객체를 식별하거나 분류할 수 있다.
일실시예에 따르면, 상기 제1 출력 신호는 상기 제1 뉴럴 네트워크에 의해 결정된 액츄에이터의 명령 벡터이고, 상기 제2 뉴럴 네트워크는 상기 제2 입력 신호에 기초하여, 상기 액츄에이터를 제어할 수 있다.
일실시예에 따른 학습 방법은 인터페이스 뉴럴 네트워크의 입력 레이어를 제1 뉴럴 네트워크의 출력 레이어에 연결하는 단계; 상기 인터페이스 뉴럴 네트워크의 출력 레이어를 제2 뉴럴 네트워크의 입력 레이어에 연결하는 단계; 트레이닝 샘플을 상기 제1 뉴럴 네트워크의 입력 레이어에 입력시키는 단계; 상기 트레이닝 샘플에 대응하여, 상기 제2 뉴럴 네트워크의 출력 레이어로부터 출력되는 출력 신호를 획득하는 단계; 및 상기 출력 신호 및 상기 트레이닝 샘플의 레이블에 기초하여, 상기 인터페이스 뉴럴 네트워크를 학습시키는 단계를 포함한다.
일 실시예에 따르면, 상기 인터페이스 뉴럴 네트워크는 상기 제1 뉴럴 네트워크의 출력 신호에 내포된 특징을 상기 제2 뉴럴 네트워크의 입력으로 요구되는 특징으로 변환하도록 학습된다.
일실시예에 따르면, 상기 인터페이스 뉴럴 네트워크를 학습시키는 단계는 상기 제1 뉴럴 네트워크로부터 출력되는 제1 특징 및 상기 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약을 생성하는 단계를 포함한다.
일실시예에 따르면, 상기 제1 뉴럴 네트워크는 객체로부터 특징 벡터를 추출하여 상기 특징 벡터를 출력하고, 상기 제2 뉴럴 네트워크는 상기 인터페이스 뉴럴 네트워크로부터 수신한 신호에 기초하여 상기 객체를 식별하거나 분류할 수 있다.
일실시예에 따르면, 상기 제1 뉴럴 네트워크는 액츄에이터의 명령 벡터를 결정하여 상기 명령 벡터를 출력하고, 상기 제2 뉴럴 네트워크는 상기 인터페이스 뉴럴 네트워크로부터 수신한 신호에 기초하여, 상기 액츄에이터를 제어할 수 있다.
일실시예에 따른 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신하고, 상기 제1 뉴럴 네트워크로부터 출력되는 제1 특징 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약에 기초하여 상기 제1 출력 신호에 내포된 특징을 변경함으로써 상기 제2 뉴럴 네트워크에 대응하는 제2 입력 신호를 생성하며, 상기 제2 입력 신호를 상기 제2 뉴럴 네트워크로 송신하는 프로세서를 포함한다.
도 1은 일실시예에 따른 뉴럴 네트워크의 동작 방법을 설명하는 순서도이다.
도 2는 일실시예에 따른 인터페이스 뉴럴 네트워크의 개념도이다.
도 3은 일실시예에 따른 인터페이스 뉴럴 네트워크의 예시도이다.
도 4a 및 4b는 일실시예에 따라서 새로운 뉴럴 네트워크가 연결된 인터페이스 뉴럴 네트워크의 개념도이다.
도 5는 뉴럴 네트워크가 교체되는 실시예를 설명하는 도면이다.
도 6은 뉴럴 네트워크가 교체되는 실시예를 설명하는 도면이다.
도 7a 및 7b는 일실시예에 따른 학습 방법을 설명하는 순서도이다.
도 8은 일실시예에 따른 신호 처리 장치이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 예를 들어, 실시예들은 스마트 폰, 모바일 기기, 스마트 홈 시스템 등에서 사용자를 인식하는데 적용될 수 있다. 실시예들은 사용자 인식을 통한 결제 서비스에 적용될 수 있다. 또한, 실시예들은 사용자를 인식하여 자동으로 시동을 거는 지능형 자동차 시스템 등에도 적용될 수 있다.
실시예들은 인터페이스 뉴럴 네트워크(interface neural network)를 이용한다. 인터페이스 뉴럴 네트워크는 둘 이상의 시스템, 모듈, 네트워크 등을 연결하는 뉴럴 네트워크이다. 둘 이상의 시스템, 모듈, 네트워크 각각은 서로 독립적으로 동작할 수 있다. 둘 이상의 시스템, 모듈, 네트워크 등은 서로 동일한 레벨의 기능들을 수행하거나, 상대적으로 상위 또는 하위 레벨의 기능들을 수행할 수 있다. 둘 이상의 시스템, 모듈, 네트워크 등은 각각 학습 기반 파라미터에 기초하여 동작할 수 있다. 실시예들은 둘 이상의 시스템, 모듈, 네트워크 등을 연결하더라도 전체 시스템을 다시 학습할 필요 없이, 인터페이스 뉴럴 네트워크만 학습하는 기술을 제공할 수 있다.
인터페이스 뉴럴 네트워크는 미리 정해진 트레이닝 세트에 기초하여 학습되거나, 트라이얼 & 에러(trial & error) 방식의 경험(experience)에 기초하여 학습될 수 있다. 인터페이스 뉴럴 네트워크는 피드포워드 망(feedforward net)를 포함할 수 있다. 예를 들어, 인터페이스 뉴럴 네트워크는 단일 레이어 또는 멀티 레이어에서 완전 연결 망(fully-connected net)을 포함할 수 있다. 또는, 인터페이스 뉴럴 네트워크는 상태적 네트워크(stateful network)를 포함할 수 있다. 예를 들어, 인터페이스 뉴럴 네트워크는 회귀 뉴럴 네트워크(recurrent neural network)를 포함할 수 있다.
이하, 설명의 편의를 위하여, 인터페이스 뉴럴 네트워크가 제1 뉴럴 네트워크와 제2 뉴럴 네트워크를 연결하는 시나리오들을 설명하나, 인터페이스 뉴럴 네트워크는 다양한 시스템, 모듈, 네트워크 사이를 연결하도록 변형될 수 있다. 예를 들어, 인터페이스 뉴럴 네트워크는 기존 시스템(existing system)과 새로운 모듈(new module)을 연결할 수 있다. 기존 시스템은 사용자에 적합하게 학습된 파라미터에 기초하여 동작하고, 새로운 모듈은 해당 모듈의 기능에 적합하게 학습된 파라미터에 기초하여 동작할 수 있다. 이 경우, 실시예들에 따르면, 기존 시스템에 새로운 모듈을 연결하더라도 전체 시스템을 다시 학습할 필요 없이, 인터페이스 뉴럴 네트워크만 학습될 수 있다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 뉴럴 네트워크의 동작 방법을 설명하는 순서도이다.
일실시예에 따른 뉴럴 네트워크의 동작 방법은 신호 처리 장치에 의하여 수행될 수 있다. 신호 처리 장치는 소프트웨어 모듈, 하드웨어 모듈, 또는 이들의 다양한 조합으로 구현될 수 있다.
일실시예에 따르면, 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력된 신호를 수신하고, 수신된 신호를 처리 또는 가공하여 새로운 신호를 생성하며, 생성된 신호를 제2 뉴럴 네트워크로 송신할 수 있다. 여기서, 제1 뉴럴 네트워크는 제1 입력 신호를 수신하여, 수신된 신호를 처리 또는 가공하여 제1 출력 신호를 생성할 수 있다. 또한, 제2 뉴럴 네트워크는 제2 입력 신호를 수신하여, 수신된 신호를 처리 또는 가공하여 제2 출력 신호를 생성할 수 있다.
도 1을 참조하면, 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신한다(101). 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력되는 제1 특징(feature) 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약(conversion rule)에 기초하여, 제1 출력 신호에 내포된 특징을 변경할 수 있다(102). 신호 처리 장치는 제1 출력 신호의 변경된 특징에 기초하여, 제2 뉴럴 네트워크에 대응하는 제2 입력 신호를 생성할 수 있다(103).
제1 뉴럴 네트워크로부터 출력되는 제1 특징 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약은 제1 출력 신호에 내포된 특징을 변경하여, 제2 뉴럴 네트워크에 의해 처리 가능한 신호로 가공하는 규약을 의미한다. 신호 처리 장치는 미리 정의된 변환 규약을 이용하여, 서로 다른 유형의 신호를 취급하는 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크간에 상호 호환을 가능하게 하는 인터페이스를 제공할 수 있다.
신호 처리 장치는 내/외부 메모리 또는 서버로부터 변환 규약을 로딩하여, 제1 출력 신호의 특징을 변경하고, 제2 뉴럴 네트워크의 입력에 적합한 제2 입력 신호를 생성할 수 있다. 또는, 제1 뉴럴 네트워크의 출력과 관련된 정보 및 제2 뉴럴 네트워크의 입력과 관련된 정보를 내/외부 메모리 또는 서버로부터 수신하여, 상호 간의 변환 규약을 생성할 수 있다. 여기서, 변환 규약은 제1 뉴럴 네트워크의 출력 및 제2 뉴럴 네트워크의 입력간에 정의되는 규약으로 한정되지 않고, 다양하게 변형될 수 있다. 예를 들어, 변환 규약은 인터페이스 뉴럴 네트워크의 파라미터들을 포함할 수 있다.
변환 규약은 신호 처리 장치와 연결된 적어도 하나의 뉴럴 네트워크의 입력 레이어 또는 출력 레이어의 구조, 입력 데이터 또는 출력 데이터의 유형, 입력 벡터 또는 출력 벡터의 차원, 입력 또는 출력의 모달리티 중 적어도 하나에 의해 정의되거나 생성될 수 있지만, 복수의 뉴럴 네트워크의 호환을 위한 변환 규약을 정의하거나 생성하는데 필요한 정보는 여기에 한정되지 않는다.
일실시예에 따르면, 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력되는 제1 특징(feature)을 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징으로 적응(adapt)시킬 수 있다. 신호 처리 장치는 제1 뉴럴 네트워크로부터 출력되는 제1 출력 신호에 내포된 특징을 변경하여, 제2 뉴럴 네트워크에 입력되는 제2 입력 신호를 생성할 수 있다. 여기서, 제1 출력 신호는 제1 뉴럴 네트워크로부터 출력되는 특징 벡터이고, 제2 입력 신호는 제2 뉴럴 네트워크로 입력되는 특징 벡터일 수 있다.
예를 들어, 제2 뉴럴 네트워크는 특정 목적을 수행하도록 학습되어 있는 상위 뉴럴 네트워크일 수 있다. 이 경우, 신호 처리 장치는 인터페이스 뉴럴 네트워크를 이용하여 하위 뉴럴 네트워크인 제1 뉴럴 네트워크의 제1 출력 신호에 내포된 특징을 제2 뉴럴 네트워크의 목적에 부합하도록 변환할 수 있다. 제2 뉴럴 네트워크는 제1 출력 신호에 내포된 특징이 변환됨으로써 생성된 제2 입력 신호에 기초하여, 본래의 목적대로 동작할 수 있다.
신호 처리 장치는 제2 뉴럴 네트워크에서 처리할 수 있는 형태로 제1 출력 신호에 내포된 특징을 변환하여 제2 입력 신호를 생성할 수 있다. 신호 처리 장치는 제2 입력 신호를 생성하기 위해, 제1 출력 신호의 특징을 제2 뉴럴 네트워크의 입력에 대응하는 특징으로 변환하는 인터페이스 뉴럴 네트워크를 이용할 수 있고, 인터페이스 뉴럴 네트워크는 특징의 변환을 위한 변환 규약이 적용될 수 있다. 여기서, 제1 출력 신호에 내포된 특징 변환에 있어서, 제2 뉴럴 네트워크에 대응하는 특징의 종류, 특징이 입력되는 순서 및 특징이 입력되는 위치 등의 요소들이 고려될 수 있다. 신호 처리 장치는 이러한 요소들이 반영된 변환 규약을 이용하여 제1 출력 신호에 내포된 특징을 변환할 수 있고, 제2 뉴럴 네트워크는 변환된 특징에 기초하여 동작할 수 있다. 예를 들어, 제2 뉴럴 네트워크는 변환된 특징의 패턴을 인식하여 인식 결과를 생성할 수 있다.
신호 처리 장치는 제2 입력 신호를 제2 뉴럴 네트워크로 송신한다(104). 제1 뉴럴 네트워크로부터 출력되는 제1 출력 신호는 제2 뉴럴 네트워크의 입력 데이터로서 적합한 신호가 아닐 수 있기 때문에, 신호 처리 장치는 제1 출력 신호에 내포된 특징을 변환하여 제2 입력 신호를 생성할 수 있다. 신호 처리 장치는 제2 뉴럴 네트워크의 입력에 대응하여 생성된 제2 입력 신호를 제2 뉴럴 네트워크로 송신한다. 예를 들어, 제2 입력 신호는 제2 뉴럴 네트워크의 입력 레이어에 매칭되고, 제2 뉴럴 네트워크에서 처리하는 신호의 유형에 기초하여 생성될 수 있다.
도 2는 일실시예에 따른 인터페이스 뉴럴 네트워크의 개념도이다.
뉴럴 네트워크들은 일상의 다양한 기술 영역에서 적용된다. 뉴럴 네트워크 기술에 의해 가동되는 많은 종류의 장치들, 소프트웨어들 및 이들의 조합으로 구현된 로봇들은 다양하게 응용될 수 있다. 일실시예에 따르면, 복수의 뉴럴 네트워크들로 구성된 장치는 각 뉴럴 네트워크들이 서로 연계되어 수행되는 상호 동작을 통해 원하는 기능들을 제공할 수 있다.
복수의 뉴럴 네트워크들은 계층적으로 구성될 수 있다. 예를 들어 하위의 뉴럴 네트워크는 말단의 센서로부터 획득한 정보를 이용하여 특징을 추출하고 상위의 뉴럴 네트워크는 추출된 특징을 바탕으로 객체를 식별할 수 있다. 또는, 상위의 뉴럴 네트워크는 입력 정보를 기초로 판단 결과를 생성하고, 생성된 판단 결과에 기초하여 제어 명령을 생성하고, 하위의 뉴럴 네트워크는 상위의 뉴럴 네트워크로부터 수신한 제어 명령에 응답하여 동작할 수 있다.
일실시예에 따르면, 복수의 뉴럴 네트워크들은 각각 설계된 의도에 따라 입력 신호를 처리하여 출력 신호를 생성할 수 있다. 뉴럴 네트워크의 예시로는 센서의 특징 추출기(sensory feature extractors), 모달리티 별 인코더 및 디코더(modality specific encoders and decoders), 메모리(memories), 및 모터 콘트롤러(motor controllers) 등이 있다.
일실시예에 따르면, 복수의 뉴럴 네트워크가 통합된 전체 네트워크 시스템에서 임의의 뉴럴 네트워크가 교체되거나 추가될 수 있다. 복수의 뉴럴 네트워크 중 어느 하나는 성능이 향상되어 개량된 형태의 뉴럴 네트워크 또는 모달리티가 다른 센서에 대응하는 뉴럴 네트워크로 교체될 수 있다. 또는, 전체 네트워크 시스템에 새로운 형식의 입/출력 신호를 처리하는 뉴럴 네트워크가 추가될 수 있다.
보다 향상된 성능을 지닌 센서 또는 모터와 결합된 뉴럴 네트워크들이 다양한 벤더들(vendors)로부터 규격화된(off-the-shelf) 형태로 제공될 수 있다. 예를 들어, 전체 네트워크 시스템을 구성하는 복수의 뉴럴 네트워크 중 어느 하나가, 비전 센서(vision sensor)와 결합되어(integrated) 특징을 검출하는 컨벌루져널 뉴럴 네트워크(Convolutional Neural Network; CNN)라고 가정하자. 이러한 경우, 해당 CNN으로부터 새로운 종류의 센서가 결합되거나 또는 센서는 같지만 성능이 향상된 뉴럴 네트워크로의 교체가 요구될 수 있다.
새로운 뉴럴 네트워크가 전체 네트워크 시스템으로 편입되는 경우, 기존의 전체 네트워크 시스템의 상태는 최대한 유지한 채 새로운 뉴럴 네트워크가 결합된 전체 네트워크 시스템의 학습이 요구된다. 다만, 새로운 뉴럴 네트워크를 도입한 전체 네트워크 시스템을 전체적으로 학습시켜야 한다면, 전체 네트워크 시스템에 포함된 복수의 뉴럴 네트워크들 간의 연계를 위해 각 뉴럴 네트워크들의 재학습이 요구될 수 있고, 이전에 학습된 정보의 손실이 발생할 수 있다.
도 2를 참조하면, 복수의 뉴럴 네트워크들로 구성된 전체 네트워크 시스템은 제1 뉴럴 네트워크(201), 제2 뉴럴 네트워크(202) 및 인터페이스 뉴럴 네트워크(203)를 포함할 수 있다. 인터페이스 뉴럴 네트워크(203)는 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202)를 서로 연결시킬 수 있다. 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202)는 서로 독립적으로 학습될 수 있고, 인터페이스 뉴럴 네트워크(203)는 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202) 간의 호환을 위해, 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202) 간의 관계에 대한 정보에 기초하여 구현될 수 있다.
일실시예에 따르면, 인터페이스 뉴럴 네트워크(203)는 제1 뉴럴 네트워크(201)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 변환 규약이 적용될 수 있다. 제1 뉴럴 네트워크(201)로부터 출력된 제1 출력 신호는 변환 규약이 적용된 인터페이스 뉴럴 네트워크(203)에 의해 제2 뉴럴 네트워크(202)에 대응하는 제2 입력 신호로 변환될 수 있다. 변환 규약은 인터페이스 뉴럴 네트워크(203)가 수신하는 신호를 처리하는 규약으로서, 예를 들어 제1 뉴럴 네트워크(201)의 출력 및 인터페이스 뉴럴 네트워크(203)의 입력 간의 프로토콜과 인터페이스 뉴럴 네트워크(203)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 프로토콜과 관련된 정보에 기초하여 정의될 수 있다.
일실시예에 따르면, 변환 규약은 제1 뉴럴 네트워크(201)의 출력으로 정의된 출력 벡터들 및 제2 뉴럴 네트워크(202)의 입력으로 정의된 입력 벡터들 사이를 정합(matching)하는 정보를 포함한다. 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202)는 상호 간에 프로토콜이 정해지지 않은 경우라도, 인터페이스 뉴럴 네트워크(203)를 경유하여 상호 간에 데이터를 교환할 수 있다.
일실시예에 따르면, 인터페이스 뉴럴 네트워크(203)에 연결된 제1 뉴럴 네트워크(201) 및 제2 뉴럴 네트워크(202) 중 어느 하나가 새로운 뉴럴 네트워크로 교체되는 경우, 인터페이스 뉴럴 네트워크(203)는 새로운 뉴럴 네트워크와 기존의 뉴럴 네트워크 간을 연결시킬 수 있다. 인터페이스 뉴럴 네트워크(203)는 새로운 뉴럴 네트워크와 기존의 뉴럴 네트워크 간을 서로 연결시키기 위해, 인터페이스 뉴럴 네트워크(203) 자체의 파라미터들을 최적화하여 학습될 수 있다. 새로운 뉴럴 네트워크가 편입된 전체 네트워크 시스템 중에서 인터페이스 뉴럴 네트워크(203)만 단독으로 학습되고, 인터페이스 뉴럴 네트워크(203)를 제외한 나머지 뉴럴 네트워크들은 기존의 상태를 유지할 수 있다.
도 2를 참조하여, 인터페이스 뉴럴 네트워크(203)에 연결된 두 개의 뉴럴 네트워크에 있어서 일방적인 방향의 데이터 흐름만을 설명하였지만, 여기서 설명되는 실시예들은 복수의 뉴럴 네트워크들로부터 수신한 신호들을 조합하여 새로운 신호를 가공하고, 가공된 신호를 다른 뉴럴 네트워크로 송신하는 방식의 인터페이스 뉴럴 네트워크도 포함하고, 인터페이스 뉴럴 네트워크를 통해 연결된 뉴럴 네트워크들이 쌍방향으로 신호를 송수신하는 실시예도 포함한다. 일실시예에 따른 인터페이스 뉴럴 네트워크는 적어도 두 개의 뉴럴 네트워크들의 호환을 위해 서로 연결시키고, 뉴럴 네트워크들이 인터페이스 뉴럴 네트워크와 연결되는 양상은 다양하게 변형될 수 있고, 여기서 설명된 실시예들로 한정되지 않는다.
도 3은 일실시예에 따른 인터페이스 뉴럴 네트워크의 예시도이다.
도 3을 참조하면, 인터페이스 뉴럴 네트워크(203)는 입력 레이어(301) 및 출력 레이어(303)를 포함한다. 일실시예에 따르면, 인터페이스 뉴럴 네트워크(203)의 입력 레이어(301)는 제1 뉴럴 네트워크(201)의 출력 레이어(302)로부터 제1 출력 신호를 수신한다. 인터페이스 뉴럴 네트워크(203)의 입력 레이어(301)는 제1 출력 신호를 수신하기 위해, 제1 뉴럴 네트워크(201)의 출력 레이어(302)와 정합될 수 있다. 예를 들어, 인터페이스 뉴럴 네트워크(203)의 입력 레이어(301)의 차원은 제1 뉴럴 네트워크(201)의 출력 레이어(302)의 차원과 대응될 수 있다.
일실시예에 따르면, 인터페이스 뉴럴 네트워크(203)의 출력 레이어(303)는 제2 뉴럴 네트워크(202)의 입력 레이어(304)로 제2 입력 신호를 송신한다. 인터페이스 뉴럴 네트워크(203)의 출력 레이어(303)는 제2 입력 신호를 송신하기 위해, 제2 뉴럴 네트워크(202)의 입력 레이어(304)와 정합될 수 있다. 예를 들어, 인터페이스 뉴럴 네트워크(203)의 출력 레이어(303)의 차원은 제2 뉴럴 네트워크(202)의 입력 레이어(304)의 차원과 대응될 수 있다.
인터페이스 뉴럴 네트워크(203)의 내부 뉴런들의 토폴로지는 입력 레이어(301)가 수신한 제1 출력을 출력 레이어(303)가 송신하는 제2 입력으로 변환하는데 용이하게 구현될 수 있다. 예를 들어, 제1 뉴럴 네트워크(201)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 변환 규약은 인터페이스 뉴럴 네트워크(203)에 포함된 뉴런들의 토폴로지 정보, 각 뉴런들의 가중치, 각 뉴런들의 연결 정보 등을 포함할 수 있고, 인터페이스 뉴럴 네트워크(203)는 변환 규약에 기초하여 정의될 수 있다.
일실시예에 따르면, 인터페이스 뉴럴 네트워크(203)에 연결된 뉴럴 네트워크가 새로운 뉴럴 네트워크로 교체되거나 새로운 뉴럴 네트워크가 추가적으로 연결되는 경우, 인터페이스 뉴럴 네트워크(203)의 입력 레이어(301) 및 출력 레이어(303) 중 적어도 하나는 새로운 뉴럴 네트워크의 입/출력 레이어와 정합되도록 변형될 수 있고, 기존의 뉴럴 네트워크와 새로운 뉴럴 네트워크를 연결하는 변환 규약이 생성되거나 갱신될 수 있다. 이 경우, 인터페이스 뉴럴 네트워크(203)를 정의하는 변환 규약에 포함된 토폴로지 정보 등이 갱신될 수 있다. 인터페이스 뉴럴 네트워크(203)는 새로운 변환 규약에 기초하여 기존의 뉴럴 네트워크 및 새로운 뉴럴 네트워크 간의 신호를 처리할 수 있고, 기존의 뉴럴 네트워크 및 새로운 뉴럴 네트워크 간을 서로 연결시킬 수 있다.
도 3을 참조하여, 뉴럴 네트워크의 입력 레이어와 출력 레이어가 존재하는 실시예가 설명되었지만, 뉴럴 네트워크의 입력 레이어와 출력 레이어는 별도로 존재하지 않을 수 있고, 인터페이스 뉴럴 네트워크는 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크의 출력 및 입력 중 적어도 하나와 정합되게 설계될 수 있다.
도 4a 및 4b는 일실시예에 따라서 새로운 뉴럴 네트워크가 연결된 인터페이스 뉴럴 네트워크의 개념도이다.
도 4a를 참조하면, 인터페이스 뉴럴 네트워크(203)에 연결되어 있던 제1 뉴럴 네트워크(201)가 제3 뉴럴 네트워크(401)로 교체되는 경우, 인터페이스 뉴럴 네트워크(203)의 변환 규약이 갱신될 수 있다. 일실시예에 따르면, 신호 처리 장치는 인터페이스 뉴럴 네트워크(203)의 변환 규약을 제3 뉴럴 네트워크(401)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 변환 규약으로 갱신할 수 있다. 신호 처리 장치는 제3 뉴럴 네트워크(401)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 관계에 기초하여 인터페이스 뉴럴 네트워크(203)의 파라미터들을 조절할 수 있다. 신호 처리 장치는 조절된 파라미터들에 기초하여, 기존의 변환 규약을 제3 뉴럴 네트워크(401)의 출력 및 제2 뉴럴 네트워크(202)의 입력 간의 최적화된 변환 규약으로 갱신할 수 있다.
일실시예에 따르면, 제1 뉴럴 네트워크(201)가 제3 뉴럴 네트워크(401)로 교체되기 이전에 인터페이스 뉴럴 네트워크(203)로부터 제2 뉴럴 네트워크(202)로 송신되는 제2 입력 신호의 유형은 제1 뉴럴 네트워크(201)가 제3 뉴럴 네트워크(401)로 교체된 이후에 인터페이스 뉴럴 네트워크(203)로부터 제2 뉴럴 네트워크(202)로 송신되는 제2 입력 신호의 유형과 같을 수 있다. 예를 들어, 교체 이전 및 이후에 인터페이스 뉴럴 네트워크(203)로부터 송신되는 각 제2 입력 신호에 내포되는 특징의 종류는 서로 같을 수 있다.
제2 뉴럴 네트워크는 전체 네트워크의 상위 뉴럴 네트워크일 수 있고, 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(401)는 전체 네트워크의 하위 뉴럴 네트워크일 수 있다. 이 경우, 인터페이스 뉴럴 네트워크(203)는 교체 이전 및 이후에도 제2 뉴럴 네트워크(202)로 동일한 유형(예를 들어, 특징의 종류)의 신호를 제공할 수 있다. 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(401)는 입력 모달리티, 출력 모달리티, 입력 차원, 출력 차원, 입력 신호에 내포된 특징 및 출력 신호에 내포된 특징 중 적어도 하나의 측면에서 서로 다를 수 있다. 교체 이전 및 이후에 인터페이스 뉴럴 네트워크(203)가 하위 뉴럴 네트워크로부터 수신하는 신호에 내포된 특징의 종류가 서로 다를 수 있음에도 불구하고, 인터페이스 뉴럴 네트워크(203)는 상위 뉴럴 네트워크인 제2 뉴럴 네트워크(202)에서 처리하기에 적합한 형태로 제3 뉴럴 네트워크(401)의 출력 신호에 내포된 특징을 변환할 수 있다. 인터페이스 뉴럴 네트워크(203)는 제3 뉴럴 네트워크(401)의 출력 신호에 내포된 특징을 제2 뉴럴 네트워크(202)의 입력에 대응하는 특징으로 변환하여 교체 이전 및 이후에도 동일한 유형의 신호를 제2 뉴럴 네트워크(202)로 송신할 수 있다.
제1 뉴럴 네트워크(201), 제2 뉴럴 네트워크(202) 및 인터페이스 뉴럴 네트워크(203)를 포함하는 전체 네트워크 시스템에서 제1 뉴럴 네트워크(201)가 제3 뉴럴 네트워크(401)로 교체되었지만, 인터페이스 뉴럴 네트워크(203)와 연결된 제2 뉴럴 네트워크(202)는 교체 전후 동일한 유형의 제2 입력 신호를 수신할 수 있다. 전체 네트워크 시스템의 뉴럴 네트워크들의 재학습이 요구되지 않고, 새로운 뉴럴 네트워크와 연결된 인터페이스 뉴럴 네트워크(203)의 학습만이 수행되므로, 전체 네트워크 시스템의 안정성이 보장될 수 있다.
도 4b를 참조하면, 인터페이스 뉴럴 네트워크(203)에 제3 뉴럴 네트워크(402)가 추가적으로 연결될 수 있다. 신호 처리 장치는 제3 뉴럴 네트워크(402)의 입/출력 및 제2 뉴럴 네트워크(202)의 입/출력 간의 변환 규약이 생성될 수 있다. 또한, 신호 처리 장치는 제3 뉴럴 네트워크(402)의 입/출력 및 제1 뉴럴 네트워크(201)의 입/출력 간의 변환 규약을 생성할 수 있다. 신호 처리 장치는 생성된 변환 규약을 인터페이스 뉴럴 네트워크(203)에 적용할 수 있다.
일실시예에 따르면, 제3 뉴럴 네트워크(402)가 인터페이스 뉴럴 네트워크(203)에 추가로 연결된 경우, 인터페이스 뉴럴 네트워크(203)는 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(402)로부터 출력된 각 신호를 수신하고, 새롭게 생성된 변환 규약 및 수신된 각 신호에 기초하여, 제2 입력 신호를 생성할 수 있다. 생성된 제2 입력 신호는 인터페이스 뉴럴 네트워크(203)로부터 제2 뉴럴 네트워크(202)로 송신될 수 있다. 예를 들어, 전체 네트워크 시스템에서 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(402)는 하위의 뉴럴 네트워크일 수 있고, 서로 모달리티가 다를 수 있다. 제2 뉴럴 네트워크(202)는 인터페이스 뉴럴 네트워크(203)로부터 수신한 신호를 이용하여 최종적인 판단 및 명령을 생성하는 상위의 뉴럴 네트워크일 수 있다. 서로 다른 모달리티의 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(402)는 객체로부터 특징을 각각 추출하고, 인터페이스 뉴럴 네트워크(203)는 제1 뉴럴 네트워크(201) 및 제3 뉴럴 네트워크(402)로부터 추출된 각 특징을 수신할 수 있다. 인터페이스 뉴럴 네트워크(203)는 수신된 각 특징 및 변환 규약에 기초하여 제2 입력 신호를 생성할 수 있고, 제2 뉴럴 네트워크(202)는 인터페이스 뉴럴 네트워크(203)로부터 제2 입력 신호를 수신하여 판단 및 명령을 생성할 수 있다. 여기서, 제3 뉴럴 네트워크(402)가 추가되기 이전과 이후에 제2 뉴럴 네트워크(202)가 인터페이스 뉴럴 네트워크(203)로부터 수신하는 제2 입력 신호의 유형이 서로 같을 수 있다.
도 5는 뉴럴 네트워크가 교체되는 실시예를 설명하는 도면이다.
도 5를 참조하면, 전체 네트워크 시스템은 뉴럴 네트워크 A(505) 및 인터페이스 뉴럴 네트워크(508 및 509) 및 새롭게 교체된 뉴럴 네트워크 B 및 C(506 및 507)를 포함한다. 도 5를 참조하여 설명하는 전체 네트워크 시스템을 로봇 시스템이라 한다. 로봇 시스템은 복수의 뉴럴 네트워크들이 계층적인 관계로 연결되고, 인터페이스 뉴럴 네트워크들(508 및 509)은 뉴럴 네트워크들을 연결시킨다.
도 5에 도시된 바와 같이, 로봇 시스템의 기존 비전 센서(501) 및 기존 액츄에이터(502)는 각각 새로운 비전 센서(503) 및 새로운 액츄에이터(504)로 교체된다. 새로운 비전 센서(503)는 기존 비전 센서(501)에 비해 개선된 성능을 가지고, 새로운 액츄에이터(504)는 기존 액츄에이터(502)에 비해 개선된 성능을 가질 수 있다. 새로운 비전 센서(503)는 객체로부터 감지된 정보를 생성하고, 뉴럴 네트워크 B(506)는 새로운 비전 센서(503)에 의해 생성된 정보에 기초하여, 객체에 대응하는 시각적 특징(visual feature)를 생성할 수 있다. 일실시예에 따르면, 뉴럴 네트워크 B(506)는 객체에 대응하는 시각적 특징(visual feature)를 생성하도록 학습되고, 새로운 비전 센서(503)의 개선된 성능에 따라 양호한 특징을 추출하는 CNN일 수 있다. 새로운 액츄에이터(504)는 뉴럴 네트워크 C(507)에 의해 제어된다. 일실시예에 따르면, 뉴럴 네트워크 C(507)는 새로운 액츄에이터(504)와 연결되고, 새로운 액츄에이터(504)를 제어하도록 학습된 뉴럴 네트워크일 수 있다.
도 5의 로봇 시스템에 포함된 두 개의 하위의 뉴럴 네트워크(도면 미표시)가 각각 뉴럴 네트워크 B(506) 및 뉴럴 네트워크 C(507)로 교체되는 경우, 인터페이스 뉴럴 네트워크(508 및 509)들의 변환 규약들은 갱신될 수 있다. 로봇 시스템에 포함된 하위의 뉴럴 네트워크들이 새로운 뉴럴 네트워크들로 교체되는 경우, 인터페이스 뉴럴 네트워크들(508 및 509)이 학습되고, 학습된 인터페이스 뉴럴 네트워크들(508 및 509)을 제외한 나머지 뉴럴 네트워크들(505, 506 및 507)은 기존의 상태를 유지할 수 있다. 로봇 시스템은 인터페이스 뉴럴 네트워크들(508 및 509)를 이용하여, 새로운 뉴럴 네트워크의 채용으로 요구되는 추가적인 학습을 최소화할 수 있다.
인터페이스 뉴럴 네트워크(508)는 뉴럴 네트워크 B(506)의 출력 및 뉴럴 네트워크 A(505)의 입력 간의 변환 규약을 생성하고, 생성된 변환 규약으로 기존의 변환 규약을 갱신할 수 있다. 인터페이스 뉴럴 네트워크(509)는 뉴럴 네트워크 A(505)의 출력 및 뉴럴 네트워크 C(507)의 입력 간의 변환 규약을 생성하고, 생성된 변환 규약으로 기존의 변환 규약을 갱신할 수 있다.
뉴럴 네트워크 B(506)는 새로운 비전 센서(503)에 의해 감지된 정보에 기초하여 객체에 대응하는 특징 벡터를 출력할 수 있다. 인터페이스 뉴럴 네트워크(508)는 갱신된 변환 규약에 기초하여 뉴럴 네트워크 B(506)로부터 수신한 특징 벡터를 뉴럴 네트워크 A(505)에 대응하는 입력 신호로 변환할 수 있다. 인터페이스 뉴럴 네트워크(508)는 변환된 입력 신호를 뉴럴 네트워크 A(505)에 송신한다. 뉴럴 네트워크 A(505)는 인터페이스 뉴럴 네트워크(508)로부터 수신한 입력 신호에 기초하여, 객체를 식별하거나 분류할 수 있다.
뉴럴 네트워크 A(505)는 객체의 식별 정보에 기초하여, 새로운 액츄에이터(504)의 명령 벡터를 출력할 수 있다. 인터페이스 뉴럴 네트워크(509)는 갱신된 변환 규약에 기초하여 뉴럴 네트워크 A(505)로부터 수신한 명령 벡터를 뉴럴 네트워크 C(507)에 대응하는 입력 신호로 변환할 수 있다. 뉴럴 네트워크 C(507)는 인터페이스 뉴럴 네트워크(509)로부터 변환된 입력 신호를 수신하고, 수신한 입력 신호에 기초하여 새로운 액츄에이터(504)를 제어할 수 있다.
도 6은 뉴럴 네트워크가 교체되는 실시예를 설명하는 도면이다.
도 6을 참조하면, 뉴럴 네트워크 A(601), 인터페이스 뉴럴 네트워크(602) 및 칼라 센서(605)와 연결된 뉴럴 네트워크 B(603)를 포함한 전체 네트워크 시스템 중에서, 뉴럴 네트워크 B(603)는 깊이 센서(606)와 연결된 뉴럴 네트워크 C(604)로 교체된다. 원래의 전체 네트워크 시스템(왼쪽)은 객체를 식별하거나 분류하는데 칼라 센서(605)를 이용한다. 객체를 식별하는 환경이 달라지는 경우, 칼라 센서(605)를 대체하는 깊이 센서(606)가 필요할 수 있고, 깊이 센서(606)를 채용한 전체 네트워크 시스템(오른쪽)은 식별, 분류, 검출 또는 판단을 하는데 깊이의 변수를 이용할 수 있다.
일실시예에 따르면, 전체 네트워크 시스템에 포함된 하위의 뉴럴 네트워크와 연결된 센서가 변경되어, 센서의 모달리티가 변경될 수 있다. 도 5를 참조하여 설명한 바와 같이, 기존의 모달리티를 위한 뉴럴 네트워크 B(603)로부터 새로운 모달리티를 위한 뉴럴 네트워크 C(604)로 교체되는 경우, 인터페이스 뉴럴 네트워크(602)는 뉴럴 네트워크 C(604)의 출력 및 뉴럴 네트워크 A(601)의 입력에 기초하여 변환 규약을 갱신할 수 있고, 변환된 갱신 규약에 기초하여 뉴럴 네트워크 C(604) 및 뉴럴 네트워크 A(601)를 서로 연결시킬 수 있다.
도 7a 및 7b는 일실시예에 따른 학습 방법을 설명하는 순서도이다.
일실시예에 따르면, 신호 처리 장치는 인터페이스 뉴럴 네트워크(730)의 입력 레이어를 제1 뉴럴 네트워크(710)의 출력 레이어에 연결할 수 있다(701). 도 1 내지 6을 참조하여 설명된 신호 처리 장치는 주로 인터페이스 뉴럴 네트워크의 신호를 처리하는 동작을 수행하였지만, 도 7a 및 7b를 참조하여 설명되는 신호 처리 장치는 인터페이스 뉴럴 네트워크(730)를 학습시킬 수 있다. 학습된 인터페이스 뉴럴 네트워크(730)는 도 1 내지 6을 참조하여 설명된 실시예로 동작할 수 있다.
신호 처리 장치는 인터페이스 뉴럴 네트워크(730)의 출력 레이어를 제2 뉴럴 네트워크(720)의 입력 레이어에 연결할 수 있다(702). 인터페이스 뉴럴 네트워크(730)의 입력 레이어의 차원은 제1 뉴럴 네트워크(710)의 출력 레이어의 차원과 대응되고, 인터페이스 뉴럴 네트워크(730)의 출력 레이어의 차원은 제2 뉴럴 네트워크(720)의 입력 레이어의 차원과 대응될 수 있다.
신호 처리 장치는 트레이닝 샘플을 제1 뉴럴 네트워크(710)의 입력 레이어에 입력시킬 수 있다(703). 일 예로, 신호 처리 장치는 트레이닝 세트에 포함된 복수의 트레이닝 샘플들을 순차적으로 제1 뉴럴 네트워크(710)의 입력 레이어에 입력시킬 수 있다. 복수의 트레이닝 샘플들은 각각 레이블을 포함할 수 있으며, 제1 뉴럴 네트워크(710)로 입력되는 신호와 대응할 수 있다.
신호 처리 장치는 트레이닝 샘플에 대응하여, 제2 뉴럴 네트워크(720)의 출력 레이어로부터 출력되는 출력 신호를 획득할 수 있다(704). 일 예로, 트레이닝 샘플이 제1 뉴럴 네트워크, 인터페이스 뉴럴 네트워크, 및 제2 뉴럴 네트워크로 전파된 결과가 제2 뉴럴 네트워크의 출력 신호로서 출력될 수 있다.
신호 처리 장치는 출력 신호 및 트레이닝 샘플의 레이블에 기초하여, 인터페이스 뉴럴 네트워크(730)를 학습시킬 수 있다(705). 일실시예에 따르면, 신호 처리 장치는 트레이닝 샘플의 레이블에 기초한 목표 출력 신호 및 제2 뉴럴 네트워크(720)로부터 출력되는 출력 신호를 비교하고, 비교 결과에 기초하여 인터페이스 뉴럴 네트워크(730)를 학습시킬 수 있다. 신호 처리 장치는 제2 뉴럴 네트워크(720)의 출력 신호 및 레이블에 기초하여 인터페이스 뉴럴 네트워크(730)의 파라미터들을 조절할 수 있다. 최적화된 파라미터에 기초하여, 제1 뉴럴 네트워크(710)의 출력 및 제2 뉴럴 네트워크(720)의 입력 간의 변환 규약이 생성되며, 생성된 변환 규약에 기초하여 인터페이스 뉴럴 네트워크(730)가 정의될 수 있다.
도 8은 일실시예에 따른 신호 처리 장치이다.
일실시예에 따르면 신호 처리 장치(801)는 메모리(802) 및 프로세서(803)를 포함한다. 메모리(802)는 프로세서(803)에 의해 실행되는 프로그램을 저장하거나 프로세서(803)의 처리에 필요한 데이터를 임시 또는 영구적으로 저장할 수 있다. 프로세서(803)는 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신하고, 제1 뉴럴 네트워크의 출력 및 제2 뉴럴 네트워크의 입력 간의 변환 규약(conversion rule)에 기초하여, 제1 출력 신호를 제2 뉴럴 네트워크에 대응하는 제2 입력 신호로 변환하며, 제2 입력 신호를 제2 뉴럴 네트워크로 송신할 수 있다. 도 1 내지 7b를 참조하여 설명된 실시예가 신호 처리 장치(801)에 적용될 수 있으므로, 자세한 설명은 생략한다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신하는 단계;
    상기 제1 뉴럴 네트워크로부터 출력되는 제1 특징(feature) 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약(conversion rule)에 기초하여 상기 제1 출력 신호에 내포된 특징을 변경함으로써, 상기 제2 뉴럴 네트워크에 대응하는 제2 입력 신호를 생성하는 단계; 및
    상기 제2 입력 신호를 상기 제2 뉴럴 네트워크로 송신하는 단계
    를 포함하는
    뉴럴 네트워크의 동작 방법.
  2. 제1항에 있어서,
    상기 제1 출력 신호는 상기 제1 특징에 대응하는 제1 특징 벡터를 포함하고,
    상기 제2 입력 신호는 상기 제2 특징에 대응하는 제2 특징 벡터를 포함하는,
    뉴럴 네트워크의 동작 방법.
  3. 제1항에 있어서,
    상기 뉴럴 네트워크는
    상기 변환 규약이 적용된 인터페이스 뉴럴 네트워크를 포함하는,
    뉴럴 네트워크의 동작 방법.
  4. 제1항에 있어서,
    상기 뉴럴 네트워크의 입력 차원은 상기 제1 뉴럴 네트워크의 출력 차원과 대응되고,
    상기 뉴럴 네트워크의 출력 차원은 상기 제2 뉴럴 네트워크의 입력 차원과 대응되는,
    뉴럴 네트워크의 동작 방법.
  5. 제1항에 있어서,
    상기 변환 규약은 상기 뉴럴 네트워크의 파라미터들이 최적화되어 정의된,
    뉴럴 네트워크의 동작 방법.
  6. 제1항에 있어서,
    상기 제1 뉴럴 네트워크가 제3 뉴럴 네트워크로 교체되는 경우,
    상기 변환 규약을 상기 제3 뉴럴 네트워크로부터 출력되는 제3 특징 및 상기 제2 뉴럴 네트워크의 입력으로 요구되는 상기 제2 특징 간의 변환 규약으로 갱신하는 단계
    를 더 포함하는,
    뉴럴 네트워크의 동작 방법.
  7. 제6항에 있어서,
    상기 갱신하는 단계는
    상기 제3 특징 및 상기 제2 특징 간의 관계에 기초하여, 상기 뉴럴 네트워크의 파라미터들을 조절하는 단계
    를 포함하는,
    뉴럴 네트워크의 동작 방법.
  8. 제6항에 있어서,
    상기 제3 뉴럴 네트워크 및 상기 제1 뉴럴 네트워크는 입출력 모달리티(modality), 입출력 차원, 및 입출력 특징 중 적어도 하나의 측면에서 서로 구별되는,
    뉴럴 네트워크의 동작 방법.
  9. 제6항에 있어서,
    상기 갱신된 변환 규약에 기초한 제2 입력 신호의 유형은 상기 갱신 전 변환 규약에 기초한 제2 입력 신호의 유형과 같은,
    뉴럴 네트워크의 동작 방법.
  10. 제1항에 있어서,
    제3 뉴럴 네트워크가 추가로 연결되는 경우,
    상기 제3 뉴럴 네트워크로부터 출력되는 제3 특징 및 상기 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약을 생성하는 단계
    를 더 포함하는
    뉴럴 네트워크의 동작 방법.
  11. 제1항에 있어서,
    상기 뉴럴 네트워크는 상기 제1 뉴럴 네트워크의 출력 특징을 상기 제2 뉴럴 네트워크의 입력 특징으로 적응(adapt)시키는,
    뉴럴 네트워크의 동작 방법.
  12. 제1항에 있어서,
    상기 제1 출력 신호는 상기 제1 뉴럴 네트워크에 의해 객체로부터 추출된 특징 벡터이고,
    상기 제2 뉴럴 네트워크는 상기 제2 입력 신호에 기초하여, 상기 객체를 식별하거나 분류하는,
    뉴럴 네트워크의 동작 방법.
  13. 제1항에 있어서,
    상기 제1 출력 신호는 상기 제1 뉴럴 네트워크에 의해 결정된 액츄에이터의 명령 벡터이고,
    상기 제2 뉴럴 네트워크는 상기 제2 입력 신호에 기초하여, 상기 액츄에이터를 제어하는,
    뉴럴 네트워크의 동작 방법.
  14. 인터페이스 뉴럴 네트워크의 입력 레이어를 제1 뉴럴 네트워크의 출력 레이어에 연결하는 단계;
    상기 인터페이스 뉴럴 네트워크의 출력 레이어를 제2 뉴럴 네트워크의 입력 레이어에 연결하는 단계;
    트레이닝 샘플을 상기 제1 뉴럴 네트워크의 입력 레이어에 입력시키는 단계;
    상기 트레이닝 샘플에 대응하여, 상기 제2 뉴럴 네트워크의 출력 레이어로부터 출력되는 출력 신호를 획득하는 단계; 및
    상기 출력 신호 및 상기 트레이닝 샘플의 레이블에 기초하여, 상기 인터페이스 뉴럴 네트워크를 학습시키는 단계
    를 포함하는
    학습 방법.
  15. 제14항에 있어서,
    상기 인터페이스 뉴럴 네트워크는
    상기 제1 뉴럴 네트워크의 출력 신호에 내포된 특징을 상기 제2 뉴럴 네트워크의 입력으로 요구되는 특징으로 변환하도록 학습되는,
    학습 방법.
  16. 제14항에 있어서,
    상기 인터페이스 뉴럴 네트워크의 입력 차원은 상기 제1 뉴럴 네트워크의 출력 차원과 대응되고,
    상기 인터페이스 뉴럴 네트워크의 출력 차원은 상기 제2 뉴럴 네트워크의 입력 차원과 대응되는,
    학습 방법.
  17. 제14항에 있어서,
    상기 제1 뉴럴 네트워크는 객체로부터 특징 벡터를 추출하여 상기 특징 벡터를 출력하고,
    상기 제2 뉴럴 네트워크는 상기 인터페이스 뉴럴 네트워크로부터 수신한 신호에 기초하여, 상기 객체를 식별하거나 분류하는,
    학습 방법.
  18. 제14항에 있어서,
    상기 제1 뉴럴 네트워크는 액츄에이터의 명령 벡터를 결정하여 상기 명령 벡터를 출력하고,
    상기 제2 뉴럴 네트워크는 상기 인터페이스 뉴럴 네트워크로부터 수신한 신호에 기초하여, 상기 액츄에이터를 제어하는,
    학습 방법.
  19. 하드웨어와 결합되어 제1항 내지 제18항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  20. 제1 뉴럴 네트워크로부터 출력된 제1 출력 신호를 수신하고, 상기 제1 뉴럴 네트워크로부터 출력되는 제1 특징 및 제2 뉴럴 네트워크의 입력으로 요구되는 제2 특징 간의 변환 규약에 기초하여 상기 제1 출력 신호에 내포된 특징을 변경함으로써 상기 제2 뉴럴 네트워크에 대응하는 제2 입력 신호를 생성하며, 상기 제2 입력 신호를 상기 제2 뉴럴 네트워크로 송신하는 프로세서
    를 포함하는
    신호 처리 장치.
KR1020160046426A 2016-04-15 2016-04-15 인터페이스 뉴럴 네트워크 KR20170118520A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160046426A KR20170118520A (ko) 2016-04-15 2016-04-15 인터페이스 뉴럴 네트워크
US15/247,160 US10867236B2 (en) 2016-04-15 2016-08-25 Interface neural network
US17/091,837 US20210056394A1 (en) 2016-04-15 2020-11-06 Interface neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160046426A KR20170118520A (ko) 2016-04-15 2016-04-15 인터페이스 뉴럴 네트워크

Publications (1)

Publication Number Publication Date
KR20170118520A true KR20170118520A (ko) 2017-10-25

Family

ID=60038919

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160046426A KR20170118520A (ko) 2016-04-15 2016-04-15 인터페이스 뉴럴 네트워크

Country Status (2)

Country Link
US (2) US10867236B2 (ko)
KR (1) KR20170118520A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190052587A (ko) * 2017-11-08 2019-05-16 삼성전자주식회사 뉴럴 네트워크 장치 및 그 동작 방법
WO2020017686A1 (ko) * 2018-07-18 2020-01-23 엘지전자 주식회사 인공지능 서버 및 인공지능 디바이스

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10466714B2 (en) * 2016-09-01 2019-11-05 Ford Global Technologies, Llc Depth map estimation with stereo images
US10748057B1 (en) 2016-09-21 2020-08-18 X Development Llc Neural network modules
JP2018060268A (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 認識装置および学習システム
CN110663049B (zh) * 2017-04-28 2023-12-26 谷歌有限责任公司 神经网络优化器搜索
US20200065654A1 (en) * 2018-08-22 2020-02-27 Electronics And Telecommunications Research Institute Neural network fusion apparatus and modular neural network fusion method and matching interface generation method for the same
EP4104103A4 (en) * 2020-02-12 2024-02-21 Hewlett Packard Development Co MULTIPLE TASK NEURONAL NETWORKS
EP4175588A2 (en) 2020-07-06 2023-05-10 Perfect Fit Crowns, LLC Method and apparatus for dental crown restorations using prefabricated sleeve-crown pairs

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735579B1 (en) 2000-01-05 2004-05-11 The United States Of America As Represented By The Secretary Of The Navy Static memory processor
US6976012B1 (en) 2000-01-24 2005-12-13 Sony Corporation Method and apparatus of using a neural network to train a neural network
KR100413382B1 (ko) 2001-07-31 2003-12-31 김관중 통신망을 이용한 감시 카메라의 통합 원격 제어 시스템 및방법과 이를 이용한 영상 데이터 처리 방법
KR100757500B1 (ko) 2005-12-08 2007-09-11 한국전자통신연구원 서비스 로봇과 사람 사이의 동작기반 인터페이스 시스템 및방법
US7962429B2 (en) 2007-05-24 2011-06-14 Paul Adams Neuromorphic device for proofreading connection adjustments in hardware artificial neural networks
TWI349867B (en) 2008-05-20 2011-10-01 Univ Nat Cheng Kung Server and system and method for automatic virtual metrology
US8874498B2 (en) 2011-09-16 2014-10-28 International Business Machines Corporation Unsupervised, supervised, and reinforced learning via spiking computation
US8903746B2 (en) 2012-03-22 2014-12-02 Audrey Kudritskiy System and method for viewing, modifying, storing, and running artificial neural network components
US10095718B2 (en) 2013-10-16 2018-10-09 University Of Tennessee Research Foundation Method and apparatus for constructing a dynamic adaptive neural network array (DANNA)
US10564923B2 (en) 2014-03-31 2020-02-18 Sony Corporation Method, system and artificial neural network
US9535960B2 (en) 2014-04-14 2017-01-03 Microsoft Corporation Context-sensitive search using a deep learning model
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US10989779B2 (en) * 2017-09-29 2021-04-27 Yonsei University, University - Industry Foundation (UIF) Apparatus and method for reconstructing magnetic resonance image using learning, and under-sampling apparatus method and recording medium thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190052587A (ko) * 2017-11-08 2019-05-16 삼성전자주식회사 뉴럴 네트워크 장치 및 그 동작 방법
WO2020017686A1 (ko) * 2018-07-18 2020-01-23 엘지전자 주식회사 인공지능 서버 및 인공지능 디바이스

Also Published As

Publication number Publication date
US20170300813A1 (en) 2017-10-19
US20210056394A1 (en) 2021-02-25
US10867236B2 (en) 2020-12-15

Similar Documents

Publication Publication Date Title
KR20170118520A (ko) 인터페이스 뉴럴 네트워크
Shabbir et al. A survey of deep learning techniques for mobile robot applications
CN107533754B (zh) 在深度卷积网络中降低图像分辨率
US20170291301A1 (en) Feature detection apparatus and methods for training of robotic navigation
US20190314984A1 (en) Automatic Robot Perception Programming by Imitation Learning
US20190362239A1 (en) Method and Assistance System for Assisting the Planning of Automation Systems
KR102239186B1 (ko) 인공지능 기반 로봇 매니퓰레이터의 자동 제어 시스템 및 방법
CN112740640A (zh) 用于物联网设备的消歧的系统和方法
Leiva et al. Collision avoidance for indoor service robots through multimodal deep reinforcement learning
US11435758B2 (en) Electronic control system
Gupta et al. A delay-tolerant potential-field-based network implementation of an integrated navigation system
Wu et al. SDP-based robust formation-containment coordination of swarm robotic systems with input saturation
Krishnan et al. Neural network‐assisted robotic vision system for industrial applications
US20210335355A1 (en) Intelligent gateway device and system including the same
Albers et al. Online trajectory optimization and navigation in dynamic environments in ROS
JP2023539183A (ja) 実験室設定におけるアクター-クリティックアルゴリズムの訓練
Hwang et al. Internet-based smart-space navigation of a car-like wheeled robot using fuzzy-neural adaptive control
Xu et al. Deep reinforcement learning for parameter tuning of robot visual servoing
KR102285472B1 (ko) 음향의 이퀄라이징 방법과, 이를 구현하는 로봇 및 ai 서버
Wang et al. Learning Classifier System on a humanoid NAO robot in dynamic environments
JP2023153100A (ja) 物体発見のために利用される複素オートエンコーダのための方法及びシステム
Bøhn Reinforcement learning for optimization of nonlinear and predictive control
Gavrilov et al. Usage of hybrid neural network model MLP-ART for navigation of mobile robot
Yoshita et al. Perception to Control: End-to-End Autonomous Driving Systems
Tolani Visual model predictive control