KR102465409B1 - Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding - Google Patents

Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding Download PDF

Info

Publication number
KR102465409B1
KR102465409B1 KR1020207035846A KR20207035846A KR102465409B1 KR 102465409 B1 KR102465409 B1 KR 102465409B1 KR 1020207035846 A KR1020207035846 A KR 1020207035846A KR 20207035846 A KR20207035846 A KR 20207035846A KR 102465409 B1 KR102465409 B1 KR 102465409B1
Authority
KR
South Korea
Prior art keywords
neural network
patterns
activity
source
nodes
Prior art date
Application number
KR1020207035846A
Other languages
Korean (ko)
Other versions
KR20210008418A (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
Priority claimed from US16/004,635 external-priority patent/US20190378007A1/en
Priority claimed from US16/004,796 external-priority patent/US20190378000A1/en
Priority claimed from US16/004,757 external-priority patent/US11893471B2/en
Priority claimed from US16/004,671 external-priority patent/US20190378008A1/en
Priority claimed from US16/004,837 external-priority patent/US11663478B2/en
Application filed by 이나이트 에스아 filed Critical 이나이트 에스아
Publication of KR20210008418A publication Critical patent/KR20210008418A/en
Application granted granted Critical
Publication of KR102465409B1 publication Critical patent/KR102465409B1/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • 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/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0445
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • G06N5/003
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Abstract

방법들, 시스템들, 및 장치들은 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램들을 포함하며, 그 컴퓨터 프로그램들은 순환 인공 신경 네트워크 내 활동을 특성화하며 그리고 정보를 인코딩하고 디코딩하기 위한 것이다. 한 모습에서, 디바이스는 신경 네트워크를 포함할 수 있으며, 상기 신경 네트워크는 트레이닝 되어: 제1 입력에 대한 응답으로, 상기 제1 입력에 응하여 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제1 표현의 근사, 제2 입력에 대한 응답으로, 상기 제2 입력에 응하여 상기 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제2 표현의 근사, 그리고 제3 입력에 대한 응답으로, 상기 제3 입력에 응하여 상기 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제3 표현의 근사를 산출한다.The methods, systems, and apparatuses include computer programs encoded on a computer storage medium, the computer programs for characterizing activity in a recurrent artificial neural network and for encoding and decoding information. In one aspect, a device may include a neural network, wherein the neural network is trained: in response to a first input, a second set of topological structures in patterns of activity occurring in a source neural network in response to the first input. an approximation of a first representation, in response to a second input, an approximation of a second representation of topological structures in patterns of activity occurring in the source neural network in response to the second input, and in response to a third input, the approximating a third representation of topological structures in patterns of activity occurring in the source neural network in response to a third input.

Description

순환 인공 신경 네트워크 내 활동 특성화 그리고 정보 인코딩 및 디코딩Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding

본 명세서는 순환 인공 신경 네트워크 (recurrent artificial neural network) 내 활동을 특성화하는 것에 관한 것이다.This disclosure relates to characterizing activity in recurrent artificial neural networks.

활동을 특성화하는 것은 전송, 암호화, 및 데이터 저장과 같은 환경들에서 신호들을 인코딩/디코딩에 있어서는 물론이며, 예를 들면, 결정 순간 (decision moment)들에 대한 신원확인에서 사용될 수 있다. 그것은 정보를 인코딩하고 디코딩하는 것에 또한 관련되며, 그리고 다양한 환경들에서 그 인코딩된 정보를 사용하는 시스템 및 기술들에도 관련된다. 상기 인코딩된 정보는 신경 네트워크, 예를 들면, 순환 신경 네트워크 (recurrent neural network) 내 활동을 나타낼 수 있다.Characterizing activity can be used, for example, in the identification of decision moments, as well as in encoding/decoding signals in environments such as transmission, encryption, and data storage. It also relates to encoding and decoding information, and also to systems and techniques that use the encoded information in various environments. The encoded information may represent activity in a neural network, for example, a recurrent neural network.

인공 신경 네트워크들은 생물학적 뉴론들의 네트워크의 구조 및 기능적인 모습들에 의해 영감을 받은 디바이스들이다. 특히, 인공 신경 네트워크들은 노드라고 불리는 상호연결된 구조물의 시스템을 사용하여 생물학적 뉴론들의 네트워크의 정보 인코딩 및 다른 프로세싱 능력들을 모방한다. 인공 신경 네트워크 내 노드들 사이의 연결들의 배열 및 강도는 그 인공 신경 네트워크에 의한 정보 저장이나 정보 프로세싱의 결과들을 결정한다.Artificial neural networks are devices inspired by the structural and functional aspects of a network of biological neurons. In particular, artificial neural networks use a system of interconnected structures called nodes to mimic the information encoding and other processing capabilities of networks of biological neurons. The arrangement and strength of connections between nodes in an artificial neural network determines the results of information storage or information processing by the artificial neural network.

신경 네트워크들은 그 네트워크 내 소망된 신호 흐름을 생산하고 소망된 정보 프로세싱이나 정보 저장 결과들을 달성하기 위해 트레이닝될 수 있다. 일반적으로, 신경 네트워크를 트레이닝하는 것은 학습 페이즈 동안에 노드들 사이의 연결들의 배열 및/또는 강도를 변경할 것이다. 주어진 입력 세트들에 대해 신경 네트워크들에 의해 충분하게 적절한 프로세싱 결과들이 달성될 때에 그 신경 네트워크는 트레이닝된 것으로 간주될 수 있다. Neural networks may be trained to produce a desired signal flow within the network and to achieve desired information processing or information storage results. In general, training a neural network will change the arrangement and/or strength of connections between nodes during the learning phase. A neural network can be considered trained when sufficiently appropriate processing results are achieved by the neural networks for a given set of inputs.

인공 신경 네트워크들은 비-선형 데이터 프로세싱 및 분석을 수행하기 위해 다양한 상이한 디바이스들에서 사용될 수 있다. 비-선형 데이터 프로세싱은 중첩 원리 (superposition)를 충족시키지 않으며, 즉, 결정된 변수들은 독립적인 성분들의 선형 합으로서 작성될 수 없다. 비-선형 데이터 프로세싱이 유용한 환경들의 예들은 패턴 및 시퀀스 인식, 스피치 프로세싱, 이상 탐지 (novelty detection) 및 순차적 의사 결정 (sequential decision making), 복잡한 시스템 모델링, 그리고 다양한 다른 환경들에서의 시스템들 및 기술을 포함한다.Artificial neural networks can be used in a variety of different devices to perform non-linear data processing and analysis. Non-linear data processing does not satisfy the superposition principle, ie, the determined variables cannot be written as a linear sum of independent components. Examples of environments where non-linear data processing is useful are systems and techniques in pattern and sequence recognition, speech processing, novelty detection and sequential decision making, complex system modeling, and a variety of other environments. includes

인코딩 및 디코딩 둘 모두는 정보를 하나의 모습이나 표현으로부터 다른 모습이나 표현으로 변환시킨다. 상이한 표현들은 상이한 애플리케이션들에서 더 또는 덜 유용한 상이한 특징들을 제공할 수 있다. 예를 들면, 정보의 일부 모습들이나 표현들 (예를 들면, 자연 언어)은 사람이 이해하기 더 쉬울 수 있다. 다른 모습들이나 표현들은 크기에 있어서 더 작을 수 있으며 (예를 들면, 압축됨) 그리고 전송하거나 저장하기 더 쉬울 수 있다. 또 다른 모습들이나 표현들은 정보 콘텐트를 고의적으로 모호하게 할 수 있다 (예를 들면, 정보는 암호적으로 인코딩될 수 있다).Both encoding and decoding transform information from one aspect or representation to another. Different representations may provide different features that are more or less useful in different applications. For example, some aspects or representations of information (eg, natural language) may be easier for a human to understand. Other aspects or representations may be smaller in size (eg, compressed) and may be easier to transmit or store. Still other aspects or representations may intentionally obscure the information content (eg, the information may be cryptographically encoded).

특별한 애플리케이션에 무관하게, 인코딩 또는 디코딩 프로세스는 상이한 모습들이나 표현들로 된 정보 사이의 대응 관계를 확립하는 미리 정의된 규칙들의 세트나 알고리즘을 따르는 것이 일반적일 것이다. 예를 들면, 이진 코드를 산출하는 인코딩 프로세스는 이진 시퀀스나 벡터 내 개별 비트들에 따라 그 개별 비트들에게 역할이나 의미를 부여할 수 있다. Irrespective of the particular application, the encoding or decoding process will generally follow an algorithm or set of predefined rules that establish correspondences between information in different appearances or representations. For example, an encoding process that yields a binary code may assign roles or meanings to individual bits according to individual bits in a binary sequence or vector.

본원은 인공 신경 네트워크 내 활동을 특성화하는 것에 관련된 기법들을 제공하려고 한다.The present application seeks to provide techniques related to characterizing activity in artificial neural networks.

본원은 정보를 인코딩하고 디코딩하는 것에 관한 것이며, 그리고 다양한 환경들에서 상기 인코딩된 정보를 사용하는 시스템들 및 기술들에 관한 것이다. 예를 들면, 한 구현에서, 디바이스는 신경 네트워크를 포함하며, 상기 신경 네트워크는 트레이닝 되어, 제1 입력에 대한 응답으로, 상기 제1 입력에 응하여 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제1 표현의 근사, 제2 입력에 대한 응답으로, 상기 제2 입력에 응하여 상기 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제2 표현의 근사, 그리고 제3 입력에 대한 응답으로, 상기 제3 입력에 응하여 상기 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 제3 표현의 근사를 산출한다.BACKGROUND This disclosure relates to encoding and decoding information, and to systems and techniques for using the encoded information in various environments. For example, in one implementation, a device comprises a neural network, the neural network being trained and topological structure in patterns of activity occurring in a source neural network in response to, and in response to, a first input. approximation of a first representation of, in response to a second input, an approximation of a second representation of topological structures in patterns of activity occurring in the source neural network in response to the second input, and in response to a third input , computes an approximation of a third representation of topological structures in patterns of activity occurring in the source neural network in response to the third input.

이런 그리고 다른 구현들은 다음의 특징들 중 하나 이상을 포함할 수 있다. 상기 위상적 구조들 모두는 상기 소스 신경 네트워크 내 둘 이상의 노드들 및 그 노드들 사이의 하나 이상의 에지들을 포함할 수 있다. 상기 위상적 구조들은 심플렉스들 (simplices)을 포함할 수 있다. 상기 위상적 구조들은 공동 (cavity)들을 둘러싼다. 상기 입력들 각각에게 응답하는 다른 활동의 복잡성과 구별 가능한 복잡성을 활동의 상기 패턴들이 가지는 시점들에서 상기 제1 표현, 제2 표현, 및 제3 표현 각각은 상기 소스 신경 네트워크에서 일어나는 위상적 구조들을 배타적으로 표현할 수 있다. 상기 디바이스는, 상기 신경 네트워크에 의해 산출된 상기 표현들의 근사들을 수신하고 그 수신된 근사들을 프로세싱하기 위해 결합된 프로세서를 더 포함할 수 있다. 상기 프로세서는 상기 신경 네트워크에 의해 산출된 상기 표현들을 프로세싱하기 위해 트레이닝된 제2 신경 네트워크를 포함할 수 있다. 상기 제1 표현, 제2 표현, 및 제3 표현 각각은 다중-값인, 비-이진 자릿수들을 포함할 수 있다. 상기 제1 표현, 제2 표현, 및 제3 표현 각각은, 활동의 상기 패턴들이 상기 소스 신경 네트워크 내 어디에서 일어나는가를 규정하지 않으면서 상기 위상적 구조들의 발생을 표현할 수 있다. 상기 디바이스는 스마트폰을 포함할 수 있다. 상기 소스 신경 네트워크는 순환 신경 네트워크일 수 있다.These and other implementations may include one or more of the following features. All of the topological structures may include two or more nodes in the source neural network and one or more edges between the nodes. The topological structures may include simplexes. The topological structures surround cavities. Each of the first, second, and third representations represents topological structures occurring in the source neural network at points in time where the patterns of activity have a complexity distinguishable from the complexity of another activity responsive to each of the inputs. can be expressed exclusively. The device may further comprise a processor coupled to receive approximations of the representations calculated by the neural network and process the received approximations. The processor may comprise a second neural network trained to process the representations produced by the neural network. Each of the first, second, and third expressions may include multi-valued, non-binary digits. Each of the first, second, and third representations may represent the occurrence of the topological structures without prescribing where the patterns of activity occur within the source neural network. The device may include a smartphone. The source neural network may be a recurrent neural network.

다른 구현에서, 디바이스는, 복수의 상이한 입력들에 응답하여 소스 신경 네트워크에서 일어나는 활동의 패턴들 내 위상적 구조들의 표현들을 입력하기 위해 결합된 신경 네트워크를 포함한다. 상기 신경 네트워크는 상기 표현들을 프로세싱하고 응답 출력을 산출하기 위해 트레이닝된다.In another implementation, a device includes a neural network coupled to input representations of topological structures in patterns of activity occurring in a source neural network in response to a plurality of different inputs. The neural network is trained to process the representations and produce a response output.

이런 그리고 다른 구현들은 다음의 특징들 중 하나 이상을 포함한다. 상기 위상적 구조들 모두는 상기 소스 신경 네트워크 내 둘 이상의 노드들 및 그 노드들 사이의 하나 이상의 에지 (edge)들을 포함할 수 있다. 상기 위상적 구조들은 심플렉스 (simplex)들을 포함할 수 있다. 상기 입력들 각각에게 응답하는 다른 활동의 복잡성과 구별 가능한 복잡성을 활동의 상기 패턴들이 가지는 시점들에서 위상적 구조들의 상기 표현들은 상기 소스 신경 네트워크에서 일어나는 위상적 구조들을 배타적으로 표현할 수 있다. 상기 디바이스는, 복수의 상이한 입력들에 응답하여 소스 신경 네트워크에서 일어난 활동의 패턴들 내 위상적 구조들의 표현들의 각자의 근사들을, 상기 상이한 입력들에 응답하여 산출하도록 트레이닝된 신경 네트워크를 포함할 수 있다. 상기 위상적 구조들의 표현들은 다중-값인, 비-이진 자릿수들을 포함할 수 있다. 위상적 구조들의 상기 표현들은, 활동의 상기 패턴들이 상기 소스 신경 네트워크 내 어디에서 일어나는가를 규정하지 않으면서 상기 위상적 구조들의 발생을 표현할 수 있다. 상기 소스 신경 네트워크는 순환 신경 네트워크일 수 있다.These and other implementations include one or more of the following features. All of the topological structures may include two or more nodes in the source neural network and one or more edges between the nodes. The topological structures may include simplexes. The representations of topological structures at points in time where the patterns of activity have a complexity distinguishable from the complexity of another activity responding to each of the inputs may exclusively represent topological structures occurring in the source neural network. The device may comprise a neural network trained in response to a plurality of different inputs to produce respective approximations of representations of topological structures in patterns of activity occurring in a source neural network in response to the different inputs. have. Representations of the topological structures may include multi-valued, non-binary digits. The representations of topological structures may represent the occurrence of the topological structures without prescribing where the patterns of activity occur within the source neural network. The source neural network may be a recurrent neural network.

다른 구현에서, 신경 네트워크 디바이스에 의해 방법이 구현되며, 상기 방법은, 소스 신경 네트워크에서의 활동의 패턴들 내 위상적 구조들의 표현을 입력하는 단계로, 상기 활동은 상기 소스 신경 네트워크로의 입력에 응답하는, 입력 단계, 상기 표현을 프로세싱하는 단계, 그리고 상기 표현을 프로세싱한 결과를 출력하는 단계를 포함한다. 상기 프로세싱 단계는, 상기 소스 신경 네트워크에서의 활동의 패턴들 내 위상적 구조들의 상이한 그런 표현들을 프로세싱하기 위해 상기 신경 네트워크를 트레이닝시키는 것과 일치한다. In another implementation, a method is implemented by a neural network device, the method comprising inputting a representation of topological structures in patterns of activity in a source neural network, wherein the activity is at input to the source neural network. responding, input steps, processing the expression, and outputting a result of processing the expression. The processing step coincides with training the neural network to process different such representations of topological structures in patterns of activity in the source neural network.

이런 그리고 다른 구현들은 다음의 특징들 중 하나 이상을 포함할 수 있다. 상기 위상적 구조들 모두는 상기 소스 신경 네트워크 내 둘 이상의 노드들 및 그 노드들 사이의 하나 이상의 에지들을 포함할 수 있다. 상기 위상적 구조는 심플렉스들을 포함할 수 있다. 상기 위상적 구조들은 공동들을 둘러쌀 수 있다. 상기 입력들 각각에게 응답하는 다른 활동의 복잡성과 구별 가능한 복잡성을 활동의 상기 패턴들이 가지는 시점들에서 위상적 구조들의 상기 표현들은 상기 소스 신경 네트워크에서 일어나는 위상적 구조들을 배타적으로 표현할 수 있다. 상기 위상적 구조들의 표현들은 다중-값인, 비-이진 자릿수들을 포함할 수 있다. 위상적 구조들의 상기 표현들은, 활동의 상기 패턴들이 상기 소스 신경 네트워크 내 어디에서 일어나는가를 규정하지 않으면서 상기 위상적 구조들의 발생을 표현할 수 있다. 상기 소스 신경 네트워크는 순환 신경 네트워크일 수 있다. These and other implementations may include one or more of the following features. All of the topological structures may include two or more nodes in the source neural network and one or more edges between the nodes. The topological structure may include simplexes. The topological structures may surround cavities. The representations of topological structures at points in time where the patterns of activity have a complexity distinguishable from the complexity of another activity responding to each of the inputs may exclusively represent topological structures occurring in the source neural network. Representations of the topological structures may include multi-valued, non-binary digits. The representations of topological structures may represent the occurrence of the topological structures without prescribing where the patterns of activity occur within the source neural network. The source neural network may be a recurrent neural network.

본 명세서에서 설명된 하나 이상의 구현들의 상세 내용들은 아래의 동반 도면들 및 설명에서 제시된다. 본 발명 대상의 다른 특징들, 모습들, 및 이점들은 그 설명, 도면들 및 청구항들로부터 명백해질 것이다.The details of one or more implementations described herein are set forth in the accompanying drawings and description below. Other features, aspects, and advantages of the present subject matter will become apparent from the description, drawings and claims.

본 발명의 효과는 본 명세서의 해당되는 부분들에 개별적으로 명시되어 있다.The effects of the present invention are individually indicated in the corresponding parts of the specification.

도 1은 순환 인공 신경 네트워크 디바이스의 구조를 개략적으로 도시한 것이다.
도 2 및 도 3은 상이한 시간 윈도우들 내 순환 인공 신경 네트워크 디바이스의 기능을 개략적으로 도시한 것이다.
도 4는 상기 네트워크 내 활동의 특성화에 기반하여 순환 인공 신경 네트워크 내 결정 순간들을 식별하기 위한 프로세스의 흐름도이다.
도 5는 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들을 개략적으로 도시한 것이다.
도 6은 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들을 개략적으로 도시한 것이다.
도 7은 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들을 개략적으로 도시한 것이다.
도 8은 순환 인공 신경 네트워크 디바이스 내 활동 패턴들에서 순서를 정하는 것의 복잡성이나 정도의 결정에 있어서 사용될 수 있는 데이터 테이블의 개략적 도시이다.
도 9는 구별 가능한 복잡성을 구비한 활동 패턴들의 타이밍을 결정하는 개략적인 도시이다.
도 10은 네트워크 내 활동의 특성화에 기반하여 순환 인공 신경 네트워크를 사용하여 신호들을 인코딩하는 프로세스의 흐름도이다.
도 11은 네트워크 내 활동의 특성화에 기반하여 순환 인공 신경 네트워크를 사용하여 신호들을 디코딩하는 프로세스의 흐름도이다.
도 12, 13 및 14는 위상적인 구조들의 이진 모습이나 표현의 개략적인 예시들이다.
도 15 및 도 16은 상이한 비트들에 대응하는 특징들의 존재 또는 부재가 어떻게 서로에게 독립적이지 않은가의 예를 개략적으로 도시한다.
도 17, 18, 19, 20은 네 개의 상이한 분류 시스템들 내 신경 네트워크 내의 활동에서 위상적인 구조들의 발생의 표현을 사용하는 것의 개략적 도시이다.
도 21 및 도 22는 소스 (source) 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 사용하여 트레이닝될 수 있는 로컬 인공 신경 네트워크를 포함하는 에지 (edge) 디바이스들의 개략적인 도시이다.
도 23은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 이용하여 로컬 인공 신경 네트워크들이 트레이닝될 수 있는 시스템의 개략적인 도시이다.
도 24, 25, 26, 27은 네 개의 상이한 분류 시스템들 내 신경 네트워크 내의 활동에서 위상적인 구조들의 발생의 표현을 사용하는 것의 개략적 도시이다.
도 28은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 이용하여 트레이닝될 수 있는 인공 신경 네트워크들을 포함하는 시스템의 개략적인 도시이다.
다양한 도면들에서 비슷한 참조번호들은 비슷한 요소들을 표시한다.
1 schematically shows the structure of a recurrent artificial neural network device.
2 and 3 schematically show the functionality of a cyclic artificial neural network device in different time windows.
4 is a flow diagram of a process for identifying decision moments in a recurrent artificial neural network based on characterization of activity in the network.
5 schematically illustrates patterns of activity that can be identified within a recurrent artificial neural network and that can be used to identify decision moments.
6 schematically illustrates patterns of activity that can be identified within a recurrent artificial neural network and that can be used to identify decision moments.
7 schematically illustrates patterns of activity that can be identified within a recurrent artificial neural network and that can be used to identify decision moments.
8 is a schematic illustration of a data table that may be used in determining the complexity or degree of ordering in activity patterns in a recurrent artificial neural network device.
9 is a schematic illustration of determining the timing of activity patterns with distinguishable complexity.
10 is a flow diagram of a process for encoding signals using a recurrent artificial neural network based on characterization of activity within the network.
11 is a flow diagram of a process for decoding signals using a recurrent artificial neural network based on characterization of activity in the network.
12, 13 and 14 are schematic illustrations of binary representations or representations of topological structures.
15 and 16 schematically show an example of how the presence or absence of features corresponding to different bits is not independent of each other.
17, 18, 19, 20 are schematic diagrams of using representations of the occurrence of topological structures in activity in neural networks in four different classification systems.
21 and 22 are schematic diagrams of edge devices comprising a local artificial neural network that can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network.
23 is a schematic illustration of a system in which local artificial neural networks can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network.
Figures 24, 25, 26, 27 are schematic diagrams of using representations of the occurrence of topological structures in activity in neural networks in four different classification systems.
28 is a schematic illustration of a system including artificial neural networks that can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network.
Like reference numbers in the various drawings indicate like elements.

도 1은 순환 인공 신경 네트워크 디바이스 (100)의 구조의 개략적 도시이다. 순환 인공 신경 네트워크 디바이스 (100)는 상호연결된 노드들의 시스템을 이용하여 생물학적 뉴론들의 네트워크들의 정보 인코딩 및 다른 프로세싱 능력들을 모방하는 디바이스이다. 순환 인공 신경 네트워크 디바이스 (100)는 하드웨어로, 소프트웨어로, 또는 그것들의 조합으로 구현될 수 있다.1 is a schematic diagram of the structure of a recurrent artificial neural network device 100 . The recurrent artificial neural network device 100 is a device that mimics the information encoding and other processing capabilities of networks of biological neurons using a system of interconnected nodes. The recurrent artificial neural network device 100 may be implemented in hardware, software, or a combination thereof.

순환 인공 신경 네트워크 디바이스 (100)의 상기 예시는 복수의 구조적 링크들에 의해 상호연결된 복수의 노드들 (101, 102, ... , 107)을 포함한다. 노드들 (101, 102, ... , 107)은 생물학적 네트워크들 내 신경들과 유사한 별개의 정보 프로세싱 구조물들이다. 일반적으로 노드들 (101, 102, ... , 107)은 하나 이상의 링크들 (110)을 통해서 수신된 하나 이상의 입력 신호들을 프로세싱하여, 하나 이상의 링크들 (110)을 통해 출력되는 하나 이상의 출력 신호들을 산출한다. 예를 들면, 몇몇 구현들에서, 노드들 (101, 102, ... , 107)은 다수의 입력 신호들에 가중치를 부여하며, 그 합을 하나 이상의 비-선형 활성 기능들을 통해 통과시키며, 그리고 하나 이상의 출력 신호들을 출력한다.The above example of a recurrent artificial neural network device 100 includes a plurality of nodes 101 , 102 , ... , 107 interconnected by a plurality of structural links. Nodes 101 , 102 , ... , 107 are separate information processing structures similar to neurons in biological networks. In general, nodes 101 , 102 , ... , 107 process one or more input signals received over one or more links 110 , and output one or more output signals output over one or more links 110 . produce them For example, in some implementations, nodes 101 , 102 , ... , 107 weight multiple input signals, passing the sum through one or more non-linear activation functions, and outputs one or more output signals.

노드들 (101, 102, ... , 107)은 누산기들로서 작동할 수 있다. 예를 들면, 노드들 (101, 102, ... , 107)은 임계에 도달할 때까지 하나 이상의 신호들이 제1 노드 내에 축적되는 인터그레이트-파이어 (integrate-and-fire) 모델에 따라서 작동할 수 있다. 임계에 도달한 이후에, 상기 제1 노드는 연결된 제2 노드를 하나 이상의 링크들 (110)을 따라 츨력 신호를 전송함으로써 파이어 (fire)한다. 차례로, 상기 제2 노드 (101, 102, ... , 107)는 수신한 신호를 축적하며 그리고 임계에 도달하면 상기 제2 노드 (101, 102, ... , 107)는 다른 출력 신호를 추가의 연결된 노드로 전송한다.Nodes 101 , 102 , ... , 107 may act as accumulators. For example, nodes 101 , 102 , ... , 107 may operate according to an integrate-and-fire model in which one or more signals accumulate in a first node until a threshold is reached. can After reaching the threshold, the first node fires a connected second node by sending an output signal along one or more links 110 . In turn, the second node 101 , 102 , ... , 107 accumulates the received signal and when a threshold is reached the second node 101 , 102 , ... , 107 adds another output signal transmitted to the connected node of

구조적 링크들 (110)은 노드들 (101, 102, ... , 107) 사이에 신호들을 전송할 수 있는 연결들이다. 편의상, 모든 구조적 링크들 (110)은 본원에서는 노드들 (101, 102, ... , 107) 중의 모든 제1 노드로부터 노드들 (101, 102, ... , 107) 중의 모든 제2 노드에게, 제2 노드로부터 제1 노드로 신호가 운반되는 것과 아주 동일한 방식으로 신호들을 운반하는 동일한 양방향 링크인 것으로 취급된다. 그러나, 이는 반드시 그런 것은 아니다. 예를 들면, 구조적 링크들 (110)의 일부 또는 모두는 노드들 (101, 102, ... , 107) 중의 제1 노드로부터 노드들 (101, 102, ... , 107) 중의 제2 노드에게로 신호를 운반하지만 제2 노드로부터 제1 노드로는 신호들을 운반하지 않는 단방향 링크들일 수 있다.Structured links 110 are connections capable of transmitting signals between nodes 101 , 102 , ... , 107 . For convenience, all of the structured links 110 are provided herein from every first node of nodes 101, 102, ... , 107 to every second node of nodes 101, 102, ... , 107. , are treated as being the same bidirectional link carrying signals in the very same way that signals are carried from the second node to the first node. However, this is not necessarily the case. For example, some or all of the structural links 110 may be from a first one of the nodes 101 , 102 , ... , 107 to a second one of the nodes 101 , 102 , ... , 107 . They may be unidirectional links that carry signals to and from the second node but not signals from the second node to the first node.

다른 예로서, 몇몇 구현들에서, 구조적 링크들 (110)은 방향성이 아닌 또는 방향성에 추가로 다양한 성질들을 가질 수 있다. 예를 들면, 몇몇 구현들에서, 상이한 구조적 링크들 (110)은 상이한 크기의 신호들을 운반할 수 있으며 - 노드들 (101, 102, ... , 107) 각자 사이에 상이한 강도를 가진 상호연결의 결과를 가져온다. 다른 예로서, 상이한 구조적 링크들 (110)은 상이한 유형의 신호 (예를 들면, 억제성 및/또는 흥분성 신호들)를 운반할 수 있다. 실제로, 몇몇 구현들에서, 구조적 링크들 (110)은 생물학적 시스템들 내 체세포 사이의 링크들 상에서 모델링될 수 있으며 그리고 그런 링크들의 막대한 형태학적, 화학적 및 다른 다양성의 적어도 일부를 반영할 수 있다. As another example, in some implementations, structural links 110 may have various properties that are not or in addition to directional. For example, in some implementations, different structured links 110 may carry signals of different magnitudes - of interconnections with different strengths between each of the nodes 101 , 102 , ... , 107 . brings results As another example, different structural links 110 may carry different types of signals (eg, inhibitory and/or excitatory signals). Indeed, in some implementations, structural links 110 may be modeled on links between somatic cells in biological systems and may reflect at least some of the enormous morphological, chemical and other diversity of such links.

상기 예시된 구현에서, 순환 인공 신경 네트워크 디바이스 (100)은, 모든 노드 (101, 102, ... , 107)가 모든 다른 노드 (101, 102, ... , 107)에게 연결된다는 점에서 소집단 (clique) 네트워크 (또는 서브네트워크)이다. 이것은 반드시 그런 것은 아니다. 오히려, 몇몇 구현들에서, 각 노드 (101, 102, ... , 107)는 (경우에 따라 동일한 링크들이나 다양한 링크들에 의해) 노드들 (101, 102, ... , 107)의 적당한 서브세트에 연결될 수 있다.In the above illustrated implementation, the recurrent artificial neural network device 100 is a subpopulation in that every node 101 , 102 , ... , 107 is connected to every other node 101 , 102 , ... , 107 . (clique) A network (or subnetwork). This is not necessarily the case. Rather, in some implementations, each node 101 , 102 , ... , 107 is a suitable sub of nodes 101 , 102 , ... , 107 (by the same links or various links as the case may be). can be connected to a set.

예시의 명료함을 위해, 순환 인공 신경 네트워크 디바이스 (100)는 단 7개의 노드들과 같이 도시된다. 일반적으로, 실제 세계의 신경 네트워크 디바이스들은 아주 더 많은 개수의 노드들을 포함할 것이다. 예를 들면, 몇몇 구현들에서, 신경 네트워크 디바이스들은 수십만, 수백만, 또는 심지어는 수십억 개의 노드들을 포함할 수 있다. 그래서, 순환 신경 네트워크 디바이스 (100)는 더 큰 순환 인공 신경 네트워크의 일부 (즉, 서브네트워크)일 수 있다. For clarity of illustration, the recurrent artificial neural network device 100 is shown with only 7 nodes. In general, real-world neural network devices will contain a much larger number of nodes. For example, in some implementations, neural network devices may include hundreds of thousands, millions, or even billions of nodes. Thus, the recurrent neural network device 100 may be part (ie, a subnetwork) of a larger recurrent artificial neural network.

생물학적 신경 네트워크 디바이스들에서, 축적 프로세스 및 신호 전송 프로세스는 실제의 세계에서의 시간의 경과를 필요로 한다. 예를 들면, 신경의 체세포 (soma)는 시간이 지남에 따라 수신된 입력들을 통합하며, 그리고 신경으로부터 신경으로의 신호 전송은, 예를 들면, 신호 전송 속도 그리고 신경들 사이의 링크들의 성질 및 길이에 의해 결정된 시간들을 필요로 한다. 그래서, 생물학적 신경 네크워크 디바이스의 상태는 동적이며 시간이 지나면 변한다. In biological neural network devices, the accumulation process and the signal transmission process require the passage of time in the real world. For example, the soma of a nerve integrates received inputs over time, and signal transmission from nerve to nerve depends on, for example, the rate of signal transmission and the nature and length of the links between the nerves. times determined by Thus, the state of a biological neural network device is dynamic and changes over time.

인공 순환 신경 네트워크 디바이스들에서, 시간은 인공적이며 수학적인 구조들을 사용하여 표현된다. 예를 들면, 신호들이 노드로부터 노드로 전송되는 것을 위해 실제 세계의 시간 경과를 필요로 하기 보다는, 그런 신호들은 일반적으로는 실제 세계의 시간 경과에 관계없는 인공 유닛들의 관점에서 컴퓨터 클록 사이클들에서 측정된 것처럼 또는 다르게 표현될 수 있다. 그럼에도 불구하고, 인공 순환 신경 네트워크의 상태는, 그 상태가 이 인공 유닛들에 관하여 변한다는 점에서 "동적 (dynamic)"인 것으로 설명될 수 있다.In artificial recurrent neural network devices, time is represented using artificial and mathematical structures. For example, rather than signals requiring real-world time lapse for transmission from node to node, such signals are typically measured in computer clock cycles in terms of artificial units independent of real-world time lapse. may be expressed as or otherwise. Nevertheless, the state of an artificial recurrent neural network can be described as "dynamic" in that the state changes with respect to these artificial units.

편의상 이 인공 유닛들은 본원에서는 "시간 (time)" 유닛들로 언급된다는 점에 유의한다. 그럼에도 불구하고, 이 유닛들은 인공적이며 그리고 일반적으로는 실제 세계에서의 시간 경과에 대응하지 않는다는 것이 이해되어야 한다. Note that, for convenience, these artificial units are referred to herein as “time” units. Nevertheless, it should be understood that these units are artificial and generally do not correspond to the passage of time in the real world.

도 2 및 도 3은 상이한 시간 윈도우들 내 순환 인공 신경 네트워크 디바이스 (100)의 기능에 대한 개략적인 도시이다. 상기 디바이스 (100)의 상태가 동적이기 때문에, 디바이스 (100)의 기능작용은 윈도우 내에서 발생하는 신호 전송 활동을 이용하여 표현될 수 있다. 그런 기능적인 도시는 링크들 (110)의 일부에서만의 활동을 보여주는 것이 일반적이다. 특히, 일반적으로 모든 링크 (110)가 특별한 윈도우 내에서 신호를 운반하는 것은 아니기 때문에, 모든 링크 (110)가 이 도면들에서 상기 디바이스 (100)의 기능작용에 기여하는 활동으로서 도시되는 것은 아니다.2 and 3 are schematic diagrams of the functionality of the cyclic artificial neural network device 100 in different time windows. Because the state of the device 100 is dynamic, the functioning of the device 100 can be expressed using signaling activity that occurs within a window. It is common for such a functional city to show activity on only some of the links 110 . In particular, not all links 110 are shown in these figures as activities contributing to the functioning of the device 100 as not all links 110 carry signals within a particular window.

도 2 및 도 3에서의 도면들에서, 활성 링크 (110)는 노드들 (101, 102, ... , 107)의 쌍을 연결시키는 상대적으로 두꺼운 연속선으로 도시된다. 대조적으로, 비활성 링크 (110)는 단속선들로 도시된다. 이것은 예시적인 것을 위한 것일 뿐이다. 다른 말로 하면, 상기 링크들 (110)에 의해 형성된 구조적 연결들은 링크들 (110)이 활성이건 아니건 간에 존재한다. 그러나, 이 형식주의는 디바이스 (100)의 기능작용 및 활동을 강조한다.2 and 3 , the active link 110 is shown as a relatively thick continuous line connecting the pair of nodes 101 , 102 , ... , 107 . In contrast, the inactive link 110 is shown with dashed lines. This is for illustrative purposes only. In other words, the structural connections formed by the links 110 exist whether the links 110 are active or not. However, this formalism emphasizes the functioning and activity of the device 100 .

링크를 따른 활동의 존재를 개략적으로 도시한 것에 추가로, 그 활동의 방향 또한 개략적으로 도시된다. 특히, 링크들 (110)의 활성을 도시한 상대적으로 두꺼운 단속선들은 관련 윈도우 동안에 상기 링크를 따른 신호 전송의 방향을 표시한 화살촉들을 또한 포함한다. 일반적으로, 단일 윈도우 내 신호 전송의 방향은 상기 링크가 상기 표시된 방향성을 가진 단방향 링크인 것으로 결정적으로 강제하지 않는다. 오히려, 제1 시간 윈도우에 대한 제1 기능적 도시에서, 링크는 제1 방향에서 활성일 수 있다. 제2 시간 윈도우에 대한 제2 기능적 도시에서, 링크는 반대 방향에서 활성일 수 있다. 그러나, 예를 들어, 단방향 링크들만을 포함하는 순환 인공 신경 네트워크 디바이스 (100)에서와 같은 몇몇 경우에, 신호 전송의 방향성은 그 링크의 방향성을 결정적으로 표시할 것이다.In addition to schematically illustrating the existence of an activity along a link, the direction of that activity is also schematically illustrated. In particular, the relatively thick dashed lines depicting activity of links 110 also include arrowheads indicating the direction of signal transmission along the link during the associated window. In general, the direction of signal transmission within a single window does not deterministically force the link to be a unidirectional link with the indicated directionality. Rather, in a first functional illustration for a first time window, the link may be active in a first direction. In a second functional illustration for a second time window, the link may be active in the opposite direction. However, in some cases, such as, for example, in a cyclic artificial neural network device 100 comprising only unidirectional links, the directionality of the signal transmission will decisively indicate the directionality of that link.

피드포워드 (feedforward) 신경 네트워크 디바이스들에서, 정보는 그 네트워크의 말단에 있는 노드들의 출력 레이어로 단일 방향으로만 (즉, 전방으로만) 이동한다. 피드포워드 신경 네트워크 디바이스들은 "결정 (decision)"에 도달했다는 것을 표시하며 그리고 상기 네트워크를 통한 출력 레이어로의 신호들 전파 (propagation)에 의해 정보 프로세싱이 완료되었다고 표시한다.In feedforward neural network devices, information travels in only one direction (ie forward only) to the output layer of nodes at the end of the network. Feedforward neural network devices indicate that a “decision” has been reached and that information processing is complete by propagation of signals through the network to the output layer.

대조적으로, 순환 신경 네트워크에서, 노드들 사이의 연결들은 사이클들을 형성하며 그리고 그 네트워크의 활동은 즉시 식별 가능한 결정 없이 동적으로 진행한다. 예를 들면, 심지어 3-노드 순환 신경 네트워크에서, 제1 노드는 제2 노드로 신호를 전송할 수 있으며, 그 제2 노드는 응답하여 제3 노드로 신호를 전송할 수 있다. 응답으로, 상기 제3 노드는 제1 노드로 신호를 거꾸로 전송할 수 있다. 상기 제1 노드가 수신한 신호들은 동일한 노드로부터 전송된 신호들에 -적어도 부분적으로- 응답할 수 있다.In contrast, in a recurrent neural network, connections between nodes form cycles and the activity of the network proceeds dynamically without immediately discernible decisions. For example, even in a three-node recurrent neural network, a first node may send a signal to a second node, which in response may send a signal to a third node. In response, the third node may send a signal back to the first node. The signals received by the first node may respond -at least in part - to signals transmitted from the same node.

개략적인 기능 도시들인 도 2 및 도 3은 이것을 3-노드 순환 신경 네트워크보다 아주 약간 더 큰 네트워크 내에 도시한다. 도 2에서 보이는 이 기능적 도시들은 제1 윈도우 내에서의 활동의 예시일 수 있으며 그리고 도 3은 바로 이어지는 제2 윈도우 내 활동의 예시일 수 있다. 도시된 것처럼, 신호 전송 활동의 컬렉션은 노드 (104)에서 비롯되며 제1 윈도우 동안에 디바이스 (100)를 통해 대체로 시계 방향으로 진행하는 것으로 보인다. 제2 윈도우에서, 상기 신호 전송 활동의 적어도 일부는 노드 (104)로 돌아가는 것으로 대체적으로 보인다. 그런 극도로 단순한 도시에서조차, 신호 전송은 분명하게 식별 가능한 출력이나 종료를 산출하는 방식으로 진행하지 않는다. 2 and 3, which are schematic functional diagrams, show this in a network that is only slightly larger than a three-node recurrent neural network. These functional illustrations shown in FIG. 2 may be an example of activity within a first window and FIG. 3 may be an example of activity within a second window immediately following. As shown, the collection of signaling activity originates from node 104 and appears to proceed generally clockwise through device 100 during the first window. In the second window, at least a portion of the signaling activity is generally seen going back to node 104 . Even in such extremely simple cities, signal transmission does not proceed in a way that yields a clearly identifiable output or termination.

예를 들면, 수천 또는 그보다 많은 노드들의 순환 신경 네트워크가 고려될 때에, 신호 전파는 아주 많은 개수의 경로들을 통해 일어날 수 있으며 그리고 이 신호들에는 분명하게 식별 가능한 "출력" 위치나 시간이 부족하다는 것이 인지될 수 있다. 비록 설계상 상기 네트워크가 백그라운드만의 신호 전송이 발생하거나 또는 심지어는 어떤 신호 전송도 발생하지 않는 무활동 상태 (quiescent state)로 돌아갈 수 있지만, 그 무활동 상태 그 자체는 정보 프로세싱의 결과들을 표시하지 않는다. 상기 순환 신경 네트워크는 입력에 무관하게 항상 무활동 상태로 돌아간다. 정보 프로세싱의 "출력"이나 결과는 그래서 특별한 입력에 응답하는 상기 순환 신경 네트워크 내에서 발생하는 활동 내에서 인코딩된다. For example, when a recurrent neural network of thousands or more nodes is considered, it is clear that signal propagation can occur through a very large number of paths and that these signals lack a clearly identifiable "output" location or time. can be recognized Although by design the network may return to a quiescent state in which background-only signal transmission or even no signal transmission occurs, the quiescent state itself does not represent the results of information processing. does not The circulatory neural network always returns to an inactive state regardless of input. The “output” or result of information processing is thus encoded within the activity occurring within the recurrent neural network in response to a particular input.

도 4는 순환 인공 신경 네트워크 내 활동 특성화에 기반하여 그 네트워크 내에서 결정 순간들을 식별하기 위한 프로세스 (400)의 흐름도이다. 결정 순간은, 순환 인공 신경 네트워크 내 활동이 입력에 응답한 상기 네트워크에 의한 정보 프로세싱의 결과들을 표시하는 시점이다. 프로세스 (400)는 기계-판독가능 명령어들의 하나 이상의 세트들의 로직에 따라 동작들을 수행하는 하나 이상의 데이터 프로세싱 장치의 시스템에 의해 수행될 수 있다. 예를 들면, 프로세서 (400)는, 그 프로세스 (400)에서 사용된 순환 인공 신경 네트워크를 구현하기 위한 소프트웨어를 실행하는 하나 이상의 컴퓨터들의 세트의 동일한 시스템에 의해 수행될 수 있다.4 is a flow diagram of a process 400 for identifying decision moments within a recurrent artificial neural network based on activity characterization within that network. A decision moment is a point in time when activity in a recurrent artificial neural network indicates the results of information processing by the network in response to an input. Process 400 may be performed by a system of one or more data processing devices that perform operations according to logic of one or more sets of machine-readable instructions. For example, the processor 400 may be performed by the same system of a set of one or more computers running software for implementing the recurrent artificial neural network used in the process 400 .

프로세스 (400)를 수행하는 상기 시스템은 순환 인공 신경 네트워크로 신호가 입력되었다는 통지를 405에서 수신한다. 몇몇 경우에, 상기 신호 입력은, 예를 들면, 상기 신경 네트워크의 하나 이상의 노드들 및/또는 하나 이상의 링크들로 정보가 주입되는 별개의 주입 이벤트이다. 다른 경우에, 상기 신호 입력은 어떤 시간 구간 동안에 상기 신경 네트워크의 하나 이상의 노드들 및/또는 링크들로 주입된 정보의 스트림이다. 상기 통지는 상기 인공 신경 네트워크가 능동적으로 징보를 프로세싱하고 있으며, 예를 들면, 무활동 상태에 있지 않다는 것을 표시한다. 몇몇 경우에, 상기 통지는, 예를 들면, 상기 신경 네트워크가 식별 가능한 무활동 상태에 존재하는 때처럼 상기 신경 네트워크 그 자체로부터 수신된다The system performing process 400 receives at 405 a notification that a signal has been input into the recurrent artificial neural network. In some cases, the signal input is a separate injection event, eg, in which information is injected into one or more nodes and/or one or more links of the neural network. In other cases, the signal input is a stream of information injected into one or more nodes and/or links of the neural network over a period of time. The notification indicates that the artificial neural network is actively processing a notification, eg, not in an inactive state. In some cases, the notification is received from the neural network itself, eg, when the neural network is in an identifiable state of inactivity.

410에서 상기 시스템 수행 프로세스 (400)는 상기 네트워크 내 응답 활동을 윈도우들의 컬렉션으로 분할한다. 주입이 별개 이벤트인 경우에, 상기 윈도우들은 주입 및 무활동 상태로의 복귀 사이의 시간을, 상기 활동이 가변 복잡성들을 디스플레이하는 여러 구간들로 세분할 수 있다. 주입이 정보의 스트림인 경우에, 상기 주입의 지속시간 (그리고 옵션으로는 주입 이후에 무활동 상태로의 복귀가 완료될 때까지의 시간)은, 상기 활동이 가변 복잡성들을 디스플레이하는 윈도우들로 세분될 수 있다. 활동의 복잡성을 결정하는 것으로의 다양한 접근 방식들은 아래에서 더 설명된다.At 410, the system performing process 400 divides the response activity in the network into a collection of windows. If injection is a separate event, the windows may subdivide the time between injection and return to an inactive state into several intervals in which the activity displays variable complexities. If the injection is a stream of information, the duration of the injection (and optionally the time after injection until return to inactivity is complete) is subdivided into windows in which the activity displays variable complexities. can be Various approaches to determining the complexity of an activity are described further below.

몇몇 구현들에서, 상기 윈도우들은 모두 동일한 지속시간을 가지지만, 반드시 그렇지는 않다. 오히려, 몇몇 구현들에서, 상기 윈도우들은 상이한 지속시간들을 가질 수 있다. 예를 들면, 몇몇 구현들에서, 지속시간은, 별개 주입 이벤트가 발생한 후의 시간이 증가함에 따라 증가한다.In some implementations, the windows all have the same duration, although not necessarily. Rather, in some implementations, the windows may have different durations. For example, in some implementations, the duration increases with increasing time after the discrete injection event occurs.

몇몇 구현들에서, 상기 윈도우들은 분리된 윈도우들의 연속하는 시리즈일 수 있다. 다른 구현들에서, 상기 윈도우는 시간상 겹치며, 그래서 하나의 윈도우가 이전의 윈도우가 끝나기 이전에 시작하도록 한다. 몇몇 경우에, 상기 윈도우들은 시간상 이동하는 움직이는 윈도우일 수 있다.In some implementations, the windows may be a continuous series of separate windows. In other implementations, the windows overlap in time, so that one window starts before the previous window ends. In some cases, the windows may be moving windows that move in time.

몇몇 구현들에서, 윈도우들의 상이한 지속 시간들은 활동의 복잡성의 상이한 결정들을 위해 정의된다. 예를 들면, 상대적으로 많은 개수의 노드들 사이에서 발생하는 활동을 한정하는 활동 패턴들에 대해, 상기 윈도우들은 상대적으로 더 작은 개수의 노드들 사이에서 발생하는 활동을 한정하는 활동 패턴들을 위해 정의된 윈도우들보다 더 긴 지속 시간을 가질 수 있다. 예를 들면, 활동의 참조번호 500의 패턴들의 환경에서 (도 5), 참조번호 530의 패턴에 적합한 활동을 식별하기 위해 정의된 윈도우는 참조번호 505의 패턴에 적합한 활동을 식별하기 위해 정의된 윈도우보다 더 길 수 있다. In some implementations, different durations of windows are defined for different determinations of the complexity of the activity. For example, for activity patterns that confine activity that occurs among a relatively large number of nodes, the windows are defined for activity patterns that confine activity that occurs among a relatively smaller number of nodes. It may have a longer duration than windows. For example, in the context of patterns of activity 500 ( FIG. 5 ), a window defined to identify an activity conforming to the pattern 530 is a window defined to identify an activity conforming to the pattern 505 . could be longer than

상기 시스템 수행 프로세스 (400)는 415에서 상이한 윈도우들에서 상기 네트워크 내 활동에서의 패턴들을 식별한다. 아래에서 더 설명되는 것처럼, 기능적인 그래프를, 노드들을 포인트들로서 구비한 위상적 공간인 것으로 취급함으로써 활동 내에서의 패턴들이 식별될 수 있다. 몇몇 구현들에서, 식별된 상기 활동 패턴들은, 상기 네트워크의 기능적인 그래프 내 소집단들, 예를 들면, 지향성 소집단 (directed clique)들이다.The system performing process 400 identifies patterns in activity in the network in different windows at 415 . As described further below, patterns in activity can be identified by treating a functional graph as being a topological space with nodes as points. In some implementations, the identified activity patterns are subpopulations in a functional graph of the network, eg, directed cliques.

420에서 상기 시스템 수행 프로세스 (400)는 상이한 윈도우들 내 활동 패턴들의 복잡성을 결정한다. 상기 복잡성은 활동의 순서 정해진 패턴이 어떤 윈도우 내에서 나타나는 가능성의 측정치일 수 있다. 그래서 랜덤하게 나타나는 활동 패턴들은 상대적으로 단순할 수 있을 것이다. 반면에서, 비-랜덤 순서를 보여주는 활동 패턴들은 상대적으로 복잡하다. 예를 들면, 몇몇 구현들에서, 활동 패턴의 복잡성은, 예를 들면, 상기 활동 패턴의 단순 카운트들이나 베티 수 (Betti number)들을 이용하여 측정될 수 있다.At 420 the system performing process 400 determines the complexity of activity patterns in different windows. The complexity may be a measure of the likelihood that an ordered pattern of activity appears within a window. So randomly appearing activity patterns can be relatively simple. On the other hand, activity patterns exhibiting non-random ordering are relatively complex. For example, in some implementations, the complexity of an activity pattern may be measured using, for example, simple counts or Betti numbers of the activity pattern.

425에서 상기 시스템 수행 프로세스 (400)는 구별 가능한 복잡성을 가진 활동 패턴들의 타이밍을 결정한다. 특별한 활동 패턴은, 예를 들면, 고정된 또는 가변의 베이스라인으로부터 위쪽으로 벗어나거나 아래쪽으로 벗어나는 복잡성에 기반하여 구별 가능할 수 있다. 다른 말로 하면, 상기 활동 내 비-랜덤 순서의 특별하게 높은 레벨들이나 특별하게 낮은 패턴들을 표시하는 활동 패턴들의 타이밍이 결정될 수 있다.At 425 the system performing process 400 determines the timing of activity patterns of distinguishable complexity. A particular activity pattern may be distinguishable, for example, based on complexity that deviates upwards or downwards from a fixed or variable baseline. In other words, the timing of activity patterns indicating particularly high levels or particularly low patterns of non-random order within the activity may be determined.

예를 들면, 신호 입력이 별개의 주입 이벤트인 경우에, 예를 들면, 안정된 베이스라인으로부터의 또는 다양한 상이한 별개의 주입 이벤트들에 대한 신경 네트워크의 평균 응답의 특성인 커브로부터의 편차들은, 구별 가능한 복잡한 활동 패턴들의 타이밍을 결정하기 위해 사용될 수 있다. 다른 예로서, 정보가 스트림 내에서의 입력인 경우에, 스트리밍 동안에 복잡성에서의 큰 변화들은, 구별 가능한 복잡한 활동 패턴들의 타이밍을 결정하기 위해 사용될 수 있다.For example, if the signal input is a distinct injection event, deviations from, for example, a stable baseline or from a curve characteristic of the average response of the neural network to a variety of different distinct injection events are distinguishable It can be used to determine the timing of complex activity patterns. As another example, where information is input within a stream, large changes in complexity during streaming can be used to determine the timing of distinguishable complex activity patterns.

430에서 상기 시스템 수행 프로세스 (400)는 구별 가능한 복잡한 활동 패턴들의 타이밍에 기반하여 상기 신경 네트워크로부터의 출력 판독 (reading)의 타이밍을 정한다. 예를 들어, 몇몇 구현들에서, 신경 네트워크의 출력은 상기 구별 가능한 복잡한 활동 패턴들이 발생했다고 동시에 판독될 수 있다. 상기 복잡성 편차가 상기 활동 내 상대적으로 높은 비-랜덤 순서를 표시하는 몇몇 구현들에서, 관찰된 활동 패턴들 그 자체는 상기 순환 인공 신경 네트워크의 출력으로서 또한 취해질 수 있다.At 430 the system performing process 400 timings an output reading from the neural network based on the timing of distinguishable complex activity patterns. For example, in some implementations, the output of a neural network may be read simultaneously that the distinguishable complex patterns of activity have occurred. In some implementations where the complexity variance indicates a relatively high non-random order within the activity, the observed activity patterns themselves may also be taken as an output of the recurrent artificial neural network.

도 5는 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들 (500)의 예시이다. 예를 들어, 패턴들 (500)은 프로세스 (400) (도 4) 내 415에서 식별될 수 있다.5 is an illustration of patterns 500 of activity that may be identified within a recurrent artificial neural network and that may be used to identify decision moments. For example, patterns 500 can be identified at 415 in process 400 ( FIG. 4 ).

패턴들 (500)은 순환 인공 신경 네트워크 내 활동의 예시들이다. 패턴들 (500)의 적용 동안에, 기능적 그래프는, 노드들을 포인트들로서 구비한 위상적 공간인 것으로 취급된다. 패턴들 (500)에 적합한 노드들 및 링크들 내 활동은, 그 활동에 관여한 특별한 노드들 및/또는 링크들의 신원에 무관하게 순서가 정해진 것으로 인식될 수 있다. 예를 들면, 제1 패턴 (505)은 도 2 내 참조번호 101, 104, 105의 노드들 사이에서의 활동을 나타낼 수 있으며, 이때에 패턴 (505) 내 포인트 0은 참조번호 104의 노드로, 포인트 1은 참조번호 105의 노드로, 그리고 포인트 2는 참조번호 101의 노드로 구비한다. 다른 예로서, 제1 패턴 (505)은 도 3 내 참조번호 104, 105, 106의 노드들 사이에서의 활동을 또한 나타낼 수 있으며, 이때에 패턴 (505) 내 포인트 0은 참조번호 106의 노드로, 포인트 1은 참조번호 104의 노드로, 그리고 포인트 2는 참조번호 105의 노드로 구비한다. 상기 지향성 소집단 내 활동의 순서 또한 규정된다. 예를 들면, 참조번호 5050의 패턴에서, 포인트 1 및 포인트 2 사이의 활동은 포인트 0 및 포인트 1 사이의 활동 이후에 발생한다.Patterns 500 are examples of activity in a recurrent artificial neural network. During application of patterns 500 , the functional graph is treated as a topological space with nodes as points. Activity within nodes and links that fit the patterns 500 may be recognized as ordered, regardless of the identity of the particular nodes and/or links involved in the activity. For example, the first pattern 505 may represent activity among the nodes 101 , 104 , 105 in FIG. 2 , where point 0 in the pattern 505 is the node 104 , Point 1 has a node 105, and point 2 is a node 101. As another example, the first pattern 505 may also represent activity among the nodes 104 , 105 , 106 in FIG. 3 , where point 0 in the pattern 505 is the node 106 . , point 1 is a node 104 , and point 2 is a node 105 . The sequence of activities within the directional subgroup is also defined. For example, in the pattern 5050, activity between points 1 and 2 occurs after activity between points 0 and 1.

상기 예시된 구현에서, 패턴들 (500)은 모드 방향성 소집단들이나 방향성 심플렉스 (simplex)들이다. 그런 패턴들에서, 그 패턴 내 모든 다른 노드로 신호들을 전송하는 소스 노드로부터 활동이 비롯된다. 패턴들 (500)에서, 그런 소스 노드는 포인트 0으로서 표시되며 반면에 다른 노드들은 포인트 1, 2, ... 로서 표시된다. 또한, 방향성 소집단들이나 심플렉스들에서, 상기 노드들 중 하나의 노드는 싱크 (sink)처럼 행동하며 패턴 내 모든 다른 노드로부터 전송된 신호들을 수신한다. 패턴들 (500)에서, 그런 싱크 노드들은 상기 패턴 내 가장 높은 숫자 패턴으로 표시된다. 예를 들면, 패턴 (505)에서, 싱크 노드는 포인트 2로 표시된다. 패턴 (510)에서, 싱크 노드는 포인트 3으로 표시된다. 패턴 (515)에서, 싱크 노드는 포인트 3으로 표시되며, 그 이후도 마찬가지이다. 패턴들 (500)에 의해 표현된 활동은 그래서 구별 가능한 방식으로 순서가 정해진다.In the illustrated implementation above, the patterns 500 are modally directional subpopulations or directional simplexes. In such patterns, activity originates from a source node that sends signals to all other nodes in the pattern. In patterns 500 , such a source node is denoted as point 0 while other nodes are denoted as points 1, 2, ... . Also, in directional subpopulations or simplexes, one of the nodes acts like a sink and receives signals transmitted from all other nodes in the pattern. In patterns 500 , such sink nodes are indicated by the highest numbered pattern in the pattern. For example, in pattern 505, the sink node is indicated by point 2. In pattern 510, the sink node is indicated by point 3. In pattern 515, the sink node is indicated by point 3, and so on. The activity represented by the patterns 500 is thus ordered in a distinguishable manner.

패턴들 (500) 각각은 상이한 개수의 포인트들을 가지며 그리고 상이한 개수의 노드들에서 순서가 정해진 활동을 반영한다. 예를 들면, 패턴 (505)은 2D-심플렉스이며 세 개의 노드들 내 행동을 반영하며, 패턴 (510)은 3D-심플렉스이며 네 개의 노드들 내 행동을 반영하며, 그 이후도 마찬가지이다. 패턴 내 포인트들의 개수가 증가하면, 순서 정하기의 정도 (degree) 및 행동의 복잡성도 증가한다. 예를 들면, 윈도우 내에 특정 레벨의 랜덤 활동을 가진 노드들의 큰 컬렉션에 대해, 그 활동의 일부는 우연하게 벗어난 패턴 (505)에 적합할 수 있다. 그러나, 랜덤한 활동이 패턴들 (510, 515, 520, ...) 각자에 적합할 것이라는 것은 점점 더 가망이 없다. 패턴 (530)에 적합한 활동의 존재는, 패턴 (505)에 적합한 활동의 존재인 그 활동 내 순서 정하기의 상대적으로 더 높은 정도 그리고 복잡성을 표시한다. Each of the patterns 500 has a different number of points and reflects an ordered activity at a different number of nodes. For example, pattern 505 is 2D-simplex and reflects behavior in three nodes, pattern 510 is 3D-simplex and reflects behavior in four nodes, and so on. As the number of points in the pattern increases, the degree of ordering and complexity of the behavior also increases. For example, for a large collection of nodes with a certain level of random activity within a window, some of that activity may fit into the pattern 505 deviate by chance. However, it is increasingly unlikely that a random activity will fit each of the patterns 510, 515, 520, ... The presence of an activity conforming to the pattern 530 is indicative of a relatively higher degree and complexity of ordering within that activity, which is the presence of an activity conforming to the pattern 505 .

이전에 설명된 것처럼, 몇몇 구현들에서, 상이한 지속 시간 윈도우들은 활동의 복잡성에 대한 상이한 결정을 위해 한정될 수 있다. 예를 들면, 패턴 (530)에 적합한 활동이 식별되려고 할 때에, 패턴 (505)에 적합한 활동이 식별되려고 할 때보다 더 긴 지속 시간 윈도우들이 사용될 수 있다. As previously described, in some implementations, different duration windows may be defined for different determinations of the complexity of the activity. For example, when an activity that fits the pattern 530 is about to be identified, longer duration windows can be used than when an activity that fits the pattern 505 is about to be identified.

도 6은 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들 (600)의 예시이다. 예를 들면, 패턴들 (600)은 프로세스 400 (도 4) 내 415에서 식별될 수 있다.6 is an illustration of patterns 600 of activity that may be identified within a recurrent artificial neural network and that may be used to identify decision moments. For example, patterns 600 can be identified at 415 in process 400 ( FIG. 4 ).

패턴들 (500)과 비슷하게, 패턴들 (600)은 순환 인공 신경 네트워크 내 활동의 예시들이다. 그러나, 패턴들 (600)은, 그 패턴들 (600) 모두가 지향성 소집단들이나 지향성 심플렉스들은 아니라는 접에서 패턴들 (500)의 엄격한 순서 정함과는 다르다. 특히, 패턴들 (605, 610)은 참조번호 515의 패턴보다 더 낮은 방향성을 가진다. 실제로, 패턴 (605)은 싱크 노드를 전혀 가지지 않는다. 그럼에도 불구하고, 패턴들 (605, 610)은 랜덤한 우연함을 통해 예상되는 것을 초과한 순서 정해진 활동의 정도를 표시하며 그리고 순환 인공 신경 네트워크 내 활동의 복잡성을 결정하기 위해 사용될 수 있다.Similar to patterns 500 , patterns 600 are examples of activity within a recurrent artificial neural network. However, the patterns 600 differ from the strict ordering of the patterns 500 in the sense that not all of the patterns 600 are directional subpopulations or directional simplexes. In particular, the patterns 605 and 610 have lower directivity than the pattern of reference numeral 515 . In practice, pattern 605 has no sink nodes at all. Nevertheless, patterns 605, 610 indicate a degree of ordered activity that exceeds that expected through random chance and can be used to determine the complexity of activity within a recurrent artificial neural network.

도 7은 순환 인공 신경 네트워크 내에서 식별될 수 있으며 결정 순간들을 식별하기 위해 사용될 수 있는 활동의 패턴들 (700)의 예시이다. 예를 들면, 패턴들 (700)은 프로세스 400 (도 4) 내 415에서 식별될 수 있다.7 is an illustration of patterns 700 of activity that may be identified within a recurrent artificial neural network and that may be used to identify decision moments. For example, patterns 700 can be identified at 415 in process 400 ( FIG. 4 ).

패턴들 (700)은, 개별 소집단들이나 심플렉스들보다 더 많은 포인트들을 포함하는 패턴들을 한정하며 지향성 심플렉스들의 그룹 내 공동 (cavity)들을 둘러싼 동일한 차원 (즉, 동일한 개수의 포인트들을 가짐)의 지향성 소집단들이나 지향성 심플렉스들의 그룹들이다. 예로서, 참조번호 705의 패턴은, 차수 (degree) 2의 상동 클래스를 함께 한정하는 여섯 개의 상이한 3 포인트, 2-차원 패턴들 (505)을 포함하며, 반면에 참조번호 710의 패턴은, 차수 (degree) 2의 제2 상동 클래스를 함께 한정하는 여덟 개의 상이한 3 포인트, 2-차원 패턴들 (505)을 포함한다. 패턴들 (705, 710) 내 상기 3 포인트, 2-차원 패턴들 (505) 각각은 각자의 공동을 둘러싸고 있는 것으로 생각될 수 있다. 지형성 그래프와 연관된 n번째 베티 수는 위상적 표현 내의 그런 상동 클래스들의 카운트를 제공한다.Patterns 700 define patterns that contain more points than individual subpopulations or simplexes and are directivity of the same dimension (ie, having the same number of points) surrounding cavities within a group of directivity simplexes. These are small groups or groups of directional simplexes. By way of example, the pattern at 705 includes six different three-point, two-dimensional patterns 505 that together define a homologous class of degree 2, whereas the pattern at 710 includes It contains eight different three-point, two-dimensional patterns 505 that together define a second homologous class of degree 2. Each of the three-point, two-dimensional patterns 505 in patterns 705 and 710 can be thought of as enclosing a respective cavity. The nth Betty number associated with the topographic graph gives the count of such homologous classes in the topological representation.

참조번호 700의 패턴들과 같은 패턴들에 의해 도시된 활동은 랜덤한 우연함에 의해 일어날 것 같지 않은 네트워크 내 활동의 순서 정함의 상대적으로 높은 정도를 도시한다. 패턴들 (700)은 그 활동의 복잡성을 특성화하기 위해 사용될 수 있다.Activity depicted by patterns, such as patterns at reference number 700, shows a relatively high degree of ordering of activity within the network that is unlikely to occur by random chance. Patterns 700 can be used to characterize the complexity of the activity.

몇몇 구현들에서, 결정 순간들을 신원확인하는 동안에 활동의 일부 패턴들만이 식별되며 그리고/또는 식별된 활동의 패턴들의 일부는 폐기되거나 그렇지 않으면 무시된다. 예를 들어, 도 5를 참조하면, 5 포인트, 4-차원 심플렉스 패턴 (515)에 적합한 활동은 4 포인트, 3-차원 및 3 포인트, 2-차원 심플렉스 패턴들 (510. 505)에 적합한 활동을 원래 포함한다. 예를 들면, 도 5의 4-차원 심플렉스 패턴 (515) 내 포인트들 0, 2, 3, 4 및 포인트들 1, 2, 3, 4 둘 모두는 3-차원 심플렉스 패턴 (510)에 적합하다. 몇몇 구현들에서, 더 작은 개수의 포인트들을 포함하는 - 그래서 더 낮은 차수인 - 패턴들은 결정 순간들의 신원확인 동안에 폐기될 수 있으며 그렇지 않고 무시될 수 있다. In some implementations, only some patterns of activity are identified and/or some of the identified patterns of activity are discarded or otherwise ignored during identification of decision moments. For example, referring to FIG. 5 , an activity suitable for a 5-point, 4-dimensional simplex pattern 515 is suitable for 4-point, 3-dimensional and 3-point, 2-dimensional simplex patterns 510. 505 Activities originally included. For example, points 0, 2, 3, 4 and points 1, 2, 3, 4 in the 4-dimensional simplex pattern 515 of FIG. 5 fit into the 3-dimensional simplex pattern 510 do. In some implementations, patterns containing a smaller number of points - and thus lower order - may be discarded during identification of decision moments and otherwise ignored.

다른 예로서, 활동의 일부 패턴들만이 식별될 필요가 있다. 예를 들면, 몇몇 구현들에서 홀수 포인트들 (3, 5, 7, ...) 또는 심지어는 짝수 차원들 (2, 4, 6, ...)을 구비한 패턴들만이 결정 순간들 신원확인에서 사용된다.As another example, only some patterns of activity need to be identified. For example, in some implementations only patterns with odd points (3, 5, 7, ...) or even even dimensions (2, 4, 6, ...) identify decision moments is used in

상이한 윈도우들 내 순환 인공 신경 네트워크 디바이스 내 활동 패턴들에서의 순서 정함의 복잡성이나 정도는 다양한 상이한 방식들로 결정될 수 있다. 도 8은 그런 결정에서 사용될 수 있는 데이터 테이블 (800)의 개략적인 도시이다. 데이터 테이블 (800)은 다른 활동들과 별개로 또는 함께 상기 활동 패턴들의 복잡성을 결정하기 위해 사용될 수 있다. 예를 들면, 데이터 테이블 (800)은 참조번호 400 (도 4) 내 420에서 사용될 수 있다.The complexity or degree of ordering in activity patterns within a recursive artificial neural network device in different windows may be determined in a variety of different ways. 8 is a schematic illustration of a data table 800 that may be used in such a determination. Data table 800 may be used to determine the complexity of the activity patterns separately or in conjunction with other activities. For example, data table 800 may be used at 420 in reference numeral 400 (FIG. 4).

추가의 상세 내용에서, 테이블 (800)은 윈도우 "N" 동안의 패턴 발생의 숫자 카운트를 포함하며, 여기에서 상이한 차원들의 패턴들에 부합하는 활동의 숫자 카운트들은 상이한 로우 (row)들 내에 존재한다. 예를 들면, 상기 도시된 예에서, 참조번호 805의 로우는 하나 이상의 3 포인트, 2-차원 패턴들에 부합하는 활동의 발생들의 숫자 카운트 (즉, "2032")를 포함하며, 반면에 참조번호 810의 로우는 하나 이상의 4 포인트, 3-차원 패턴들에 부합하는 활동의 발생들의 숫자 카운트 (즉, "8772")를 포함한다. 패턴들의 발생이 상기 활동이 비-랜덤인 순서를 가진다는 것을 표시하기 때문에, 상기 숫자 카운트들은 상기 활동 패턴들의 전체적인 복잡성의 일반화된 특성화를 또한 제공한다. 참조번호 800의 테이블과 비슷한 테이블이, 예를 들면, 프로세스 400 (도 4) 내 410에서 정의된 각 윈도우에 대해 형성될 수 있다. In further detail, table 800 includes numeric counts of pattern occurrences during window "N", wherein numeric counts of activity matching patterns of different dimensions are in different rows. . For example, in the example shown above, the row 805 contains a numeric count (ie, “2032”) of occurrences of an activity that conform to one or more three-point, two-dimensional patterns, while reference numeral 805 . A row of 810 includes a numeric count (ie, “8772”) of occurrences of the activity matching one or more four-point, three-dimensional patterns. Since the occurrence of patterns indicates that the activity has a non-random order, the numeric counts also provide a generalized characterization of the overall complexity of the activity patterns. A table similar to the table at 800 may be formed, for example, for each window defined at 410 in process 400 ( FIG. 4 ).

비록 테이블 (800)이 모든 유형이 활동 패턴에 대해 분리된 로우 및 분리된 엔트리를 포함하지만, 이것은 반드시 그런 것은 아니다. 예를 들면, 하나 이상의 카운트들 (예를 들면, 더 단순한 패턴들의 카운트들)이 테이블 (800)로부터 그리고 복잡성을 판별하는 것으로부터 생략될 수 있다. 다른 예로서, 몇몇 구현들에서, 단일 로우 또는 엔트리는 다수의 활동 패턴들의 발생들의 카운트들을 포함할 수 있다.Although table 800 contains separate rows and separate entries for all types of activity patterns, this is not necessarily the case. For example, one or more counts (eg, counts of simpler patterns) may be omitted from table 800 and from determining complexity. As another example, in some implementations, a single row or entry may include counts of occurrences of multiple activity patterns.

비록 도 8이 테이블 (800) 내 숫자 카운트를 제시하지만, 이것은 항상 반드시 것은 아니다. 예를 들면, 상기 숫자 카운트는 벡터로서 표현될 수 있다 (예를 들면, <2032, 877, 133, 66, 48, ...>). 카운트가 어떻게 제시되는가에 무관하게, 몇몇 구현들에서, 상기 카운트들은 이진수로 표현될 수 있으며 그리고 디지털 데이터 프로세싱 하부구조와 호환될 수 있다.Although FIG. 8 presents numeric counts in table 800, this is not always necessary. For example, the numeric count may be represented as a vector (eg, <2032, 877, 133, 66, 48, ...>). Regardless of how the counts are presented, in some implementations, the counts may be represented in binary and compatible with the digital data processing infrastructure.

몇몇 구현들에서, 예를 들면, 프로세스 (400) (도 4) 내 420에서 상기 순서 정하기의 정도나 복잡성을 결정하기 위해 상기 패턴들 발생의 숫자 카운트들은 가중치가 부여되거나 결합될 수 있다. 예를 들면, 오일러 특성은 상기 활동의 복잡성의 근사 (approximation)를 제공할 수 있으며 다음과 같이 주어진다:In some implementations, the numeric counts of the occurrences of the patterns may be weighted or combined to determine the degree or complexity of the ordering, for example at 420 in process 400 ( FIG. 4 ). For example, the Euler property can provide an approximation of the complexity of the activity and is given as:

[수학식 1][Equation 1]

Figure 112020134935348-pct00001
Figure 112020134935348-pct00001

여기에서 Sn 은 n 포인트들의 패턴 (즉, 차수 n-1의 패턴)의 발생들의 횟수이다. 그 패턴들은,, 예를 들면, 방향성 소집단 패턴들 (500) (도 5)일 수 있다.where S n is the number of occurrences of the pattern of n points (ie, the pattern of order n-1). The patterns may be, for example, directional subpopulation patterns 500 ( FIG. 5 ).

상기 순서 정하기의 정도나 복잡성을 결정하기 위해 상기 패턴들 발생의 숫자 카운트들이 어떻게 가중치가 부여되거나 결합될 수 있는가의 다른 예로서, 몇몇 구현들에서, 활성인 링크들의 가중치들에 기반하여 패턴 발생들은 가중치가 부여될 수 있다. 추가의 상세 내용에서, 이전에 설명된 것처럼, 인공 신경 네트워크 내 노드들 사이의 연결의 강도는, 예를 들면, 그 연결이 트레이닝 동안에 얼마나 활성이었는가의 결과로서 변할 수 있다. 상대적으로 더 강한 링크들의 컬렉션을 따르는 행동의 패턴 발생은 상대적으로 더 약한 링크들의 컬렉션을 따른 활동의 동일한 패턴 발생과는 상이하게 가중치가 부여될 수 있다. 예를 들면, 몇몇 구현들에서, 활성인 링크들의 가중치의 합은 상기 발생에 가중치를 부여하기 위해 사용될 수 있다.As another example of how numeric counts of occurrences of the patterns may be weighted or combined to determine the degree or complexity of the ordering, in some implementations, based on the weights of active links, pattern occurrences are Weights may be assigned. In further detail, as previously described, the strength of a connection between nodes in an artificial neural network may change as a result of, for example, how active the connection was during training. The occurrence of a pattern of behavior along a collection of relatively stronger links may be weighted differently than occurrence of the same pattern of activity along a collection of relatively weaker links. For example, in some implementations, the sum of the weights of active links may be used to weight the occurrence.

몇몇 구현들에서, 복잡성의 상기 오일러 특성이나 다른 측정은, 주어진 네트워크가 주어진 자신의 구조를 형성하는 것을 가능하게 하는 패턴들의 전체 개수 및/또는 특별한 윈도우 내에서 부합되는 패턴들의 전체 개수에 의해 정규화될 수 있다. 네트워크가 형성하는 것을 가능하게 하는 패턴들의 전체 개수에 관련한 정규화는 아래 수학식 2 및 수학식 3에서 주어진다.In some implementations, the Euler property or other measure of complexity may be normalized by the total number of patterns that enable a given network to form its own structure given and/or the total number of matching patterns within a particular window. can The normalization with respect to the total number of patterns that the network enables to form is given in Equations 2 and 3 below.

몇몇 구현들에서, 더 많은 개수의 노드들을 수반하는 더 높은 차원 패턴들의 발생들은 더 작은 개수의 노드들을 수반하는 더 낮은 차원 패턴들의 발생들보다 더 무겁게 가중치가 부여될 수 있다. 예를 들면, 방향성 소집단들을 형성하는 가능성은 차원이 증가하면 급격하게 감소한다. 특히, n+1 개 노드들로부터 n-소집단을 형성하기 위해, 모두가 올바르게 비롯하는 (n+1)n/2 개 에지들이 필요하다. 이 확률은 가중치 부여에 있어서 반영될 수 있다.In some implementations, occurrences of higher dimensional patterns involving a greater number of nodes may be weighted more heavily than occurrences of lower dimensional patterns involving a smaller number of nodes. For example, the likelihood of forming directional subgroups decreases sharply as the dimension increases. In particular, to form an n-subpopulation from n+1 nodes, we need (n+1)n/2 edges that all come from correctly. This probability can be reflected in weighting.

몇몇 구현들에서, 패턴들의 차원 및 방향성 둘 모두는 패턴들의 발생들에 가중치를 부여하고 활동의 복잡성을 결정하기 위해 사용될 수 있다. 예를 들면, 도 6을 참조하면, 5 포인트, 4-차원 패턴 (515)의 발생들은 5 포인트, 4-차원 패턴들 (605, 610)의 발생들보다, 그 패턴들의 방향성에서의 차이들에 따라서, 더 무겁게 가중치가 부여될 수 있다In some implementations, both dimension and directionality of patterns can be used to weight occurrences of patterns and determine complexity of an activity. For example, referring to FIG. 6 , the occurrences of the 5-point, 4-dimensional pattern 515 are more dependent on differences in the directionality of the 5-point, 4-dimensional patterns 605 , 610 than the occurrences of the 5-point, 4-dimensional patterns 605 , 610 . Thus, it can be weighted more heavily.

행동의 복잡성이나 순서 정하기의 정도를 결정하기 위해 패턴들의 차원 및 방향성 둘 모두를 사용하는 예는 다음처럼 주어질 수 있다. An example of using both the dimension and directionality of patterns to determine the degree of complexity or sequencing of an action can be given as

[수학식 2][Equation 2]

Figure 112020134935348-pct00002
Figure 112020134935348-pct00002

여기에서 Sx active 은 n 포인트들의 패턴의 활성적 발생들의 횟수를 표시하며 ERN은 등가의 랜덤 네트워크, 즉, 랜덤하게 연결된 동일한 개수의 노드들을 가진 네트워크를 위한 계산이다. 또한, SC는 다음과 같이 주어진다.where S x active denotes the number of active occurrences of the pattern of n points and ERN is a calculation for an equivalent random network, that is, a network with the same number of randomly connected nodes. Also, SC is given as

[수학식 3][Equation 3]

Figure 112020134935348-pct00003
Figure 112020134935348-pct00003

여기에서 Sx silent 은, 상기 순환 인공 신경 네트워크가 조용하며 상기 네트워크가 형성하는 것이 가능한 패턴들이 전체 개수를 구현하는 것으로서 생각될 수 있을 때에 n 포인트들의 패턴의 발생들의 횟수를 표시한다. 수학식 2 및 수학학 3에서, 상기 패턴들은, 예를 들면, 지향성 소집단 패턴들 (500) (도 5)일 수 있다.where S x silent denotes the number of occurrences of the pattern of n points when the recurrent artificial neural network is silent and the patterns it is capable of forming can be thought of as embodying the total number. In Equations 2 and 3, the patterns may be, for example, directional subpopulation patterns 500 ( FIG. 5 ).

도 9는 구별 가능한 복잡성을 가진 활동 패턴들의 타이밍을 결정하는 것의 개략적인 도시이다. 도 9에 도시된 결정은 다른 활동들과 분리하여 또는 함께 수행될 수 있다. 예를 들면, 상기 결정은 프로세스 400 (도 4)의 425에서 수행될 수 있다.9 is a schematic illustration of determining the timing of activity patterns of distinguishable complexity. The determination shown in FIG. 9 may be performed separately or together with other activities. For example, the determination may be performed at 425 of process 400 ( FIG. 4 ).

도 9는 참조번호 905의 그래프 및 참조번호 910의 그래프를 포함한다. 참조번호 905의 그래프는 패턴들의 발생을 x-축을 따른 시간의 함수로서 도시한다. 특히, 개별 발생들은 수직 라인들 906, 907, 908, 909으로 개략적으로 도시된다. 발생들의 각 로우는 활동이 각자의 패턴이나 패턴의 클래스와 부합하는 사례들일 수 있다. 예를 들면, 제일 위 로우의 발생들은 행동이 참조번호 505 (도 5)의 패턴들에 부합하는 사례들일 수 있으며, 제2 로우의 발생들은 행동이 참조번호 510 (도 5)의 패턴들에 부합하는 사례들일 수 있으며, 제3 로우의 발생들은 행동이 참조번호 515 (도 5)의 패턴들에 부합하는 사례들일 수 있으며, 이하 마찬가지이다.9 includes a graph 905 and a graph 910 . The graph at 905 shows the occurrence of the patterns as a function of time along the x-axis. In particular, the individual occurrences are schematically illustrated by vertical lines 906, 907, 908, 909. Each row of occurrences may be instances in which an activity matches a respective pattern or class of patterns. For example, occurrences of the top row may be instances in which the behavior matches patterns 505 ( FIG. 5 ), and occurrences in the second row may include instances where the behavior matches patterns 510 ( FIG. 5 ). and occurrences of the third row may be instances in which the action conforms to the patterns of reference numeral 515 ( FIG. 5 ), and so on.

참조번호 905의 그래프는, 활동 패턴들이 구별 가능한 복잡성을 가질 때에 상이한 시간 윈도우를 개략적으로 표시하는 단속선 직사각형들 915, 920, 925를 또한 포함한다. 보이는 것처럼, 순환 인공 신경 네트워크 내 활동이 복잡성을 표시하는 패턴에 부합할 가능성은, 단속선 직사각형들 915, 920, 925에 의해 표시된 윈도우들 외부보다 그 윈도우들 동안에 더 높다. The graph at 905 also includes dashed-line rectangles 915 , 920 , 925 that schematically indicate different time windows when the activity patterns have distinguishable complexity. As can be seen, the likelihood that activity within a recurrent artificial neural network will conform to a pattern indicative of complexity is higher during those windows than outside the windows indicated by dashed-line rectangles 915 , 920 , 925 .

참조번호 910의 그래프는 이 발생들과 연관된 복잡성을 x-축을 따른 시간의 함수로서 도시한다. 참조번호 910의 그래프는 단속선 직사각형 (915)에 의해 표현된 윈도우와 일치하는 복잡성인 제1 피크 (930) 및 단속선 직사각형들 (920, 925)에 의해 표현된 윈도우와 일치하는 복잡성인 제2 피크 (935)를 포함한다. 보이는 것처럼, 피크들 (930, 925)에 의해 도시된 복잡성은, 복잡성의 베이스라인 레벨 (940)인 것으로 간주될 수 있는 것과는 구별 가능하다. The graph at 910 shows the complexity associated with these occurrences as a function of time along the x-axis. The graph at reference numeral 910 shows a first peak 930 of complexity consistent with the window represented by dashed rectangle 915 and a second peak 930 of complexity consistent with the window represented by dashed rectangles 920 and 925 . peak 935 . As can be seen, the complexity shown by peaks 930 , 925 is distinguishable from what may be considered to be a baseline level of complexity 940 .

몇몇 구현들에서, 순환 인공 신경 네트워크의 출력이 판독되려고 하는 시점은 구별 가능한 복잡성을 가진 활동 패턴들의 발생들과 일치한다. 예를 들면, 도 9의 예시적인 환경에서, 순환 인공 신경 네트워크의 출력은 피크들 (930, 925)에서, 즉, 단속선 직사각형들 915, 920, 925에 의해 표현된 윈도우 동안에 판독될 수 있다.In some implementations, the point in time at which the output of the recurrent artificial neural network is about to be read coincides with occurrences of activity patterns of distinguishable complexity. For example, in the exemplary environment of FIG. 9 , the output of the recurrent artificial neural network may be read at peaks 930 , 925 , ie, during the window represented by dashed-line rectangles 915 , 920 , 925 .

순환 인공 신경 네트워크 내 복잡성의 구별 가능한 레벨들의 신원확인은 입력이 데이터의 스트림일 때에 특히 유익하다. 데이터 스트림들의 예들은, 예를 들면, 비디오 또는 오디오 데이터를 포함한다. 비록 데이터 스트림들이 시작하는 부분을 구비하지만, 상기 데이터 스트림의 시작 부분과 미리-정의된 관계를 가지지 않은 데이터 스트림 내 정보를 프로세싱하는 것이 일반적으로 바람직하다. 예로서, 신경 네트워크는, 예를 들면, 자동차 부근에 있는 자전거 타는 사람들을 인식하는 것처럼 물체 인식을 수행할 수 있을 것이다. 그런 신경 네트워크들은 자전거 타는 사람들이 그 비디오 스트림 내에 나타나는 때에 관계없이, 즉, 그 비디오의 시작 부분 이후의 시간을 고려하지 않으면서도, 그 자전거 타는 사람들을 인식할 수 있어야 한다. 이 예와 함께 계속하면, 데이터 스트림이 물체 인식 신경 네트워크로 입력될 때에, 상기 신경 네트워크 내 활동의 임의 패턴들은 낮은 또는 무활동 레벨의 복잡성을 일반적으로 디스플레이할 것이다. 이 낮은 또는 무활동 레벨의 복잡성은 상기 신경 네트워크 디바이스로의 데이터 스트림의 연속적인 (또는 거의 연속적인) 입력에 무관하게 디스플레이된다. 그러나, 관심 대상 물체가 비디오 스트림에 나타날 때에, 상기 활동의 복잡성은 구별 가능하게 될 것이며 그리고 상기 비디오 스트림 내에서 물체가 인식되는 시점을 표시할 것이다. 그래서, 상기 활동의 구별 가능한 레벨의 복잡성의 타이밍은 상기 데이터 스트림 내 데이터가 특정 기준을 충족시키는가의 여부에 관한 예/아니오 출력으로서 또한 행동할 수 있다. Identification of distinguishable levels of complexity in a recurrent artificial neural network is particularly beneficial when the input is a stream of data. Examples of data streams include, for example, video or audio data. Although data streams have a beginning portion, it is generally desirable to process information in a data stream that does not have a pre-defined relationship with the beginning of the data stream. As an example, the neural network may perform object recognition, eg, recognizing cyclists in the vicinity of a car. Such neural networks should be able to recognize cyclists regardless of when they appear within the video stream, ie without taking into account the time since the beginning of the video. Continuing with this example, when a data stream is input into an object recognition neural network, any patterns of activity within the neural network will typically display a low or inactive level of complexity. This low or inactive level of complexity is displayed irrespective of the continuous (or near continuous) input of the data stream to the neural network device. However, when an object of interest appears in the video stream, the complexity of the activity will become distinguishable and will indicate when an object is recognized within the video stream. Thus, the timing of the distinguishable level of complexity of the activity may also act as a yes/no output as to whether or not the data in the data stream meets a particular criterion.

몇몇 구현들에서, 상기 순환 인공 신경 네트워크의 출력의 타이밍은 물론이며 그 신경 네트워크의 콘텐트도 구별 가능한 복잡성을 가지는 활동 패턴들에 의해 주어진다. 특히, 상기 활동 패턴들에 적합한 활동에 참여한 노드들의 신원 및 활동은 상기 순환 인공 신경 네트워크의 출력으로 간주될 수 있다. 상기 식별된 활동 패턴들은 그래서 상기 신경 네트워크에 의한 프로세싱의 결과 그리고 이 결정이 판독되려는 때의 타이밍을 예시한다.In some implementations, the timing of the output of the recurrent artificial neural network as well as the content of the neural network is given by activity patterns of distinguishable complexity. In particular, the identity and activity of nodes participating in an activity suitable for the activity patterns may be regarded as an output of the recurrent artificial neural network. The identified activity patterns thus exemplify the outcome of processing by the neural network and the timing when this determination is about to be read.

그 결정의 콘텐트는 다양한 상이한 모습들로 표현될 수 있다. 예를 들면, 몇몇 구현들에서 그리고 아래에서의 추가 상세 내용에서 설명된 것처럼, 상기 결정의 콘텐트는 이진 벡터나 1들과 0들의 행렬로서 표현될 수 있다. 각 자릿수 (digit)는, 예를 들면, 노드들의 미리 정의된 그룹 및/또는 미리 정의된 지속 시간에 대해 활동의 패턴이 존재하는가 또는 존재하지 않는가의 여부를 표시할 수 있다. 그런 구현들에서, 상기 결정의 콘텐트는 이진수로 표현되며 그리고 전통적인 디지털 데이터 프로세싱 하부구조와 호환될 수 있다.The content of the crystal can be represented in a variety of different aspects. For example, in some implementations and as described in further detail below, the content of the crystal may be represented as a binary vector or matrix of ones and zeros. Each digit may indicate, for example, whether a pattern of activity exists or does not exist for a predefined group of nodes and/or a predefined duration. In such implementations, the content of the crystal is represented as a binary number and is compatible with traditional digital data processing infrastructure.

도 10은 순환 인공 신경 네트워크 내 활동의 특성화에 기반하여 그 네트워크를 이용하여 신호들을 인코딩하기 위한 프로세스 (1000)의 흐름도이다. 신호들은, 예를 들면, 전송, 암호화, 및 데이터 저장과 같은 다양한 상이한 환경들에서 인코딩될 수 있다. 기계-판독가능 명령어들의 하나 이상의 세트들의 로직에 따라 동작들을 수행하는 하나 이상의 데이터 프로세싱 장치들의 시스템에 의해 프로세스 (1000)가 수행될 수 있다. 예를 들면, 프로세스 (1000)에서 사용된 상기 순환 인공 신경 네트워크를 구현하기 위한 소프트웨어를 실행하는 하나 이상의 컴퓨터들의 동일한 시스템에 의해 프로세스 (1000)가 수행될 수 있다. 몇몇 사례들에서, 프로세스 (1000)는 참조번호 400의 프로세스를 수행하는 동일한 데이터 프로세싱 장치에 의해 수행될 수 있다. 몇몇 사례들에서, 프로세스 (1000)는, 예를 들면, 신호 전송 시스템 내 인코더나 데이터 저장 시스템의 인코더에 의해 수행될 수 있다. FIG. 10 is a flow diagram of a process 1000 for encoding signals using a recurrent artificial neural network based on characterization of activity within the network. Signals may be encoded in a variety of different environments, such as, for example, in transmission, encryption, and data storage. Process 1000 may be performed by a system of one or more data processing apparatuses that perform operations according to logic of one or more sets of machine-readable instructions. For example, process 1000 may be performed by the same system of one or more computers running software for implementing the recurrent artificial neural network used in process 1000 . In some instances, process 1000 may be performed by the same data processing apparatus performing the process 400 . In some instances, process 1000 may be performed, for example, by an encoder in a signal transmission system or an encoder in a data storage system.

프로세스 (1000)를 수행하는 시스템은 1005에서 신호를 순환 인공 신경 네트워크로 입력한다. 몇몇 경우에, 상기 신호 입력은 별개의 주입 이벤트이다. 다른 경우에, 상기 입력 신호는 상기 순환 인공 신경 네트워크로 스트리밍된다.The system performing process 1000 inputs a signal into the recurrent artificial neural network at 1005 . In some cases, the signal input is a separate injection event. In other cases, the input signal is streamed to the recurrent artificial neural network.

프로세스 (1000)를 수행하는 시스템은 1010에서 상기 순환 인공 신경 네트워크 내 하나 이상의 결정 순간들을 식별한다. 예를 들면, 상기 시스템은 프로세스 (400) (도 4)를 수행하는 것에 의해 하나 이상의 결정 순간들을 식별할 수 있다.The system performing process 1000 identifies one or more decision moments in the recurrent artificial neural network at 1010 . For example, the system may identify one or more decision moments by performing process 400 ( FIG. 4 ).

프로세스 (1000)를 수행하는 상기 시스템은 1015에서 상기 순환 인공 신경 네트워크의 출력을 판독한다. 위에서 설명된 것처럼, 상기 순환 인공 신경 네트워크의 출력의 콘텐트는 상기 결정 포인트(들)를 식별하기 위해 사용되는 패턴들에 부합하는 신경 네트워크 내 활동이다. The system performing process 1000 reads the output of the recurrent artificial neural network at 1015 . As described above, the content of the output of the recurrent artificial neural network is activity in the neural network that conforms to the patterns used to identify the decision point(s).

몇몇 구현들에서, 1015에서, 노드들의 특별한 컬렉션에서 활동의 특별한 패턴의 발생들을 식별하기 위해서 그래서 상기 순환 인공 신경 네트워크의 출력을 판독하기 위해서 개별 "리더기 노드 (reader node)들"이 신경 네트워크에 부가될 수 있다. 상기 리더기 노드들은, 노드들의 특별한 컬렉션에서의 활동이 타이밍 (및 아마도 크기) 기준을 충족시킨다면 그리고 충족시켜야만 파이어 (fire)할 수 있다. 예를 들면, 노드들 104, 105, 106 (도 2, 도 3)에서 패턴 (500) (도 5)의 발생을 판독하기 위해서, 리더기 노드는 노드들 104, 105, 106 (또는 그 노드들 사이의 링크들 (110))에 연결될 수 있을 것이다. 상기 리더기 노드는, 노드들 104, 105, 106 (또는 그것들의 링크들)을 수반한 활동 패턴이 발생한다면 그 자체만이 활성이 될 것이다.In some implementations, at 1015 individual “reader nodes” are added to the neural network to identify occurrences of a particular pattern of activity in a particular collection of nodes and thus to read the output of the recurrent artificial neural network. can be The reader nodes can fire if and only if activity in a particular collection of nodes meets a timing (and possibly size) criterion. For example, to read the occurrence of pattern 500 ( FIG. 5 ) at nodes 104 , 105 , 106 ( FIGS. 2 , 3 ), the reader node may use nodes 104 , 105 , 106 (or between them). may be connected to links 110 of The reader node will only become active on its own if an activity pattern involving nodes 104, 105, 106 (or links thereof) occurs.

그런 리더기 노드들 사용은 상기 순환 인공 신경 네트워크에 대한 시간의 윈도우들을 전체적으로 한정하기 위한 필요성을 제거할 것이다. 특히, 개별 리더기 노드들은 상이한 노드들 및/또는 개수의 노드들 (또는 그것들 사이의 링크들)에 연결될 수 있다. 상기 개별 리더기 노드들은 상이한 활동 패턴들을 식별하기 위해 재단된 응답들 (예를 들면, 인터그레이트-파이어 (integrate-and-fire) 모델 내 상이한 붕괴 시간들)로 세팅될 수 있다. Using such reader nodes would eliminate the need to globally define windows of time for the recurrent artificial neural network. In particular, individual reader nodes may be connected to different nodes and/or numbers of nodes (or links between them). The individual reader nodes may be set with tailored responses (eg, different decay times in an integrate-and-fire model) to identify different activity patterns.

프로세스 (1000) 수행 시스템은 1020에서 상기 순환 인공 신경 네트워크의 출력을 전송하거나 저장한다. 1020에서 수행된 상기 특별한 행동은 참조번호 1000의 프로세스가 사용되고 있는 환경을 반영할 수 있다. 예를 들면, 안전한 또는 압축된 통신들이 소망되는 환경들에서, 프로세스 (1000)를 수행하는 상기 시스템은 상기 순환 신경 네트워크의 출력을, 동일한 또는 유사한 순환 신경 네트워크에 대한 액세스를 구비한 수신기로 전송할 수 있다. 다른 예로서, 안전한 또는 압축된 데이터 저장이 소망되는 환경들에서, 프로세스 (1000)를 수행하는 상기 시스템은 상기 순환 신경 네트워크의 출력을 나중의 액세스들을 위해 하나 이상의 기계-판독가능 데이터 저장 디바이스들 내에 기록할 수 있다.The system performing process 1000 transmits or stores the output of the recurrent artificial neural network at 1020 . The special action performed at 1020 may reflect an environment in which the process of reference numeral 1000 is being used. For example, in environments where secure or compressed communications are desired, the system performing process 1000 may send the output of the recurrent neural network to a receiver with access to the same or similar recurrent neural network. have. As another example, in environments where secure or compressed data storage is desired, the system performing process 1000 may output the output of the recurrent neural network into one or more machine-readable data storage devices for later accesses. can be recorded

몇몇 구현들에서, 상기 순환 신경 네트워크의 완전한 출력은 전송되거나 저장되지 않는다. 예를 들면, 상기 순환 신경 네트워크의 출력의 콘텐트가 활동 내 복잡성을 표시하는 패턴들에 부합하는 상기 신경 네트워크 내 상기 활동인 구현들에서, 상대적으로 더 복잡하거나 더 높은 차원 활동에 부합하는 활동만이 전송되거나 저장될 수 있다. 예로서, 참조번호 500 (도 5)의 패턴들을 참조하여, 몇몇 구현들에서 참조번호 515, 520, 525, 및 530의 패턴들에 부합하는 활동만이 전송되거나 저장되며, 반면에 참조번호 505, 510의 패턴들에 부합하는 활동은 무시되거나 폐기된다. 이 방식에서, 손실이 있는 프로세스는 전송되거나 저장된 데이터의 볼륨이, 인코딩되고 있는 정보의 완전함의 비용에서 감소되는 것을 가능하게 한다. In some implementations, the complete output of the recurrent neural network is not transmitted or stored. For example, in implementations where the content of the output of the recurrent neural network is the activity in the neural network that matches patterns indicative of complexity within the activity, only an activity corresponding to a relatively more complex or higher-dimensional activity may be transmitted or stored. As an example, with reference to the patterns of reference number 500 ( FIG. 5 ), in some implementations only activities matching the patterns of reference numbers 515 , 520 , 525 , and 530 are transmitted or stored, while reference number 505 , Activities matching the patterns of 510 are ignored or discarded. In this way, the lossy process enables the volume of data transmitted or stored to be reduced at the cost of the completeness of the information being encoded.

도 11은 순환 인공 신경 네트워크 내 활동의 특성화에 기반하여 그 네트워크를 이용하여 신호들을 디코딩하기 위한 프로세스 (1100)의 흐름도이다. 신호들은, 예를 들면, 신호 수신, 해독, 및 저장부로부터의 데이터 독출과 같은 다양한 상이한 환경들에서 디코딩될 수 있다. 기계-판독가능 명령어들의 하나 이상의 세트들의 로직에 따라 동작들을 수행하는 하나 이상의 데이터 프로세싱 장치의 시스템에 의해 프로세스 (1100)가 수행될 수 있다. 예를 들면, 프로세스 (1100)에서 사용된 순환 인공 신경 네트워크를 구현하기 위한 소프트웨어를 실행하는 하나 이상의 컴퓨터들의 동일 시스템에 의해 프로세스 (1100)가 수행될 수 있다. 몇몇 사례들에서, 프로세스 (1100)는 참조번호 400의 프로세스 및/또는 참조번호 1000의 프로세스를 수행하는 동일한 데이터 프로세싱 장치에 의해 수행될 수 있다. 몇몇 사례들에서, 프로세스 (1100)는, 예를 들면, 신호 수신 시스템 내 디코더나 데이터 저장 시스템의 디코더에 의해 수행될 수 있다. 11 is a flow diagram of a process 1100 for decoding signals using a recurrent artificial neural network based on a characterization of the activity therein. Signals may be decoded in a variety of different environments, such as, for example, receiving a signal, decoding, and reading data from storage. Process 1100 may be performed by a system of one or more data processing apparatuses that perform operations according to logic of one or more sets of machine-readable instructions. For example, process 1100 may be performed by the same system of one or more computers running software for implementing the recurrent artificial neural network used in process 1100 . In some instances, process 1100 may be performed by the same data processing apparatus performing the process 400 and/or the process 1000 . In some instances, process 1100 may be performed, for example, by a decoder in a signal receiving system or a decoder in a data storage system.

프로세스 (1100)를 수행하는 시스템은 1105에서 순환 인공 신경 네트워크의 출력의 적어도 일부를 수신한다. 1105에서 수행될 특별한 행동은 프로세스 (1100)가 사용되고 있는 환경을 반영할 수 있다. 예를 들면, 프로세스 (1100)를 수행하는 상기 시스템은 상기 순환 인공 신경 네트워크의 출력을 포함하는 전송된 신호를 수신할 수 있으며 또는 상기 순환 인공 신경 네트워크의 출력을 저장하는 기계-판독 데이터 저장 디바이스를 읽을 수 있다. The system performing process 1100 receives at least a portion of an output of the recurrent artificial neural network at 1105 . The particular action to be performed at 1105 may reflect the environment in which process 1100 is being used. For example, the system performing process 1100 may receive a transmitted signal comprising an output of the recurrent artificial neural network or may include a machine-readable data storage device that stores the output of the recurrent artificial neural network. can read

프로세스 (1100)를 수행하는 상기 시스템은 1110에서 수신된 출력으로부터 상기 순환 인공 신경 네트워크의 입력을 재구축한다. 재구축은 다양한 상이한 방식들로 진행할 수 있다. 예를 들면, 몇몇 구현들에서, 제2 인공 신경 네트워크 (순환 또는 순환 아님)은 1105에서 수신된 출력으로부터 상기 순환 신경 네트워크로의 입력을 재구축하도록 트레이닝될 수 있다. The system performing process 1100 reconstructs the input of the recurrent artificial neural network from the output received at 1110 . The rebuild may proceed in a variety of different ways. For example, in some implementations, a second artificial neural network (circular or non-cyclic) may be trained to reconstruct an input to the recurrent neural network from the output received at 1105 .

다른 예로서, 몇몇 구현들에서, 기계 학습 (딥 러닝 (deep learning)을 포함하지만 그것으로 한정되지 않음)을 이용하여 트레이닝된 디코더는 1105에서 수신된 출력으로부터 상기 순환 신경 네트워크로의 입력을 재구축하기 위해 트레이닝될 수 있다. As another example, in some implementations, a decoder trained using machine learning (including but not limited to deep learning) reconstructs an input to the recurrent neural network from an output received at 1105 . can be trained to

또 다른 예로서, 몇몇 구현들에서, 동일한 순환 인공 신경 네트워크로의 또는 유사한 순환 인공 신경 네트워크로의 입력은 그 순환 인공 신경 네트워크의 출력이 1105에서 수신된 출력에 어느 정도까지 부합할 때까지 반복하여 변경될 수 있다.As another example, in some implementations, input to the same recurrent artificial neural network or to a similar recurrent artificial neural network may be repeated until the output of the recurrent artificial neural network matches the output received at 1105 to some extent. can be changed.

몇몇 구현들에서, 프로세스 (1100)는 사용자 입력을 수신하는 단계를 포함할 수 있으며, 그 사용자 입력은 상기 입력이 재구축되고, 응답으로 1110에서 그에 따라서 재구축을 조절하는 정도를 규정한다. 예를 들면, 상기 사용자 입력은 완전한 재구축이 필요하지 않다고 규정할 수 있을 것이다. 응답으로, 프로세스 (1100)를 수행하는 상기 시스템은 상기 재구축을 조절한다. 예를 들면, 상기 순환 신경 네트워크의 출력의 콘텐트가 활동 내 복잡성을 표시하는 패턴들에 부합하는 신경 네트워크 내 상기 활동인 구현들에서, 상대적으로 더 복잡하거나 더 높은 차원 활동에 부합하는 활동을 특성화하는 출력만이 상기 입력을 재구축하기 위해 사용될 것이다. 예로서, 참조번호 500의 패턴들 (도 5)을 참조하면, 몇몇 구현들에서 참조번호 515, 520, 525, 및 530의 패턴들에 부합하는 활동만이 상기 입력을 재구축하기 위해 사용될 수 있을 것이며, 반면에 참조번호 506, 510의 패턴들에 부합하는 활동은 무시되거나 폐기될 수 있을 것이다. 이 방식에서, 손실이 있는 재구축은 선택된 환경들에서 진행될 수 있다.In some implementations, process 1100 may include receiving a user input, the user input defining the degree to which the input is reconstructed and, in response, adjusted at 1110 to reconstruct accordingly. For example, the user input may specify that a complete rebuild is not required. In response, the system performing process 1100 coordinates the rebuild. For example, in implementations where the content of the output of the recurrent neural network is the activity in a neural network that conforms to patterns indicative of complexity within the activity, characterizing an activity corresponding to a relatively more complex or higher-dimensional activity Only the output will be used to reconstruct the input. As an example, referring to the patterns at 500 ( FIG. 5 ), in some implementations only activities matching the patterns 515 , 520 , 525 , and 530 may be used to reconstruct the input. , whereas an activity matching the patterns 506 and 510 may be ignored or discarded. In this way, a costly rebuild can proceed in selected circumstances.

몇몇 구현들에서, 참조번호 1000, 1100의 프로세스들은 피어-투-피어 암호화 통신들을 위해 사용될 수 있다. 특히, 송신기 (즉, 상기 인코더) 및 수신기 (즉, 상기 디코더) 둘 모두에는 동일한 순환 인공 신경 네트워크가 제공될 수 있다. 서드 파티가 역설계할 수 없으며 신호를 해독할 수 없다는 것을 보장하기 위해 상기 공유된 순환 인공 신경 네트워크가 재단될 수 있는 여러 방식들이 존재하며, 다음의 것들을 포함한다:In some implementations, processes 1000 and 1100 may be used for peer-to-peer encrypted communications. In particular, both the transmitter (ie the encoder) and the receiver (ie the decoder) may be provided with the same recursive artificial neural network. There are several ways in which the shared recurrent artificial neural network can be tailored to ensure that third parties cannot reverse engineer and decipher the signal, including:

- 상기 순환 인공 신경 네트워크의 구조,- the structure of the circulatory artificial neural network,

- 상기 순환 인공 신경 네트워크의 기능적인 세팅들로, 노드 상태들 및 에지 가중치들을 포함한다- functional settings of the recurrent artificial neural network, including node states and edge weights

- 상기 패턴들의 크기 (또는 차원), 그리고- the size (or dimension) of the patterns, and

- 각 차원 내 패턴들의 단편.- Fragments of patterns within each dimension.

이 파라미터들은 전송 보안을 함께 보장하는 다수의 레이어들의 것으로 생각될 수 있다. 또한, 몇몇 구현들에서, 상기 결정 순간 시간 포인트들은 상기 신호를 해독하기 위한 키 (key)들로서 사용될 수 있다. These parameters can be thought of as of multiple layers which together ensure transmission security. Also, in some implementations, the decision instantaneous time points may be used as keys to decrypt the signal.

비록 참조번호 1000, 1100의 프로세스들이 단일의 순환 인공 신경 네트워크를 인코딩하고 디코딩하는 면에서 제시되었지만, 참조번호 1000, 1100의 프로세스들은 다수의 순환 인공 신경 네트워크들에 의존하는 시스템들 및 프로세스들에서 또한 적용될 수 있다. 이 순환 인공 신경 네트워크는 병렬이나 직렬의 어느 하나로 작동할 수 있다.Although the processes 1000 and 1100 are presented in terms of encoding and decoding a single recurrent artificial neural network, the processes 1000 and 1100 are also shown in systems and processes that rely on multiple recurrent artificial neural networks. can be applied. This recurrent artificial neural network can operate either in parallel or in series.

직렬 작동의 예로서, 제1 순환 인공 신경 네트워크의 출력은 제2 순환 인공 신경 네트워크의 입력으로서 사용될 수 있다. 상기 제2 순환 인공 신경 네트워크의 결과인 출력은 상기 제1 순환 인공 신경 네트워크로의 입력의 두 차례 인코딩된 (또는 두 차례 암호화된) 버전이다. 순환 인공 신경 네트워크의 그런 직렬 배열은, 상이한 파티들이 정보에 대한 상이한 레벨들의 액세스를 가지는 환경들에서, 예를 들면, 환자 신원 정보가, 의료 기록의 나머지를 사용하고 있을 것이며 그 나머지에 대한 액세스를 구비한 파티에게 액세스 가능하지 않을 수 있는 의료 기록 시스템들에서 유용할 수 있다As an example of serial operation, an output of a first recurrent artificial neural network may be used as an input of a second recurrent artificial neural network. The resulting output of the second recurrent artificial neural network is a twice encoded (or twice encrypted) version of the input to the first recurrent artificial neural network. Such a cascading arrangement of a recurrent artificial neural network is such that, in environments where different parties have different levels of access to information, for example, patient identity information may be using the remainder of the medical record and provide access to the remainder. May be useful in medical records systems that may not be accessible to the party with

병렬 작동의 예로서, 동일한 정보가 다수의 상이한 순환 인공 신경 네트워크들에게로 입력될 수 있다. 그 신경 네트워크들의 상이한 출력들은, 예를 들면, 상기 입력이 높은 충실도를 구비하여 재구축될 수 있다는 것을 보장하기 위해 사용될 수 있다. As an example of parallel operation, the same information may be input to multiple different recurrent artificial neural networks. The different outputs of the neural networks can be used, for example, to ensure that the input can be reconstructed with high fidelity.

비록 많은 구현들이 설명되었지만, 다양한 수정들이 만들어질 수 있다. 예를 들면, 비록 상기 응용이 순환 인공 신경 네트워크 내의 활동이 순서 정함을 표시하는 패턴에 부합해야 한다는 것을 일반적으로 의미하지만, 이것은 반드시 그런 것은 아니다. 오히려, 몇몇 구현들에서, 순환 인공 신경 네트워크 내에서의 활동은 패턴에 적합하면서도, 그 패턴에 부합하는 활동을 반드시 디스플레이하지는 않을 수 있다. 예를 들면, 패턴에 부합하는 활동을 순환 신경 네트워크가 디스플레이할 가능성에서의 증가는 그 활동의 비-랜덤 순서 정함으로 취급될 수 있다. Although many implementations have been described, various modifications may be made. For example, although it is generally implied that the application must conform to a pattern indicating that activity within a recurrent artificial neural network is ordered, this is not necessarily the case. Rather, in some implementations, activity within a recurrent artificial neural network may conform to a pattern, but not necessarily display activity conforming to the pattern. For example, an increase in the likelihood that a recurrent neural network will display an activity matching a pattern may be treated as a non-random ordering of the activity.

또 다른 예로서, 몇몇 구현들에서, 상이한 그룹의 패턴들은 상이한 순환 인공 신경 네트워크들에서 상기 활동을 특성화함에서의 사용을 위해 재단될 수 있다. 상기 패턴들은, 예를 들면, 상이한 순환 인공 신경 네트워크들의 활동을 특성화함에 있어서 상기 패턴들의 유효함에 따라 재단될 수 있다. 유효함은, 예를 들면, 상이한 패턴들의 발생 카운트들을 나타내는 테이블이나 벡터의 크기에 기반하여 계량화될 수 있다. As another example, in some implementations, different groups of patterns may be tailored for use in characterizing the activity in different recurrent artificial neural networks. The patterns can be tailored, for example, according to their effectiveness in characterizing the activity of different recurrent artificial neural networks. Validity may be quantified, for example, based on the magnitude of a table or vector representing counts of occurrences of different patterns.

또 다른 예로서, 몇몇 구현들에서, 순환 인공 신경 네트워크들 내 활동을 특성화하기 위해 사용될 패턴들은 노드들 사이의 연결의 강도 (strength)를 고려할 수 있다. 다른 말로 하면, 본원에서 이전에 설명된 패턴들은 두 개 노드들 사이의 모든 신호 전송 활동을 이진수 방식으로, 즉, 상기 활동이 존재하거나 존재하지 않는 것 중 어느 하나로 표현한다. 이는 항상 그런 것은 아니다. 오히려, 몇몇 구현들에서, 패턴에 적합하다는 것은, 어떤 레벨이나 강도의 연결의 활동이 순환 인공 신경 네트워크의 활동 내 순서 정해진 복잡성을 표시하는 것으로 취해질 것을 필요로 할 수 있다. As another example, in some implementations, patterns to be used to characterize activity in recurrent artificial neural networks may take into account the strength of a connection between nodes. In other words, the patterns previously described herein represent all signaling activity between two nodes in a binary fashion, i.e. either with or without the activity. This is not always the case. Rather, in some implementations, conforming to a pattern may require that the activity of a connection of some level or strength be taken as indicating an ordered complexity within the activity of a recurrent artificial neural network.

또 다른 예로서, 상기 순환 인공 신경 네트워크의 출력의 콘텐트는, 신경 네트워크 내 활동이 구별 가능한 레벨의 복잡성을 가지는 시간 윈도우들 외부에서 발생하는 활동 패턴들을 포함할 수 있다. 예를 들면, 1015에서 읽혀지며 1020 (도 10)에서 전송되거나 저장되는 순환 인공 신경 네트워크의 출력은, 예를 들면, 참조번호 905의 그래프 (도 9) 내 단속선 직사각형들 (915, 920, 925) 외부에서 발생하는 활동 패턴들을 인코딩하는 정보를 포함할 수 있다. 예로서, 상기 순환 인공 신경 네트워크의 출력은 활동의 가장 높은 차수 패턴들만을, 그 활동의 패턴들이 언제 발생하는가와는 무관하게, 특성화할 수 있을 것이다.As another example, the content of the output of the recurrent artificial neural network may include activity patterns occurring outside time windows where activity in the neural network has a distinguishable level of complexity. For example, the output of the recurrent artificial neural network read at 1015 and transmitted or stored at 1020 ( FIG. 10 ) is, for example, the dashed-line rectangles 915 , 920 , 925 in the graph 905 ( FIG. 9 ). ) may include information encoding activity patterns occurring externally. As an example, the output of the recurrent artificial neural network may characterize only the highest order patterns of activity, regardless of when the patterns of activity occur.

도 12, 도 13 및 도 14는, 예를 들면, 신경 네트워크 내 활동의 패턴들과 같은 위상적인 구조들의 이진수 모습이나 표현 (1200)의 걔략적인 예시들이다. 도 12, 도 13 및 도 14에 도시된 위상적인 구조들은 모두 동일한 정보, 즉, 그래프 내 특징들의 존재 또는 부재의 표시를 포함한다. 그 특징들은, 예를 들면, 신경 네트워크 디바이스 내 활동일 수 있다. 몇몇 구현들에서, 상기 활동은, 입력에 응답하는 다른 활동과 구별 가능한 복잡성을 상기 신경 네트워크 내 활동이 가지는 시간 구간에 기반하여 식별되거나 그 시간 구간 동안에 식별된다. 12, 13 and 14 are schematic illustrations of a binary representation or representation 1200 of topological structures, such as, for example, patterns of activity in a neural network. The topological structures shown in FIGS. 12 , 13 and 14 all contain the same information, ie an indication of the presence or absence of features in the graph. The characteristics may be, for example, activity in a neural network device. In some implementations, the activity is identified based on or during a time interval in which the activity in the neural network has a complexity distinguishable from other activity responsive to input.

보이는 것처럼, 참조번호 1200의 이진수 표현은 참조번호 1205, 1207, 1211, 1293, 1294, 1297의 비트들 및 (생략 부호 "..."로 표현된) 추가의 임의 개수의 비트들을 포함한다. 교훈적인 목적들을 위해, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 비트들은, 그 비트 내 이진수 값을 표시하기 위해 채워지거나 채워지지 않은 것중 어느 하나인 개별 직사각형 모습들로 도시된다. 상기 개략적인 도시들에서, 참조번호 1200의 표현은 표면상으로는 비트들의 1차원 벡터 (도 12, 13)나 비트들의 2차원 행렬 (도 14) 중의 어느 하나인 것으로 보인다. 그러나, 참조번호 1200의 표현은 벡터와, 행렬과, 또는 비트들의 다른 순서 정해진 컬렉션과는, 동일한 정보가 비트들의 순서에 무관하게, 즉, 상기 컬렉션 내 개별 비트들의 위치와는 무관하게 인코딩될 수 있다는 점에서 상이하다.As can be seen, the binary representation of reference numeral 1200 includes the bits 1205, 1207, 1211, 1293, 1294, 1297 and an additional arbitrary number of bits (represented by the ellipsis "..."). For didactic purposes, the bits 1205, 1207, 1211, 1293, 1294, 1297 ... are shown as individual rectangular shapes, either filled or unfilled to indicate the binary value within those bits. do. In the above schematic drawings, the representation of reference numeral 1200 appears ostensibly to be either a one-dimensional vector of bits ( FIGS. 12 and 13 ) or a two-dimensional matrix of bits ( FIG. 14 ). However, the representation of reference numeral 1200 can be encoded as a vector, a matrix, or other ordered collection of bits, in which the same information is encoded independently of the order of the bits, ie regardless of the position of the individual bits within the collection. It is different in that there is

예를 들면, 몇몇 구현들에서, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 각 개별 비트는 위상적 특징의 존재 또는 부재를 그 그래프 내 상기 특징의 위치에 무관하게 표현할 수 있다. 예로서, 도 2를 참조하면, 참조번호 1207의 비트와 같은 비트는 참조번호 505 (도 5)의 패턴에 적합한 위상적 특징의 존재를, 참조번호 104, 105, 106의 노드들 사이에 또는 참조번호 105, 101, 102의 노드들 사이에 활동이 발생하는가의 여부에 무관하게 표시할 수 있다. 그래서, 비록 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 각 개별 비트가 특별한 특징과 연관될 수 있다고 하더라도, 상기 그래프 내 그 특징의 위치는, 예를 들면, 참조번호 1200의 표현 내 비트의 대응 위치에 의해 인코딩될 필요는 없다. 다른 말로 하면, 몇몇 구현들에서, 참조번호 1200의 표현은 상기 그래프의 동형의 위상적 재구축 (isomorphic topological reconstruction)을 제공할 뿐이다.For example, in some implementations, each individual bit of reference numerals 1205, 1207, 1211, 1293, 1294, 1297 ... may represent the presence or absence of a topological feature independent of its location in the graph. have. By way of example, referring to FIG. 2 , a bit such as the bit 1207 indicates the existence of a topological feature suitable for the pattern of 505 ( FIG. 5 ), between or between the nodes 104 , 105 , 106 . It can be indicated whether or not activity occurs between the nodes numbered 105, 101, and 102. So, although each individual bit of 1205, 1207, 1211, 1293, 1294, 1297 ... may be associated with a particular feature, the location of that feature in the graph is, for example, 1200's. It need not be encoded by the corresponding position of the bit in the representation. In other words, in some implementations, the representation of reference numeral 1200 merely provides an isomorphic topological reconstruction of the graph.

여담으로, 다른 구현들에서, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 개별 비트들의 위치는 실제로, 예를 들면, 상기 그래프 내 특징의 위치와 같은 정보를 인코딩한다는 것이 가능하다. 이 구현들에서, 소스 그래프는 참조번호 1200의 표현을 이용하여 재구축될 수 있다. 그러나, 그런 인코딩이 반드시 제시되는 것은 아니다.As an aside, in other implementations, it is possible that the position of the individual bits of reference numbers 1205, 1207, 1211, 1293, 1294, 1297 ... actually encodes information such as, for example, the position of a feature in the graph. do. In these implementations, the source graph may be reconstructed using the representation at 1200 . However, such an encoding is not necessarily presented.

위상적 특징의 존재 또는 부재를 그래프 내 그 특징의 위치에 무관하게 표현하는 비트의 능력을 고려하면, 도 1에서 참조번호 1205의 비트는 참조번호 1207의 비트 이전에 나타나며, 참조번호 1207의 비트는 참조번호 1200의 표현의 시작 부분에서 참조번호 1211의 비트 이전에 나타난다. 대조적으로, 도 2 및 도 3에서, 참조번호 1200의 표현 내 참조번호 1205, 1207, 및 1211의 비트들의 순서 - 그리고 참조번호 1200의 표현 내 다른 비트들에 대한 참조번호 1205, 1207, 및 1211의 비트들의 위치는 변하였다. 그럼에도 불구하고, 이진수 표현 (1200) 내 정보를 인코딩하기 위한 프로세스를 정의하는 알고리즘이나 규칙들의 세트에서 그런 것처럼, 이진수 표현 (1200)은 동일하게 남아 있는다. 상기 비트 및 상기 특징 사이의 대응 관계가 알려진 한은, 상기 표현 (1200) 내 비트들의 위치는 관련성이 없다.Considering the ability of a bit to express the presence or absence of a topological feature irrespective of the location of that feature in the graph, in FIG. 1, the bit 1205 appears before the bit 1207, and the bit 1207 is It appears before the bit of reference number 1211 at the beginning of the representation of reference number 1200. In contrast, in FIGS. 2 and 3 , the order of bits 1205, 1207, and 1211 in the representation of reference numeral 1200 - and the sequence of bits 1205, 1207, and 1211 in relation to other bits in the representation of reference numeral 1200 The positions of the bits have changed. Nevertheless, the binary representation 1200 remains the same, as is the case with the set of algorithms or rules that define the process for encoding the information in the binary representation 1200 . As long as the correspondence between the bit and the feature is known, the position of the bits in the representation 1200 is irrelevant.

추가의 상세 내용에서, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 각 비트는 그래프 내 특징의 존재 또는 부재를 개별적으로 나타낸다. 그래프는 노드들의 세트 및 그 노드들 사이의 에지들의 세트이다. 상기 노드들은 물체들에 대응할 수 있다. 물체들의 예들은, 예를 들면, 신경 네트워크 내 인공 뉴론들, 소셜 네트워크 내 개인들 등을 포함할 수 있다. 에지들은 물체들 사이의 몇몇 관계에 대응할 수 있다. 관계들의 예는, 예를 들면, 구조적인 연결 또는 그 연결을 따른 활동을 포함한다. 신경 네트워크의 환경에서, 인공 뉴론들은 뉴론들 사이의 구조적인 연결에 의해 또는 구조적인 연결을 따른 정보 전송에 의해 관련될 수 있다. 소셜 네트워크의 환경에서, 개인들은 "친구"나 다른 관계있는 연결에 의해 관련될 수 있으며 또는 그와 같은 연결을 따른 정보 전송 (예를 들면, 포스팅)에 의해 관련될 수 있다. 에지들은 그래서 노드들의 세트의 상대적으로 수명이 긴 구조적 특성들 또는 한정된 시간 프레임 내에서 발생하는 상대적으로 일시적인 활동 특성들이라는 특징을 가질 수 있다. 또한, 에지들은 지향성 또는 양방향성 중 어느 하나일 수 있다. 지향성 에지 (directed edge)들은 상기 물체들 사이의 관계의 방향성을 표시한다. 예를 들면, 제1 뉴론으로부터 제2 뉴론으로의 정보 전송은 전송의 방향을 표시하는 방향성 에지에 의해 표현될 수 있다. 다른 예로서, 소셜 네트워크에서, 관계형 연결 (relational connection)은 두 번째 사용자가 첫 번째 사용자로부터 정보를 수신할 것이지만 그 첫 번째 사용자는 두 번째 사용자로부터 정보를 수신하지 않을 것이라는 것을 표시할 수 있다. 위상적인 면에서, 그래프는 단위 인터벌들 [0, 1]의 세트로서 표현될 수 있으며, 여기에서 0 및 1은 에지에 의해 연결된 각자의 노드들로 식별된다.In further details, each bit of reference numerals 1205, 1207, 1211, 1293, 1294, 1297 ... individually represents the presence or absence of a feature in the graph. A graph is a set of nodes and a set of edges between those nodes. The nodes may correspond to objects. Examples of objects may include, for example, artificial neurons in a neural network, individuals in a social network, and the like. Edges may correspond to some relationship between objects. Examples of relationships include, for example, structural connections or activities along those connections. In the context of a neural network, artificial neurons may be related by structural connections between neurons or by transmission of information along structural connections. In the context of a social network, individuals may be related by "friends" or other relevant connections, or by transmission of information (eg, postings) along such connections. Edges may thus be characterized as relatively long-lived structural properties of a set of nodes or relatively transient activity properties occurring within a finite time frame. Also, the edges may be either directional or bidirectional. Directed edges indicate the directionality of the relationship between the objects. For example, information transmission from a first neuron to a second neuron may be represented by a directional edge indicating the direction of transmission. As another example, in a social network, a relational connection may indicate that a second user will receive information from the first user but the first user will not receive information from the second user. In topological terms, the graph can be represented as a set of unit intervals [0, 1], where 0 and 1 are identified as respective nodes connected by edges.

존재 또는 부재가 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들에 의해 표시되는 상기 특징들은, 예를 들면, 노드, 노드들의 세트, 노드들의 세트들의 세트, 에지들의 세트, 에지들의 세트들의 세트, 및/또는 추가의 계층적으로-더-복잡한 특징들 (예를 들면, 노드들의 세트들의 세트들의 세트)일 수 있다. 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들은 일반적으로 상이한 계층적인 레벨들에 있는 존재 또는 부재를 일반적으로 표현한다. 예를 들면 참조번호 1205의 비트는 노드의 존재 또는 부재를 표현할 수 있으며, 반면에서 참조번호 1205의 비트는 노드들의 세트의 존재 또는 부재를 표현할 수 있다.Said characteristics, in which the presence or absence is indicated by the bits 1205, 1207, 1211, 1293, 1294, 1297, are, for example, a node, a set of nodes, a set of sets of nodes, a set of edges, a set of edges. a set of sets, and/or additional hierarchically-more-complex features (eg, a set of sets of sets of nodes). The bits 1205, 1207, 1211, 1293, 1294, 1297 generally represent the presence or absence at different hierarchical levels. For example, the bit 1205 may represent the presence or absence of a node, while the bit 1205 may represent the presence or absence of a set of nodes.

몇몇 구현들에서, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들은 몇몇 특성의 임계 레벨을 가진 그래프 내 특징들을 표현할 수 있다. 예를 들면, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들은 에지들의 세트 내 활동이 존재한다는 것만이 아니라 이 행동이 임계 레벨 위 또는 아래 중 어느 하나로 가중치 부여된다는 것을 나타낼 수 있다. 그 가중치들은, 예를 들면, 신경 네트워크 디바이스의 트레이닝을 특별한 목적으로 구체화할 수 있으며 또는 상기 에지들의 원래의 특성일 수 있다. In some implementations, the bits 1205 , 1207 , 1211 , 1293 , 1294 , 1297 may represent features in a graph having a threshold level of some characteristic. For example, the bits 1205 , 1207 , 1211 , 1293 , 1294 , 1297 may indicate not only that there is activity in the set of edges, but that this behavior is weighted either above or below a threshold level. The weights may specify for a special purpose, for example, training of a neural network device, or may be an intrinsic characteristic of the edges.

위의 도 5, 도 6 및 도 8은 존재 또는 부재가 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 비트들에 의해 표현될 수 있는 특징들을 도시한다.5, 6 and 8 above show features in which presence or absence can be represented by the bits 1205, 1207, 1211, 1293, 1294, 1297...

참조번호 500, 600, 700의 컬렉션들 내 지향성 심플렉스들은 기능적인 또는 구조적인 그래프들을 노드들을 포인트들로서 구비한 위상적 공간으로서 취급한다. 참조번호 500, 600, 700의 컬렉션들 내 심플렉스들에 적합한 하나 이상의 노드들 및 링크들을 포함하는 구조 또는 활동은, 그 활동에 참여한 특별한 노드들 및/또는 링크들의 신원에 무관하게 어떤 비트 내에 표현될 수 있다.The directional simplexes in the collections 500, 600 and 700 treat functional or structural graphs as a topological space with nodes as points. A structure or activity comprising one or more nodes and links suitable for simplexes in the collections of reference numerals 500, 600 and 700 is represented in some bit, regardless of the identity of the particular nodes and/or links participating in that activity. can be

몇몇 구현들에서, 구조 또는 활동의 단지 일부 패턴들만이 식별되며 그리고/또는 식별된 구조 또는 활동의 패턴들의 일부는 폐기되거나 그렇지 않다면 무시된다. 예를 들어, 도 5를 참조하면, 5 포인트, 4-차원 심플렉스 패턴 (515)에 적합한 구조나 활동은 4 포인트, 3-차원 및 3 포인트, 2-차원 심플렉스 패턴들 (510, 505)에 적합한 구조나 활동을 원래 포함한다. 예를 들면, 도 5의 4-차원 심플렉스 패턴들 (515) 내 포인트들 0, 2, 3, 4 및 포인트들 1, 2, 3, 4 두 가지 모두는 3-차원 심플렉스 패턴 (510)에 적합하다. 몇몇 구현들에서, 더 작은 개수의 포인트들을 포함하는 - 그리고 그래서 더 낮은 차원인 - 심플렉스 패턴들은 폐기되거나 그렇지 않다면 무시될 수 있다. In some implementations, only some patterns of structure or activity are identified and/or some of the identified patterns of structure or activity are discarded or otherwise ignored. For example, referring to FIG. 5 , a structure or activity suitable for a five-point, four-dimensional simplex pattern 515 is a four-point, three-dimensional and three-point, two-dimensional simplex pattern 510 , 505 . It originally contains a structure or activity suitable for For example, points 0, 2, 3, 4 and points 1, 2, 3, 4 in the four-dimensional simplex patterns 515 of FIG. 5 are both three-dimensional simplex pattern 510 . suitable for In some implementations, simplex patterns containing a smaller number of points - and thus of lower dimensionality - may be discarded or otherwise ignored.

다른 예로서, 구조 또는 활동의 일부 패턴들만이 식별될 필요가 있다. 예를 들면, 몇몇 구현들에서 홀수 포인트들 (3, 5, 7, ...)이나 짝수 차원들 (2, 4, 6, ...)을 구비한 패턴들만이 사용된다.As another example, only some patterns of structure or activity need to be identified. For example, in some implementations only patterns with odd points (3, 5, 7, ...) or even dimensions (2, 4, 6, ...) are used.

도 12, 도 13, 도 14로 돌아가서, 존재 또는 부재가 참조번호 1205, 1207, 1211, 1293, 1294, 1297 ... 의 비트들에 의해 표현되는 특징들은 서로 독립적이지 않을 수 있다. 설명으로, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들이, 각자가 단일 노드의 존재 또는 활동을 반영하는 0차원-심플렉스들의 존재 또는 부재를 표현하면, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들은 서로 독립적이다. 그러나, 참조번호 1205, 1207, 1211, 1293, 1294, 1297 의 비트들이, 각자가 다수의 노드들의 존재나 활동을 반영하는 더 높은 차원의 심플렉스들의 존재나 부재를 표현하면, 각 개별 특징의 존재 또는 부재에 의해 인코딩된 정보는 다른 특징들의 존재 또는 부재에 독립적이지 아닐 수 있다. 12 , 13 , 14 , the features whose presence or absence is represented by the bits 1205 , 1207 , 1211 , 1293 , 1294 , 1297 ... may not be independent of each other. As an explanation, if the bits of reference numerals 1205, 1207, 1211, 1293, 1294, 1297 each represent the presence or absence of zero-dimensional-simplexes reflecting the presence or activity of a single node, reference numerals 1205, 1207, Bits 1211, 1293, 1294, and 1297 are independent of each other. However, if the bits of reference numerals 1205, 1207, 1211, 1293, 1294, and 1297 each represent the presence or absence of higher-dimensional simplexes reflecting the presence or activity of multiple nodes, the presence of each individual feature Or the information encoded by the absence may not be independent of the presence or absence of other features.

도 15는 상이한 비트들에 대응하는 특징들의 존재 또는 부재가 어떻게 서로 독립적이지 않은가의 예를 개략적으로 도시한다. 특히, 네 개의 노드들 1505, 1510, 1515, 1520 및 여섯 개의 지향성 에지들 1525, 1530, 1535, 1540, 1545, 1550을 포함하는 서브그래프 (1500)가 예시된다. 특히, 참조번호 1525의 에지는 참조번호 1525의 노드로부터 참조번호 1510의 노드로 향하며, 15 schematically shows an example of how the presence or absence of features corresponding to different bits is not independent of each other. In particular, a subgraph 1500 comprising four nodes 1505 , 1510 , 1515 , 1520 and six directional edges 1525 , 1530 , 1535 , 1540 , 1545 , 1550 is illustrated. In particular, the edge of reference number 1525 is directed from the node of reference number 1525 to the node of reference number 1510,

참조번호 1530의 에지는 참조번호 1515의 노드로부터 참조번호 1505의 노드로 향하며, 참조번호 1535의 에지는 참조번호 1520의 노드로부터 참조번호 1505의 노드로 향하며, 참조번호 1540의 에지는 참조번호 1520의 노드로부터 참조번호 1510의 노드로 향하며, 참조번호 1545의 에지는 참조번호 1515의 노드로부터 참조번호 1510의 노드로 향하며, 참조번호 1550의 에지는 참조번호 1515의 노드로부터 참조번호 1520의 노드로 향한다.The edge of reference number 1530 points from the node of reference number 1515 to the node of reference number 1505, the edge of reference number 1535 is directed from the node of reference number 1520 to the node of reference number 1505, and the edge of reference number 1540 is the node of reference number 1520 From the node to the node 1510, the edge 1545 points from the node 1515 to the node 1510, and the edge 1550 points from the node 1515 to the node 1520.

표현 (1200) 내 단일 비트 (예를 들면, 도 12, 13, 14 내 채워진 비트 (1207))는 지향성 3차원-심플렉스의 존재를 표시할 수 있다. 예를 들면, 그런 비트는 노드들 1505, 1510, 1515, 1520 및 에지들 1525, 1530, 1535, 1540, 1545, 1550 에 의해 형성된 3차원-심플렉스의 존재를 표시할 수 있을 것이다. 표현 (1200) 내 제2 비트 (예를 들면, 도 12, 13, 14 내 채워진 비트 (1293))는 지향성 2차원-심플렉스의 존재를 표시할 수 있다. 예를 들면, 그런 비트는 노드들 1515, 1505, 1510 및 에지들 1525, 1530, 1545 에 의해 형성된 2차원-심플렉스의 존재를 표시할 수 있을 것이다. 이 간단한 예에서, 참조번호 1293의 비트에 의해 인코딩된 정보는 참조번호 1207의 비트에 의해 인코딩된 정보와 완전하게 중복된다.A single bit in representation 1200 (eg, filled bit 1207 in FIGS. 12 , 13 , 14 ) may indicate the presence of a directional three-dimensional-simplex. For example, such a bit may indicate the presence of a three-dimensional-simplex formed by nodes 1505, 1510, 1515, 1520 and edges 1525, 1530, 1535, 1540, 1545, 1550. A second bit in representation 1200 (eg, filled bit 1293 in FIGS. 12 , 13 , 14 ) may indicate the presence of a directional two-dimensional-simplex. For example, such a bit may indicate the presence of a two-dimensional-simplex formed by nodes 1515, 1505, 1510 and edges 1525, 1530, 1545. In this simple example, the information encoded by the bits 1293 completely overlaps the information encoded by the bits 1207 .

참조번호 1293의 비트에 의해 인코딩된 정보는 다른 추가 비트에 의해 인코딩된 정보와 또한 중복될 수 있다는 것에 유의한다. 예를 들면, 참조번호 1293의 비트에 의해 인코딩된 정보는 추가의 지향성 2차원-심플렉스들의 존재를 표시하는 제3 비트 및 제4 비트와 중복일 것이다. 이 심플렉스들의 예들은 참조번호 1515, 1520, 1510의 노드들 및 참조번호 1540, 1545, 1550의 에지들 그리고 참조번호 1520, 1505, 1510의 노드들 및 참조번호 1525, 1535, 1540의 에지들에 의해 형성된다.Note that information encoded by the bits of reference numeral 1293 may also overlap with information encoded by other additional bits. For example, the information encoded by the bit 1293 would overlap the third bit and the fourth bit indicating the presence of additional directional two-dimensional-simplexes. Examples of these simplexes are at the nodes 1515, 1520, 1510 and the edges 1540, 1545, 1550 and the nodes 1520, 1505, 1510 and the edges 1525, 1535, 1540. is formed by

도 16은 상이한 비트들에 대응하는 특징들의 존재 또는 부재가 어떻게 서로 독립적이지 않은가의 다른 예를 개략적으로 도시한다. 특히, 네 개의 노드들 1605, 1610, 1615, 1620 및 다섯 개의 지향성 에지들 1625, 1630, 1635, 1640, 1645을 포함하는 서브그래프 (1600)가 도시된다. 노드들 1605, 1610, 1615, 1620 및 에지들 1625, 1630, 1635, 1640, 1645은 (도 15)의 서브그래프 내 노드들 1505, 1510, 1515, 1520 및 에지들 1525, 1530, 1535, 1540, 1545에 대체적으로 대응한다. 그러나, 노드들 1515, 1520 이 에지 1550에 의해 연결된 서브그래프 (1500)와 대비하면 노드들 1615, 1620은 에지에 의해 연결되지 않는다.16 schematically shows another example of how the presence or absence of features corresponding to different bits are not independent of each other. In particular, a subgraph 1600 is shown comprising four nodes 1605 , 1610 , 1615 , 1620 and five directional edges 1625 , 1630 , 1635 , 1640 , 1645 . Nodes 1605, 1610, 1615, 1620 and edges 1625, 1630, 1635, 1640, 1645 represent nodes 1505, 1510, 1515, 1520 and edges 1525, 1530, 1535, 1540, 1545 is generally equivalent. However, in contrast to the subgraph 1500 in which the nodes 1515 and 1520 are connected by the edge 1550, the nodes 1615 and 1620 are not connected by the edge.

참조번호 1200의 표현 내 단일 비트 (예를 들면, 도 12, 13, 14 내 참조번호 1205의 채워지지 않은 비트)는, 예를 들면, 노드들 1605, 1610, 1615, 1620을 둘러싼 지향성 3D-심플렉스와 같은 지향성 3D-심플렉스의 부재를 표시할 수 있다. 참조번호 1200의 표현 내 제2 비트 (예를 들면, 도 12, 13, 14 내 참조번호 1293의 채워진 비트)는 2D-심플렉스의 존재를 표시할 수 있다. 예시의 지향성 2D-심플렉스는 참조번호 1615, 1605, 1610의 노드들 및 참조번호 1625, 1630, 1645의 에지들에 의해 형성된다. 채워진 비트 (1293) 및 채워지지 않은 비트 (1205)의 이 조합은 참조번호 1200의 표현 내에 존재하거나 존재하지 않을 수 있는 다른 특징들 (및 다른 비트들의 상태)의 존재 또는 부재를 표시하는 정보를 제공한다. 특히, 지향성 3D-심플렉스의 부재 및 지향성 2D-심플렉스의 존재의 조합은 적어도 하나의 에지가 부재라는 것을 다음의 것들 중 어느 하나로부터 표시한다:A single bit in the representation of reference number 1200 (eg the unfilled bit of reference number 1205 in FIGS. 12, 13, 14 ) is, for example, a directional 3D-simple surrounding nodes 1605 , 1610 , 1615 , 1620 . It can indicate the absence of a directional 3D-simplex like Rex. The second bit in the representation of reference number 1200 (eg, the filled bit of reference number 1293 in FIGS. 12, 13, 14 ) may indicate the presence of a 2D-simplex. The example directional 2D-simplex is formed by the nodes 1615, 1605, 1610 and the edges 1625, 1630, 1645. This combination of filled bits 1293 and unfilled bits 1205 provides information indicating the presence or absence of other features (and states of other bits) that may or may not be present within the representation of reference numeral 1200 . do. In particular, the combination of the absence of a directional 3D-simplex and the presence of a directional 2D-simplex indicates from any of the following that at least one edge is absent:

a) 노드들 1615, 1620, 1610에 의해 형성된 가능한 지향성 2D-심플렉스 또는a) a possible directional 2D-simplex formed by nodes 1615, 1620, 1610 or

b) 노드들 1620, 1605, 1610에 의해 형성된 가능한 지향성 2D-심플렉스.b) A possible directional 2D-simplex formed by nodes 1620, 1605, 1610.

그래서, 이 가능한 심플렉스들 중 어느 하나의 존재 또는 부재를 표현하는 비트의 상태는 참조번호 1205, 1293의 비트들의 상태에 독립적이지 않다. Thus, the state of the bit representing the presence or absence of any one of these possible simplexes is not independent of the state of the bits 1205 and 1293 .

비록 이 예들이 상이한 개수의 노드들 및 계층적 관계를 가진 특징들의 면에서 설명되었지만, 이것은 반드시 그런 것은 아니다. 예를 들면, 3D-심플렉스의 존재 또는 부재에만 대응하는 비트들의 컬렉션을 포함하는 표현 (1200)이 가능하다.Although these examples have been described in terms of different numbers of nodes and features with hierarchical relationships, this is not necessarily the case. For example, a representation 1200 comprising a collection of bits corresponding only to the presence or absence of a 3D-simplex is possible.

그래프 내 특징들의 존재 또는 부재를 표현하기 위해 개별 비트들을 사용하는 것은 특정 성질들을 생기게 한다. 예를 들면, 정보를 인코딩하는 것은 고장 허용 (fault tolerant)이며 그리고 상기 인코딩된 정보의 "우아한 성능저하 (graceful degradation)"를 제공한다. 특히, 특별한 비트 (또는 비트들의 그룹) 손실은 특징의 존재 또는 부재에 관한 불확실성을 증가시킬 수 있다. 그러나, 특징이 존재하거나 부재할 가능성을 제거하는 것은 인접한 특징들의 존재 또는 부재를 표시하는 다른 비트들로부터 여전히 가능할 것이다. The use of individual bits to represent the presence or absence of features in a graph results in certain properties. For example, encoding information is fault tolerant and provides a “graceful degradation” of the encoded information. In particular, loss of a particular bit (or group of bits) can increase uncertainty regarding the presence or absence of a feature. However, eliminating the possibility that a feature is present or absent would still be possible from other bits indicating the presence or absence of an adjacent feature.

유사하게, 비트들의 개수가 증가하면, 특징의 존재 또는 부재에 관한 확실성도 증가한다.Similarly, as the number of bits increases, the certainty about the presence or absence of a feature also increases.

다른 예로서, 위에서 설명된 것처럼, 비트들의 순서 정함 또는 배열은 그 비트에 의해 표현된 그래프의 동형 재구축 (isomorphic reconstruction)과 무관하다. 필요한 모든 것은 상기 비트들 및 상기 그래프 내 특별한 노드들/구조들 사이의 알려진 대응관계이다.As another example, as described above, the ordering or arrangement of the bits is independent of the isomorphic reconstruction of the graph represented by the bits. All that is needed is a known correspondence between the bits and particular nodes/structures in the graph.

몇몇 구현들에서, 신경 네트워크 내 활동의 패턴들은 참조번호 1200 (도 12, 13 및 14)의 표현 내에서 인코딩될 수 있다. 일반적으로, 신경 네트워크 내 활동의 패턴들은, 예를 들면, 상기 신경 네트워크의 노드들 사이의 구조적 연결들, 노드들 사이의 가중치들 그리고 가능한 다른 파라미터들의 전체 호스트와 같은 그 신경 네트워크의 여러 특성들의 결과이다. 예를 들면, 몇몇 구현들에서, 상기 신경 네트워크는 참조번호 1200의 표현 내 활동의 패턴들을 인코딩하기 이전에 트레이닝될 수 있을 것이다. In some implementations, patterns of activity within a neural network may be encoded within the representation of reference numeral 1200 ( FIGS. 12 , 13 and 14 ). In general, patterns of activity in a neural network are the result of several properties of the neural network, such as, for example, the structural connections between the nodes of the neural network, weights between nodes and a whole host of possible other parameters. to be. For example, in some implementations, the neural network may be trained prior to encoding the patterns of activity in the representation 1200 .

그러나, 상기 신경 네트워크가 트레이닝되지 않거나 트레이닝된 것에 관계없이, 주어진 결과에 대해, 활동의 응답 패턴은 그 신경 네트워크 내의 그 입력의 "표현 (representation)" 또는 "추상화 (abstraction)"로 생각될 수 있다. 그래서, 비록 참조번호 1200의 표현이 (몇몇 경우에는 이진) 자릿수들의 직선적으로-보이는 컬렉션인 것으로 보일 수 있지만, 그 자릿수들 각각은 상기 신경 네트워크 내 특별한 입력 및 관련 활동 사이의 관계나 대응관계를 인코딩할 수 있다.However, regardless of whether the neural network is trained or untrained, for a given outcome, the response pattern of an activity can be thought of as a "representation" or "abstraction" of its input within that neural network. . Thus, although the representation of reference number 1200 can be seen as a linearly-visible collection of (in some cases binary) digits, each of those digits encodes a relationship or correspondence between a particular input and an associated activity within the neural network. can do.

도 17, 도 18, 도 19, 도 20은 네 개의 상이한 분류 시스템들 1700, 1800, 1900, 2000 에서 신경 네트워크 내 활동에서의 위상적인 구조들의 발생의 표현을 사용하는 개략적인 도시들이다. 참조번호 1700, 1800의 분류 시스템들 각각은 신경 네트워크 내 활동의 패턴들의 표현들을 입력 분류의 일부로서 분류한다. 참조번호 1900, 2000의 분류 시스템들 각각은 신경 네트워크 내 활동의 패턴들의 표현들을 근사화한 것 (approximation)들을 입력 분류의 일부로서 분류한다. 참조번호 1700, 1800의 뷴류 시스템들에서, 표현될 활동의 패턴들은, 그 분류 시스템 (1700, 1800)의 일부인 소스 신경 네트워크 디바이스 (1705)에서 발생하며 그 디바이스로부터 읽혀진다. 대조적으로, 참조번호 1900, 2000의 분류 시스템들에서, 근사하게 표현된 활동의 패턴들은 상기 분류 시스템 (1700, 1800)의 일부가 아닌 소스 신경 네트워크 디바이스에서 발생한다. 그럼에도 불구하고, 활동의 그런 패턴들의 표현의 근사는 참조번호 1900, 2000의 분류 시스템들의 일부인 근사기 (1905)로부터 읽혀진다.17 , 18 , 19 , 20 are schematic diagrams using representations of the occurrence of topological structures in activity in a neural network in four different classification systems 1700 , 1800 , 1900 , 2000 . Each of the classification systems 1700 and 1800 classifies representations of patterns of activity in a neural network as part of an input classification. Each of the classification systems 1900 and 2000 classifies approximations of representations of patterns of activity in the neural network as part of the input classification. In common systems 1700, 1800, the patterns of activity to be represented originate from and are read from a source neural network device 1705 that is part of the classification system 1700, 1800. In contrast, in the classification systems 1900, 2000, the closely represented patterns of activity occur in a source neural network device that is not part of the classification system 1700, 1800. Nevertheless, an approximation of the representation of such patterns of activity is read from an approximator 1905 which is part of the classification systems of reference 1900, 2000.

추가의 상세 내용에서, 도 17로 돌아가면, 분류 시스템 (1700)은 소스 신경 네트워크 (1705) 및 선형 분류기 (1710)을 포함한다. 소스 신경 네트워크 (1705)는 입력을 수신하고 소스 신경 네트워크 (1705) 내에서의 활동 내 위상적인 구조들의 발생의 표현들을 제시하도록 구성된 신경 네트워크 디바이스이다. 도시된 구현에서, 소스 신경 네트워크 (1705)는 입력을 수신하는 입력 레이어 (1715)를 포함한다. 그러나, 이는 반드시 그런 것은 아니다. 예를 들면, 몇몇 구현에서, 입력의 일부 또는 모두는 소스 신경 네트워크 (1705) 전체에 걸친 상이한 레이어들 및/또는 에지들이나 노드들로 주입될 수 있다.In further detail, returning to FIG. 17 , the classification system 1700 includes a source neural network 1705 and a linear classifier 1710 . The source neural network 1705 is a neural network device configured to receive an input and present representations of occurrences of topological structures in activity within the source neural network 1705 . In the illustrated implementation, the source neural network 1705 includes an input layer 1715 that receives the input. However, this is not necessarily the case. For example, in some implementations, some or all of the input may be injected into different layers and/or edges or nodes throughout the source neural network 1705 .

소스 신경 네트워크 (1705)는 다양한 상이한 유형의 신경 네트워크 중 어느 하나일 수 있다. 일반적으로 소스 신경 네트워크 (1705)는, 예를 들면, 생물학적 시스템 상에서 모델링된 순환 신경 네트워크와 같은 순환 신경 네트워크이다. 몇몇 경우에, 소스 신경 네트워크 (1705)는 생물학적 시스템의 형태학적, 화학적, 및 다른 특성들의 정도를 모델링할 수 있다. 일반적으로, 소스 신경 네트워크 (1705)는 상대적으로 높은 레벨의 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들, 예를 들면, 수퍼컴퓨터 상에서 구현된다. 그런 경우에, 분류 시스템 (1700)은 보통은, 원격 분류기 (1710)이, 예를 들면, 데이터 통신 네트워크를 경유하여 소스 신경 네트워크 (1705)와 통신하는 분산 시스템일 것이다. The source neural network 1705 can be any of a variety of different types of neural networks. In general, the source neural network 1705 is a cyclic neural network, such as, for example, a cyclic neural network modeled on a biological system. In some cases, the source neural network 1705 can model a degree of morphological, chemical, and other properties of a biological system. In general, the source neural network 1705 is implemented on one or more computing devices with a relatively high level of computational power, eg, a supercomputer. In such a case, the classification system 1700 will typically be a distributed system in which the remote classifier 1710 communicates with the source neural network 1705 via, for example, a data communication network.

몇몇 구현들에서, 소스 신경 네트워크 (1705)는 트레이닝되지 않을 수 있으며 그리고 표현된 활동은 소스 신경 네트워크 (1705)의 내재적인 활동일 수 있다. 다른 구현들에서, 소스 신경 네트워크 (1705)는 트레이닝될 수 있으며 그리고 표현된 활동은 이 트레이닝을 구현할 수 있다.In some implementations, the source neural network 1705 may not be trained and the expressed activity may be an intrinsic activity of the source neural network 1705 . In other implementations, the source neural network 1705 may be trained and the represented activity may implement this training.

소스 신경 네트워크 (1705)로부터 읽혀진 표현들은 참조번호 1200의 표현 (도 12, 13, 14)과 같은 표현들일 수 있다. 상기 표현들은 소스 신경 네트워크 (1705)로부터 많은 방식들로 읽혀질 수 있다. 예를 들면, 상기 도시된 예에서, 소스 신경 네트워크 (1705)는 "리더기 노드들"을 포함하며, 그 리더기 노드는 소스 신경 네트워크 (1705) 내 다른 노드들 사이의 활동의 패턴들을 읽는다. 다른 구현들에서, 소스 신경 네트워크 (1705) 내 활동은, 활동의 상대적으로 높은-차수 패턴들에 대해 소스 신경 네트워크 (1705)를 모니터하도록 프로그램된 데이터 프로세싱 컴포넌트에 의해 읽혀진다. 또 다른 구현들에서, 소스 신경 네트워크 (1705)는 출력 레이어를 포함할 수 있으며, 예를 들면, 소스 신경 네트워크 (1705)이 피드-포워드 신경 네트워크로서 구현될 때에 상기 출력 레이어로부터 표현 (1200)이 읽혀질 수 있다.The representations read from the source neural network 1705 may be representations such as the representation 1200 ( FIGS. 12 , 13 , 14 ). The representations can be read from the source neural network 1705 in many ways. For example, in the example shown above, the source neural network 1705 includes “reader nodes” that read patterns of activity among other nodes in the source neural network 1705 . In other implementations, activity in the source neural network 1705 is read by a data processing component programmed to monitor the source neural network 1705 for relatively high-order patterns of activity. In yet other implementations, the source neural network 1705 can include an output layer, eg, when the source neural network 1705 is implemented as a feed-forward neural network, the representation 1200 from the output layer is can be read

선형 분류기 (1710)는 물체를 - 즉, 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 - 그 물체의 특성들의 선형 조합에 기반하여 분류하는 디바이스이다. 선형 분류기 (1710)는 입력단 (1720) 및 출력단 (1725)을 포함한다. 입력단 (1720)은 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 수신하기 위해 결합된다. 다른 말로 하면, 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들은, 소스 신경 네트워크 (1705)로의 입력의 특성들을 표현하는 특징 벡터이며, 상기 소스 신경 네트워크 (1705)는 그 입력을 분류하기 위해 선형 분류기 (1710)에 의해 사용된 소스 신경 네트워크이다. 선형 분류기 (1710)는 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 다양한 방식들로 수신할 수 있다. 예를 들면, 활동의 패턴들의 상기 표현들은 별개의 이벤트들로서 또는 실시간이나 비-실시간 통신 채널을 통한 연속 스트림으로서 수신될 수 있다. The linear classifier 1710 is a device that classifies an object - ie, representations of patterns of activity in the source neural network 1705 - based on a linear combination of properties of the object. The linear classifier 1710 includes an input 1720 and an output 1725 . An input 1720 is coupled to receive representations of patterns of activity in the source neural network 1705 . In other words, representations of patterns of activity in source neural network 1705 are feature vectors representing characteristics of an input to source neural network 1705 , which source neural network 1705 is linear to classify that input. The source neural network used by the classifier 1710 . The linear classifier 1710 can receive representations of patterns of activity within the source neural network 1705 in various ways. For example, the representations of patterns of activity may be received as separate events or as a continuous stream over a real-time or non-real-time communication channel.

출력단 (1725)은 선형 분류기 (1710)로부터의 분류 결과를 출력하기 위해 결합된다. 상기 도시된 구현에서, 출력단 (1725)은 다수의 채널들을 가진 병렬 포트로서 개략적으로 도시되었다. 이것은 반드시 그런 것은 아니다. 예를 들면, 출력단 (1725)은 시리얼 포트나 결합된 병렬 및 직렬 능력을 가진 포트를 통해 분류 결과를 출력할 수 있다.An output stage 1725 is coupled to output the classification result from the linear classifier 1710 . In the implementation shown above, output 1725 is schematically shown as a parallel port with multiple channels. This is not necessarily the case. For example, the output stage 1725 may output the classification result through a serial port or a port with combined parallel and serial capabilities.

몇몇 구현들에서, 선형 분류기 (1710)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 구현될 수 있다. 예를 들면, 선형 분류기 (1710)는 개인용 컴퓨터 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다.In some implementations, the linear classifier 1710 may be implemented on one or more computing devices with relatively limited computational power. For example, the linear classifier 1710 may be implemented on a personal computer or mobile computing device such as a smartphone or tablet.

도 18에서, 분류 시스템 (1800)은 소스 신경 네트워크 (1705) 및 신경 네트워크 분류기 (1810)를 포함한다. 신경 네트워크 분류기 (1810)는 물체를 - 즉, 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 - 그 물체의 특성들의 비-선형 조합에 기반하여 분류하는 신경 네트워크 디바이스이다. 상기 도시된 구현에서, 신경 네트워크 분류기 (1810)는, 입력 레이어 (1820) 및 출력 레이어 (1825)를 포함하는 피드포워드 네트워크이다. 선형 분류기 (1710)를 구비해서, 신경 네트워크 분류기 (1810)는 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 다양한 방식들로 수신할 수 있다. 예를 들면, 활동의 패턴들의 표현들은 분리된 이벤트들로서 또는 실시간이나 비-실시간 통신 채널을 통한 연속 스트림으로서 수신될 수 있다. In FIG. 18 , a classification system 1800 includes a source neural network 1705 and a neural network classifier 1810 . The neural network classifier 1810 is a neural network device that classifies an object - ie, representations of patterns of activity in the source neural network 1705 - based on a non-linear combination of properties of the object. In the implementation shown above, the neural network classifier 1810 is a feedforward network comprising an input layer 1820 and an output layer 1825 . With the linear classifier 1710 , the neural network classifier 1810 can receive representations of patterns of activity in the source neural network 1705 in various ways. For example, representations of patterns of activity may be received as separate events or as a continuous stream over a real-time or non-real-time communication channel.

몇몇 구현들에서, 신경 네트워크 분류기 (1810)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 추론들을 수행할 수 있다. 예를 들면, 신경 네트워크 분류기 (1810)는 개인용 컴퓨터 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스의 신경 프로세싱 유닛 내 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다. 분류 시스템 (1700)과 유사하게, 분류 시스템 (1800)은 일반적으로, 신경 네트워크 분류기 (1810)가, 예를 들면, 데이터 통신 네트워크를 경유하여 소스 신경 네트워크 (1705)와 통신하는 분산 시스템일 것이다. In some implementations, the neural network classifier 1810 can perform inferences on one or more computing devices with relatively limited computational power. For example, the neural network classifier 1810 may be implemented on a mobile computing device in a personal computer or a neural processing unit of a mobile computing device such as a smartphone or tablet. Similar to the classification system 1700 , the classification system 1800 will generally be a distributed system in which the neural network classifier 1810 communicates with the source neural network 1705 via, for example, a data communication network.

몇몇 구현들에서, 신경 네트워크 분류기 (1810)는, 예를 들면, 컨볼루션 (convolutional) 레이어들, 풀링 (pooling) 레이어들, 및 완전-접속 (fully-connected) 레이어들을 포함하는 컨볼루션 신경 네트워크와 같은 딥 신경 네트워크 (deep neural network)일 수 있다. 컨불루션 레이어는, 예를 들면, 선형 컨볼루션 필터들 및/또는 비선형 활성 함수들을 사용하여 특징 지도들을 생성할 수 있다. 풀링 레이어들은 파라미터들의 개수를 줄이며 과적합 (overfitting)을 제어한다. 이미지 분류기 (1820) 내 상이한 레이어들에 의해 수행된 계산들은 이미지 분류기 (1820)의 상이한 구현들에서 상이한 방식들로 정의될 수 있다.In some implementations, the neural network classifier 1810 is configured with a convolutional neural network including, for example, convolutional layers, pooling layers, and fully-connected layers. It may be the same deep neural network. The convolution layer may generate feature maps using, for example, linear convolution filters and/or non-linear activation functions. Pooling layers reduce the number of parameters and control overfitting. The calculations performed by different layers in the image classifier 1820 may be defined in different ways in different implementations of the image classifier 1820 .

도 19에서, 분류 시스템 (1900)은 소스 근사기 (source approximator) (1905) 및 선형 분류기 (1710)를 포함한다. 아래에서 더 설명되는 것처럼, 소스 근사기 (1905)는 상대적으로 단순한 신경 네트워크이며, 그 신경 네트워크는 - 입력 레이어 (1915) 또는 다른 곳 중 어느 하나에서 - 입력을 수신하며 그리고 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현을 근사화한 벡터를 출력한다. 예를 들면, 소스 근사기 (1905)는, 예를 들면, 생물학적 시스템 상에서 모델링되며 그리고 생물학적 시스템의 형태학적, 화학적, 및 다른 특성들의 정도 (degree)를 포함하는 순환 신경 네트워크와 같은 순환 소스 신경 네트워크를 근사화하기 위해 트레이닝될 수 있다. 상기 도시된 구현에서, 소스 근사기 (1905)는 입력 레이어 (1915) 및 출력 레이어 (1920)를 포함한다. 입력 레이어 (1915)는 입력 데이터를 수신하기 위해 결합 가능하다. 출력 레이어 (1920)는, 선형 분류기의 입력단 (1720)에 의한 수신을 위해 신경 네트워크 디바이스 내에서의 활동의 표현의 근사를 출력하기 위해 결합된다. 예를 들면, 출력 레이어 (1920)는 참조번호 1200의 표현 (도 12, 13, 14)의 근사 (1200')를 출력할 수 있다. 여담으로, 도 17 및 18에서 개략적으로 도시된 참조번호 1200의 표현 그리고 도 19, 도 20에 개략적으로 도시된 표현 (1200)의 근사 (1200')는 일치한다. 이것은 편이만을 위한 것이다. 일반적으로, 참조번호 1200'의 근사는 참조번호 1200의 표현과는 적어도 몇몇 방식에서는 상이할 것이다. 이런 차이들에도 불구하고, 선형 분류기 (1710)는 참조번호 1200'의 근사를 분류할 수 있다.In FIG. 19 , a classification system 1900 includes a source approximator 1905 and a linear classifier 1710 . As explained further below, the source approximator 1905 is a relatively simple neural network that receives an input - either in the input layer 1915 or elsewhere - and a relatively more complex neural network. Outputs a vector approximating the representation of topological structures occurring in the patterns of my activity. For example, the source approximator 1905 is a circulating source neural network, such as, for example, a cyclic neural network that is modeled on a biological system and includes degrees of morphological, chemical, and other properties of the biological system. can be trained to approximate . In the implementation shown above, the source approximator 1905 includes an input layer 1915 and an output layer 1920 . The input layer 1915 is combinable to receive input data. The output layer 1920 is combined to output an approximation of the representation of activity within the neural network device for reception by the input 1720 of the linear classifier. For example, the output layer 1920 may output an approximation 1200' of the representation 1200 (FIGS. 12, 13, 14). Incidentally, the representation of reference numeral 1200 schematically shown in FIGS. 17 and 18 and the approximation 1200' of the representation 1200 schematically shown in FIGS. 19 and 20 coincide. This is for the side only. In general, the approximation of reference numeral 1200' will differ from the representation of reference numeral 1200 in at least some ways. Notwithstanding these differences, the linear classifier 1710 can classify an approximation of 1200'.

일반적으로, 소스 근사기 (1905)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 추론을 수행할 수 있다. 예를 들면, 소스 근사기 (1905)는 개인용 컴퓨터 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스의 신경 프로세싱 유닛 내 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다. 일반적으로 그리고 분류 시스템들 (1700, 1800)과 비교하면, 참조번호 1900의 분류 시스템은 보통은 단일의 하우징 내에, 예를 들면, 동일 데이터 프로세싱 디바이스들 중 어느 하나에서 또는 하드와이어 접속에 의해 결합된 데이터 프로세싱 디바이스들에서 구현된 소스 근사기 (1905) 및 선형 분류기 (1710)와 함께 수납될 것이다. In general, the source approximator 1905 can perform inference on one or more computing devices with relatively limited computational power. For example, the source approximator 1905 may be implemented on a mobile computing device in a personal computer or a neural processing unit of a mobile computing device such as a smartphone or tablet. In general and compared to sorting systems 1700, 1800, the sorting system 1900 is usually combined within a single housing, for example in one of the same data processing devices or by hardwired connection. It will be housed with a source approximator 1905 and a linear classifier 1710 implemented in data processing devices.

도 20에서, 분류 시스템 (2000)은 소스 근사기 (1905) 및 신경 네트워크 분류기 (1810)를 포함한다. 소스 근사기 (1905)의 출력 레이어 (1920)는, 신경 네트워크 분류기 (1810)의 입력단 (1820)에 의한 수신을 위해 신경 네트워크 디바이스 내 활동의 표현의 근사 (1200')를 출력하기 위해 결합된다. 근사 (1200') 및 표현 (1200) 사이의 차이점들에도 불구하고, 신경 네트워크 분류기 (180)는 근사 (1200')를 분류할 수 있다. 일반적으로 그리고 분류 시스템 (1900)과 유사하게, 참조번호 2000의 분류 시스템은 보통은 단일의 하우징 내에, 예를 들면, 동일 데이터 프로세싱 디바이스들 중 어느 하나에서 또는 하드와이어 접속에 의해 결합된 데이터 프로세싱 디바이스들 상에서 구현된 소스 근사기 (1905) 및 신경 네트워크 분류기 (1810)와 함께 수납될 것이다. In FIG. 20 , a classification system 2000 includes a source approximator 1905 and a neural network classifier 1810 . The output layer 1920 of the source approximator 1905 is combined to output an approximation 1200 ′ of the representation of activity in the neural network device for reception by the input 1820 of the neural network classifier 1810 . Notwithstanding the differences between approximation 1200' and representation 1200, neural network classifier 180 can classify approximation 1200'. In general and similar to the classification system 1900, the classification system 2000 is a data processing device that is usually combined within a single housing, for example, either in one of the same data processing devices or by a hardwired connection. It will be housed together with a source approximator 1905 and a neural network classifier 1810 implemented on them.

도 21은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 사용하여 트레이닝될 수 있는 로컬 인공 신경 네트워크를 포함하는 에지 디바이스 (2100)의 개략적인 도시이다. 이 환경에서, 로컬 인공 신경 네트워크는, 예를 들면, 데이터를 교환하기 위해 통신 네트워크를 필요로 하지 않는 하나 이상의 로컬 프로세서들 상에서 전적으로 실행되는 인공 신경 네트워크일 수 있다. 일반적으로, 상기 로컬 프로세서들은 하드와이어 접속들에 의해 연결될 것이다. 몇몇 예들에서, 상기 로컬 프로세서들은, 단일의 개인용 컴퓨터 또는 단일의 핸드헬드 모바일 디바이스와 같은 단일의 하우징 내에 수납될 수 있다. 몇몇 사례들에서, 상기 로컬 프로세서들은 단일의 개인 또는 제한된 수의 개인들에 의한 제어하에 있을 수 있으며 액세스될 수 있다. 실제로, 더 단순한 그리고/또는 덜 고도로 트레이닝되지만 더 배타적인 제2 신경 네트워크를 (예를 들면, 지도 학습 (supervised learning) 또는 강화형 학습 (reinforcement learning) 기술을 사용하여) 트레이닝하기 위해 더 복잡한 소스 신경 네트워크 내 위상학적 구조들의 발생들의 표현을 사용함으로써, 제한된 컴퓨팅 자원들 및 제한된 개수의 트레이닝 샘플들을 구비한 개인들도 소망하는 대로 신경 네트워크를 트레이닝시킬 수 있다. 트레이닝 동안의 저장 요구사항들 및 계산 복잡성은 줄어들며 배터리 수명과 같은 자원들이 절약된다.21 is a schematic illustration of an edge device 2100 comprising a local artificial neural network that can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network. In this environment, the local artificial neural network may be, for example, an artificial neural network running entirely on one or more local processors that does not require a communication network to exchange data. Typically, the local processors will be connected by hardwired connections. In some examples, the local processors may be housed within a single housing, such as a single personal computer or single handheld mobile device. In some instances, the local processors may be under control and accessed by a single individual or a limited number of individuals. In practice, a simpler and/or less highly trained but more complex source neuron to train a more exclusive second neural network (e.g., using supervised or reinforcement learning techniques). By using the representation of occurrences of topological structures in a network, even individuals with limited computing resources and a limited number of training samples can train a neural network as desired. Storage requirements and computational complexity during training are reduced and resources such as battery life are saved.

상기 도시된 구현들에서, 에지 디바이스 (2100)는, 광학 이미징 시스템 (2110), 이미지 프로세싱 전자기기 (2115), 소스 근사기 (2120), 표현 분류기 (2125), 그리고 통신 제어기 및 인터페이스 (2130)를 포함하는 보안-카메라 디바이스로서 개략적으로 도시된다.In the implementations shown above, the edge device 2100 includes an optical imaging system 2110 , image processing electronics 2115 , a source approximator 2120 , a representation classifier 2125 , and a communication controller and interface 2130 . It is schematically shown as a security-camera device comprising:

광학 이미징 시스템 (2110)은, 예를 들면, 하나 이상의 렌즈 (또는 심지어는 핀홀) 및 CCD 디바이스를 포함할 수 있다. 이미지 프로세싱 전자기기 (2115)는 광학 이미징 시스템 (2110)의 출력을 읽을 수 있으며 그리고 일반적으로 기본적인 이미지 프로세싱 기능들을 수행할 수 있다. 통신 제어기 및 인터페이스 (2130)는 참조번호 2100의 디바이스로 그리고 그 디바이스로부터의 정보의 흐름을 제어하도록 구성된 디바이스이다. 아래에서 더 설명되는 것처럼, 통신 제어기 및 인터페이스 (2130)가 수행할 수 있는 동작들은 관심 대상 이미지들을 다른 디바이스들로 전송하고 다른 디바이스들로부터 트레이닝 정보를 수신하는 것이다. 통신 제어기 및 인터페이스 (2130)는 그래서, 예를 들면, 데이터 포트 (2135)를 통해 통신할 수 있는 데이터 전송기 및 수신기 둘 모두를 포함할 수 있다. 데이터 포트 (2135)는 유선 포트, 무선 포트, 광학 포트 등일 수 있다.The optical imaging system 2110 may include, for example, one or more lenses (or even pinholes) and a CCD device. Image processing electronics 2115 may read the output of optical imaging system 2110 and may generally perform basic image processing functions. Communication controller and interface 2130 is a device configured to control the flow of information to and from the device 2100 . As described further below, operations that the communication controller and interface 2130 may perform are to send images of interest to and receive training information from other devices. Communication controller and interface 2130 may thus include, for example, both a data transmitter and a receiver capable of communicating via data port 2135 . The data port 2135 may be a wired port, a wireless port, an optical port, or the like.

소스 근사기 (2120)는, 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 나타나는 위상적인 구조들의 표현을 근사화하는 벡터를 출력하기 위해 트레이닝되는 상대적으로 간단한 신경 네트워크이다. 예를 들면, 소스 근사기 (2120)는, 예를 들면, 생물학적 시스템 상에서 모델링되며 생물학적 시스템의 형태학적, 화학적, 및 다른 특성들의 정도를 포함하는 순환 신경 네트워크와 같은 순환 소스 신경 네트워크를 근사화하기 위해 트레이닝될 수 있다.The source approximator 2120 is a relatively simple neural network that is trained to output a vector approximating the representation of topological structures appearing in patterns of activity in a relatively more complex neural network. For example, the source approximator 2120 may be used to approximate a circulating source neural network, such as, for example, a cyclic neural network modeled on a biological system and including degrees of morphological, chemical, and other properties of the biological system. can be trained.

표현 분류기 (2135)는, 소스 신경 네트워크 내 활동의 패턴들의 표현의 근사를 소스 근사기 (2121)로부터 수신하고 분류 결과를 출력하기 위해 결합된 신경 네트워크 분류기 또는 선형 분류기 중 어느 하나이다. 표현 분류기 (2125)는, 예를 들면, 컨볼루션 레이어들, 풀링 레이어들, 및 완전-접속 레이어들을 포함하는 컨볼루션 신경 네트워크와 같은 딥 신경 네트워크일 수 있다. 컨불루션 레이어는, 예를 들면, 선형 컨볼루션 필터들 및/또는 비선형 활성 함수들을 사용하여 특징 지도들을 생성할 수 있다. 풀링 레이어들은 파라미터들의 개수를 줄이며 과적합을 제어한다. 표현 분류기 (2125) 내 상이한 레이어들에 의해 수행된 계산들은 표현 분류기 (2125)의 상이한 구현들에서 상이한 방식들로 정의될 수 있다.The representation classifier 2135 is either a neural network classifier or a linear classifier coupled to receive an approximation of a representation of patterns of activity in the source neural network from the source approximator 2121 and output a classification result. Representation classifier 2125 may be, for example, a deep neural network, such as a convolutional neural network that includes convolutional layers, pooling layers, and fully-connected layers. The convolution layer may generate feature maps using, for example, linear convolution filters and/or non-linear activation functions. Pooling layers reduce the number of parameters and control overfitting. The calculations performed by different layers in the representation classifier 2125 may be defined in different ways in different implementations of the representation classifier 2125 .

몇몇 구현들에서, 작동 시에, 광학 이미징 시스템 (2110)은 미가공 (raw) 디지털 이미지들을 생성할 수 있다. 이미지 프로세싱 전자기기 (2115)는 미가공 이미지들을 읽을 수 있으며 적어도 몇몇 기본적인 이미지 프로세싱 함수들을 보통은 수행할 것이다. 소스 근사기 (2120)는 이미지 프로세싱 전자기기 (2115)로부터 이미지들을 수신할 수 있으며 그리고 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들 내에서 일어나는 위상적인 구조들의 표현을 근사화하는 벡터를 출력하기 위해 추론 연산들을 수행할 수 있다. 이 근사화 벡터는, 분류 기준들의 하나 이상의 세트들을 상기 근사화 벡터가 충족시키는가의 여부를 판단하는 표현 분류기 (2125)로 입력된다. 예들은 얼굴 인식 및 다른 기계 시각 동작들을 포함한다. 상기 근사화 벡터가 분류 기준들의 세트를 충족시킨다고 표현 분류기 (2125)가 판단하는 경우에, 표현 분류기 (2125)는 통신 제어기 및 인터페이스 (2130)에게 상기 이미지들에 관한 정보를 전송하도록 지시할 수 있다. 예를 들면, 통신 제어기 및 인터페이스 (2130)는 상기 이미지 그 자체, 상기 분류, 및/또는 상기 이미지들에 관한 다른 정보를 전송할 수 있다.In some implementations, in operation, the optical imaging system 2110 can generate raw digital images. Image processing electronics 2115 can read raw images and will normally perform at least some basic image processing functions. A source approximator 2120 may receive images from the image processing electronics 2115 and infer to output a vector approximating a representation of topological structures occurring within patterns of activity in a relatively more complex neural network. operations can be performed. This approximation vector is input to an expression classifier 2125 that determines whether the approximation vector satisfies one or more sets of classification criteria. Examples include facial recognition and other machine vision operations. When expression classifier 2125 determines that the approximation vector satisfies a set of classification criteria, expression classifier 2125 may instruct communication controller and interface 2130 to send information about the images. For example, the communication controller and interface 2130 may transmit the image itself, the classification, and/or other information about the images.

때때로, 분류 프로세스를 변경할 것이 소망될 수 있다. 이런 경우에, 통신 제어기 및 인터페이스 (2130)는 트레이닝 세트를 수신할 수 있다. 몇몇 구현들에서, 상기 트레이닝 세트는 미가공이나 프로세싱된 이미지 데이터 그리고 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현들을 포함할 수 있다. 그런 트레이닝 세트는, 예를 들면, 지도 학습이나 강화형 학습 기술을 이용하여 소스 근사기 (2120)를 재트레이닝시키기 위해 사용될 수 있다. 특히, 상기 표현들은 타겟 답변 벡터 (target answer vector)로서 사용되며 그리고 상기 미가공이나 프로세싱된 이미지 데이터를 프로세싱하는 소스 근사기 (2120)의 소망된 결과를 표현한다.Occasionally, it may be desirable to change the sorting process. In this case, the communication controller and interface 2130 may receive the training set. In some implementations, the training set may include raw or processed image data and representations of topological structures occurring in patterns of activity within a relatively more complex neural network. Such a training set may be used to retrain the source approximator 2120 using, for example, supervised learning or reinforcement learning techniques. In particular, the representations are used as a target answer vector and represent the desired result of the source approximator 2120 processing the raw or processed image data.

다른 구현들에서, 상기 트레이닝 세트는 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현들 그리고 위상적인 구조들의 그런 표현들의 소망된 분류를 포함할 수 있다. 그런 트레이닝 세트는, 예를 들면, 지도 학습이나 강화형 학습 기술을 이용하여 신경 네트워크 표현 분류기 (2125)를 재트레이닝시키기 위해 사용될 수 있다. 특히, 상기 소망된 분류는 타겟 답변 벡터로서 사용되며 그리고 위상적인 구조들의 상기 표현들을 프로세싱하는 표현 분류기 (2125)의 소망된 결과를 표현한다.In other implementations, the training set may include representations of topological structures occurring in patterns of activity within a relatively more complex neural network and a desired classification of such representations of topological structures. Such a training set may be used to retrain the neural network representation classifier 2125 using, for example, supervised learning or reinforcement learning techniques. In particular, the desired classification is used as a target answer vector and represents the desired result of the expression classifier 2125 processing the representations of topological structures.

소스 근사기 (2120)나 표현 분류기 (2125)가 재트레이닝되는가의 여부에 무관하게, 디바이스 (2100)에서의 추론 연산들은 트레이닝 데이터의 큰 세트들 및 시간 - 및 컴퓨팅 파워 - 집약적인 반복적 트레이닝 없이 환경들 및 목적들을 변경하도록 쉽게 적응될 수 있다. Irrespective of whether the source approximator 2120 or the expression classifier 2125 is retrained, the inference operations at the device 2100 can be performed on large sets of training data and environments without time- and computing power-intensive iterative training. It can be easily adapted to change purposes and purposes.

도 22는 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 사용하여 트레이닝될 수 있는 로컬 인공 신경 네트워크를 포함하는 제2 에지 디바이스 (2200)의 개략적인 도시이다. 상기 도시된 구현에서, 제2 에지 디바이스 (2200)는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스로서 개략적으로 도시된다. 디바이스 (2200)는 (예를 들면, 디바이스 (2200)의 후면 상에) 광학 이미징 시스템 (도시되지 않음), 이미지 프로세싱 전자기기 (2215), 표현 분류기 (2225), 통신 제어기 및 인터페이스 (2230)를 포함한다. 이 컴포넌트들은 특성들을 가질 수 있으며 그리고 디바이스 (2100) (도 21)의 광학 이미징 시스템 (2110), 이미지 프로세싱 전자기기 (2115), 표현 분류기 (2125), 통신 제어기 및 인터페이스 (2130), 및 데이터 포트 (2135)의 행동들과 대응하는 행동들을 수행할 수 있다.22 is a schematic illustration of a second edge device 2200 comprising a local artificial neural network that can be trained using representations of the occurrence of topological structures corresponding to activity in the source neural network. In the implementation shown above, the second edge device 2200 is schematically depicted as a mobile computing device, such as a smartphone or tablet. Device 2200 includes an optical imaging system (not shown), image processing electronics 2215 , expression classifier 2225 , communication controller and interface 2230 (eg, on the back side of device 2200 ). include These components may have characteristics and include an optical imaging system 2110 , image processing electronics 2115 , a representation classifier 2125 , a communication controller and interface 2130 , and a data port of the device 2100 ( FIG. 21 ). It is possible to perform actions corresponding to the actions of (2135).

디바이스 (2200)의 상기 도시된 구현들은 하나 이상의 추가 센서들 (2240) 및 다중-입력 소스 근사기 (2245)를 추가로 포함한다. 센서(들) (2240)는 디바이스 (2200)를 둘러싼 환경의 또는 디바이스 (2200) 그 자체의 하나 이상의 특성들을 감지할 수 있다. 예를 들면, 몇몇 구현들에서, 센서 (2240)는 디바이스 (2200)가 겪을 가속을 감지하는 가속도계일 수 있다. 다른 예로서, 몇몇 구현들에서, 센서 (2240)는 디바이스 (2200) 주변에서의 소음을 감지하는 마이크로폰과 같은 청각적 센서일 수 있다. 센서 (2240)의 또 다른 예들은 화학적 센서들 (예를 들면, "인공 코" 및 유사한 것), 습도 센서들, 방사 센서들, 및 유사한 것을 포함한다. 몇몇 경우에, 센서 (2240)는, 그 센서 (2240)의 출력 (또는 예를 들면 연락처 목록이나 지도와 같은 다른 정보)를 읽고 기본적인 프로세싱 기능들을 수행할 수 있는 프로세싱 전자기기에 결합된다. 센서 (2240)의 상이한 구현들은 그래서 물리적인 감지된 물리적 파라미터가 센서마다 변한다는 점에서 상이한 "양식 (modality)들"을 가질 수 있다.The illustrated implementations of device 2200 further include one or more additional sensors 2240 and a multiple-input source approximator 2245 . The sensor(s) 2240 may sense one or more characteristics of the environment surrounding the device 2200 or of the device 2200 itself. For example, in some implementations, the sensor 2240 can be an accelerometer that senses the acceleration that the device 2200 will experience. As another example, in some implementations, the sensor 2240 can be an auditory sensor, such as a microphone, that senses noise in the vicinity of the device 2200 . Still other examples of sensor 2240 include chemical sensors (eg, “artificial nose” and the like), humidity sensors, radiation sensors, and the like. In some cases, the sensor 2240 is coupled to processing electronics capable of reading the output of the sensor 2240 (or other information such as, for example, a contact list or map) and performing basic processing functions. Different implementations of sensor 2240 may thus have different “modality” in that the physical sensed physical parameter varies from sensor to sensor.

다중-입력 소스 근사기 (2245)는 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 나타나는 위상적인 구조들의 표현을 근사화하는 벡터를 출력하기 위해 트레이닝되는 상대적으로 간단한 신경 네트워크이다. 예를 들면, 다중-입력 소스 근사기 (2245)는, 예를 들면, 생물학적 시스템 상에서 모델링되며 그리고 생물학적 시스템의 형태학적, 화학적, 및 다른 특성들의 정도 (degree)를 포함하는 순환 신경 네트워크와 같은 순환 소스 신경 네트워크를 근사화하기 위해 트레이닝될 수 있다.The multiple-input source approximator 2245 is a relatively simple neural network that is trained to output a vector that approximates the representation of topological structures appearing in patterns of activity within a relatively more complex neural network. For example, the multi-input source approximator 2245 may be, for example, a cyclic neural network modeled on a biological system and including degrees of morphological, chemical, and other properties of the biological system. It can be trained to approximate the source neural network.

소스 근사기 (2120)과는 다르게, 다중-입력 소스 근사기 (2245)는 결합되어, 다수의 센서들로부터 미가공 또는 프로세싱된 센서 데이터를 수신하고 그 데이터에 기반하여 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현의 근사를 반환한다. 예를 들면, 다중-입력 소스 근사기 (2245)는, 예를 들면, 하나 이상의 센서들 (2240)로부터 청각적, 가속의, 화학적인, 또는 다른 데이터는 물론이며 이미지 프로세싱 전자기기 (2215)로부터 프로세싱된 이미지 데이터를 수신할 수 있다. 다중-입력 소스 근사기 (2245)는, 예를 들면, 컨볼루션 레이어들, 풀링 레이어들, 및 완전-접속 레이어들을 포함하는 컨볼루션 신경 네트워크와 같은 딥 신경 네트워크일 수 있다. 다중-입력 소스 근사기 (2245) 내 상이한 레이어들에 의해 수행된 계산들은 단일 유형의 센세 데이터에 또는 다수 양식들의 센서 데이터에 전용일 수 있다. Unlike the source approximator 2120 , the multi-input source approximator 2245 is coupled to receive raw or processed sensor data from multiple sensors and based on that data activity in a relatively more complex neural network. Returns an approximation of the representation of topological structures occurring in the patterns of For example, the multi-input source approximator 2245 can be used, for example, from the image processing electronics 2215 as well as audio, acceleration, chemical, or other data from the one or more sensors 2240 . The processed image data may be received. The multi-input source approximator 2245 may be, for example, a deep neural network, such as a convolutional neural network that includes convolutional layers, pooling layers, and fully-connected layers. The calculations performed by the different layers in the multi-input source approximator 2245 may be dedicated to a single type of sensor data or to multiple modalities of sensor data.

다중-입력 소스 근사기 (2245)의 특별한 조직에 무관하게, 다중-입력 소스 근사기 (2245)는 다수의 센서들로부터의 미가공 또는 프로세싱된 센서 데이터에 기반하여 근사를 반환한다. 예를 들면, 이미지 프로세싱 전자기기 (2215)로부터의 프로세싱된 이미지 데이터 및 마이크로폰 센서 (2240)로부터의 청각적인 데이터는, 동일한 데이터를 수신했던 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현을 근사화하기 위해 다중-입력 소스 근사기 (2245)에 의해 사용될 수 있다. Irrespective of the particular organization of the multiple-input source approximator 2245, the multiple-input source approximator 2245 returns an approximation based on raw or processed sensor data from multiple sensors. For example, the processed image data from the image processing electronics 2215 and the auditory data from the microphone sensor 2240 are topologically occurring in patterns of activity within a relatively more complex neural network that received the same data. may be used by the multi-input source approximator 2245 to approximate the representation of structures.

때때로, 디바이스 (2200)에서 상기 분류 프로세스를 변경할 것이 소망될 수 있을 것이다. 이 경우에, 통신 제어기 및 인터페이스 (2230)는 트레이닝 세트를 수신할 수 있다. 몇몇 구현들에서, 상기 트레이닝 세트는 미가공이나 프로세싱된 이미지 데이터, 화학적인 데이터 또는 다른 데이터 그리고 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현들을 포함할 수 있다. 그런 트레이닝 세트는, 예를 들면, 지도 학습이나 강화형 학습 기술을 이용하여 다중-입력 소스 근사기 (2245)를 재트레이닝시키기 위해 사용될 수 있다. 특히, 상기 표현들은 타겟 답변 벡터로서 사용되며 그리고 상기 미가공이나 프로세싱된 이미지 데이터 또는 센서 데이터를 프로세싱하는 다중-입력 소스 근사기 (2245)의 소망된 결과를 나타낸다.Occasionally, it may be desirable to change the sorting process in device 2200 . In this case, the communication controller and interface 2230 may receive the training set. In some implementations, the training set may include raw or processed image data, chemical data or other data, and representations of topological structures occurring in patterns of activity within a relatively more complex neural network. Such a training set may be used to retrain the multi-input source approximator 2245 using, for example, supervised learning or reinforcement learning techniques. In particular, the expressions are used as target answer vectors and represent the desired result of the multi-input source approximator 2245 processing the raw or processed image data or sensor data.

다른 구현들에서, 상기 트레이닝 세트는 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현들 그리고 위상적인 구조들의 그런 표현들의 소망된 분류를 포함할 수 있다. 그런 트레이닝 세트는, 예를 들면, 지도 학습이나 강화형 학습 기술을 이용하여 신경 네트워크 표현 분류기 (2225)를 재트레이닝시키기 위해 사용될 수 있다. 특히, 상기 소망된 분류는 타겟 답변 벡터로서 사용되며 그리고 위상적인 구조들의 상기 표현들을 프로세싱하는 표현 분류기 (2225)의 소망된 결과를 나타낸다.In other implementations, the training set may include representations of topological structures occurring in patterns of activity within a relatively more complex neural network and a desired classification of such representations of topological structures. Such a training set may be used to retrain the neural network representation classifier 2225 using, for example, supervised learning or reinforcement learning techniques. In particular, the desired classification is used as a target answer vector and represents the desired result of the expression classifier 2225 processing the representations of topological structures.

다중-입력 소스 근사기 (2245)나 표현 분류기 (2225)가 재트레이닝되는가의 여부에 무관하게, 디바이스 (2200)에서의 추론 연산들은 트레이닝 데이터의 큰 세트들 및 시간 - 및 컴퓨팅 파워 - 집약적인 반복적 트레이닝 없이 환경들 및 목적들을 변경하도록 쉽게 적응될 수 있다. Irrespective of whether the multi-input source approximator 2245 or the representation classifier 2225 is retrained, the inferential operations at the device 2200 are iterative and time- and compute-power intensive and with large sets of training data. Can be easily adapted to change environments and objectives without training.

도 23은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 이용하여 로컬 인공 신경 네트워크들이 트레이닝될 수 있는 시스템 (2300)의 개략적인 도시이다. 타겟 신경 네트워크들은 상대적으로 간단하며 덜 비싼 데이터 프로세싱 시스템들 상에서 구현되며, 반면에 상기 소스 신경 네트워크는 상대적으로 복잡하며 더 비싼 데이터 프로세싱 시스템 상에서 구현될 수 있다.23 is a schematic illustration of a system 2300 in which local artificial neural networks can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network. Target neural networks are relatively simple and can be implemented on less expensive data processing systems, while the source neural network is relatively complex and can be implemented on more expensive data processing systems.

시스템 (2300)은 로컬 신경 네트워크들을 가진 다양한 디바이스들 (2305), 전화 기지국 (2310), 무선 액세스 포인트 (2315), 서버 시스템 (2320), 및 하나 이상의 데이터 통신 네트워크들 (2325)을 포함한다.The system 2300 includes various devices with local neural networks 2305 , a telephone base station 2310 , a wireless access point 2315 , a server system 2320 , and one or more data communication networks 2325 .

로컬 신경 네트워크 디바이스들 (2305)은 계산적으로-덜-집중적인 타겟 신경 네트워크들을 사용하여 데이터를 프로세싱하도록 구성된 디바이스들이다. 도시된 것처럼, 로컬 신경 네트워크 디바이스들 (2305)은 모바일 컴퓨팅 디바이스들, 카메라들, 자동차들, 또는 다수의 다른 기구, 설비, 및 모바일 컴포넌트들 중 어느 하나 그리고 각 카테고리 내 상이한 메이커 및 모델의 디바이스들로서 구현될 수 있다. 상이한 로컬 신경 네트워크 디바이스들 (2305)은 상이한 소유자들에게 속할 수 있다. 몇몇 구현들에서, 로컬 신경 네트워크 디바이스들 (2305)의 데이터 프로세싱 기능에 대한 액세스는 이 소유자들 및/또는 그 소유자가 지정한 것들로 일반적으로 한정될 것이다. Local neural network devices 2305 are devices configured to process data using computationally-less-intensive target neural networks. As shown, local neural network devices 2305 can be any one of mobile computing devices, cameras, automobiles, or a number of other appliances, equipment, and mobile components and devices of different make and model within each category. can be implemented. Different local neural network devices 2305 may belong to different owners. In some implementations, access to the data processing function of the local neural network devices 2305 will generally be limited to these owners and/or those designated by the owner.

로컬 신경 네트워크 디바이스들 (2305) 각각은, 상대적으로 더 복잡한 신경 네트워크의 패턴들 내에서 일어나는 위상적인 구조들의 표현을 근사화하는 벡터를 출력하기 위해 트레이닝되는 하나 이상의 소스 근사기들을 포함한다. 예를 들면, 상기 상대적으로 더 복잡한 신경 네트워크는, 예를 들면, 생물학적 시스템 상에서 모델링되며 그리고 생물학적 시스템의 형태학적, 화학적, 및 다른 특성들의 정도를 포함하는 순환 신경 네트워크와 같은 순환 소스 신경 네트워크일 수 있다.Each of the local neural network devices 2305 includes one or more source approximators that are trained to output a vector approximating a representation of topological structures occurring within patterns of a relatively more complex neural network. For example, the relatively more complex neural network may be, for example, a circulating source neural network, such as a cyclic neural network modeled on a biological system and including a degree of morphological, chemical, and other properties of the biological system. have.

몇몇 구현들에서, 소스 근사기들을 사용하여 데이터를 프로세싱하는 것에 추가로, 로컬 신경 네트워크 디바이스들 (2305)은, 상대적으로 더 복잡한 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현들을 타겟 답변 벡터들로서 사용하여 상기 소스 근사화기들을 재-트레이닝시키기 위해 또한 프로그램될 수 있다. 예를 들면, 로컬 신경 네트워크 디바이스들 (2305)은 하나 이상의 반복 트레이닝 기술들 (예를 들면, 경사 하강법 (gradient descent) 또는 확률적 경사 하강법 (stochastic gradient descent))을 수행하기 위해 프로그램될 수 있다. 다른 구현들에서, 로컬 신경 네트워크 디바이스들 (2305) 내 소스 근사기들은, 예를 들면, 전용의 트레이닝 시스템에 의해 또는 소스 근사기들을 트레이닝시키기 위해 상기 로컬 신경 네트워크 디바이스들 (2305)과 상호작용할 수 있는 개인용 컴퓨터 상에 설치된 트레이닝 시스템에 의해 트레이닝될 수 있다.In some implementations, in addition to processing data using source approximators, local neural network devices 2305 can target representations of topological structures occurring in patterns of activity within a relatively more complex neural network. It can also be programmed to re-train the source approximators for use as vectors. For example, the local neural network devices 2305 may be programmed to perform one or more iterative training techniques (eg, gradient descent or stochastic gradient descent). have. In other implementations, source approximators in local neural network devices 2305 may interact with the local neural network devices 2305 to train source approximators or, for example, by a dedicated training system. can be trained by a training system installed on a personal computer.

각 로컬 신경 네트워크 디바이스 (2305)는 하나 이상의 무선이나 유선 데이터 통신 컴포넌트들을 포함한다. 상기 도시된 구현에서, 각 로컬 신경 네트워크 디바이스 (2305)는, 모바일 전화 트랜시버, 무선 트랜시버, 또는 둘 모두와 같은 적어도 하나의 무선 데이터 통신 컴포넌트들을 포함한다. 상기 모바일 전화 트랜시버들은 전화 기지국 (2310)과 데이터를 교환할 수 있다. 상기 무선 트랜시버들은 무선 액세스 포인트 (2315)와 데이터를 교환할 수 있다. 각 로컬 신경 네트워크 디바이스 (2305)는 피어 모바일 컴퓨팅 디바이스들과 또한 데이터를 교환할 수 있다. Each local neural network device 2305 includes one or more wireless or wired data communication components. In the implementation shown above, each local neural network device 2305 includes at least one wireless data communication components, such as a mobile phone transceiver, a wireless transceiver, or both. The mobile phone transceivers may exchange data with a phone base station 2310 . The wireless transceivers may exchange data with a wireless access point 2315 . Each local neural network device 2305 may also exchange data with peer mobile computing devices.

전화 기지국 (2310) 및 무선 액세스 포인트 (2315)는 하나 이상의 데이터 통신 네트워크들 (2325)와의 데이터 통신을 위해 연결되며 그리고 그 네트워크(들)를 통해 서버 시스템 (2320)과 정보를 교환할 수 있다. 그래서 로컬 신경 네트워크 디바이스들 (2305)은 보통은 서버 시스템 (2320)과 데이터 통신 상태에 또한 있을 수 있다. 그러나, 이것이 반드시 그런 것은 아니다. 예를 들면, 로컬 신경 네트워크 디바이스들 (2305)이 다른 데이터 프로세싱 디바이스들에 의해 트레이닝되는 구현들에서, 로컬 신경 네트워크 디바이스들 (2305)은 적어도 한 번 이 다른 데이터 프로세싱 디바이스들과 데이터 통신할 필요만이 있을 뿐이다. Telephone base station 2310 and wireless access point 2315 are coupled for data communication with one or more data communication networks 2325 and can exchange information with server system 2320 via the network(s). So the local neural network devices 2305 may also be normally in data communication with the server system 2320 . However, this is not necessarily the case. For example, in implementations where local neural network devices 2305 are trained by other data processing devices, local neural network devices 2305 only need to communicate data with these other data processing devices at least once. there is only this

서버 시스템 (2320)은 기계-판독가능 명령어들의 하나 이상의 세트들에 따라 데이터 프로세싱 활동들을 수행하기 위해 프로그램된 하나 이상의 데이터 프로세싱 디바이스들이 시스템이다. 그 활동들은 모바일 컴퓨팅 디바이스들 (2305)을 위해 트레이닝 세트들을 트레이닝 시스템들로 서빙하는 것을 포함할 수 있다. 위에서 설명되었듯이, 상기 트레이닝 시스템들은 모바일 로컬 신경 네트워크 디바이스들 (2305) 그 자체의 내부에 있을 수 있으며 또는 하나 이상의 다른 데이터 프로세싱 디바이스들 상에 있을 수 있다. 상기 트레이닝 세트들은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들 및 대응 데이터를 포함할 수 있다.Server system 2320 is a system of one or more data processing devices programmed to perform data processing activities in accordance with one or more sets of machine-readable instructions. The activities may include serving training sets to training systems for mobile computing devices 2305 . As described above, the training systems may be internal to the mobile local neural network devices 2305 itself or may be on one or more other data processing devices. The training sets may include corresponding data and representations of occurrences of topological structures corresponding to activity in a source neural network.

몇몇 구현들에서, 서버 시스템 (2320)은 소스 신경 네트워크를 또한 포함한다. 그러나, 이것이 반드시 그런 것은 아니며 서버 시스템 (2320)은 상기 소스 신경 네트워크를 구현한 데이터 프로세싱 디바이스(들)의 또 다른 시스템으로부터 트레이닝 세트들을 수신할 수 있다. In some implementations, server system 2320 also includes a source neural network. However, this is not necessarily the case and server system 2320 may receive training sets from another system of data processing device(s) implementing the source neural network.

동작에 있어서, (서브 시스템 (2320) 그 자체에서 또는 다른 곳에서 발견된 소스 신경 네트워크로부터의) 트레이닝 세트를 서버 시스템 (2320)이 수신한 이후에, 서버 시스템 (2320)은 모바일 컴퓨팅 디바이스들 (2305)를 트레이닝시키는 트레이너들에게 상기 트레이닝 세트를 서빙할 수 있다. 타겟 로컬 신경 네트워크 디바이스들 (2305) 내 소스 근사기들은 상기 트레이닝 세트를 이용하여 트레이닝될 수 있으며, 그래서 상기 타겟 신경 네트워크들이 상기 소스 신경 네트워크의 동작들을 근사화하도록 한다.In operation, after server system 2320 receives a training set (from a source neural network found in subsystem 2320 itself or elsewhere), server system 2320 is 2305) may serve the training set. Source approximators in target local neural network devices 2305 may be trained using the training set, thereby allowing the target neural networks to approximate operations of the source neural network.

도 24, 25, 26, 27은 네 개의 상이한 시스템들 (2400, 2500, 2600, 2700) 내 신경 네트워크에서의 활동에서 위상적인 구조들의 발생의 표현을 사용하는 것의 개략적 도시이다. 시스템들 (2400, 2500, 2600, 2700)은 여러 상이한 동작들 중 어느 하나를 수행하도록 구성될 수 있다. 예를 들면, 시스템들 (2400, 2500, 2600, 2700)은 물체 로컬화 동작들, 물체 탐지 동작들, 물체 세그먼트화 동작들, 물체 탐지 동작들, 예측 동작들, 행동 선택 동작들 등을 수행할 수 있다.24 , 25 , 26 , 27 are schematic diagrams of using representations of the occurrence of topological structures in activity in a neural network in four different systems 2400 , 2500 , 2600 , 2700 . Systems 2400 , 2500 , 2600 , 2700 may be configured to perform any one of several different operations. For example, systems 2400 , 2500 , 2600 , 2700 may perform object localization operations, object detection operations, object segmentation operations, object detection operations, prediction operations, action selection operations, etc. can

물체 로컬화 동작들은 이미지 내 물체의 위치를 정한다. 예를 들면, 물체 주위에 경계 박스가 구축될 수 있다. 몇몇 경우에, 물체 로컬화는 물체 인식과 결합될 수 있으며, 그 물체 인식에서 로컬화된 물체는 적절한 표시로 라벨이 부여된다.Object localization operations locate an object in an image. For example, a bounding box may be built around an object. In some cases, object localization may be combined with object recognition, in which the localized object is labeled with an appropriate indicia.

물체 탐지 동작들은 이미지 픽셀들을 특별한 클래스에 속하는가 (예를 들면, 관심 대상 물체에 속한다) 또는 속하지 않는가의 어느 하나로서 분류한다. 일반적으로, 물체 탐지는, 픽셀들을 그룹화하고 그 픽셀 그룹들 주위에 경계 박스들을 형성함으로써 수행된다. 그 경계 박스는 그 물체 주위에 빈틈없이 맞아야 한다.Object detection operations classify image pixels as either belonging to a particular class (eg, belonging to an object of interest) or not. In general, object detection is performed by grouping pixels and forming bounding boxes around the pixel groups. The bounding box must fit snugly around the object.

물체 세그먼트화는 보통은 클래스 라벨들을 각 이미지 픽셀에 할당한다. 그래서, 경계 박스가 아니라 물체 세그먼트화가 픽셀 단위를 기초로 진행하며 그리고 단일 라벨만이 각 픽셀에 할당될 것을 필요로 하는 것이 일반적이다.Object segmentation usually assigns class labels to each image pixel. So, it is common for object segmentation rather than bounding boxes to proceed on a per-pixel basis and require only a single label to be assigned to each pixel.

예측 동작들은 관찰된 데이터의 범위 외부에 있는 결론들을 끌어오려고 한다. 비록 예측 동작들이 (예를 들면, 과거 및 현재 상태에 관한 정보에 기반하여) 미래에서의 발생들을 예측하려고 시도할 수 있지만, 예측 동작들은 그 상태들에 관한 불완전한 정보에 기반하여 과거 및 현재 상태에 관한 결론들을 또한 끌어오려고 한다. Predictive operations attempt to draw conclusions that are outside the bounds of the observed data. Although predictive operations may attempt to predict occurrences in the future (eg, based on information about past and present states), predictive operations may attempt to predict occurrences in the past and present states based on incomplete information about those states. We also try to draw conclusions about

행동 선택 동작들은 컨디션들의 세트에 기반하여 행동을 선택하려고 한다. 행동 선택 동작들은 전통적으로 심볼-기반 시스템들 (전통적인 플래닝), 분산된 솔루션들, 및 반작용적이거나 동적인 플래닝 (planning)과 같은 상이한 접근 방식들로 분해된다.Action selection actions attempt to select an action based on a set of conditions. Behavior selection operations are traditionally decomposed into different approaches such as symbol-based systems (traditional planning), distributed solutions, and reactive or dynamic planning.

참조번호 2400, 2500의 분류 시스템들 각각은 신경 네트워크 내 활동의 패턴들의 표현들에 관한 소망된 동작을 수행한다. 참조번호 2600, 2700의 시스템들 각각은 신경 네트워크 내 활동의 패턴들의 표현들을 근사화한 것들에 관한 소망된 동작을 수행한다. 참조번호 2400, 2500의 시스템들에서, 표현된 활동의 패턴들은 참조번호 2400, 2500의 시스템들의 일부인 소스 신경 네트워크 디바이스 (1705) 내에서 발생하며 그리고 그 소스 신경 네트워크 디바이스로부터 읽혀진다. 대조적으로, 참조번호 2400, 2500의 시스템들에서, 근사화되어 표현된 활동의 패턴들은 참조번호 2400, 2500의 시스템들의 일부가 아닌 소스 신경 네트워크 디바이스 내에서 발생한다. 그럼에도 불구하고, 활동의 그 패턴들의 표현을 근사화한 것은 참조번호 2400, 2500의 시스템들의 일부인 근사기 (1905)로부터 읽혀진다.Each of the classification systems 2400 and 2500 performs a desired action on representations of patterns of activity in the neural network. Each of the systems 2600 and 2700 performs a desired operation with respect to those approximating representations of patterns of activity in the neural network. In the systems 2400, 2500, the patterns of activity represented occur in and read from the source neural network device 1705 that is part of the systems 2400, 2500. In contrast, in the systems 2400, 2500, the approximated and expressed patterns of activity occur within the source neural network device that is not part of the systems 2400, 2500. Nevertheless, an approximation of the representation of those patterns of activity is read from the approximator 1905 which is part of the systems 2400, 2500.

추가의 상세 내용에서, 도 24로 돌아가면, 참조번호 2400의 시스템은 소스 신경 네트워크 (1705) 및 선형 프로세서 (2410)를 포함한다. 선형 프로세서 (2410)는 신경 네트워크 내 활동의 패턴들의 표현들의 특성들 (또는 그런 표현들을 근사화한 것들)의 선형 조합에 기반한 동작들을 수행하는 디바이스이다. 상기 동작들은, 예를 들면, 물체 로컬화 동작들, 물체 탐지 동작들, 물체 세그먼트화 동작들, 물체 탐지 동작들, 예측 동작들, 행동 선택 동작들 등일 수 있다. In further detail, turning to FIG. 24 , the system 2400 includes a source neural network 1705 and a linear processor 2410 . The linear processor 2410 is a device that performs operations based on a linear combination of characteristics (or approximations of such representations) of representations of patterns of activity in a neural network. The operations may be, for example, object localization operations, object detection operations, object segmentation operations, object detection operations, prediction operations, action selection operations, and the like.

선형 프로세서 (2410)는 입력단 (2420) 및 출력단 (2425)을 포함한다. 입력단 (2420)은 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 수신하기 위해 결합된다. 선형 프로세서 (2410)는 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 다양한 방식들로 수신할 수 있다. 예를 들면, 활동의 패턴들의 표현들은 별개의 이벤트들로서 또는 실시간이나 비-실시간 통신 채널을 통한 연속 스트림으로서 수신될 수 있다. 출력단 (2525)은 선형 분류기 (2410)로부터의 분류 결과를 출력하기 위해 결합된다. 몇몇 구현들에서, 선형 프로세서 (2410)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 구현될 수 있다. 예를 들면, 선형 프로세서 (2410)는 개인용 컴퓨터 상에서 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다.The linear processor 2410 includes an input 2420 and an output 2425 . Input 2420 is coupled to receive representations of patterns of activity in source neural network 1705 . The linear processor 2410 may receive representations of patterns of activity within the source neural network 1705 in various ways. For example, representations of patterns of activity may be received as separate events or as a continuous stream over a real-time or non-real-time communication channel. An output stage 2525 is coupled to output a classification result from the linear classifier 2410 . In some implementations, the linear processor 2410 may be implemented on one or more computing devices with relatively limited computational power. For example, linear processor 2410 may be implemented on a personal computer or on a mobile computing device such as a smartphone or tablet.

도 24로 돌아가서, 참조번호 2400의 시스템은 소스 신경 네트워크 (1705) 및 선형 프로세서 (2410)를 포함한다. 선형 프로세서 (2410)는 신경 네트워크 내 활동의 패턴들의 표현들의 특성들 (또는 그런 표현들을 근사화한 것들)의 선형 조합에 기반한 동작들을 수행하는 디바이스이다. 상기 동작들은, 예를 들면, 물체 로컬화 동작들, 물체 탐지 동작들, 물체 세그먼트화 동작들, 예측 동작들, 행동 선택 동작들 등일 수 있다. 24 , the system 2400 includes a source neural network 1705 and a linear processor 2410 . The linear processor 2410 is a device that performs operations based on a linear combination of characteristics (or approximations of such representations) of representations of patterns of activity in a neural network. The operations may be, for example, object localization operations, object detection operations, object segmentation operations, prediction operations, action selection operations, and the like.

선형 프로세서 (2410)는 입력단 (2420) 및 출력단 (2425)을 포함한다. 입력단 (2420)은 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 수신하기 위해 결합된다. 선형 프로세서 (2410)는 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 다양한 방식들로 수신할 수 있다. 예를 들면, 활동의 패턴들의 표현들은 별개의 이벤트들로서 또는 실시간이나 비-실시간 통신 채널을 통한 연속 스트림으로서 수신될 수 있다. 출력단 (2525)은 선형 분류기 (2410)로부터의 분류 결과를 출력하기 위해 결합된다. 몇몇 구현들에서, 선형 프로세서 (2410)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 구현될 수 있다. 예를 들면, 선형 프로세서 (2410)는 개인용 컴퓨터 상에서 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다.The linear processor 2410 includes an input 2420 and an output 2425 . Input 2420 is coupled to receive representations of patterns of activity in source neural network 1705 . The linear processor 2410 may receive representations of patterns of activity within the source neural network 1705 in various ways. For example, representations of patterns of activity may be received as separate events or as a continuous stream over a real-time or non-real-time communication channel. An output stage 2525 is coupled to output a classification result from the linear classifier 2410 . In some implementations, the linear processor 2410 may be implemented on one or more computing devices with relatively limited computational power. For example, linear processor 2410 may be implemented on a personal computer or on a mobile computing device such as a smartphone or tablet.

도 25에서, 분류 시스템 (2500)은 소스 신경 네트워크 (1705) 및 신경 네트워크 (2510)를 포함한다. 신경 네트워크 (2510)는, 신경 네트워크 내 활동의 패턴들의 표현들의 특성들 (또는 그런 표현들을 근사화한 것들)의 선형 조합에 기반한 동작들을 수행하도록 구성된 신경 네트워크 디바이스이다. 상기 동작들은, 예를 들면, 물체 로컬화 동작들, 물체 탐지 동작들, 물체 세그먼트화 동작들, 예측 동작들, 행동 선택 동작들 등일 수 있다. 상기 도시된 구현에서, 신경 네트워크 (2510)는 입력 레이어 (2520) 및 출력 레이어 (2525)를 포함하는 피드포워드 (feedforward) 네트워크이다. 참조번호 2410의 선형 프로세서처럼, 신경 네트워크 (2510)는 소스 신경 네트워크 (1705) 내 활동의 패턴들의 표현들을 다양한 방식으로 수신할 수 있다.In FIG. 25 , the classification system 2500 includes a source neural network 1705 and a neural network 2510 . Neural network 2510 is a neural network device configured to perform operations based on a linear combination of characteristics (or approximations of such representations) of representations of patterns of activity within the neural network. The operations may be, for example, object localization operations, object detection operations, object segmentation operations, prediction operations, action selection operations, and the like. In the implementation shown above, neural network 2510 is a feedforward network comprising an input layer 2520 and an output layer 2525 . Like the linear processor at 2410 , neural network 2510 may receive representations of patterns of activity within source neural network 1705 in a variety of ways.

몇몇 구현들에서, 신경 네트워크 (2510)는 상대적으로 제한된 계산 성능을 가진 하나 이상의 컴퓨팅 디바이스들 상에서 추론들을 수행할 수 있다. 예를 들면, 신경 네트워크 (2510)는 개인용 컴퓨터 또는 스마트폰이나 태블릿과 같은 모바일 컴퓨팅 디바이스와 같은 신경 프로세싱 유닛 내 모바일 컴퓨팅 디바이스 상에서 구현될 수 있다. 참조번호 2400의 시스템과 유사하게, 참조번호 2500의 시스템은 일반적으로, 원격 신경 네트워크 (2510)가, 예를 들면, 데이터 통신 네트워크를 경유하여 소스 신경 네트워크 (1705)와 통신하는 분산 시스템일 것이다. 몇몇 구현들에서, 신경 네트워크 (2500)는, 예를 들면, 컨볼루션 신경 네트워크와 같은 딥 신경 네트워크일 수 있다.In some implementations, neural network 2510 can perform inferences on one or more computing devices with relatively limited computational power. For example, neural network 2510 may be implemented on a mobile computing device within a neural processing unit, such as a personal computer or mobile computing device such as a smartphone or tablet. Similar to the system at 2400, the system at 2500 will generally be a distributed system in which the remote neural network 2510 communicates with the source neural network 1705 via, for example, a data communication network. In some implementations, neural network 2500 may be, for example, a deep neural network, such as a convolutional neural network.

도 26에서, 참조번호 2600의 시스템은 소스 근사기 (1905) 및 선형 프로세서 (2410)를 포함한다. 근사 (1200') 및 표현 (1200) 사이의 차이점들에도 불구하고, 프로세서 (2410)는 근사 (1200')에 관한 동작들을 여전히 수행할 수 있다.In FIG. 26 , the system 2600 includes a source approximator 1905 and a linear processor 2410 . Notwithstanding the differences between the approximation 1200' and the representation 1200, the processor 2410 may still perform operations with respect to the approximation 1200'.

도 27에서, 참조번호 2700의 시스템은 소스 근사기 (1905) 및 신경 네트워크 (2510)를 포함한다. 근사 (1200') 및 표현 (1200) 사이의 차이점들에도 불구하고, 신경 네트워크 (2510)는 근사 (1200')에 관한 동작들을 여전히 수행할 수 있다.In FIG. 27 , the system 2700 includes a source approximator 1905 and a neural network 2510 . Notwithstanding the differences between the approximation 1200 ′ and the representation 1200 , the neural network 2510 may still perform operations with respect to the approximation 1200 ′.

몇몇 구현들에서, 참조번호 2600, 2700의 시스템들은, 예를 들면, 참조번호 2100, 2200 (도 21, 22)의 에지 디바이스들과 같은 에지 디바이스 상에서 구현될 수 있다. 몇몇 구현들에서, 참조번호 2600, 2700의 시스템들은, 참조번호 2300의 시스템 (도 23)과 같은 소스 신경 네트워크 내 활동에 대응하는 위상적 구조들의 발생의 표현들을 사용하여 로컬 신경 네트워크들이 트레이닝될 수 있는 시스템의 일부로서 구현될 수 있다. In some implementations, the systems 2600 and 2700 may be implemented on an edge device, such as the edge devices 2100 and 2200 ( FIGS. 21 , 22 ), for example. In some implementations, systems 2600 and 2700 can be trained using representations of occurrences of topological structures corresponding to activity in a source neural network, such as system 2300 ( FIG. 23 ). It can be implemented as part of an existing system.

도 28은 소스 신경 네트워크 내 활동에 대응하는 위상적인 구조들의 발생의 표현들을 이용하여 트레이닝될 수 있는 인공 신경 네트워크들을 포함하는 시스템의 개략적인 도시이다. 강화형 학습 (reinforcement learning)은, 인공 신경 네트워크의 결정들에 응답하여 취해진 행동들의 결과들에 관한 피드백으로부터 인공 신경 네트워크가 학습하는 유형의 기계 학습이다. 강화형 학습 시스템은 상기 환경 내 한 상태로부터 다른 상태로 이동한다. 강화형 학습 시스템은 환경 내 한 상태로부터 다른 상태로, 행동들을 수행하고 그 새로운 상태를 특성화하는 정보 그리고 그 행동의 성공 (또는 성공 없음)을 특성화하는 보상 및/또는 후회를 수신함으로써, 이동한다. 강화형 학습은 학습 프로세스를 통해 전체 보상을 최대화 (또는 후회를 최소화)하려고 시도한다.28 is a schematic illustration of a system including artificial neural networks that can be trained using representations of the occurrence of topological structures corresponding to activity in a source neural network. Reinforcement learning is a type of machine learning in which an artificial neural network learns from feedback about the results of actions taken in response to the artificial neural network's decisions. A reinforcement learning system moves from one state to another in the environment. A reinforcement learning system moves from one state to another in the environment by performing actions and receiving information characterizing the new state and rewards and/or regrets characterizing the success (or no success) of that action. Reinforcement learning attempts to maximize the overall reward (or minimize regret) throughout the learning process.

상기 도시된 구현에서, 강화형 학습 시스템 (2800) 내 인공 신경 네트워크는, 강화형 학습 접근 방식을 사용하는 딥 신경 네트워크 (2805) (또는 다른 딥 러닝 구조)이다. 몇몇 구현들에서, 딥 신경 네트워크 (2805)는 (신경 네트워크 (2510) (도 25, 27)와 같은) 로컬 인공 신경 네트워크일 수 있으며, 그리고, 예를 들면, 자동차, 비행기, 로봇, 또는 다른 디바이스 상에서 로컬로 구현될 수 있다. 그러나, 이는 반드시 그런 것은 아니며 다른 구현들에서 딥 신경 네트워크 (2805)는 네트워크 구성된 디바이스들의 시스템 상에서 구현될 수 있다.In the implementation shown above, the artificial neural network in the reinforcement learning system 2800 is a deep neural network 2805 (or other deep learning structure) that uses a reinforcement learning approach. In some implementations, deep neural network 2805 can be a local artificial neural network (such as neural network 2510 ( FIGS. 25 , 27 )), and, for example, a car, airplane, robot, or other device. It can be implemented locally on However, this is not necessarily the case and in other implementations the deep neural network 2805 may be implemented on a system of networked devices.

소스 근사기 (1905) 및 딥 신경 네트워크 (2805)에 추가로, 강화형 학습 시스템 (2800)은 액추에이터 (2810), 하나 이상의 센서들 (2815) 및 교사 (teacher) 모듈 (2820)을 포함한다. 몇몇 구현들에서, 강화형 학습 시스템 (2800)은 추가 데이터의 하나 이상의 소스들 (2825)을 또한 포함한다.In addition to the source approximator 1905 and the deep neural network 2805 , the reinforcement learning system 2800 includes an actuator 2810 , one or more sensors 2815 and a teacher module 2820 . In some implementations, the reinforcement learning system 2800 also includes one or more sources 2825 of additional data.

액추에이터 (2810)는 환경 (2830)과 상호작용하는 메커니즘이나 시스템을 제어하는 디바이스이다. 몇몇 구현들에서, 액추에이터 (2810)는 물리적인 메커니즘이나 시스템 (예를 들면, 자동차의 스티어링 또는 로봇의 포지셔닝)을 제어한다. 다른 구현들에서, 액추에이터 (2810)는 가상 메커니즘이나 시스템 (예를 들면, 가상 게임 보드 또는 투자 포트폴리오)을 제어할 수 있다. 그래서, 참조번호 2830의 환경은 또한 물리적이거나 가상일 수 있다. Actuator 2810 is a device that controls a mechanism or system that interacts with environment 2830 . In some implementations, actuator 2810 controls a physical mechanism or system (eg, steering of a car or positioning of a robot). In other implementations, the actuator 2810 may control a virtual mechanism or system (eg, a virtual game board or investment portfolio). Thus, the environment 2830 may also be physical or virtual.

센서(들) (2815)은 상기 환경 (2830)의 특성들을 측정하는 디바이스들이다. 상기 측정들 중 적어도 몇몇은 제어받는 메커니즘이나 시스템 그리고 상기 환경 (2830)의 다른 모습들 사이의 상호작용들을 특성화한다. 액추에이터 (2810)가 자동차를 조종할 때에, 센서(들) (2815)은 자동차의 속도, 방향, 및 가속도 중 하나 이상, 다른 특징들에 대한 자동차의 근접성, 그리고 자동차에 대한 다른 특징들의 응답을 측정할 수 있다. 다른 예로서, 액추에이터 (2810)가 투자 포트폴리오를 제어할 때에, 센서(들) (2815)은 그 포트폴리오와 연관된 가치 및 위험을 측정할 수 있다.Sensor(s) 2815 are devices that measure characteristics of the environment 2830 . At least some of the measurements characterize interactions between the controlled mechanism or system and other aspects of the environment 2830 . As the actuator 2810 steers the vehicle, the sensor(s) 2815 measures one or more of the vehicle's speed, direction, and acceleration, the vehicle's proximity to other characteristics, and the response of the other characteristics to the vehicle. can do. As another example, when the actuator 2810 controls an investment portfolio, the sensor(s) 2815 may measure the value and risk associated with that portfolio.

일반적으로, 소스 근사기 (1905) 및 교사 모듈 (2820) 둘 모두는 센서(들) (2815)에 의해 행해진 측정치들 중 적어도 일부를 수신하기 위해 결합된다. 예를 들면, 소스 근사기 (1905)는 입력 레이어 (1915)에서 측정 데이터를 수신할 수 있으며, 소스 신경 네트워크 내 활동의 패턴들에서 일어나는 위상적인 구조들의 표현의 근사 (1200')를 출력할 수 있다.In general, both the source approximator 1905 and the teacher module 2820 are coupled to receive at least some of the measurements made by the sensor(s) 2815 . For example, the source approximator 1905 may receive measurement data at the input layer 1915 and output an approximation 1200' of the representation of topological structures occurring in patterns of activity within the source neural network. have.

교사 모듈 (2820)은 센서(들) (2815)로부터 수신된 측정들을 해석하고 딥 신경 네트워크 (2805)에게 보상 및/또는 후회를 제공한다. 보상은 양이며 상기 메커니즘이나 시스템에 대한 성공적인 제어를 표시한다. 후회는 음이며 성공하지 못하거나 최적 제어 미만을 표시한다. 일반적으로, 교사 모듈 (2820)은 강화형 학습을 위해 상기 보상/후회와 함께 상기 측정들의 특성화를 또한 제공한다. 일반적으로, 상기 측정들의 상기 특성화는 소스 신경 네트워크 내 활동의 패턴들 내에서 일어나는 위상적인 구조들의 표현의 (참조번호 1200'의 근사와 같은) 근사이다. 예를 들면, 교사 모듈 (2820)은 소스 근사기 (1905)로부터 출력된 근사들 (1200')을 읽고 그 읽은 근사 (1200')를 대응하는 보상/후회 값들과 쌍을 이루게 할 수 있다. The teacher module 2820 interprets the measurements received from the sensor(s) 2815 and provides a reward and/or regret to the deep neural network 2805 . The reward is positive and indicates successful control of the mechanism or system. Regret is negative and indicates no success or less than optimal control. In general, the teacher module 2820 also provides characterization of the measures along with the reward/remorse for reinforcement learning. In general, the characterization of the measurements is an approximation (such as the approximation of 1200') of the representation of topological structures occurring within patterns of activity in the source neural network. For example, the teacher module 2820 can read the approximations 1200' output from the source approximator 1905 and pair the read approximations 1200' with corresponding reward/regret values.

많은 구현들에서, 강화형 학습은 실시간으로 또는 딥 신경 네트워크 (2805)에 의한 액추에이터 (2810)에 대한 능동 제어 동안에 참조번호 2800의 시스템에서 발생하지 않는다. 오히려, 트레이닝 피드백이 교사 모듈 (2820)에 의해 수집되며 그리고 딥 신경 네트워크 (2805)가 능동적으로 액추에이터 (2810)에 명령을 내리지 않고 있을 때에 강화형 트레이닝을 위해 사용될 수 있다. 예를 들면, 몇몇 구현들에서, 교사 모듈 (2820)은 딥 신경 네트워크 (2805)로부터 원격에 있을 수 있으며 딥 신경 네트워크 (2805)와는 간헐적인 데이터 통신 상태에 있을 수 있다. 강화형 학습이 간헐적이건 또는 연속적이건에 무관하게, 딥 신경 네트워크 (2805)는 교사 모듈 (2820)로부터 수신된 정보를 사용하여 보상을 최적화하며 그리고/또는 후회를 줄이기 위해 발전될 수 있다. In many implementations, reinforcement learning does not occur in the system 2800 in real time or during active control of the actuator 2810 by the deep neural network 2805 . Rather, training feedback is collected by the teacher module 2820 and can be used for reinforcement training when the deep neural network 2805 is not actively issuing commands to the actuators 2810 . For example, in some implementations, the teacher module 2820 may be remote from the deep neural network 2805 and may be in intermittent data communication with the deep neural network 2805 . Whether reinforcement learning is intermittent or continuous, the deep neural network 2805 can be developed using information received from the teacher module 2820 to optimize rewards and/or reduce regret.

몇몇 구현들에서, 시스템 (2800)은 추가 데이터의 하나 이상의 소스들 (2825)을 또한 포함한다. 소스 근사기 (1905)는 입력 레이어 (1915)에서 데이터 소스들 (2825)로부터 데이터를 또한 수신할 수 있다. 이런 사례들에서, 근사 (1200')는 센서 데이터 및 데이터 소스들 (2825)로부터의 데이터 둘 모두를 프로세싱한 것으로부터의 결과일 것이다.In some implementations, system 2800 also includes one or more sources 2825 of additional data. The source approximator 1905 can also receive data from the data sources 2825 at the input layer 1915 . In such instances, the approximation 1200 ′ would result from processing both sensor data and data from data sources 2825 .

몇몇 구현들에서, 하나의 강화형 학습 시스템 (2800)에 의해 수집된 데이터는, 다른 강화형 학습 시스템들을 포함하는 다른 시스템들의 트레이낭 또는 강화형 학습을 위해 사용될 수 있다. 예를 들면, 상기 보상/후회 값들과 함께 상기 측정들을 특성화한 것은, 다양한 강화형 학습 시스템들로부터 그런 데이터를 수집하고 그 데이터를 그 강화형 학습 시스템들 사이에 재분배하는 데이터 교환 시스템으로 상기 교사 모듈 (2820)에 의해 제공될 수 있다. 또한, 위에서 설명된 것처럼, 상기 측정들을 특성화한 것은, 참조번호 1200'의 근사처럼, 소스 신경 네트워크 내 활동의 패턴들 내에서 일어나는 위상적인 구조들의 표현의 근사일 수 있다. In some implementations, data collected by one reinforcement learning system 2800 may be used for training or reinforcement learning of other systems, including other reinforcement learning systems. For example, characterizing the measures, along with the reward/repentance values, may include the teacher module as a data exchange system that collects such data from various reinforcement learning systems and redistributes the data among the reinforcement learning systems. (2820). Also, as described above, characterizing the measurements may be an approximation of the representation of topological structures occurring within patterns of activity in the source neural network, such as the approximation of reference numeral 1200'.

강화형 학습 시스템 (2800)에 의해 수행된 상기 특별한 동작들은 물론 그 특별한 동작 환경에 종속할 것이다. 예를 들면, 소스 근사기 (1905), 딥 신경 네트워크 (2805), 액추에이터 (2810), 및 센서들 (2815)이 자동차의 일부인 환경들에서, 딥 신경 네트워크 (2805)는 그 자동차를 조정하면서 물체 로컬화 및/또는 탐지 동작들을 수행할 수 있다.The particular operations performed by reinforcement learning system 2800 will of course depend on that particular operating environment. For example, in environments where the source approximator 1905 , the deep neural network 2805 , the actuator 2810 , and the sensors 2815 are part of an automobile, the deep neural network 2805 may control the automobile while steering the object. Localization and/or detection operations may be performed.

강화형 학습 시스템 (2800)에 의해 수집된 데이터가 다른 시스템들의 트레이닝이나 강화형 학습을 위해 사용되는 구현들에서, 보상/후회 값들 그리고 물체 로컬화 및/또는 탐지 동작들이 수행되었을 때에 상기 환경의 상태를 특성화하는 근사들 (1200')이 상기 데이터 교환 시스템으로 제공될 수 있다. 상기 데이터 교환 시스템은 그러면 그 보상/후회 값들 및 근사들 (1200')을 다른 차량들과 연관된 다른 강화형 학습 시스템들 (2800)에게로, 그 다른 차량들에서의 강화 학습을 위해 분배할 수 있다. 예를 들면, 강화형 학습은, 상기 보상/후회 값들 및 근사들 (1200')을 사용하여 제2 차량에서 물체 로컬화 및/또는 탐지 동작들을 개선하기 위해 사용될 수 있다. In implementations where data collected by reinforcement learning system 2800 is used for reinforcement learning or training of other systems, reward/repentance values and the state of the environment when object localization and/or detection operations were performed. Approximations 1200' that characterize ? may be provided to the data exchange system. The data exchange system can then distribute its reward/regret values and approximations 1200' to other reinforcement learning systems 2800 associated with other vehicles for reinforcement learning in those other vehicles. . For example, reinforcement learning may be used to improve object localization and/or detection operations in the second vehicle using the reward/repentance values and approximations 1200 ′.

그러나, 다른 차량들에서 학습된 동작들은 딥 신경 네트워크 (2805)에 의해 수행된 동작들과 일치할 필요는 없다. 예를 들면, 이동 시간에 기반한 보상/후회 값들 그리고 예를 들면 GPS 데이터 소스 (2825)에 의해 식별된 위치에서의 예상치 못한 젖은 도로를 특성화하는 센서 데이터의 입력으로부터의 결과인 근사들 (1200')은 다른 차량에서의 경로 플래닝 (route planning)을 위해 사용될 수 있다.However, the actions learned in other vehicles need not coincide with the actions performed by the deep neural network 2805 . For example, compensation/regret values based on travel time and approximations 1200 ′ resulting from input of sensor data characterizing an unexpected wet road at a location identified by, for example, GPS data source 2825 , for example. can be used for route planning in other vehicles.

본 명세서에서 설명된 특허 대상들 및 동작들의 실시예들은 디지털 전자 회로로, 또는 컴퓨터 소프트웨어, 펌웨어니 본 명세서에서 개시된 구조들 및 그 구조들의 등가물들을 포함하는 하드웨어로, 또는 그것들 중 하나 이상의 조합들로 구현될 수 있다. 본 명세서에서 설명된 특허 대상의 실시예들은 데이터 프로세싱 장치에 의한 실행을 위해 또는 데이터 프로세싱 장치의 동작을 제어하기 위해 컴퓨터 저장 매체 상에서 인코딩된 하나 이상의 컴퓨터 프로그램들, 즉, 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들로서 구현될 수 있다. 대안으로 또는 추가로, 상기 프로그램 명령어들은, 데이터 프로세싱 장치에 의한 실행을 위해 적합한 수신기 장치로의 전송을 위해 정보를 인코딩하기 위해 생성된, 인위적으로 생성된 전파된 신호, 예를 들면, 기계-생성 전기적, 광학적, 또는 전자기장 신호 상에서 인코딩될 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 저장 디바이스, 컴퓨터-판독가능 저장 기판, 랜덤 또는 시리얼 액세스 메모리 어레이나 디바이스 , 또는 그것들 중 하나 이상의 조합이거나 그 내부에 포함될 수 있다. 더욱이, 컴퓨터 저장 매체가 전파된 신호가 아니면, 컴퓨터 저장 매체는 인위적으로 생성된 전파 신호 내에서 인코딩된 컴퓨터 프로그램 명령어들의 소스나 목적지일 수 있다. 상기 컴퓨터 저장 매체는 또한 하나 이상의 분리된 물리적 컴포넌트들이나 매체 (예를 들면, 다수의 CD들, 디스크들, 또는 다른 저장 디바이스들)이거나 그 내부에 포함될 수 있다. Embodiments of the patent objects and operations described herein may be in digital electronic circuitry, or in computer software, firmware, or hardware including the structures disclosed herein and their equivalents, or in combinations of one or more thereof. can be implemented. Embodiments of the patented subject matter described herein are one or more computer programs encoded on a computer storage medium, ie, one or more modules of computer program instructions, for execution by a data processing apparatus or for controlling the operation of the data processing apparatus. can be implemented as Alternatively or additionally, the program instructions are an artificially generated propagated signal, eg, a machine-generated signal, generated for encoding information for transmission to a receiver device suitable for execution by a data processing device. It can be encoded on electrical, optical, or electromagnetic field signals. A computer storage medium may be contained within or be a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination of one or more thereof. Moreover, if the computer storage medium is not a propagated signal, the computer storage medium may be the source or destination of computer program instructions encoded within an artificially generated propagated signal. The computer storage medium may also be included in or be one or more separate physical components or media (eg, multiple CDs, disks, or other storage devices).

본 명세서에서 설명된 동작들은, 하나 이상의 컴퓨터-판독가능 저장 디바이스들 상에 저장되거나 다른 소스들로부터 수신된 데이터에 관하여 데이터 프로세싱 장치에 의해 수행된 동작들로서 구현될 수 있다. The operations described herein may be implemented as operations performed by a data processing apparatus on data stored on one or more computer-readable storage devices or received from other sources.

"데이터 프로세싱 장치"의 용어는 모든 유형의 장치, 디바이스들, 및 머신들을 포함하며, 예로서 프로그래머블 프로세서, 컴퓨터, 시스템 온 칩, 또는 전술한 것들 중 다수의 것들이나 조합들을 포함한다. 상기 장치는 특별 목적 로직 회로, 예를 들면, FPGA (field programmable gate array) 또는 ASIC (application specific integrated circuit)을 포함할 수 있다. 상기 장치는 하드웨어에 추가로 문제의 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예를 들면 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 시스템, 크로스-플랫폼 런타임 환경, 가상 머신, 또는 그것들 중 하나 이상의 조합들을 또한 포함할 수 있다. 상기 장치 및 실행 환경은 웹 서비스, 분산 컴퓨팅 및 그리드 컴퓨팅 하부구조와 같은 다양한 상이한 컴퓨팅 모델 하부구조를 실현할 수 있다The term "data processing apparatus" includes all types of apparatus, devices, and machines, including by way of example a programmable processor, computer, system on chip, or many or combinations of the foregoing. The device may include a special purpose logic circuit, for example, a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC). The device may include, in addition to hardware, code that creates an execution environment for the computer program in question, for example processor firmware, protocol stack, database management system, operating system, cross-platform runtime environment, virtual machine, or one or more of them. Combinations may also be included. The device and execution environment may realize a variety of different computing model infrastructures, such as web services, distributed computing and grid computing infrastructure.

컴퓨터 프로그램 (프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트, 또는 코드로도 알려짐)은 컴파일되거나 인터프리트된 언어, 선언형 또는 절차형 언어를 포함하는 임의 모습의 프로그래밍 언어로 쓰여질 수 있으며, 그리고 컴퓨터 프로그램은 단독 프로그램으로 또는 모듈, 컴포넌트, 서브루틴, 오브젝트, 또는 컴퓨팅 환경에서의 사용을 위해 적합한 다른 유닛을 포함하는 임의 모습으로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내 파일에 대응할 수 있지만, 반드시 그럴 필요는 없다. 프로그램은 다른 프로그램이나 데이터 (예를 들면, 마크업 언어 문헌 (markup language document) 내에 저장된 하나 이상의 스크립트들)를 보유한 파일의 일부 내에, 문제의 프로그램에 전용인 단일 파일 내에, 또는 다수의 통합된 파일들 (예를 들면, 하나 이상의 모듈들, 서브 프그램들, 또는 코드의 일부를 저장하는 파일들) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에서 또는 한 사이트에 위치하거나 다수의 사이트들에 분산되어 통신 네트워크에 의해 상호연결된 다수의 컴퓨터들 상에서 실행되기 위해 배치될 수 있다.A computer program (also known as a program, software, software application, script, or code) may be written in any programming language, including compiled or interpreted languages, declarative or procedural languages, and the computer program stands alone It can be deployed as a program or in any form, including modules, components, subroutines, objects, or other units suitable for use in a computing environment. A computer program can, but need not, correspond to a file in a file system. A program may be in part of a file holding another program or data (eg, one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple consolidated files. ) (eg, files that store portions of one or more modules, subprograms, or code). A computer program may be deployed for execution on one computer or on multiple computers located at one site or distributed over multiple sites and interconnected by a communication network.

본 명세서에서 설명된 상기 프로세스들 및 로직 흐름들은, 입력 데이터를 작동시키고 출력을 생성함으로써 행동들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래머블 프로세서들에 의해 수행될 수 있다. 상기 프로세스들 및 로직 흐름들은 특수 목적 로직 회로, 예를 들면, FPGA (field programmable gate array) 또는 ASIC (application specific integrated circuit)에 의해 또한 수행될 수 있으며, 그리고 장치는 상기 특수 목적 로직 회로로서 또한 구현될 수 있다.The processes and logic flows described herein may be performed by one or more programmable processors executing one or more computer programs to perform actions by operating on input data and generating output. The processes and logic flows may also be performed by a special purpose logic circuit, for example a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC), and the apparatus also implements as the special purpose logic circuit. can be

컴퓨터 프로그램 실행을 위해 적합한 프로세서들은, 예로서, 범용 마이크로프로세서 및 특수 목적 마이크로프로세서 둘 모두, 그리고 임의 유형의 디지털 컴퓨터의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 읽기 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 본질적인 요소들은 명령어들에 따른 행동들을 수행하기 위한 프로세서 그리고 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스들, 예를 들면, 자기 디스크, 자기 광학 디스크, 광학 디스크를 또한 포함하거나, 또는 데이터를 수신하고 데이터를 전달하기 위해 하나 이상의 대용량 저장 디바이스들과 작동적으로 결합될 것이다. 그러나, 컴퓨터는 그런 디바이스들을 구비할 필요는 없다. 더욱이, 컴퓨터는 다른 디바이스 내에, 예를 들어, 몇 가지만 언급하면, 모바일 전화기, 개인용 디지털 어시스턴트 (PDA), 모바일 오디오나 비디오 플레이어, 게임 콘솔, 글로벌 포지셔닝 시스템 (GPS) 수신기, 또는 휴대용 저장 디바이스 (예를 들면, 유니버셜 시리얼 버스 (USB) 플래시 드라이브) 내에 내장될 수 있다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 디바이스들은, 예로서 반도체 메모리 디바이스들, 예를 들면, EPROM, EEPROM 및 플래시 메모리 디바이스들; 자기 디스크, 예를 들면, 내부 하드 디스크들이나 탈착가능 디스크; 자기 광학 디스크; 및 CD ROM과 DVD-ROM 디스크들을 포함하는 비 휘발성 메모리, 매체 및 메모리 디바이스들의 모든 모습들을 포함한다. 상기 프로세서 및 메모리는 특수 목적 로직 회로에 의해 보충될 수 있으며, 또는 그 특수 목적 로직 회로 내에 통합될 수 있다.Processors suitable for computer program execution include, by way of example, both general purpose microprocessors and special purpose microprocessors, and one or more processors of any type of digital computer. Generally, the processor will receive instructions and data from either read-only memory or random access memory or both. The essential elements of a computer are a processor for performing actions in accordance with the instructions and one or more memory devices for storing instructions and data. Generally, a computer also includes one or more mass storage devices for storing data, eg, a magnetic disk, a magneto-optical disk, an optical disk, or one or more mass storage devices for receiving and transferring data. will be operatively coupled with However, the computer need not be equipped with such devices. Moreover, a computer may be located within another device, such as a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device (e.g., to name a few) for example, in a Universal Serial Bus (USB) flash drive). Devices suitable for storing computer program instructions and data include, for example, semiconductor memory devices such as EPROM, EEPROM and flash memory devices; magnetic disks such as internal hard disks or removable disks; magneto-optical disk; and all aspects of non-volatile memory, media and memory devices, including CD ROM and DVD-ROM disks. The processor and memory may be supplemented by, or integrated into, special purpose logic circuitry.

사용자와의 상호작용 (interaction)을 제공하기 위해, 본 명세서에서 설명된 특허 대상의 실시예들은 컴퓨터 상에서 구현될 수 있으며, 그 컴퓨터는 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예를 들면, CRT (cathode ray tube) 또는 LCD (liquid crystal display) 모니터 그리고 사용자가 상기 컴퓨터에게 입력을 제공할 수 있게 하는 키보드 및 포인팅 디바이스, 예를 들면, 마우스나 트랙볼을 구비한다. 다른 유형의 디바이스들이 사용자와의 상호작용을 제공하기 위해 마찬가지로 사용될 수 있다; 예를 들면, 사용자에게 제공된 피드백은 감각적 피드백, 예를 들면, 시각적 피드백, 청각적 피드백, 또는 촉각적인 피드백 중의 임의 모습일 수 있다; 그리고 사용자로부터의 입력은 청각적인, 음성의, 또는 촉각적인 입력을 포함하는 임의 모습으로 수신될 수 있다. 추가로, 예를 들면, 사용자의 클라이언트 디바이스 상의 웹 브라우저로부터 수신된 요청들에 응하여 웹 페이지들을 상기 웹 브라우저로 송신함으로써, 컴퓨터는 사용자가 사용하는 디바이스로 문서들을 송신하고 상기 디바이스로부터 문서들을 수신함으로써 그 사용자와 상호작용할 수 있다.In order to provide interaction with a user, embodiments of the patent subject matter described herein may be implemented on a computer, which computer may include a display device for displaying information to the user, such as a CRT ( a cathode ray tube) or liquid crystal display (LCD) monitor, and a keyboard and pointing device that allows a user to provide input to the computer, such as a mouse or a trackball. Other types of devices may likewise be used to provide interaction with a user; For example, the feedback provided to the user may be any form of sensory feedback, eg, visual feedback, auditory feedback, or tactile feedback; And input from the user may be received in any form, including audible, verbal, or tactile input. Additionally, for example, by sending web pages to the web browser in response to requests received from a web browser on the user's client device, the computer can send documents to and receive documents from the device the user is using. You can interact with that user.

본 명세서가 많은 특정 구현 상세 내용들을 포함하지만, 이것들은 발명의 범위 또는 청구될 수 있는 범위에 관한 한계들로서 해석되지 않아야 하며, 오히려 특별한 발명의 특별한 실시예들에 특정적인 특징들에 대한 설명들로서 해석되어야 한다. 분리된 실시예들의 환경에서 본 명세서 내에 설명된 어떤 특징들은 단일의 실시예 내에서 조합하여 또한 구현될 수 있다. 역으로, 단일의 실시예의 환경에서 설명된 다양한 특징들은 다수의 실시예들에서 분리하여 또는 어떤 적합한 서브조합으로 또한 구현될 수 있다. 더욱이, 특징들이 어떤 조합들에서 행동하는 것으로 위에서 설명되며 심지어는 초기에 그렇게 선언될 수 있지만, 선언된 조합으로부터의 하나 이상의 특징들은 몇몇 경우에는 그 조합으로부터 삭제될 수 있으며, 그리고 상기 선언된 조합은 서브조합 또는 서브조합의 변이에 관한 것일 수 있다.Although this specification contains many specific implementation details, these should not be construed as limitations as to the scope of the invention or as may be claimed, but rather as descriptions of features specific to particular embodiments of a particular invention. do. Certain features described herein in the context of separate embodiments may also be implemented in combination within a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features are described above as acting in certain combinations and may even be initially declared as such, one or more features from a declared combination may in some cases be deleted from the combination, and the declared combination is It may relate to a subcombination or variation of a subcombination.

유사하게, 동작들이 도면들에서 특별한 순서로 도시되지만, 이것은 그런 동작들이 소망될 결과들을 달성하기 위해 도시된 특별한 순서로 또는 순차적으로 수행되거나 또는 모든 도시된 동작들이 수행되어야 하는 것으로 해석되지 않아야 한다. 특정 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 더욱이, 위에서 설명된 실시예들에서 다양한 컴포넌트들의 분리는 모든 실시예들에서 그런 분리가 필요한 것으로 해석되지 않아야 하며, 그리고 상기 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품 내에 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다. Similarly, although acts are shown in a particular order in the drawings, this should not be construed as requiring that such acts be performed in the particular order or sequentially shown or that all shown acts must be performed to achieve desired results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various components in the embodiments described above should not be construed as requiring such separation in all embodiments, and the program components and systems described above may generally be integrated together in a single software product or multiple It should be understood that they may be packaged into software products.

그래서, 본 특허 대상의 특별한 구현들이 설명되었다. 다른 구현들은 이어지는 청구항들의 범위 내에 존재한다. 몇몇 경우에, 청구항들에서 상술된 행동들은 상이한 순서로 수행될 수 있으며 여전히 소망된 결과들을 달성할 수 있다. 추가로, 동반 도면들에서 도시된 프로세스들은 소망된 결과들을 달성하기 위해 도시된 그 특별한 순서나 순차적인 것을 반드시 필요로 하는 것은 아니다. 특정 실시예들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다.Thus, particular implementations of the subject matter of this patent have been described. Other implementations are within the scope of the following claims. In some cases, the acts recited in the claims may be performed in a different order and still achieve desired results. Additionally, the processes depicted in the accompanying drawings do not necessarily require the particular order or sequence shown to achieve the desired results. In certain embodiments, multitasking and parallel processing may be advantageous.

여러 실시예들이 설명되었다. 그럼에도 불구하고, 다양한 수정들이 만들어질 수 있다는 것이 이해될 것이다. 예를 들면, 참조번호 1200의 표현이 이진수 표현이며, 그 이진수 표현에서 각 비트는 개별적으로 그래프 내 특징의 존재 또는 부재를 표현함에도 불구하고, 정보의 다른 표현들이 가능하다. 예를 들면, 벡터 또는 다중-값인, 비-이진 자릿수들의 행렬이, 예를 들면, 특징들의 존재 또는 부재 그리고 아마도 그 특징들의 다른 특성들을 표현하기 위해 사용될 수 있다. 그런 특성의 예는 상기 특징들을 구성하는 활동을 구비한 에지들의 가중치이다.Several embodiments have been described. Nevertheless, it will be understood that various modifications may be made. For example, the representation of reference numeral 1200 is a binary representation, where each bit individually represents the presence or absence of a feature in the graph, although other representations of information are possible. A matrix of non-binary digits, eg, a vector or multi-valued, may be used to represent, for example, the presence or absence of features and possibly other characteristics of those features. An example of such a characteristic is the weight of the edges with activity constituting said characteristic.

따라서, 다른 실시예들은 이어지는 청구항들의 범위 내에 존재한다.Accordingly, other embodiments are within the scope of the following claims.

Claims (27)

신경 네트워크를 포함한 디바이스로서,
상기 신경 네트워크는 트레이닝 되어:
제1 입력에 대한 응답으로, 상기 제1 입력에 응하여 소스 순환 신경 네트워크에서 링크들을 따라 노드들 사이에서 일어났을 신호 전송 활동의 복수의 위상적 패턴들 각각의 존재 또는 부재의 제1 표현으로,
상기 소스 순환 신경 네트워크는 상기 신경 네트워크와 상이하며, 그리고
상기 제1 표현은 상기 제1 입력에 응하여 상기 소스 순환 신경 네트워크에서 일어났을 신호 전송 활동의 개별 위상적 패턴들 각각의 존재 또는 부재만을 근사화하는, 제1 표현,
제2 입력에 대한 응답으로, 상기 제2 입력에 응하여 상기 소스 순환 신경 네트워크에서 상기 링크들을 따라 노드들 사이에서 일어났을 신호 전송 활동의 복수의 위상적 패턴들 각각의 존재 또는 부재의 제2 표현으로, 상기 제2 표현은 상기 제2 입력에 응하여 상기 소스 순환 신경 네트워크에서 일어났을 신호 전송 활동의 개별 위상적 패턴들 각각의 존재 또는 부재만을 근사화하는, 제2 표현, 그리고
제3 입력에 대한 응답으로, 상기 제3 입력에 응하여 상기 소스 순환 신경 네트워크에서 상기 링크들을 따라 노드들 사이에서 일어났을 신호 전송 활동의 복수의 위상적 패턴들 각각의 존재 또는 부재의 제3 표현으로, 상기 제3 표현은 상기 제3 입력에 응하여 상기 소스 순환 신경 네트워크에서 일어났을 신호 전송 활동의 개별 위상적 패턴들 각각의 존재 또는 부재만을 근사화하는, 제3 표현을 산출하는, 디바이스.
A device comprising a neural network, comprising:
The neural network is trained to:
in response to a first input, a first representation of the presence or absence of each of a plurality of topological patterns of signal transmission activity that would have occurred between nodes along links in a source recurrent neural network in response to the first input;
the source circulatory neural network is different from the neural network, and
wherein the first representation approximates only the presence or absence of each of the respective topological patterns of signaling activity that would have occurred in the source recurrent neural network in response to the first input;
in response to a second input, a second representation of the presence or absence of each of a plurality of topological patterns of signal transmission activity that would have occurred between nodes along the links in the source recurrent neural network in response to the second input , a second representation approximating only the presence or absence of each of the respective topological patterns of signaling activity that would have occurred in the source recurrent neural network in response to the second input; and
in response to a third input, a third representation of the presence or absence of each of a plurality of topological patterns of signal transmission activity that would have occurred between nodes along the links in the source recurrent neural network in response to the third input , wherein the third representation approximates only the presence or absence of each of the respective topological patterns of signaling activity that would have occurred in the source recurrent neural network in response to the third input.
제1항에 있어서,
상기 위상적 패턴들 모두는 상기 소스 순환 신경 네트워크 내 셋 이상의 노드들 및 그 노드들 사이의 셋 이상의 에지들을 포함하는, 디바이스.
According to claim 1,
wherein all of the topological patterns include three or more nodes in the source recurrent neural network and three or more edges between the nodes.
제1항에 있어서,
상기 위상적 패턴들은 방향성 심플렉스 (simplex)들을 포함하는, 디바이스.
According to claim 1,
wherein the topological patterns comprise directional simplexes.
제1항에 있어서,
상기 위상적 패턴들은 공동 (cavity)들을 둘러싼, 디바이스.
According to claim 1,
wherein the topological patterns surround cavities.
제1항에 있어서,
상기 입력들 각각에게 응답하는 다른 신호 전송 활동의 복잡성과 구별 가능한 복잡성을 신호 전송 활동의 상기 패턴들이 가지는 시점들에서 상기 제1 표현, 제2 표현, 및 제3 표현 각각은 상기 소스 순환 신경 네트워크에서 일어났을 위상적 패턴들을 배타적으로 표현하는, 디바이스.
According to claim 1,
Each of the first representation, the second representation, and the third representation at the points in time the patterns of signaling activity have a complexity distinguishable from the complexity of another signaling activity responsive to each of the inputs is in the source recurrent neural network. A device that exclusively represents topological patterns that would have occurred.
제1항에 있어서,
상기 신경 네트워크에 의해 산출된 상기 표현들을 수신하고 그 수신된 표현들을 프로세싱하기 위해 결합된 프로세서를 더 포함하는, 디바이스.
According to claim 1,
and a processor coupled to receive the representations produced by the neural network and process the received representations.
제6항에 있어서,
상기 프로세서는 상기 신경 네트워크에 의해 산출된 상기 표현들을 프로세싱하기 위해 트레이닝된 제2 신경 네트워크를 포함하는, 디바이스.
7. The method of claim 6,
wherein the processor comprises a second neural network trained to process the representations produced by the neural network.
제1항에 있어서,
상기 제1 표현, 제2 표현, 및 제3 표현 각각은 다중-값인, 비-이진 자릿수들을 포함하는, 디바이스.
According to claim 1,
wherein each of the first expression, the second expression, and the third expression includes multi-valued, non-binary digits.
제1항에 있어서,
상기 제1 표현, 제2 표현, 및 제3 표현 각각은,
신호 전송 활동의 상기 패턴들이 상기 소스 순환 신경 네트워크 내 어디에서 일어나는가를 규정하지 않으면서 상기 위상적 패턴들의 존재 또는 부재를 표현하는, 디바이스.
According to claim 1,
Each of the first expression, the second expression, and the third expression includes:
representing the presence or absence of the topological patterns without prescribing where the patterns of signaling activity occur within the source circulatory neural network.
제1항에 있어서,
상기 디바이스는 스마트폰을 포함하는, 디바이스.
According to claim 1,
The device comprises a smartphone.
삭제delete 디바이스로서,
노드들이 누산기들로서 작동하는 소스 순환 신경 네트워크에서 링크들을 따라 노드들 사이에서 일어났을 신호 전송 활동의 위상적 패턴들의 존재 또는 부재의 표현들을 입력하고 프로세싱하기 위해 결합되도록 구성된 신경 네트워크를 포함하며,
신호 전송 활동의 프로세싱된 위상적 패턴들 및 입력은 복수의 상이한 입력들에 응답하여 일어나며, 상기 신경 네트워크는 상기 표현들을 프로세싱하고 응답 출력들을 산출하기 위해 트레이닝된, 디바이스.
As a device,
a neural network configured to be coupled to input and process representations of the presence or absence of topological patterns of signal transmission activity that would have occurred between nodes along links in a source recurrent neural network in which the nodes act as accumulators;
The processed topological patterns and input of signal transmission activity occur in response to a plurality of different inputs, the neural network being trained to process the representations and produce response outputs.
제12항에 있어서,
상기 위상적 패턴들 모두는 상기 소스 순환 신경 네트워크 내 셋 이상의 노드들 및 그 노드들 사이의 셋 이상의 에지 (edge)들을 포함하는, 디바이스.
13. The method of claim 12,
wherein all of the topological patterns include three or more nodes in the source recurrent neural network and three or more edges between the nodes.
제12항에 있어서,
상기 위상적 패턴들은 방향성 심플렉스 (simplex)들을 포함하는, 디바이스.
13. The method of claim 12,
wherein the topological patterns comprise directional simplexes.
제12항에 있어서,
상기 입력들 각각에게 응답할 다른 신호 전송 활동의 복잡성과 구별 가능한 복잡성을 신호 전송 활동의 위상적 패턴들이 가지는 시점들에서 상기 존재 또는 부재 위상적 패턴들의 표현들은, 상기 소스 순환 신경 네트워크에서 존재할 또는 부재할 상기 존재 또는 부재 위상적 패턴들을 배타적으로 표현하는, 디바이스.
13. The method of claim 12,
Representations of the presence or absence topological patterns at points in time at which topological patterns of signaling activity have a complexity distinguishable from the complexity of other signaling activity that will respond to each of the inputs may be present or absent in the source recurrent neural network. A device that exclusively represents the presence or absence topological patterns to be performed.
제12항에 있어서, 상기 디바이스는,
복수의 상이한 입력들에 응답하여 소스 순환 신경 네트워크에서 일어났을 신호 전송 활동의 패턴들 내 위상적 패턴들의 존재 또는 부재의 표현들의 각자의 근사들을, 상기 상이한 입력들에 응답하여 산출하도록 트레이닝된 신경 네트워크를 더 포함하는, 디바이스.
The method of claim 12, wherein the device comprises:
a neural network trained to produce, in response to a plurality of different inputs, respective approximations of representations of the presence or absence of topological patterns in patterns of signal transmission activity that would have occurred in a source recurrent neural network in response to the different inputs. Further comprising, the device.
제12항에 있어서,
상기 존재 또는 부재 위상적 패턴들의 표현들은 다중-값인, 비-이진 자릿수들을 포함하는, 디바이스.
13. The method of claim 12,
wherein the representations of the presence or absence topological patterns include multi-valued, non-binary digits.
제12항에 있어서,
상기 존재 또는 부재 위상적 패턴들의 표현들은, 신호 전송 활동의 상기 패턴들이 상기 소스 순환 신경 네트워크 내 어디에서 일어났을가를 규정하지 않으면서 상기 위상적 패턴들의 존재 또는 부재를 표현하는, 디바이스.
13. The method of claim 12,
wherein the representations of the presence or absence topological patterns represent the presence or absence of the topological patterns without specifying where the patterns of signal transmission activity occurred within the source recurrent neural network.
삭제delete 신경 네트워크 디바이스에 의해 구현된 방법으로서, 상기 방법은:
소스 순환 신경 네트워크에서 링크들을 따라 노드들 사이에서 일어났을 신호 전송 활동의 위상적 패턴들의 존재 또는 부재의 표현을 입력하는 단계로, 상기 신호 전송 활동은 상기 소스 순환 신경 네트워크로의 입력에 응답하는 것인, 입력 단계;
상기 표현을 프로세싱하는 단계로, 상기 프로세싱하는 것은, 상기 소스 순환 신경 네트워크로의 복수의 상이한 입력들에 응답하여 상기 소스 순환 신경 네트워크 내 링크들을 따라 노드들 사이에서 일어났을 상기 소스 순환 신경 네트워크에서의 신호 전송 활동의 위상적 패턴들의 존재 또는 부재의 상이한 표현들을 프로세싱하기 위해 상기 신경 네트워크를 트레이닝시키는 것과 일치하는, 프로세싱 단계; 그리고
상기 표현 프로세싱의 결과를 출력하는 단계를 포함하는, 방법.
A method implemented by a neural network device, the method comprising:
inputting a representation of the presence or absence of topological patterns of signal transmission activity that would have occurred between nodes along links in a source recurrent neural network, wherein the signal transmission activity is responsive to input to the source recurrent neural network. phosphorus, input step;
processing the representation in the source recurrent neural network that would have occurred between nodes along links in the source recurrent neural network in response to a plurality of different inputs to the source recurrent neural network. processing, consistent with training the neural network to process different representations of the presence or absence of topological patterns of signal transmission activity; and
outputting a result of the expression processing.
제20항에 있어서,
상기 위상적 패턴들 모두는 상기 소스 순환 신경 네트워크 내 셋 이상의 노드들 및 그 노드들 사이의 셋 이상의 에지들을 포함하는, 방법.
21. The method of claim 20,
wherein all of the topological patterns include three or more nodes in the source recurrent neural network and three or more edges between the nodes.
제20항에 있어서,
상기 위상적 패턴은 방향성 심플렉스들을 포함하는, 방법.
21. The method of claim 20,
wherein the topological pattern comprises directional simplexes.
제20항에 있어서,
상기 위상적 패턴들은 공동들을 둘러싼, 방법.
21. The method of claim 20,
wherein the topological patterns surround cavities.
제20항에 있어서,
상기 입력들 각각에게 응답하는 다른 신호 전송 활동의 복잡성과 구별 가능한 복잡성을 신호 전송 활동의 상기 패턴들이 가지는 시점들에서 위상적 패턴들의 상기 표현들은 상기 소스 순환 신경 네트워크에서 일어났을 위상적 패턴들을 배타적으로 표현하는, 방법.
21. The method of claim 20,
The representations of topological patterns at the points in time at which the patterns of signaling activity have a complexity distinguishable from the complexity of other signaling activity responding to each of the inputs exclusively represent topological patterns that would have occurred in the source recurrent neural network. how to express.
제20항에 있어서,
상기 위상적 패턴들의 표현들은 다중-값인, 비-이진 자릿수들을 포함하는, 방법.
21. The method of claim 20,
The representations of the topological patterns include multi-valued, non-binary digits.
제20항에 있어서,
신호 전송 활동의 상기 패턴들이 상기 소스 순환 신경 네트워크 내 어디에서 일어났을 것인지를 규정하지 않으면서 위상적 패턴들의 상기 표현들은, 상기 위상적 패턴들의 존재 또는 부재를 표현하는, 방법.
21. The method of claim 20,
wherein said representations of topological patterns represent the presence or absence of said topological patterns without specifying where said patterns of signaling activity would have occurred within said source circulatory neural network.
삭제delete
KR1020207035846A 2018-06-11 2019-06-06 Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding KR102465409B1 (en)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US16/004,671 2018-06-11
US16/004,635 US20190378007A1 (en) 2018-06-11 2018-06-11 Characterizing activity in a recurrent artificial neural network
US16/004,796 US20190378000A1 (en) 2018-06-11 2018-06-11 Characterizing activity in a recurrent artificial neural network
US16/004,757 US11893471B2 (en) 2018-06-11 2018-06-11 Encoding and decoding information and artificial neural networks
US16/004,796 2018-06-11
US16/004,635 2018-06-11
US16/004,671 US20190378008A1 (en) 2018-06-11 2018-06-11 Encoding and decoding information
US16/004,837 US11663478B2 (en) 2018-06-11 2018-06-11 Characterizing activity in a recurrent artificial neural network
US16/004,757 2018-06-11
US16/004,837 2018-06-11
PCT/EP2019/064773 WO2019238522A1 (en) 2018-06-11 2019-06-06 Characterizing activity in a recurrent artificial neural network and encoding and decoding information

Publications (2)

Publication Number Publication Date
KR20210008418A KR20210008418A (en) 2021-01-21
KR102465409B1 true KR102465409B1 (en) 2022-11-09

Family

ID=66776339

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020207035843A KR102497238B1 (en) 2018-06-11 2019-06-05 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information
KR1020207035846A KR102465409B1 (en) 2018-06-11 2019-06-06 Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding
KR1020207035844A KR102488042B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information
KR1020207035847A KR102526132B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information
KR1020207035845A KR102475411B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020207035843A KR102497238B1 (en) 2018-06-11 2019-06-05 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020207035844A KR102488042B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information
KR1020207035847A KR102526132B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information
KR1020207035845A KR102475411B1 (en) 2018-06-11 2019-06-06 Characterization of activity in recurrent artificial neural networks and encoding and decoding of information

Country Status (5)

Country Link
EP (5) EP3803699A1 (en)
KR (5) KR102497238B1 (en)
CN (5) CN112567387A (en)
TW (1) TWI822792B (en)
WO (5) WO2019238483A1 (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11615285B2 (en) 2017-01-06 2023-03-28 Ecole Polytechnique Federale De Lausanne (Epfl) Generating and identifying functional subnetworks within structural networks
US11663478B2 (en) 2018-06-11 2023-05-30 Inait Sa Characterizing activity in a recurrent artificial neural network
US11893471B2 (en) 2018-06-11 2024-02-06 Inait Sa Encoding and decoding information and artificial neural networks
US11569978B2 (en) 2019-03-18 2023-01-31 Inait Sa Encrypting and decrypting information
US11652603B2 (en) 2019-03-18 2023-05-16 Inait Sa Homomorphic encryption
US11610134B2 (en) * 2019-07-08 2023-03-21 Vianai Systems, Inc. Techniques for defining and executing program code specifying neural network architectures
US11797827B2 (en) 2019-12-11 2023-10-24 Inait Sa Input into a neural network
US11816553B2 (en) 2019-12-11 2023-11-14 Inait Sa Output from a recurrent neural network
US11651210B2 (en) 2019-12-11 2023-05-16 Inait Sa Interpreting and improving the processing results of recurrent neural networks
US11580401B2 (en) 2019-12-11 2023-02-14 Inait Sa Distance metrics and clustering in recurrent neural networks
TWI769466B (en) * 2020-06-17 2022-07-01 台達電子工業股份有限公司 Neural network system and method of operating the same
CN112073217B (en) * 2020-08-07 2023-03-24 之江实验室 Multi-network structure difference vectorization method and device
CN113219358A (en) * 2021-04-29 2021-08-06 东软睿驰汽车技术(沈阳)有限公司 Battery pack health state calculation method and system and electronic equipment
TWI769875B (en) * 2021-06-24 2022-07-01 國立中央大學 Deep learning network device, memory access method and non-volatile storage medium used therefor
CN113626721B (en) * 2021-10-12 2022-01-25 中国科学院自动化研究所 Regrettful exploration-based recommendation method and device, electronic equipment and storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK2531959T3 (en) * 2010-02-05 2017-10-30 Ecole polytechnique fédérale de Lausanne (EPFL) ORGANIZATION OF NEURAL NETWORKS

Also Published As

Publication number Publication date
KR20210008858A (en) 2021-01-25
CN112567389A (en) 2021-03-26
EP3803707A1 (en) 2021-04-14
WO2019238512A1 (en) 2019-12-19
EP3803708A1 (en) 2021-04-14
EP3803699A1 (en) 2021-04-14
WO2019238522A1 (en) 2019-12-19
TW202001693A (en) 2020-01-01
KR102526132B1 (en) 2023-04-26
WO2019238523A1 (en) 2019-12-19
EP3803705A1 (en) 2021-04-14
CN112567390A (en) 2021-03-26
CN112567388A (en) 2021-03-26
KR20210008417A (en) 2021-01-21
TWI822792B (en) 2023-11-21
CN112567387A (en) 2021-03-26
KR20210010894A (en) 2021-01-28
KR102488042B1 (en) 2023-01-12
WO2019238483A1 (en) 2019-12-19
KR102497238B1 (en) 2023-02-07
EP3803706A1 (en) 2021-04-14
KR20210008419A (en) 2021-01-21
KR102475411B1 (en) 2022-12-07
CN112585621A (en) 2021-03-30
KR20210008418A (en) 2021-01-21
WO2019238513A1 (en) 2019-12-19

Similar Documents

Publication Publication Date Title
KR102465409B1 (en) Characterization of Activities in Recurrent Artificial Neural Networks and Information Encoding and Decoding
US20190378008A1 (en) Encoding and decoding information
US11893471B2 (en) Encoding and decoding information and artificial neural networks
US11663478B2 (en) Characterizing activity in a recurrent artificial neural network
US20190378000A1 (en) Characterizing activity in a recurrent artificial neural network
US20190378007A1 (en) Characterizing activity in a recurrent artificial neural network
Atitallah et al. Leveraging Deep Learning and IoT big data analytics to support the smart cities development: Review and future directions
Bauer et al. Modeling development of natural multi-sensory integration using neural self-organisation and probabilistic population codes
US20210182654A1 (en) Input into a neural network
WO2022012668A1 (en) Training set processing method and apparatus
JP2022120775A (en) On-device activity recognition
Malik et al. Architecture, generative model, and deep reinforcement learning for IoT applications: Deep learning perspective
Abdel-Basset et al. Deep Learning Approaches for Security Threats in IoT Environments
Khan et al. Suspicious activities recognition in video sequences using DarkNet-NasNet optimal deep features
Kabir BRB based deep learning approach with application in sensor data streams
Alhalabi Ensembles of Pruned Deep Neural Networks for Accurate and Privacy Preservation in IoT Applications
Karthik et al. Synergizing Sensor Intelligence: a Novel Approach to Enhanced Human Activity Recognition
Atitallah Intelligent Microservices-based Approach to Support Data Analytics for IoT Applications
Radley et al. IMPROVING THE PERFORMANCE AND FUNCTIONALITY OF AI AND MACHINE LEARNING IN ELECTRONIC DEVICES AND SYSTEMS.
Rahmani et al. Survey On The application of Deep Learning in Internet of Things (IoT)
CN117195058A (en) Brain space-time data analysis method and system based on neural network

Legal Events

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