KR20170094357A - 신경 언어 행동 인식 시스템의 지각 연상 기억 - Google Patents

신경 언어 행동 인식 시스템의 지각 연상 기억 Download PDF

Info

Publication number
KR20170094357A
KR20170094357A KR1020177019094A KR20177019094A KR20170094357A KR 20170094357 A KR20170094357 A KR 20170094357A KR 1020177019094 A KR1020177019094 A KR 1020177019094A KR 20177019094 A KR20177019094 A KR 20177019094A KR 20170094357 A KR20170094357 A KR 20170094357A
Authority
KR
South Korea
Prior art keywords
words
stream
statistics
statistical significance
component
Prior art date
Application number
KR1020177019094A
Other languages
English (en)
Other versions
KR102440821B1 (ko
Inventor
밍-중 세우
강 쉬
타오 양
웨슬리 케니스 코브
Original Assignee
옴니 에이아이, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 옴니 에이아이, 인크. filed Critical 옴니 에이아이, 인크.
Publication of KR20170094357A publication Critical patent/KR20170094357A/ko
Application granted granted Critical
Publication of KR102440821B1 publication Critical patent/KR102440821B1/ko

Links

Images

Classifications

    • G06F17/28
    • G06F17/2735
    • G06F17/277
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • 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/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • 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/0409Adaptive resonance theory [ART] networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스를 생성하는 기법들이 개시된다. 심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림이 수신된다. 심벌들은 입력 데이터로부터 생성되는 정규화된 벡터들의 정렬된 스트림으로부터 생성된다. 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들이 평가된다. 통계들은 단어들의 조합들이 동시 출현하는 빈도를 포함한다. 평가된 통계들에 기초하여 단어들의 조합들의 모델이 업데이트된다. 모델은 통계적으로 관련성 있는 단어들을 식별한다. 연결 그래프가 생성된다. 연결 그래프에서의 각각의 노드는 스트림 내의 단어들 중 하나를 표현한다. 노드들을 연결하는 에지들은 스트림 내의 단어들 사이의 확률적 관계를 표현한다. 문구들은 연결 그래프에 기초하여 식별된다.

Description

신경 언어 행동 인식 시스템의 지각 연상 기억{PERCEPTUAL ASSOCIATIVE MEMORY FOR A NEURO-LINGUISTIC BEHAVIOR RECOGNITION SYSTEM}
본원에 기술되는 실시예들은 일반적으로 데이터 분석 시스템에 관한 것으로서, 보다 상세하게는, 하나 이상의 데이터 소스들로부터 획득된 입력 데이터의 신경 언어 모델들을 구축하는 것에 관한 것이다.
많은 현재 이용가능한 감시 및 모니터링 시스템들(예컨대, 비디오 감시 시스템들, SCADA 시스템들 등)은 특정 활동들을 관찰하고 그 활동들을 탐지한 후 관리자에게 알리도록 훈련된다.
그렇지만, 이러한 규칙 기반 시스템들은 어떤 행동들 및/또는 객체들을 관찰할지에 대한 사전 지식을 필요로 한다. 활동들이 기반이 되는 애플리케이션들에 하드코딩될 수 있거나, 시스템이 임의의 제공된 정의들 또는 규칙들에 기초하여 자신을 훈련시킬 수 있다. 환언하면, 기반이 되는 코드가 주어진 관찰에 대한 경보를 생성하기 위한 특정 행동들 또는 규칙들의 설명들을 포함하지 않는 한, 시스템이 이러한 행동들을 인식할 수 없다. 이러한 규칙 기반 접근법은 엄격하다. 즉, 주어진 행동이 미리 정의된 규칙에 부합하지 않는 한, 행동의 출현이 모니터링 시스템에 의해 탐지되지 않고 넘어갈 수 있다. 시스템이 행동을 식별하도록 자신을 훈련시키더라도, 시스템은 무엇을 식별할지에 대한 규칙들이 사전에 정의되어 있을 것을 필요로 한다.
그에 부가하여, 많은 감시 시스템들, 예컨대, 비디오 감시 시스템들은, 프로세서 능력, 저장소, 및 대역폭을 비롯한, 상당한 양의 컴퓨팅 자원들을 필요로 한다. 예를 들어, 전형적인 비디오 감시 시스템들은 비디오 데이터의 전형적인 크기 때문에 카메라 피드(camera feed)당 많은 양의 컴퓨팅 자원들을 필요로 한다. 자원들의 비용을 고려할 때, 이러한 시스템들은 확장하기가 어렵다.
본원에 제시되는 일 실시예는 하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스(syntax)를 생성하는 방법을 포함한다. 본 방법은 일반적으로 심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 단계를 포함한다. 심벌들은 입력 데이터로부터 생성되는 정규화된 벡터들의 정렬된 스트림으로부터 생성된다. 스트림에 동시 출현(co-occurring)하는 단어들의 조합들에 대한 통계들이 평가된다. 통계들은 단어들의 조합들이 동시 출현하는 빈도를 포함한다. 단어들의 조합들의 모델은 평가된 통계들에 기초하여 업데이트된다. 모델은 통계적으로 관련성있는(statistically relevant) 단어들을 식별한다. 연결 그래프가 생성된다. 연결 그래프에서의 각각의 노드는 스트림 내의 단어들 중 하나를 표현한다. 노드들을 연결하는 에지(edge)들은 스트림 내의 단어들 사이에 확률적 관계를 표현한다. 문구들은 연결 그래프에 기초하여 식별된다.
본원에 제시되는 다른 실시예는, 프로세서 상에서 실행될 때, 하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스를 생성하는 동작을 수행하는 명령어들을 저장하는 컴퓨터 판독가능 저장 매체를 포함한다. 동작 자체는 일반적으로 심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 동작을 포함한다. 심벌들은 입력 데이터로부터 생성되는 정규화된 벡터들의 정렬된 스트림으로부터 생성된다. 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들이 평가된다. 통계들은 단어들의 조합들이 동시 출현하는 빈도를 포함한다. 단어들의 조합들의 모델은 평가된 통계들에 기초하여 업데이트된다. 모델은 통계적으로 관련성있는 단어들을 식별한다. 연결 그래프가 생성된다. 연결 그래프에서의 각각의 노드는 스트림 내의 단어들 중 하나를 표현한다. 노드들을 연결하는 에지들은 스트림 내의 단어들 사이에 확률적 관계를 표현한다. 문구들은 연결 그래프에 기초하여 식별된다.
본원에 제시되는 또 다른 실시예는 프로세서 및 하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스를 생성하는 동작을 수행하도록 구성된 하나 이상의 애플리케이션 프로그램들을 저장하는 메모리를 포함하는 시스템을 포함한다. 동작 자체는 일반적으로 심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 동작을 포함한다. 심벌들은 입력 데이터로부터 생성되는 정규화된 벡터들의 정렬된 스트림으로부터 생성된다. 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들이 평가된다. 통계들은 단어들의 조합들이 동시 출현하는 빈도를 포함한다. 단어들의 조합들의 모델은 평가된 통계들에 기초하여 업데이트된다. 모델은 통계적으로 관련성있는 단어들을 식별한다. 연결 그래프가 생성된다. 연결 그래프에서의 각각의 노드는 스트림 내의 단어들 중 하나를 표현한다. 노드들을 연결하는 에지들은 스트림 내의 단어들 사이에 확률적 관계를 표현한다. 문구들은 연결 그래프에 기초하여 식별된다.
본 개시내용의 앞서 언급된 특징들이 상세하게 이해될 수 있도록, 앞서 간략하게 요약된 본 개시내용의 보다 구체적인 설명이 실시예들 - 그의 일부가 첨부 도면들에 예시되어 있음 - 을 참조하여 이루어질 수 있다. 그렇지만, 첨부 도면들이 예시적인 실시예들을 나타내는 것에 불과하고 따라서 그의 범주를 제한하는 것으로 간주되어서는 안되며, 다른 똑같이 효과적인 실시예들을 인정할 수 있다는 것에 유의해야 한다.
도 1은 일 실시예에 따른, 신경 언어 행동 인식 시스템에 대한 예시적인 컴퓨팅 환경을 나타낸 도면.
도 2는 일 실시예에 따른, 신경 언어 행동 인식 시스템의 시스템 아키텍처를 나타낸 도면.
도 3은 일 실시예에 따른, 신경 언어 행동 인식 시스템에서 사용하기 위한 센서 데이터를 수집하는 방법을 나타낸 도면.
도 4는 일 실시예에 따른, 지각 연상 기억(perceptual associative memory)을 초기화하는 방법을 나타낸 도면.
도 5는 일 실시예에 따른, 지각 연상 기억에 입력되는 사전으로부터의 단어들 사이의 관계들을 표현하는 연결 그래프를 나타낸 도면.
도 6은 일 실시예에 따른, 신택스를 인지 모듈로 송신하는 방법을 나타낸 도면.
이해를 돕기 위해, 가능한 경우, 도면들에 공통인 동일한 요소들을 나타내기 위해 동일한 도면 부호들이 사용되었다. 일 실시예의 요소들 및 특징들이 유리하게도 추가적인 설명없이 다른 실시예들에 포함될 수 있는 것이 생각되고 있다.
본원에 제시되는 실시예들은 행동 인식 시스템을 설명한다. 행동 인식 시스템은 상이한 데이터 소스들(예컨대, 비디오 데이터, 건물 관리 데이터, SCADA 데이터)로부터 원시 데이터 값들을 수집하는 하나 이상의 데이터 수집기 컴포넌트들로 구성될 수 있다. 예를 들어, 행동 인식 시스템은 비디오 감시를 위해 구성될 수 있다. 행동 인식 시스템은, 비디오 프레임들을 실시간으로 검색하고, 전경 객체들을 배경 객체들로부터 분리하며, 프레임마다 전경 객체들을 추적하는, 데이터 수집기 컴포넌트를 포함할 수 있다. 데이터 수집기 컴포넌트는 비디오 프레임 데이터를 (예컨대, 주어진 데이터 유형에 대해 0부터 1까지의 범위 내에 속하는) 수치 값들로 정규화할 수 있다.
일 실시예에서, 행동 인식 시스템은 수집된 데이터에 대해 신경망 기반 언어 분석을 수행하는 신경 언어 모듈을 포함한다. 구체적으로는, 센서에 의해 모니터링되는 각각의 유형의 데이터에 대해, 신경 언어 모듈은 정규화된 데이터의 언어 모델을 생성하고 개량한다. 즉, 신경 언어 모듈은 정규화된 데이터를 기술하는 데 사용되는 문법을 구축한다. 언어 모델은 문법에 대한 구성 블록들로서 역할하는 심벌들을 포함한다. 신경 언어 모듈은 단어들의 사전을 구축하기 위해 심벌들의 조합들을 식별한다. 사전이 구축되면, 신경 언어 모듈은 사전 내의 단어들의 다양한 조합들을 포함하는 문구들을 식별한다. 행동 인식 시스템은 무엇이 관찰되고 있는지를 기술하기 위해 이러한 언어 모델을 사용한다. 언어 모델은 행동 인식 시스템이 입력 데이터에서 관찰되는 정상적 활동과 비정상적 활동을 구별할 수 있게 한다. 그 결과, 행동 인식 시스템은 비정상적 활동이 출현할 때마다 경보들을 발행할 수 있다.
언어 모델을 생성하기 위해, 신경 언어 모듈은 정규화된 데이터 값들을 수신하고 데이터를 클러스터들로 조직화한다. 신경 언어 모듈은 각각의 클러스터의 통계들을 평가하고 통계적으로 관련성있는(statistically relevant) 클러스터들을 식별한다. 게다가, 신경 언어 모듈은 각각의 통계적으로 관련성있는 클러스터에 대응하는 심벌들, 예컨대, 글자들을 생성한다. 이와 같이, 주어진 클러스터에 매핑되는 입력 값들은 심벌에 대응할 수 있다.
신경 언어 모듈은, 입력 데이터에서 식별된 심벌들의 통계적 분포에 기초하여, 관찰된 심벌들, 즉 단어들의 조합들의 어휘를 생성한다 - 즉, 그의 사전을 구축한다 -. 구체적으로는, 신경 언어 모듈은 상이한 출현 빈도들로 입력 데이터에서 심벌들의 패턴들을 식별할 수 있다. 게다가, 신경 언어 모듈은 상이한 길이(예컨대, 하나의 심벌에서 최대 심벌 단어 길이까지)들로 통계적으로 관련성있는 심벌들의 조합들을 식별할 수 있다. 신경 언어 모듈은 언어 모델에 대한 문구들을 식별하기 위해 사용되는 사전에 이러한 통계적으로 관련성있는 심벌들의 조합들을 포함시킬 수 있다.
사전으로부터의 단어들을 사용하여, 신경 언어 모듈은 부가의 데이터가 관찰될 때 순차적으로 출현하는 각각의 단어의 다른 단어들에 대한 확률적 관계에 기초하여 문구들을 생성한다. 예를 들어, 신경 언어 모듈은 순차적으로 나오는 주어진 세 글자 단어와 주어진 네 글자 단어 사이의 관계 등을 식별할 수 있다. 신경 언어 모듈은 식별된 문구들에 기초하여 신택스(syntax)를 결정한다.
신택스는 행동 인식 시스템이, 미리 정의된 활동들의 도움 또는 안내를 받지 않고, 행동의 패턴들을 학습, 식별, 및 인식할 수 있게 한다. 무엇을 식별 또는 관찰할지의 미리 정의된 패턴들을 포함하는 규칙 기반 감시 시스템과 달리, 행동 인식 시스템은, 입력을 일반화하고 관찰되는 것의 행동 기억(behavior memory)들을 구축하는 것에 의해, 패턴들을 학습한다. 시간이 지남에 따라, 행동 인식 시스템은 관찰된 데이터에 반영되는 정상적 행동과 비정상적 행동을 구별하기 위해 이 기억들을 사용한다.
예를 들어, 신경 언어 모듈은 글자들, 단어들, 문구들을 구축하고, 각각의 식별된 글자, 단어, 또는 문구에 대해 "특이성 점수(unusualness score)"를 추정한다. (입력 데이터에서 관찰된 글자, 단어, 또는 문구에 대한) 특이성 점수는 글자, 단어, 또는 문구가 과거의 관찰들과 비교하여 얼마나 드물게 출현했는지의 척도를 제공한다. 이와 같이, 행동 인식 시스템은, 현재 신택스가 심벌들의 안정된 모델(즉, 글자들), 심벌들로부터 구축된 단어들의 안정된 모델(즉, 사전), 및 단어들로부터 구축된 문구의 안정된 모델(즉, 신택스) - 일괄하여 신경 언어 모델이라고 함 - 과 비교하여 얼마나 특이한지를 측정하기 위해, 특이성 점수들을 사용할 수 있다.
신경 언어 모듈이 입력 데이터를 계속 수신함에 따라, 신경 언어 모듈은 글자들, 단어들, 및 신택스 모델들을 약화(decay), 강화(reinforce), 및 생성할 수 있다. 머신 학습 분야에 따르면, 신경 언어 모듈은, 새로운 데이터가 수신되고 주어진 유형의 입력 데이터의 출현이 증가하거나, 감소하거나, 나타나거나 사라짐에 따라, "온라인으로 학습"한다.
도 1은 일 실시예에 따른, 행동 인식 시스템(100)의 컴포넌트들을 나타낸다. 도시된 바와 같이, 행동 인식 시스템(100)은 하나 이상의 입력 소스 디바이스들(105), 네트워크(110), 및 하나 이상의 컴퓨터 시스템들(115)을 포함한다. 네트워크(110)는 소스 디바이스들(105)에 의해 입력된 데이터를 컴퓨터 시스템(115)으로 전송할 수 있다. 일반적으로, 컴퓨팅 환경(100)은 네트워크(예컨대, 인터넷)를 통해 연결된 하나 이상의 물리적 컴퓨터 시스템들(115)을 포함할 수 있다. 대안적으로, 컴퓨터 시스템들(115)은 네트워크에 의해 연결된 클라우드 컴퓨팅 자원들일 수 있다. 예시적으로, 컴퓨터 시스템(115)은 하나 이상의 중앙 처리 유닛(CPU)들(120), 하나 이상의 그래픽 처리 유닛(GPU)들(121), 네트워크 및 I/O 인터페이스들(122), 저장소(124)(예컨대, 디스크 드라이브, 광학 디스크 드라이브 등), 그리고 센서 관리 모듈(130), 감각 기억 컴포넌트(sensory memory component)(135), 및 머신 학습 엔진(140)을 포함하는 메모리(123)를 포함한다. 저장소(124)는 모델 리포지토리(model repository)(145)를 포함한다.
CPU(120)는 메모리(123)에 저장된 프로그래밍 명령어들을 검색하고 실행하는 것은 물론, 저장소(124)에 상주하는 애플리케이션 데이터를 저장하고 검색한다. 일 실시예에서, GPU(121)는 CUDA(Compute Unified Device Architecture)를 구현한다. 게다가, GPU(121)는, 메모리(123)에 저장된 프로그래밍 명령어들을 보다 효율적으로 검색 및 실행하기 위해 그리고 또한 저장소(124)에 상주하는 애플리케이션 데이터를 저장 및 검색하기 위해, GPU(121)의 병렬 처리율 아키텍처(parallel throughput architecture)를 사용하여 범용 처리(general purpose processing)를 제공하도록 구성된다. 병렬 처리율 아키텍처는 애플리케이션 및 입력 데이터를 처리하기 위한 수천 개의 코어들을 제공한다. 그 결과, GPU(121)는 판독 및 기입 동작들을 대규모 병렬 방식으로 수행하기 위해 수천 개의 코어들을 이용한다. GPU(121)의 병렬 컴퓨팅 요소들을 이용하는 것은 행동 인식 시스템(100)이 많은 양의 들어오는 데이터(예컨대, 비디오 및/또는 오디오 소스로부터의 입력)를 보다 잘 처리할 수 있게 한다. 그 결과, 행동 인식 시스템(100)은 비교적 어려움 없이 확장될 수 있다.
센서 관리 모듈(130)은 하나 이상의 데이터 수집기 컴포넌트들을 제공한다. 수집기 컴포넌트들 각각은 특정의 입력 데이터 소스, 예컨대, 비디오 소스, SCADA(supervisory control and data acquisition) 소스, 오디오 소스 등과 연관된다. 수집기 컴포넌트들은 각각의 소스로부터 입력 데이터를 명시된 간격들로(예컨대, 1분마다 1번, 30분마다 1번, 30초마다 1번 등) 검색 (또는, 센서에 따라, 수신)한다. 센서 관리 모듈(130)은 데이터 소스들 간의 통신을 제어한다. 게다가, 센서 관리 모듈(130)은 입력 데이터를 정규화하고 정규화된 데이터를 감각 기억 컴포넌트(135)로 송신한다.
감각 기억 컴포넌트(135)는 대량의 데이터를 센서 관리 모듈(130)로부터 머신 학습 엔진(140)으로 전달하는 데이터 저장소이다. 감각 기억 컴포넌트(135)는 데이터를 레코드들로서 저장한다. 각각의 레코드는 식별자, 타임스탬프, 및 데이터 페이로드를 포함할 수 있다. 게다가, 감각 기억 컴포넌트(135)는 들어오는 데이터를 시간 정렬된 방식으로 집계한다. 데이터 수집기 컴포넌트들 각각으로부터 들어오는 데이터를 데이터가 집계될 수 있는 단일의 위치에 저장하는 것은 머신 학습 엔진(140)이 데이터를 효율적으로 처리할 수 있게 한다. 게다가, 컴퓨터 시스템(115)은 비정상적 활동에 대한 경보들을 생성할 때 감각 기억 컴포넌트(135)에 저장된 데이터를 참조할 수 있다. 일 실시예에서, 감각 기억 컴포넌트(135)는 메모리(123) 내의 가상 메모리 파일 시스템에 구현될 수 있다. 다른 실시예에서, 감각 기억 컴포넌트(135)는 키-값 공유(key-value share)를 사용하여 구현된다.
머신 학습 엔진(140)은 센서 관리 모듈(135)로부터 출력된 데이터를 수신한다. 일반적으로, 머신 학습 엔진(140)의 컴포넌트들은 정규화된 벡터들의 언어 표현(linguistic representation)을 생성한다. 이하에서 더 기술되는 바와 같이, 그렇게 하기 위해, 머신 학습 엔진(140)은 유사한 특징들을 갖는 정규화된 값들을 클러스터링하고 별개의 심벌을 각각의 클러스터에 할당한다. 머신 학습 엔진(140)은 이어서 데이터에서의 반복되는 심벌들(즉, 단어들)의 조합들을 식별할 수 있다. 머신 학습 엔진(140)은 이어서 데이터에서의 반복되는 단어들(즉, 문구들)의 조합들을 이와 유사하게 식별한다.
그렇지만, 도 1이 행동 인식 시스템(100)의 단지 하나의 가능한 구성을 예시한다는 것에 유의한다. 예를 들어, 비록 입력 데이터 소스들(105)이 네트워크(110)를 통해 컴퓨터 시스템(115)에 연결되는 것으로 도시되어 있지만, 네트워크(110)가 항상 존재하거나 필요한 것은 아니다(예컨대, 비디오 카메라와 같은 입력 소스는 컴퓨터 시스템(115)에 직접 연결되어 있을 수 있다).
도 2는 일 실시예에 따른, 행동 인식 시스템의 시스템 아키텍처를 나타낸다. 도시된 바와 같이, 센서 관리 모듈(130)과 머신 학습 엔진(140)은 지속성 계층(persistence layer)(210)을 통해 통신한다.
지속성 계층(210)은 컴퓨터 시스템(115)의 컴포넌트들에 의해 사용되는 정보를 유지하는 데이터 저장소들을 포함한다. 예를 들어, 지속성 계층(210)은 데이터 수집기 모듈들(202)의 속성들, 시스템 속성들(예컨대, 컴퓨터 시스템(115)의 일련 번호들, 이용가능한 메모리, 이용가능한 용량 등), 및 소스 드라이버의 속성들(예컨대, 액티브 플러그-인(active plug-in)들(118), 각각의 데이터 소스와 연관된 능동 센서들, 정규화 설정들 등)을 기술하는 정보를 유지하는 데이터 저장소들을 포함한다. 다른 데이터 저장소들은 학습 모델 정보, 시스템 이벤트들, 및 행동 경보들을 유지할 수 있다. 그에 부가하여, 감각 기억 컴포넌트(135)는 지속성 계층(210)에 상주한다.
머신 학습 엔진(140) 자체는 신경 언어 모듈(215) 및 인지 모듈(225)을 포함한다. 신경 언어 모듈(215)은, 관찰된 입력 데이터의 신경 언어 모델을 구축하기 위해, 정규화된 입력 데이터의 신경망 기반 언어 분석을 수행한다. 행동 인식 시스템은 차후에 관찰된 활동을 기술하기 위해 언어 모델을 사용할 수 있다. 그렇지만, 미리 정의된 객체들 및 행동들에 기초하여 활동을 기술하기보다는, 신경 언어 모듈(215)은 입력 데이터로부터 생성된 심벌들, 단어들, 및 문구들에 기초하여 커스텀 언어(custom language)를 발전시킨다. 도시된 바와 같이, 신경 언어 모듈(215)은 DTM(data transactional memory) 컴포넌트(216), 분류 분석기 컴포넌트(217), 매퍼 컴포넌트(218), 어휘 분석기 컴포넌트(219), 및 PAM(perceptual associative memory) 컴포넌트(220)를 포함한다.
일 실시예에서, DTM 컴포넌트(216)는 감각 기억 컴포넌트(135)로부터 입력 데이터의 정규화된 벡터들을 검색하고, 입력 데이터를 GPU(121)에 의해 제공되는 파이프라인 아키텍처에 스테이징(stage)한다. 분류 분석기 컴포넌트(217)는 DTM 컴포넌트(216)에 의해 조직화된 정규화된 데이터를 평가하고 데이터를 신경망을 통해 매핑한다. 일 실시예에서, 신경망은 SOM(self-organizing map)과 ART(adaptive resonance theory) 네트워크의 조합이다.
매퍼 컴포넌트(218)는 서로 연관되어 반복적으로 출현하는 값들에 기초하여 데이터 스트림들을 클러스터링한다. 게다가, 매퍼 컴포넌트(218)는 각각의 입력 특징에 대한 클러스터들의 세트를 생성한다. 예를 들어, 입력 데이터가 비디오 데이터에 대응한다고 가정하면, 특징들은 위치, 속도, 가속도 등을 포함할 수 있다. 매퍼 컴포넌트(218)는 이 특징들 각각에 대한 개별적인 클러스터들의 세트들을 생성할 것이다. 매퍼 컴포넌트(218)는 클러스터링된 입력 데이터에 기초하여 심벌들을 식별한다(즉, 글자들의 알파벳을 구축한다). 구체적으로는, 매퍼 컴포넌트(218)는 각각의 클러스터에서 데이터의 통계적 분포를 결정한다. 예를 들어, 매퍼 컴포넌트(218)는 클러스터에서의 값들의 분포에 대한 평균, 분산, 및 표준 편차를 결정한다. 매퍼 컴포넌트(218)는 또한 보다 많은 정규화된 데이터가 수신됨에 따라 통계들을 업데이트한다. 게다가, 각각의 클러스터는 통계적 유의성 점수와 연관될 수 있다. 주어진 클러스터에 대한 통계적 유의성은 그 클러스터에 매핑되는 보다 많은 데이터가 수신됨에 따라 증가한다. 그에 부가하여, 매퍼 컴포넌트(218)가 시간이 지남에 따라 클러스터에 매핑되는 데이터를 덜 자주 관찰할 때, 매퍼 컴포넌트(218)는 클러스터의 통계적 유의성을 약화시킨다.
일 실시예에서, 매퍼 컴포넌트(218)는 심벌들의 세트를 통계적 유의성을 갖는 클러스터들에 할당한다. 클러스터는, 그 클러스터에 매핑되는 입력 데이터의 양이 문턱값을 초과되면, 통계적 유의성을 가질 수 있다. 심벌은 입력 데이터의 신경 언어 분석에서 사용된 단어들을 생성하는 데 사용되는 알파벳의 글자라고 할 수 있다. 심벌은 주어진 클러스터에 속한 데이터의 "퍼지(fuzzy)" 표현을 제공한다.
게다가, 매퍼 컴포넌트(218)는 적응적이다. 즉, 매퍼 컴포넌트(218)는 정규화된 데이터로부터 생성된 새로운 클러스터들에 대응하는 새로운 심벌들을 식별할 수 있는데, 그 이유는 이러한 클러스터들이 시간이 지남에 따라 강화되기(그 결과, 이러한 클러스터들이 입력 데이터로부터 등장하는 다른 클러스터들에 비해 통계적 유의 수준에 도달하기) 때문이다. 매퍼 컴포넌트(218)는 온라인으로 학습하고, 유사한 관찰들을 보다 일반화된 클러스터에 병합할 수 있다. 매퍼 컴포넌트(218)는 별개의 심벌을 그 결과 얻어진 클러스터에 할당할 수 있다.
클러스터가 통계적 유의성에 도달하면(즉, 그 클러스터에 매핑되는 것으로 관찰된 데이터가 문턱 양의 포인트들에 도달하면), 매퍼 컴포넌트(219)는 그 클러스터에 매핑되는 정규화된 데이터에 응답하여 대응하는 심벌들을 어휘 분석기 컴포넌트(219)로 송신하기 시작한다. 일 실시예에서, 매퍼 컴포넌트(218)는 어휘 컴포넌트(219)로 송신될 수 있는 심벌들을 가장 통계적으로 유의미한(statistically significant) 클러스터들로 제한한다. 실제로는, 상위 32개의 클러스터들에 할당된 심벌들(즉, 글자들)을 출력하는 것이 효과적인 것으로 나타났다. 그렇지만, 상위 64개 또는 128개의 가장 빈번히 반복되는 클러스터들과 같은, 다른 양들도 효과적이라고 판명될 수 있다. 시간이 지남에 따라, 클러스터들의 통계적 유의성이 증가(또는 감소)할 때 가장 빈번히 관찰되는 심벌들이 변할 수 있다는 것에 유의한다. 이와 같이, 주어진 클러스터가 통계적 유의성을 상실하는 것이 가능하다. 시간이 지남에 따라, 통계적 유의성에 대한 문턱값들이 증가할 수 있고, 따라서 주어진 클러스터에 매핑되는 관찰된 데이터의 양이 문턱값을 충족시키지 못하면, 클러스터는 통계적 유의성을 상실한다.
일 실시예에서, 매퍼 컴포넌트(218)는 각각의 심벌에 대한 특이성 점수를 평가한다. 특이성 점수는, 시간의 경과에 따라, 입력 데이터 스트림에서의 관찰된 다른 심벌들에 대한 주어진 심벌의 빈도에 기초한다. 신경 언어 모듈(215)이 부가의 데이터를 수신할 때 특이성 점수는 시간이 지남에 따라 증가 또는 감소할 수 있다.
매퍼 컴포넌트(218)는 심벌들(예컨대, 글자들)의 스트림, 타임스탬프 데이터, 특이성 점수, 및 통계 데이터(예컨대, 주어진 심벌과 연관된 클러스터의 표현)을 어휘 분석기 컴포넌트(219)로 송신한다. 어휘 분석기 컴포넌트(219)는 매퍼 컴포넌트(218)로부터 출력된 심벌들에 기초하여 사전을 구축한다. 실제로는, 매퍼 컴포넌트(218)는 심벌들의 안정된 알파벳을 생성하기 위해 대략 5000개의 관찰들(즉, 입력 데이터의 정규화된 벡터들)를 필요로 할 수 있다.
어휘 분석기 컴포넌트(219)는 매퍼 컴포넌트(218)에 의해 전송된 심벌들로부터, 동시 출현하는 심벌들, 예컨대, 단어들의 조합들을 포함하는 사전을 구축한다. 어휘 분석기 컴포넌트(219)는 매퍼 컴포넌트(218)로부터 출력된 글자들 및 특징들의 반복되는 동시 출현들을 식별하고 심벌 스트림 전체에 걸쳐 발생하는 동시 출현들의 빈도들을 계산한다. 심벌들의 조합들은 특정의 활동, 이벤트 등을 나타낼 수 있다.
일 실시예에서, 어휘 분석기 컴포넌트(219)는 어휘 분석기 컴포넌트(219)가, 컴퓨터 시스템(115)의 성능에 악영향을 미치지 않고, 다수의 가능한 조합들을 식별할 수 있게 하기 위해 사전에서의 단어들의 길이를 제한한다. 게다가, 어휘 분석기 컴포넌트(219)는 심볼 조합들을 분석하고 단어들을 학습하기 위해 레벨 기반 학습 모델들을 사용할 수 있다. 어휘 분석기 컴포넌트(219)는 증분적 레벨들에서 최대 심벌 조합 길이까지 단어들을 학습한다 - 즉, 여기서 한 글자 단어들은 제1 레벨에서 학습되고, 두 글자 단어들은 제2 레벨에서 학습되며, 이하 마찬가지이다 -. 실제로는, 단어를 최대 5개 또는 6개의 심벌들로 제한하는 것이 효과적인 것으로 나타났다.
매퍼 컴포넌트(218)와 마찬가지로, 어휘 분석기 컴포넌트(219)도 적응적이다. 즉, 어휘 분석기 컴포넌트(219)는 시간이 지남에 따라 학습하고 단어들을 사전에 생성할 수 있다. 어휘 분석기 컴포넌트(219)가 시간이 지남에 따라 후속하는 심벌들의 스트림들을 수신할 때, 어휘 분석기 컴포넌트(219)는 또한 사전 내의 단어들의 통계적 유의성을 강화 또는 약화시킬 수 있다. 게다가, 어휘 분석기 컴포넌트(219)는 단어가 데이터에서 얼마나 빈번히 반복되는지에 기초하여 각각의 단어에 대한 특이성 점수를 결정할 수 있다. 신경 언어 모듈(215)이 부가의 데이터를 처리할 때 특이성 점수는 시간이 지남에 따라 증가 또는 감소할 수 있다.
또한, 부가의 관찰들(즉, 심벌들)이 어휘 분석기 컴포넌트(219)로 전달되고 주어진 단어의 일부인 것으로서 식별될 때, 어휘 분석기 컴포넌트(219)는 단어 모델이 성숙되었다고 결정할 수 있다. 단어 모델이 성숙되었으면, 어휘 분석기 컴포넌트(219)는 모델에서의 그 단어들의 관찰들을 PAM 컴포넌트(219)로 출력할 수 있다. 일 실시예에서, 어휘 분석기 컴포넌트(219)는 PAM 컴포넌트(320)로 송신되는 단어들을 가장 통계적으로 관련성있는 단어들로 제한한다. 실제로는, 각각의 단일 샘플에 대해, (모델들에 저장된 가장 빈번히 출현하는 단어들이 수천 개의 단어들에 달할 수 있지만) 가장 빈번히 출현하는 단어들 중 상위 32개의 단어들의 출현들을 출력하는 것이 효과적인 것으로 나타났다. 시간이 지남에 따라, 들어오는 글자들의 관찰들이 빈도가 변할 때(또는 매퍼 컴포넌트(218)에 의한 입력 데이터의 클러스터링에 의해 새로운 글자들이 등장할 때) 가장 빈번히 관찰되는 단어들이 변할 수 있다는 것에 유의한다.
어휘 분석기 컴포넌트(219)가 사전을 구축했으면(즉, 미리 정의된 통계적 유의성에 도달한 단어들을 식별하면), 어휘 분석기 컴포넌트(219)는 입력 스트림에서 차후에 관찰되는 단어들의 출현들을 PAM 컴포넌트(220)로 송신한다. PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)에 의해 출력된 단어들로부터 문구들의 신택스를 구축한다. 실제로는, 어휘 분석기 컴포넌트(219)는 대략 15,000개의 관찰들(즉, 매퍼 컴포넌트(218)로부터의 입력 글자들)을 수신한 후에 단어들의 유용한 사전을 구축할 수 있다.
PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)로부터 출력된 단어들의 시퀀스에 기초하여 문구들의 신택스를 식별한다. 구체적으로는, PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)에 의해 식별된 단어들을 수신하고, 그래프의 노드들이 단어들을 나타내고 에지들이 단어들 사이의 관계를 나타내는, 연결 그래프(connected graph)를 생성한다. PAM 컴포넌트(220)는 단어들이 데이터 스트림에서 서로 연결되는 빈도에 기초하여 링크들을 강화 또는 약화시킬 수 있다.
매퍼 컴포넌트(218) 및 어휘 분석기 컴포넌트(219)와 유사하게, PAM 컴포넌트(220)는 문구가 언어 데이터에서 얼마나 빈번히 반복되는지에 기초하여 각각의 식별된 문구에 대한 특이성 점수를 결정한다. 신경 언어 모듈(215)이 부가의 데이터를 처리할 때 특이성 점수는 시간이 지남에 따라 증가 또는 감소할 수 있다.
어휘 분석기 컴포넌트(219)와 유사하게, PAM 컴포넌트(220)는 PAM 컴포넌트(220)가, 컴퓨터 시스템(115)의 성능에 악영향을 미치지 않고, 다수의 가능한 조합들을 식별할 수 있게 하기 위해 주어진 문구의 길이를 제한할 수 있다.
PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)로부터 출력된 단어들의 관찰들에 걸쳐 신택스 문구(syntax phrase)들을 식별한다. 단어들의 관찰들이 누적됨에 따라, PAM 컴포넌트(220)는 주어진 문구가 성숙되었다고, 즉 문구가 통계적 관련성의 척도에 도달했다고 결정할 수 있다. PAM 컴포넌트(220)는 이어서 그 문구의 관찰들을 인지 모듈(225)로 출력한다. PAM 컴포넌트 (220)는 심벌들, 단어들, 문구들, 타임스탬프 데이터, 특이성 점수들, 및 통계 계산들의 스트림을 포함하는 데이터를 인지 모듈(325)로 송신한다. 실제로는, PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)로부터의 약 5000개의 단어들을 관찰한 후에 의미있는 문구들의 세트를 획득할 수 있다.
성숙된 후에, 생성된 글자들, 단어들, 및 문구들은 컴퓨터 시스템(115)이 글자들, 단어들, 및 문구들의 후속 관찰들을 안정된 모델과 비교하기 위해 사용하는 입력 데이터의 안정된 신경 언어 모델을 형성한다. 새로운 데이터가 수신될 때 신경 언어 모듈(215)은 언어 모델을 업데이트한다. 게다가, 신경 언어 모듈(215)은 현재 관찰된 신택스를 모델과 비교할 수 있다. 즉, 안정된 글자들의 세트를 구축한 후에, 신경 언어 모듈(215)은 단어들의 안정된 모델(예컨대, 사전)을 구축할 수 있다. 차례로, 신경 언어 모듈(215)은 문구들의 안정한 모델(예컨대, 신택스)을 구축하는 데 사용될 수 있다. 그 후에, 신경 언어 모듈(215)이 차후에 정규화된 데이터를 수신할 때, 모듈(215)은 심벌들, 단어들, 및 문구들 - 이들 모두는 관심을 끄는 패턴들을 식별하거나 입력 데이터의 스트림에서 출현하는 일탈(deviation)들을 탐지하기 위해 안정된 모델과 비교될 수 있음 - 의 정렬된 스트림을 출력할 수 있다.
도시된 바와 같이, 인지 모듈 (226)은 작업공간(226), 시맨틱 기억(semantic memory)(230), 코드렛 템플릿(codelet template)들(235), 에피소드 기억(episodic memory)(240), 장기 기억(long term memory)(245), 및 이상 탐지 컴포넌트(anomaly detection component)(250)를 포함한다. 시맨틱 기억(230)은 앞서 기술된 안정된 신경 언어 모델, 즉 매퍼 컴포넌트(218), 어휘 분석기 컴포넌트(219), 및 PAM 컴포넌트(220)로부터의 안정된 사본을 저장한다.
일 실시예에서, 작업공간(226)은 머신 학습 엔진(140)을 위한 계산 엔진을 제공한다. 작업공간(226)은 계산들(예컨대, 이상 모델링 계산(anomaly modeling computation)들)을 수행하고 계산들로부터의 즉각적인 결과들을 저장한다.
작업공간(226)은 PAM 컴포넌트(220)로부터 신경 언어 데이터를 검색하고, 필요에 따라 이 데이터를 인지 모듈(225)의 상이한 부분들에 배포한다.
에피소드 기억(240)은 직전의 특정 에피소드에 관련된 언어 관찰들을 저장하고, 특정 이벤트의 "무엇"및 "언제"와 같은, 특정 상세들을 인코딩할 수 있다.
장기 기억(245)은 특정 에피소드 상세들이 제거된 언어 데이터의 일반화된 것(generalization)들을 저장한다. 이러한 방식으로, 새로운 관찰들이 출현할 때, 에피소드 기억(240) 및 장기 기억(245)으로부터의 기억된 것들이 현재 이벤트를 관련시키고 이해하는 데 사용될 수 있다 - 즉, 새로운 이벤트가 (이전에 관찰된 언어 데이터에 의해 표현되는) 과거의 경험과 비교되어, 시간이 지남에 따라 장기 기억(245)에 저장된 정보에 대한 강화, 약화, 및 조정 모두를 가져올 수 있다 -. 특정의 실시예에서, 장기 기억(245)은 ART 네트워크 및 희소 분산 메모리 데이터 구조(sparse-distributed memory data structure)로서 구현될 수 있다. 그렇지만, 중요한 것은 이 접근법이 이벤트들이 사전에 정의될 것을 필요로 하지 않는다는 것이다.
코드렛 템플릿들(235)은, 하나의 시퀀스가 다른 시퀀스를 어떻게 뒤따를 수 있는지(또는 다른 방식으로 관련될 수 있는지)를 결정하기 위해, 상이한 이벤트 시퀀스들을 평가하는 실행가능한 코드렛들 또는 작은 코드 조각들의 모음을 제공한다. 코드렛 템플릿들(325)은 결정적 코드렛(deterministic codelet)들 및 확률적 코드렛(stochastic codelet)들을 포함할 수 있다. 보다 일반적으로, 코드렛은 입력 데이터의 언어 표현으로부터 관심을 끄는 패턴들을 탐지할 수 있다. 예를 들어, 코드렛은 현재 관찰(즉, 과거에 관찰된 것을 갖는 현재 문구 인스턴스)을 시맨틱 기억(230)에 저장된 이전에 관찰된 활동과 비교할 수 있다. 실행하기 위한 코드렛들을 반복하여 스케줄링하고, 기억된 것들 및 지각된 것들을 작업공간(226)으로/으로부터 복사하는 것에 의해, 인지 모듈(225)은 언어 데이터 내에서 출현하는 행동 패턴들을 관찰하고 학습하는 데 사용되는 인지 사이클(cognitive cycle)을 수행한다.
이상 탐지 컴포넌트(250)는, 특이성 점수들에 의해 표시된 어떤 비정상적 활동에 응답하여 경보를 발행할 것인지를 결정하기 위해, 신경 언어 모듈(215)에 의해 송신된 특이성 점수들을 평가한다. 구체적으로는, 이상 탐지 컴포넌트(250)는 특이성 점수들을 표현하는 확률적 히스토그램 모델들(예컨대, 특이 어휘 점수 모델(unusual lexicon score model), 특이 신택스 점수 모델(unusual syntax score model,), 및 이상 모델(anomaly model))을 제공한다. 특이 어휘 점수 모델 및 특이 신택스 점수 모델은 어휘 분석기 컴포넌트(219) 및 PAM 컴포넌트(220)로부터 송신된 특이성 점수들에 기초하여 생성된다. 이상 모델(anomaly model)은 특이 어휘 점수 모델 및 특이 신택스 점수 모델로부터 입력 백분위수들을 수신하고 백분위수들에 기초하여 절대 특이성 점수(absolute unusualness score)를 생성한다. 이상 탐지 컴포넌트(250)는 점수들을 평가하고 주어진 점수에 기초하여 경보를 송신할지를 결정한다. 이상 탐지 컴포넌트(250)는 경보 데이터를 출력 디바이스로 송신할 수 있으며, 여기서 관리자는, 예컨대, 관리 콘솔을 통해 경보를 볼 수 있다.
인지 모듈(225)은, 새로운 관찰들을 시맨틱 기억(230)에 유지되는 안정된 신경 언어 모델에서의 학습된 패턴들과 비교하고 이어서 이 새로운 관찰들의 희소성(rareness)을 추정하는 것에 의해, 시맨틱 기억(230)에 전달되는 언어 콘텐츠(즉, 식별된 심벌들, 단어들, 문구들)에 대해 학습 분석을 수행한다.
구체적으로, 이상 탐지 컴포넌트(250)는 관찰된 데이터에서의 비정상적 출현들을 식별하기 위해 심벌들, 단어들, 및 문구들 각각의 특이성 점수들을 평가한다. 비정상적 관찰이 식별되면, 이상 컴포넌트는 경보를 발행(예컨대, 컴퓨터 시스템(115)의 관리자 또는 사용자에게 통지)할 수 있다.
도 3은 일 실시예에 따른, 신경 언어 행동 인식 시스템에서 사용하기 위한 센서 데이터를 수집하는 방법(300)을 나타낸다. 보다 구체적으로, 방법(300)은 데이터 수집기가 연관된 입력 디바이스로부터 데이터를 검색하고 데이터를 신경 언어 모듈(215)로 송신하는 방법을 기술한다. 이 예에서, 데이터 수집기 모듈(202)이 이미지 데이터를 주어진 프레임 레이트로 포착하는 비디오 소스라고 가정한다. 물론, 각종의 데이터 수집기 컴포넌트들(202)이 사용될 수 있다.
방법(300)은 데이터 수집기 모듈(202)이 소스 입력 디바이스로부터 데이터를 검색(또는 수신)하는 단계(305)에서 시작된다. 이 경우에, 데이터 수집기 모듈(202)은, 호텔 로비와 같은 특정 위치를 관찰하기 위해 위치된 비디오 카메라와 같은, 비디오 소스로부터 비디오 프레임들을 검색할 수 있다. 게다가, 데이터 수집기 모듈(202)은 감각 기억 컴포넌트(135)로 송신할 데이터 값들을 식별한다. 그렇게 하기 위해, 데이터 수집기 모듈(202)은, 전경 객체들을 배경 객체들로부터 분리하고, 식별된 전경 객체들의 외관 및 운동학적 정보(kinematic information)를 측정하며, 장면(즉, 카메라의 시야(field of view))을 가로질러 이동하는 전경 객체들을 추적하기 위해, 비디오 프레임들을 평가한다. 그 결과, 데이터 수집기 모듈(202)은 비디오 프레임들에 묘사된 객체들의 외관 및 운동학적 측면들을 특징지우는 데이터 값들의 세트를 생성한다.
단계(310)에서, 데이터 수집기 모듈(202)은 각각의 데이터 값을, 그 데이터 값의 유형과 관련하여, 예컨대, 0과 1 사이의 범위(경계 포함) 내에 속하는 수치 값으로 정규화한다. 예를 들어, 운동학적 특징(kinematic feature)들과 연관된 값들이 운동학적 특징들과 연관된 다른 값들에 관련하여 0과 1 사이로 정규화된다. 그렇게 하는 것은 각각의 값을 공통 포맷으로 변환하고 신경 언어 모듈(215)이 비디오 스트림에서의 반복되는 이벤트들을 인식할 수 있게 한다.
값들을 정규화한 후, 단계(315)에서, 데이터 수집기 모듈(202)은, 주어진 값의 타임스탬프, 값의 데이터 유형(예컨대, 운동학적 특징들, 외관 특징들, 위치, 장소 등)과 연관된 평균, 그리고 그 데이터 유형에 대한 과거의 상위 값(high value) 및 하위 값(low value)과 같은, 정규화된 값들과 연관된 부가의 데이터를 식별한다. 그렇게 하는 것은 비디오 소스가 변경되는 경우에 데이터 수집기 모듈(202)이 정규화를 재조정할 수 있게 한다. 구체적으로, 데이터 수집기 모듈(202)은, 정규화를 재조정하기 위해, 식별된 과거의 값들 및 평균들을 참조한다.
단계(320)에서, 데이터 수집기 모듈(202)은 정규화된 값들의 벡터 및 연관된 데이터를 감각 기억 컴포넌트(135)로 전송한다. 언급된 바와 같이, 감각 기억 컴포넌트(135)는 정규화된 값들 및 연관된 데이터를 저장한다. 신경 언어 모듈(215)은 이어서 감각 기억 컴포넌트(135)로부터 정규화된 값들을 검색하고 그 후에 언어 분석을 수행할 수 있다.
도 4는 일 실시예에 따른, PAM 컴포넌트(220)를 초기화하는 방법(400)을 나타낸다. 방법(400)은 PAM 컴포넌트(220)가 어휘 분석기 컴포넌트(219)로부터 단어들의 관찰들의 스트림을 수신하는 단계(405)에서 시작된다. 언급된 바와 같이, 어휘 분석기 컴포넌트(219)는 매퍼 컴포넌트(218)에 의해 출력되는 바와 같은 심벌들의 그룹들의 통계적 빈도를 평가하는 것에 의해 단어들을 생성한다. 심벌들의 그룹들(다시 말하면, 단어들)이 나타날 때, 어휘 분석기 컴포넌트(219)는 통계적으로 관련성있는 심벌들의 조합들, 즉 단어들을 식별하고, 단어들을 PAM 컴포넌트(220)로 출력한다. 언급된 바와 같이, 스트림에서 흔히 관찰되는 바와 같은, 즉 통계적으로 관련성있는 심벌들, 단어들, 및 문구들에 대한 빈도의 통계 모델을 구축하기 위해, 심벌들, 단어들, 및 문구들이 식별된다.
단계(410)에서, PAM 컴포넌트(220)는 동시 출현하는 단어들의 통계들을 평가한다. 이러한 통계들은 각각의 단어가 서로 동시 출현하는 것을 PAM 컴포넌트(220)가 얼마나 자주 관찰하는지를 포함할 수 있다. 일 실시예에서, 통계들은 주어진 단어가 어휘 분석기 컴포넌트(219)에 의해 전달된 다른 단어와 얼마나 빈번히 동시 출현하는지에 의해 결정되는 통계적 유의성 점수를 포함할 수 있다. 각각의 단어가 얼마나 빈번히 서로 함께 관찰되는지를 결정하기 위해, PAM 컴포넌트(220)는 동시 출현에 기초하여 단어들 각각을 배열하는 매트릭스를 생성할 수 있다.
단계(420)에서, PAM 컴포넌트(220)는 연결 그래프를 생성한다. 연결 그래프에서의 각각의 노드는 어휘 컴포넌트(219)에 의해 출력된 단어들 중 하나를 표현한다. 무방향 에지(undirected edge)들은 동시 출현하는 단어들 사이의 관계를 상대 빈도로 표시하기 위해 노드들을 연결한다. 게다가, 에지들은 단어들 사이의 통계적 유의성 점수에 기초하여 가중될 수 있다. 접속된 노드들의 스트링들은, 신경 언어 모듈(210)에 입력되고, (매퍼 컴포넌트(217)에 의해) 심벌들로 클러스터링되며, (어휘 컴포넌트에 의해) 단어들로 파싱되는 데이터를 기술하기 위해, 행동 인식 시스템이 사용하는 문구들을 표현할 수 있다.
시간이 지남에 따라, PAM 컴포넌트(220)는 어휘 분석기 컴포넌트(219)로부터 단어들의 부가의 관찰들을 수신할 수 있다. 통계적 유의성 점수가 증가할 때, 예컨대, PAM 컴포넌트(220)가 서로 동시 출현하는 2개의 단어들의 후속 인스턴스들을 관찰할 때, PAM 컴포넌트(220)는 주어진 에지를 강화할 수 있다. 그에 부가하여, PAM 컴포넌트(220)는 시간이 지남에 따라 보다 적은 관찰들이 출현할 때(즉, 통계적 유의성 점수가 시간이 지남에 따라 감소할 때) 에지를 제거할 수 있다.
도 5는 일 실시예에 따른, PAM 컴포넌트(220)에 의해 생성된 예시적인 연결 그래프(500)를 나타낸다. 어휘 분석기 컴포넌트(219)가 처음으로 단어들의 스트림을 PAM 컴포넌트(220)로 출력할 때, PAM 컴포넌트(220)는 연결 그래프(500)를 생성한다.
노드들(원들로 표현됨)은 어휘 분석기 컴포넌트(219)에 의해 송신된 식별된 단어들을 표현한다. 노드들을 연결하는 무방향 에지들은 PAM 컴포넌트(220)가 연결된 단어들이 단어들의 스트림에 동시 출현하는 것을 관찰했다는 것을 나타낸다. 게다가, 에지들은 2개의 동시 출현하는 단어들 사이의 통계적 유의성 점수에 기초하여 가중될 수 있다. 그에 부가하여, 통계적 유의성 점수가 증가 또는 감소할 때, PAM 컴포넌트(220)는, 각각, 에지들을 강화 또는 약화시킬 수 있다. 예를 들어, PAM 컴포넌트(220)가 2개의 단어들 간의 추가의 동시 출현들을 관찰하면 통계적 유의성 점수가 증가할 수 있다. PAM 컴포넌트(220)는 증가의 결과로서 그래프 내의 양 단어들을 연결하는 에지를 강화할 수 있다.
그래프(500)는 PAM 컴포넌트(220)에 의해 식별된 문구들의 신택스를 설정한다. 문구는 각각의 단어가 주어진 문구(연결 그래프를 통한 주어진 경로)의 순서로 나타날 확률적 관계들에 기초하여 단어 스트림에 출현할 수 있는 단어들의 시퀀스이다. PAM 컴포넌트(220)는 주어진 문턱값을 초과하는 통계적 유의성 점수를 갖는 동시 출현하는 단어들을 갖는 매퍼에 의해 출력된 단어들의 스트림에서 관찰된 문구들을 출력한다. 게다가, PAM 컴포넌트(220)는 PAM 컴포넌트(220)에 의해 출력되는 문구들을 특징지우는 메타데이터를 인지 모듈(225)로 송신할 수 있다. 예를 들어, PAM 컴포넌트(200)는, 매퍼 컴포넌트(218) 및 어휘 분석기 컴포넌트(219)에 의해 송신된 심벌들, 단어들, 및 연관된 통계들과 같은, 매퍼 컴포넌트(218) 및 어휘 분석기 컴포넌트(219)로부터의 메타 데이터를 포함할 수 있다. 심벌들, 단어들, 문구들은, 심벌들, 단어들, 및 문구들이 관찰되는 빈도와 관련된 모든 메타 데이터 및 매퍼 컴포넌트 및 어휘 분석기 컴포넌트에 의해 할당된 점수와 함께, 모두 합하여, 입력 데이터를 기술하는 신경 언어 모델을 형성한다. 차례로, 인지 모듈(225)은, 예컨대, 정상적 및 비정상적 행동을 식별함에 있어서, 들어오는 데이터를 해석하기 위해 신경 언어 모델을 분석한다.
도 6은 일 실시예에 따른, PAM 컴포넌트에 의해 관찰된 문구들을 (어휘 컴포넌트에 의해 공급되는 단어 스트림에서) 인지 모듈(225)로 송신하는 방법(600)을 나타낸다. 구체적으로, 방법(600)은 초기화 이후에, 즉 완전 연결 그래프(fully connected graph)를 처음으로 생성한 후에, PAM 컴포넌트(220)가 어휘 분석기 컴포넌트(219)로부터 들어오는 단어들을 어떻게 처리하는지를 기술한다. 방법(600)은 PAM 컴포넌트(220)가 어휘 분석기 컴포넌트(219)로부터 단어들의 관찰들의 스트림을 수신하기 시작하는 단계(605)에서 시작된다. PAM 컴포넌트(220)는 수신된 단어들 간의 동시 출현들을 관찰한다 - 예컨대, 단어 A가 스트림에서 단어 B 옆에 위치된다 -. PAM 컴포넌트(220)는 또한 입력에서 새로 동시 출현하는 단어들을 식별할 수 있다.
단계(610)에서, PAM 컴포넌트(220)는 스트림에서의 각각의 관찰과 연관된 동시 출현 통계들을 업데이트한다. 예를 들어, PAM 컴포넌트(220)는 스트림에서 관찰되는 경우 한 쌍의 동시 출현하는 단어들에 대한 통계적 유의성 점수를 증가시킬 수 있다. 다른 예로서, 동시 출현하는 것으로 이전에 관찰되지 않은 한 쌍의 단어들이 스트림에 동시 출현하는 것으로 관찰될 수 있다. 그러한 경우, PAM 컴포넌트(220)는 한 쌍의 단어들에 대한 통계적 유의성 점수를 증가시킨다.
단계(615)에서, PAM 컴포넌트(220)는 완전 연결 그래프를 업데이트한다. 예를 들어, PAM 컴포넌트(220)는 통계적 유의성 점수가 증가된 그래프의 부분들에서 에지들을 강화시킬 수 있다. 게다가, PAM 컴포넌트(220)는 통계적 관련성에 도달한(예컨대, 통계적 유의성 점수가 문턱값을 초과한) 관찰된 쌍들에 에지들을 추가할 수 있다.
단계(620)에서, PAM 컴포넌트(220)는 주어진 문턱값을 초과하는 통계적 유의성 점수를 갖는 동시 출현하는 단어들을 갖는 문구들을 출력한다. 이러한 문턱값을 초과하는 것은 주어진 문구가 성숙되어 있고 인지 모듈(225)로 송신될 수 있다는 것을 나타낼 수 있다. 그에 부가하여, PAM 컴포넌트(220)는 문구들에 수반되는 심벌들, 단어들, 및 연관된 통계들을 송신할 수 있다. 언급된 바와 같이, 이러한 심벌들, 단어들, 및 문구들은 행동 인식 시스템들이 입력 데이터를 기술하는 데 사용하는 신경 언어 모델을 형성한다.
본 개시내용의 일 실시예는 컴퓨터 시스템에서 사용하기 위한 프로그램 제품으로서 구현된다. 프로그램 제품의 프로그램(들)은 (본원에 기술되는 방법들을 포함하는) 실시예들의 기능들을 정의하고 다양한 컴퓨터 판독가능 저장 매체 상에 포함될 수 있다. 컴퓨터 판독가능 저장 매체의 예들은 (i) 정보가 영구적으로 저장되는 비-기입가능 저장 매체(non-writable storage media)(예컨대, 광학 매체 드라이브에 의해 판독가능한 CD-ROM 또는 DVD-ROM 디스크들과 같은 컴퓨터 내의 판독 전용 메모리 디바이스들); (ii) 변경가능한 정보가 저장되는 기입가능 저장 매체(writable storage media)(예컨대, 하드 디스크 드라이브 또는 디스켓 드라이브 내의 플로피 디스크들)를 포함한다. 이러한 컴퓨터 판독가능 저장 매체는, 본 개시내용의 기능들을 지시하는 컴퓨터 판독가능 명령어들을 담고 있을 때, 본 개시내용의 실시예들이다. 다른 예시적인 매체는 정보가, 무선 통신 네트워크들을 비롯한 컴퓨터 또는 전화 네트워크를 통하는 등에 의해, 컴퓨터로 전달되는 통신 매체를 포함한다.
일반적으로, 본 개시내용의 실시예들을 구현하기 위해 실행되는 루틴들은 운영 체제 또는 특정 애플리케이션, 컴포넌트, 프로그램, 모듈, 객체, 또는 명령어들의 시퀀스의 일부일 수 있다. 본 개시내용의 컴퓨터 프로그램은 전형적으로 네이티브 컴퓨터(native computer)에 의해 머신 판독가능 포맷으로 변환될 다수의 명령어들 그리고 따라서 실행가능 명령어들로 이루어져 있다. 또한, 프로그램들은 프로그램에 로컬적으로 상주하거나 메모리에서 또는 저장 디바이스들 상에서 발견되는 변수들 및 데이터 구조들로 이루어져 있다. 그에 부가하여, 본원에 기술되는 다양한 프로그램들은 본 개시내용의 특정 실시예에서 그 프로그램들이 구현되는 애플리케이션에 기초하여 식별될 수 있다. 그렇지만, 이하에서 나오는 임의의 특정 프로그램 용어가 단지 편의상 사용되고, 따라서 본 개시내용이 이러한 용어에 의해 식별 및/또는 암시되는 임의의 특정 애플리케이션에서의 사용만으로 제한되어서는 안된다는 것을 잘 알 것이다.
기술된 바와 같이, 본원에서의 실시예들은 신경 언어 행동 인식 시스템을 통해 소스(예컨대, 비디오 소스, SCADA 소스, 네트워크 보안 소스 등)로부터 입력된 데이터를 표현하는 단어들의 사전에 기초하여 신택스를 결정하는 기법들을 제공한다. 심벌들, 단어들, 및 신택스는 행동 인식 시스템에 의해 관찰된 입력 데이터를 기술하는 데 사용되는 언어 모델에 대한 기초를 형성한다. 행동 인식 시스템은 관찰된 데이터에서 정상적 활동과 비정상적 활동을 구별하기 위해 언어 모델에 기초하여 행동을 분석하고 학습한다. 유리하게도, 이 접근법은 행동들 및 이상들을 식별하기 위해 미리 정의된 패턴들에 의존하지 않고 그 대신에 장면을 관찰하고 관찰된 것에 관한 정보를 생성하는 것에 의해 패턴들 및 행동들을 학습한다.
전술한 내용이 본 개시내용의 실시예들에 관한 것이지만, 본 개시내용의 다른 실시예들 및 추가 실시예들이 본 개시내용의 기본적인 범주를 벗어나지 않고 고안될 수 있으며, 그 범주는 이하의 청구항들에 의해 결정된다.

Claims (20)

  1. 하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스(syntax)를 생성하는 방법으로서,
    심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 단계 - 상기 심벌들은 입력 데이터로부터 생성된 정규화된 벡터들의 정렬된 스트림으로부터 생성됨 -;
    상기 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들을 평가하는 단계 - 상기 통계들은 상기 단어들의 조합들이 동시 출현하는 빈도를 포함함 -;
    상기 평가된 통계들에 기초하여 단어들의 조합들의 모델을 업데이트하는 단계 - 상기 모델은 통계적으로 관련성 있는(statistically relevant) 단어들을 식별해줌 -;
    연결 그래프(connected graph)를 생성하는 단계 - 상기 연결 그래프에서의 각각의 노드는 상기 스트림 내의 상기 단어들 중 하나를 표현하고, 상기 노드들을 연결하는 에지들은 상기 스트림 내의 단어들 사이의 확률적 관계들을 표현함 -; 및
    상기 연결 그래프에 기초하여 문구들을 식별하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 통계들은 2개의 단어들이 서로 동시 출현하는 빈도를 나타내는 통계적 유의성 점수(statistical significance score)를 포함하는, 방법.
  3. 제2항에 있어서,
    명시된 문턱값을 초과하는 통계적 유의성 점수를 갖는 동시 출현하는 단어들을 포함하는 하나 이상의 문구들을 식별하는 단계; 및
    상기 식별된 문구들을 출력하는 단계를 추가로 포함하는, 방법.
  4. 제1항에 있어서, 상기 에지들은 각각의 노드 간의 통계적 유의성 점수에 기초하여 가중되는, 방법.
  5. 제1항에 있어서,
    제2 단어들의 스트림을 수신하는 단계; 및
    상기 제2 단어들의 스트림에 기초하여 상기 동시 출현하는 단어들의 상기 통계들을 업데이트하는 단계를 추가로 포함하는, 방법.
  6. 제5항에 있어서, 시간이 지남에 따라 덜 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 감소시키는 단계를 추가로 포함하는, 방법.
  7. 제5항에 있어서, 시간이 지남에 따라 보다 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 증가시키는 단계를 추가로 포함하는, 방법.
  8. 프로세서 상에서 실행될 때, 하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스를 생성하는 동작을 수행하는 명령어들을 저장하는 컴퓨터 판독가능 저장 매체로서, 상기 동작은:
    심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 동작 - 상기 심벌들은 입력 데이터로부터 생성된 정규화된 벡터들의 정렬된 스트림으로부터 생성됨 -;
    상기 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들을 평가하는 동작 - 상기 통계들은 상기 단어들의 조합들이 동시 출현하는 빈도를 포함함 -;
    상기 평가된 통계들에 기초하여 단어들의 조합들의 모델을 업데이트하는 동작 - 상기 모델은 통계적으로 관련성 있는 단어들을 식별해줌 -;
    연결 그래프를 생성하는 동작 - 상기 연결 그래프에서의 각각의 노드는 상기 스트림 내의 상기 단어들 중 하나를 표현하고, 상기 노드들을 연결하는 에지들은 상기 스트림 내의 단어들 사이의 확률적 관계들을 표현함 -; 및
    상기 연결 그래프에 기초하여 문구들을 식별하는 동작을 포함하는, 컴퓨터 판독가능 저장 매체.
  9. 제8항에 있어서, 상기 통계들은 2개의 단어들이 서로 동시 출현하는 빈도를 나타내는 통계적 유의성 점수를 포함하는, 컴퓨터 판독가능 저장 매체.
  10. 제9항에 있어서, 상기 동작은:
    명시된 문턱값을 초과하는 통계적 유의성 점수를 갖는 동시 출현하는 단어들을 포함하는 하나 이상의 문구들을 식별하는 동작; 및
    상기 식별된 문구들을 출력하는 동작을 추가로 포함하는, 컴퓨터 판독가능 저장 매체.
  11. 제8항에 있어서, 상기 에지들은 각각의 노드 간의 통계적 유의성 점수에 기초하여 가중되는, 컴퓨터 판독가능 저장 매체.
  12. 제8항에 있어서, 상기 동작은:
    제2 단어들의 스트림을 수신하는 동작; 및
    상기 제2 단어들의 스트림에 기초하여 상기 동시 출현하는 단어들의 상기 통계들을 업데이트하는 동작을 추가로 포함하는, 컴퓨터 판독가능 저장 매체.
  13. 제12항에 있어서, 상기 동작은, 시간이 지남에 따라 덜 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 감소시키는 동작을 추가로 포함하는, 컴퓨터 판독가능 저장 매체.
  14. 제12항에 있어서, 상기 동작은, 시간이 지남에 따라 보다 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 증가시키는 동작을 추가로 포함하는, 컴퓨터 판독가능 저장 매체.
  15. 시스템으로서,
    프로세서; 및
    하나 이상의 소스들로부터 획득된 입력 데이터의 신경 언어 모델에 대한 신택스를 생성하는 동작을 수행하도록 구성된 하나 이상의 애플리케이션 프로그램들을 저장하는 메모리를 포함하고, 상기 동작은:
    심벌들의 시퀀스로부터 구축된 사전의 단어들의 스트림을 수신하는 동작 - 상기 심벌들은 입력 데이터로부터 생성된 정규화된 벡터들의 정렬된 스트림으로부터 생성됨 -;
    상기 스트림에 동시 출현하는 단어들의 조합들에 대한 통계들을 평가하는 동작 - 상기 통계들은 상기 단어들의 조합들이 동시 출현하는 빈도를 포함함 -;
    상기 평가된 통계들에 기초하여 단어들의 조합들의 모델을 업데이트하는 동작 - 상기 모델은 통계적으로 관련성 있는 단어들을 식별해줌 -;
    연결 그래프를 생성하는 동작 - 상기 연결 그래프에서의 각각의 노드는 상기 스트림 내의 상기 단어들 중 하나를 표현하고, 상기 노드들을 연결하는 에지들은 상기 스트림 내의 단어들 사이의 확률적 관계들을 표현함 -; 및
    상기 연결 그래프에 기초하여 문구들을 식별하는 동작을 포함하는, 시스템.
  16. 제15항에 있어서, 상기 통계들은 2개의 단어들이 서로 동시 출현하는 빈도를 나타내는 통계적 유의성 점수를 포함하는, 시스템.
  17. 제16항에 있어서, 상기 동작은:
    명시된 문턱값을 초과하는 통계적 유의성 점수를 갖는 동시 출현하는 단어들을 포함하는 하나 이상의 문구들을 식별하는 동작; 및
    상기 식별된 문구들을 출력하는 동작을 추가로 포함하는, 시스템.
  18. 제15항에 있어서, 상기 동작은:
    제2 단어들의 스트림을 수신하는 동작; 및
    상기 제2 단어들의 스트림에 기초하여 상기 동시 출현하는 단어들의 상기 통계들을 업데이트하는 동작을 추가로 포함하는, 시스템.
  19. 제18항에 있어서, 상기 동작은, 시간이 지남에 따라 덜 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 감소시키는 동작을 추가로 포함하는, 시스템.
  20. 제18항에 있어서, 상기 동작은, 시간이 지남에 따라 보다 빈번히 관찰되는 동시 출현하는 단어들의 통계적 유의성 점수를 증가시키는 동작을 추가로 포함하는, 시스템.
KR1020177019094A 2014-12-12 2015-12-10 신경 언어 행동 인식 시스템의 지각 연상 기억 KR102440821B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/569,161 2014-12-12
US14/569,161 US10409910B2 (en) 2014-12-12 2014-12-12 Perceptual associative memory for a neuro-linguistic behavior recognition system
PCT/US2015/064954 WO2016094635A1 (en) 2014-12-12 2015-12-10 Perceptual associative memory for a neuro-linguistic behavior recognition system

Publications (2)

Publication Number Publication Date
KR20170094357A true KR20170094357A (ko) 2017-08-17
KR102440821B1 KR102440821B1 (ko) 2022-09-05

Family

ID=56108170

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177019094A KR102440821B1 (ko) 2014-12-12 2015-12-10 신경 언어 행동 인식 시스템의 지각 연상 기억

Country Status (6)

Country Link
US (2) US10409910B2 (ko)
EP (1) EP3230891A1 (ko)
JP (1) JP2017538229A (ko)
KR (1) KR102440821B1 (ko)
CN (2) CN107003992B (ko)
WO (1) WO2016094635A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3796371A3 (en) 2013-09-27 2021-10-06 INTEL Corporation Self-aligned via and plug patterning for back end of line (beol) interconnects
US10409909B2 (en) 2014-12-12 2019-09-10 Omni Ai, Inc. Lexical analyzer for a neuro-linguistic behavior recognition system
US11537791B1 (en) 2016-04-05 2022-12-27 Intellective Ai, Inc. Unusual score generators for a neuro-linguistic behavorial recognition system
WO2017217661A1 (ko) * 2016-06-15 2017-12-21 울산대학교 산학협력단 어휘 의미망을 이용한 단어 의미 임베딩 장치 및 방법과, 어휘 의미망 및 단어 임베딩을 이용한 동형이의어 분별 장치 및 방법
WO2017218009A1 (en) * 2016-06-17 2017-12-21 Hewlett-Packard Development Company, L.P. Shared machine-learning data structure
US11531908B2 (en) * 2019-03-12 2022-12-20 Ebay Inc. Enhancement of machine learning-based anomaly detection using knowledge graphs
US11205430B2 (en) * 2019-10-01 2021-12-21 Rovi Guides, Inc. Method and apparatus for generating hint words for automated speech recognition
US11527234B2 (en) 2019-10-01 2022-12-13 Rovi Guides, Inc. Method and apparatus for generating hint words for automated speech recognition
US20210279633A1 (en) * 2020-03-04 2021-09-09 Tibco Software Inc. Algorithmic learning engine for dynamically generating predictive analytics from high volume, high velocity streaming data
CN117332823B (zh) * 2023-11-28 2024-03-05 浪潮电子信息产业股份有限公司 目标内容自动生成方法、装置、电子设备及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059187A1 (en) * 2006-08-31 2008-03-06 Roitblat Herbert L Retrieval of Documents Using Language Models
US20100179838A1 (en) * 2009-01-15 2010-07-15 Nitin Basant Healthcare service provider insurance claim fraud and error detection using co-occurrence
US20110064267A1 (en) * 2009-09-17 2011-03-17 Wesley Kenneth Cobb Classifier anomalies for observed behaviors in a video surveillance system
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
US20140163968A1 (en) * 1999-05-28 2014-06-12 Fluential, Llc Phrase-Based Dialogue Modeling with Particular Application to creating Recognition Grammars for Voice-Controlled User Interfaces

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4679077A (en) 1984-11-10 1987-07-07 Matsushita Electric Works, Ltd. Visual Image sensor system
US5113507A (en) 1988-10-20 1992-05-12 Universities Space Research Association Method and apparatus for a sparse distributed memory system
US5317507A (en) 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
JP3123587B2 (ja) 1994-03-09 2001-01-15 日本電信電話株式会社 背景差分による動物体領域抽出方法
AU6726596A (en) 1995-03-22 1996-10-08 Idt International Digital Technologies Deutschland Gmbh Method and apparatus for depth modelling and providing depth information of moving objects
US7076102B2 (en) 2001-09-27 2006-07-11 Koninklijke Philips Electronics N.V. Video monitoring system employing hierarchical hidden markov model (HMM) event learning and classification
US5969755A (en) 1996-02-05 1999-10-19 Texas Instruments Incorporated Motion based event detection system and method
US5751378A (en) 1996-09-27 1998-05-12 General Instrument Corporation Scene change detector for digital video
US6263088B1 (en) 1997-06-19 2001-07-17 Ncr Corporation System and method for tracking movement of objects in a scene
US7711672B2 (en) 1998-05-28 2010-05-04 Lawrence Au Semantic network methods to disambiguate natural language meaning
US6711278B1 (en) 1998-09-10 2004-03-23 Microsoft Corporation Tracking semantic objects in vector image sequences
US6570608B1 (en) 1998-09-30 2003-05-27 Texas Instruments Incorporated System and method for detecting interactions of people and vehicles
WO2000034919A1 (en) 1998-12-04 2000-06-15 Interval Research Corporation Background estimation and segmentation based on range and color
US20020032564A1 (en) * 2000-04-19 2002-03-14 Farzad Ehsani Phrase-based dialogue modeling with particular application to creating a recognition grammar for a voice-controlled user interface
US7136525B1 (en) 1999-09-20 2006-11-14 Microsoft Corporation System and method for background maintenance of an image sequence
US6904402B1 (en) * 1999-11-05 2005-06-07 Microsoft Corporation System and iterative method for lexicon, segmentation and language model joint optimization
US6674877B1 (en) 2000-02-03 2004-01-06 Microsoft Corporation System and method for visually tracking occluded objects in real time
US6940998B2 (en) 2000-02-04 2005-09-06 Cernium, Inc. System for automated screening of security cameras
US7868912B2 (en) 2000-10-24 2011-01-11 Objectvideo, Inc. Video surveillance system employing video primitives
US6678413B1 (en) 2000-11-24 2004-01-13 Yiqing Liang System and method for object identification and behavior characterization using video analysis
US7003444B2 (en) * 2001-07-12 2006-02-21 Microsoft Corporation Method and apparatus for improved grammar checking using a stochastic parser
US20030107650A1 (en) 2001-12-11 2003-06-12 Koninklijke Philips Electronics N.V. Surveillance system with suspicious behavior detection
US20060165386A1 (en) 2002-01-08 2006-07-27 Cernium, Inc. Object selective video recording
US7519589B2 (en) * 2003-02-04 2009-04-14 Cataphora, Inc. Method and apparatus for sociological data analysis
US7436887B2 (en) 2002-02-06 2008-10-14 Playtex Products, Inc. Method and apparatus for video frame sequence-based object tracking
US6856249B2 (en) 2002-03-07 2005-02-15 Koninklijke Philips Electronics N.V. System and method of keeping track of normal behavior of the inhabitants of a house
US8015143B2 (en) 2002-05-22 2011-09-06 Estes Timothy W Knowledge discovery agent system and method
US7006128B2 (en) 2002-05-30 2006-02-28 Siemens Corporate Research, Inc. Object detection for sudden illumination changes using order consistency
US7227893B1 (en) 2002-08-22 2007-06-05 Xlabs Holdings, Llc Application-specific object-based segmentation and recognition system
US7200266B2 (en) 2002-08-27 2007-04-03 Princeton University Method and apparatus for automated video activity analysis
US7171358B2 (en) * 2003-01-13 2007-01-30 Mitsubishi Electric Research Laboratories, Inc. Compression of language model structures and word identifiers for automated speech recognition systems
US6999600B2 (en) 2003-01-30 2006-02-14 Objectvideo, Inc. Video scene background maintenance using change detection and classification
US7026979B2 (en) 2003-07-03 2006-04-11 Hrl Labortories, Llc Method and apparatus for joint kinematic and feature tracking using probabilistic argumentation
US7127083B2 (en) 2003-11-17 2006-10-24 Vidient Systems, Inc. Video surveillance system with object detection and probability scoring based on object class
US20060018516A1 (en) 2004-07-22 2006-01-26 Masoud Osama T Monitoring activity using video information
EP2602742A1 (en) 2004-07-30 2013-06-12 Euclid Discoveries, LLC Apparatus and method for processing video data
JP2006080437A (ja) 2004-09-13 2006-03-23 Intel Corp マスク・ブランクス検査方法及びマスク・ブランク検査ツール
US7391907B1 (en) * 2004-10-01 2008-06-24 Objectvideo, Inc. Spurious object detection in a video surveillance system
US7574409B2 (en) 2004-11-04 2009-08-11 Vericept Corporation Method, apparatus, and system for clustering and classification
US7620266B2 (en) 2005-01-20 2009-11-17 International Business Machines Corporation Robust and efficient foreground analysis for real-time video surveillance
US20060190419A1 (en) 2005-02-22 2006-08-24 Bunn Frank E Video surveillance data analysis algorithms, with local and network-shared communications for facial, physical condition, and intoxication recognition, fuzzy logic intelligent camera system
EP1859411B1 (en) 2005-03-17 2010-11-03 BRITISH TELECOMMUNICATIONS public limited company Tracking objects in a video sequence
AU2006230361A1 (en) 2005-03-30 2006-10-05 Cernium Corporation Intelligent video behavior recognition with multiple masks and configurable logic inference module
US7825954B2 (en) 2005-05-31 2010-11-02 Objectvideo, Inc. Multi-state target tracking
US7672865B2 (en) * 2005-10-21 2010-03-02 Fair Isaac Corporation Method and apparatus for retail data mining using pair-wise co-occurrence consistency
US7958650B2 (en) * 2006-01-23 2011-06-14 Turatti S.R.L. Apparatus for drying foodstuffs
EP2013823A1 (en) 2006-03-28 2009-01-14 The University Court Of The University Of Edinburgh A method for automatically characterizing the behavior of one or more objects
US20070250898A1 (en) 2006-03-28 2007-10-25 Object Video, Inc. Automatic extraction of secondary video streams
EP2013817A2 (en) 2006-04-17 2009-01-14 Objectvideo, Inc. Video segmentation using statistical pixel modeling
US8467570B2 (en) 2006-06-14 2013-06-18 Honeywell International Inc. Tracking system with fused motion and object detection
US20100293048A1 (en) 2006-10-19 2010-11-18 Taboola.Com Ltd. Method and system for content composition
US20080109454A1 (en) 2006-11-03 2008-05-08 Willse Alan R Text analysis techniques
US7916944B2 (en) 2007-01-31 2011-03-29 Fuji Xerox Co., Ltd. System and method for feature level foreground segmentation
US8131012B2 (en) 2007-02-08 2012-03-06 Behavioral Recognition Systems, Inc. Behavioral recognition system
US8358342B2 (en) 2007-02-23 2013-01-22 Johnson Controls Technology Company Video processing systems and methods
US8086036B2 (en) 2007-03-26 2011-12-27 International Business Machines Corporation Approach for resolving occlusions, splits and merges in video images
US7813528B2 (en) 2007-04-05 2010-10-12 Mitsubishi Electric Research Laboratories, Inc. Method for detecting objects left-behind in a scene
US8411935B2 (en) * 2007-07-11 2013-04-02 Behavioral Recognition Systems, Inc. Semantic representation module of a machine-learning engine in a video analysis system
US8064639B2 (en) 2007-07-19 2011-11-22 Honeywell International Inc. Multi-pose face tracking using multiple appearance models
US20090094064A1 (en) * 2007-10-09 2009-04-09 Michael Tyler Healthcare Insurance Claim Fraud and Error Detection Using Co-Occurrence
WO2009049314A2 (en) 2007-10-11 2009-04-16 Trustees Of Boston University Video processing system employing behavior subtraction between reference and observed video image sequences
EP2093698A1 (en) 2008-02-19 2009-08-26 British Telecommunications Public Limited Company Crowd congestion analysis
US8452108B2 (en) 2008-06-25 2013-05-28 Gannon Technologies Group Llc Systems and methods for image recognition using graph-based pattern matching
US8355896B2 (en) * 2008-09-02 2013-01-15 Fair Isaac Corporation Co-occurrence consistency analysis method and apparatus for finding predictive variable groups
US8121968B2 (en) 2008-09-11 2012-02-21 Behavioral Recognition Systems, Inc. Long-term memory in a video analysis system
US8150624B2 (en) * 2008-11-11 2012-04-03 Northrop Grumman Systems Corporation System and method for tracking a moving person
US9373055B2 (en) 2008-12-16 2016-06-21 Behavioral Recognition Systems, Inc. Hierarchical sudden illumination change detection using radiance consistency within a spatial neighborhood
US8504374B2 (en) * 2009-02-02 2013-08-06 Jerry Lee Potter Method for recognizing and interpreting patterns in noisy data sequences
US8270732B2 (en) * 2009-08-31 2012-09-18 Behavioral Recognition Systems, Inc. Clustering nodes in a self-organizing map using an adaptive resonance theory network
US8170283B2 (en) * 2009-09-17 2012-05-01 Behavioral Recognition Systems Inc. Video surveillance system configured to analyze complex behaviors using alternating layers of clustering and sequencing
US8463756B2 (en) * 2010-04-21 2013-06-11 Haileo, Inc. Systems and methods for building a universal multimedia learner
US8316030B2 (en) 2010-11-05 2012-11-20 Nextgen Datacom, Inc. Method and system for document classification or search using discrete words
US8620875B2 (en) * 2011-07-25 2013-12-31 Salesforce.Com, Inc. Fraud analysis in a contact database
US9916538B2 (en) 2012-09-15 2018-03-13 Z Advanced Computing, Inc. Method and system for feature detection
US9147129B2 (en) * 2011-11-18 2015-09-29 Honeywell International Inc. Score fusion and training data recycling for video classification
US8542135B2 (en) 2011-11-24 2013-09-24 International Business Machines Corporation Compression algorithm incorporating automatic generation of a bank of predefined huffman dictionaries
HUE030528T2 (en) 2012-03-15 2017-05-29 Cortical Io Gmbh Process, equipment and product for semantic processing of texts
US9111613B2 (en) * 2012-07-12 2015-08-18 The Regents Of The University Of Michigan Adaptive reading of a resistive memory
US8762134B2 (en) * 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for situational analysis text generation
US9418142B2 (en) * 2013-05-24 2016-08-16 Google Inc. Overlapping community detection in weighted graphs
EP3031004A4 (en) * 2013-08-09 2016-08-24 Behavioral Recognition Sys Inc SECURITY OF COGNITIVE INFORMATION USING BEHAVIOR RECOGNITION SYSTEM
CN104035917B (zh) * 2014-06-10 2017-07-07 复旦大学 一种基于语义空间映射的知识图谱管理方法和系统
US10409909B2 (en) 2014-12-12 2019-09-10 Omni Ai, Inc. Lexical analyzer for a neuro-linguistic behavior recognition system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140163968A1 (en) * 1999-05-28 2014-06-12 Fluential, Llc Phrase-Based Dialogue Modeling with Particular Application to creating Recognition Grammars for Voice-Controlled User Interfaces
US20080059187A1 (en) * 2006-08-31 2008-03-06 Roitblat Herbert L Retrieval of Documents Using Language Models
US20100179838A1 (en) * 2009-01-15 2010-07-15 Nitin Basant Healthcare service provider insurance claim fraud and error detection using co-occurrence
US20110064267A1 (en) * 2009-09-17 2011-03-17 Wesley Kenneth Cobb Classifier anomalies for observed behaviors in a video surveillance system
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis

Also Published As

Publication number Publication date
JP2017538229A (ja) 2017-12-21
CN107003992B (zh) 2021-04-27
CN113255333A (zh) 2021-08-13
KR102440821B1 (ko) 2022-09-05
CN107003992A (zh) 2017-08-01
US20220075946A1 (en) 2022-03-10
US20160170961A1 (en) 2016-06-16
US10409910B2 (en) 2019-09-10
US20200193092A1 (en) 2020-06-18
EP3230891A1 (en) 2017-10-18
WO2016094635A1 (en) 2016-06-16

Similar Documents

Publication Publication Date Title
US11991194B2 (en) Cognitive neuro-linguistic behavior recognition system for multi-sensor data fusion
KR102440821B1 (ko) 신경 언어 행동 인식 시스템의 지각 연상 기억
US11699278B2 (en) Mapper component for a neuro-linguistic behavior recognition system
US11017168B2 (en) Lexical analyzer for a neuro-linguistic behavior recognition system
US10657434B2 (en) Anomaly score adjustment across anomaly generators
US12032909B2 (en) Perceptual associative memory for a neuro-linguistic behavior recognition system

Legal Events

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