KR101182965B1 - 데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치 - Google Patents

데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치 Download PDF

Info

Publication number
KR101182965B1
KR101182965B1 KR1020050118290A KR20050118290A KR101182965B1 KR 101182965 B1 KR101182965 B1 KR 101182965B1 KR 1020050118290 A KR1020050118290 A KR 1020050118290A KR 20050118290 A KR20050118290 A KR 20050118290A KR 101182965 B1 KR101182965 B1 KR 101182965B1
Authority
KR
South Korea
Prior art keywords
time series
node
data
learning
series pattern
Prior art date
Application number
KR1020050118290A
Other languages
English (en)
Other versions
KR20060063752A (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 KR20060063752A publication Critical patent/KR20060063752A/ko
Application granted granted Critical
Publication of KR101182965B1 publication Critical patent/KR101182965B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • G10L15/142Hidden Markov Models [HMMs]
    • G10L15/144Training of HMMs

Abstract

시계열 데이터의 관측값에 기초하여 자기 조직적 방식으로 갱신하기 위한 학습부, 각 노드가 시계열 데이터의 시계열 패턴을 나타내는 시계열 패턴 모델을 갖는 복수의 노드를 포함하는 시계열 패턴 기억 네트워크를 포함하는 시계열 데이터 학습을 위한 학습 장치가 제공된다.
시계열 데이터, 네트워크, 뉴럴 네트워크, 상태 천이 확률, 데이터 처리 장치

Description

데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치{METHOD AND APPARATUS FOR LEARNING DATA, METHOD AND APPARATUS FOR RECOGNIZING DATA, METHOD AND APPARATUS FOR GENERATING DATA, AND COMPUTER PROGRAM}
도 1은 종래의 교사 있는 학습의 일례를 설명하기 위한 도면.
도 2는 본 발명을 적용한 데이터 처리 장치의 제1 실시 형태의 구성예를 도시하는 블록도.
도 3은 시계열 패턴 기억 네트워크의 제1 구성예를 도시하는 도면.
도 4는 노드의 구성예를 도시하는 도면.
도 5는 시계열 패턴 기억 네트워크의 제2 구성예를 도시하는 도면.
도 6은 시계열 패턴 기억 네트워크의 제3 구성예를 도시하는 도면.
도 7은 학습부의 구성예를 도시하는 블록도.
도 8은 학습 처리부의 구성예를 도시하는 블록도.
도 9는 갱신 가중치를 결정하는 결정 방법을 설명하기 위한 도면.
도 10은 학습 데이터 기억부에 기억시키는 학습 데이터를 갱신하는 갱신 방법을 설명하기 위한 도면.
도 11은 학습 처리를 설명하는 플로우차트.
도 12는 초기화 처리를 설명하는 플로우차트.
도 13은 인식부의 구성예를 도시하는 블록도.
도 14는 인식 처리를 설명하는 플로우차트.
도 15는 생성부의 구성예를 도시하는 블록도.
도 16은 생성 처리를 설명하는 플로우차트.
도 17은 학습의 횟수와 정해율의 관계를 도시하는 도면.
도 18은 각 노드가 갖는 학습 데이터 기억부에 보유된 학습 데이터의 카테고리의 비율을 도시하는 도면.
도 19는 음성 데이터의 인식 결과를 도시하는 도면.
도 20은 시계열 패턴 기억 네트워크의 학습 결과를 도시하는 도면.
도 21은 노드의 다른 구성예를 도시하는 도면.
도 22는 함수 f()가 뉴럴 네트워크에 의해 표현되어 있는 경우의 노드 Ni의 구성예를 도시하는 도면.
도 23은 리커런트 뉴럴 네트워크의 교사 있는 학습을 설명하기 위한 도면.
도 24는 리커런트 뉴럴 네트워크의 교사 없는 학습을 설명하기 위한 도면.
도 25는 리커런트 뉴럴 네트워크를 갖는 노드로 구성되는 시계열 패턴 기억 네트워크의 학습을 설명하기 위한 도면.
도 26은 본 발명을 적용한 데이터 처리 장치의 제2 실시 형태의 구성예를 도시하는 블록도.
도 27은 제어 대상으로 순모델 및 역모델을 설명하기 위한 도면.
도 28은 결합 네트워크의 구성예를 도시하는 도면.
도 29는 본 발명을 적용한 데이터 처리 장치의 제3 실시 형태의 구성예를 도시하는 블록도.
도 30은 결합 네트워크의 학습을 설명하는 플로우차트.
도 31은 결합 네트워크를 이용하여 출력 데이터 또는 제어 데이터를 추정하는 처리를 설명하는 플로우차트.
도 32는 본 발명을 적용한 컴퓨터의 일 실시 형태의 구성예를 도시하는 블록도.
<도면의 주요 부분에 대한 부호의 설명>
1 : 신호 입력부
2 : 특징 추출부
3 : 인식부
4 : 학습부
5 : 기억부
6 : 생성부
21 : 시계열 패턴 모델
22, 31 : 학습 데이터 기억부
32 : 학습 처리부
41 : 스코어 계산부
42 : 승자 노드 결정부
43 : 수치 결정부
44 : 학습 데이터 갱신부
45 : 모델 학습부
51 : 스코어 계산부
52 : 승자 노드 결정부
53 : 출력부
61 : 생성 노드 결정부
62 :시계열 결정부
63 : 출력부
101 : 입력부
102 : 출력부
103 : 데이터 처리부
111A, 111B : 학습부
112A, 112B : 기억부
113 : 인식부
114 : 생성부
115 : 입출력 관계 연상 기억부
211 : 기억부
212 : 학습부
213 : 인식 생성부
221 : 학습 처리부
222 : 결합 수치 갱신부
231 : 스코어 계산부
232 : 승자 노드 결정부
233 : 생성 노드 결정부
234 : 시계열 생성부
301 : 버스
302 : CPU
303 : ROM
304 : RAM
305 : 하드디스크
306 : 출력부
307 : 입력부
308 : 통신부
309 : 드라이브
310 : 입출력 인터페이스
311 : 리무버블 기록 매체
<특허 문헌1> 일본 특개평4-156610호 공보
<특허 문헌2> 일본 특개평6-231106호 공보
<특허 문헌3> 일본 특개2002-311988호 공보
<비특허 문헌1> 痲生英樹, 津田宏治, 村田昇, 「패턴 인식과 학습의 통계학」, 이와나미서점
<비특허 문헌2> T. 코호넨, 「자기 조직화 맵」, 슈프링거?페어라크 도쿄
<비특허 문헌3> T.M. Martinetz, S.G. Berkovich, K.J. Schulten, "Neural-Gas" Network for Vector Quantization and its Application to Time-Series Prediction, IEEE Trans. Neural Networks, VOL. 4, NO. 4, pp558-569, 1999
<비특허 문헌4> Laurence Rabiner, Biing-Hwang Juang 공저, 「음성 인식의 기초(위?하)」, NTT 어드벤스 테크놀로지 주식회사
<비특허 문헌5> 芳澤伸一, 馬場朗, 松浪加奈子, 米良祐一郞, 山田實一, 「충족 통계량과 화자 거리를 이용한 음운 모델의 교사가 없는 학습」, 신학기보, SP2000-89, pp.83-88, 2000
<관련 출원의 상호 참조>
본 발명은 2004년 12월 6일자로 일본 특허청에 출원된 일본 특허 출원 JP2004-353382호에 관련된 내용을 포함하며, 그 전체 내용은 참조로서 본 명세서에 포함된다.
본 발명은, 학습 장치 및 학습 방법, 인식 장치 및 인식 방법, 생성 장치 및 생성 방법, 및 프로그램에 관한 것으로, 특히 예를 들면, 음성과 같은 시계열의 데이터인 시계열 데이터의 교사가 없는 학습, 또한 그 학습 결과를 이용한 시계열 데이터의 인식이나 생성을, 용이하게 행할 수 있도록 하는 학습 장치 및 학습 방법, 인식 장치 및 인식 방법, 생성 장치 및 생성 방법, 및 프로그램에 관한 것이다.
패턴을 학습하고 인식을 행하는 기술은, 일반적으로 패턴 인식(pattern recognition)이라고 불리고, 패턴 인식에 의한 학습은, 교사가 있는 학습(supervised learning)과, 교사가 없는 학습(unsupervised learning)으로 나눌 수 있다.
교사가 있는 학습이란, 각 패턴의 학습 데이터가 어떤 클래스에 속할지의 정보(이것을 정답 라벨이라고 함)를 부여하고, 각 패턴마다, 그 패턴에 속하는 학습 데이터를 학습하는 방법으로서, 템플릿 매칭, 뉴럴 네트워크, HMM(Hidden Markov Model) 등을 이용한 학습 방법이 수많이 제안되고 있다.
여기서, 도 1은, 종래의 교사가 있는 학습의 일례를 도시하고 있다.
교사가 있는 학습에서는, 학습에 이용하는 학습 데이터가, 상정한 카테고리(클래스)(예를 들면, 각 음소의 카테고리나, 각 음운의 카테고리, 각 단어의 카테고리등)마다 준비된다. 예를 들면, "A", "B", "C"이라는 발성의 음성 데이터를 학습하는 경우, "A", "B", "C" 각각의 다수의 음성 데이터가 준비된다.
한편, 학습에 이용하는 모델(각 카테고리의 학습 데이터를 학습시키는 모델)도, 상정한 카테고리마다 준비된다. 여기서, 모델은, 파라미터에 의해 정의된다. 예를 들면, 음성 데이터의 학습에는, 모델로서, HMM 등이 이용되지만, HMM은, 어떤 상태로부터 다른 상태(원래의 상태를 포함함)로 천이하는 상태 천이 확률이나, HMM 으로부터 출력되는 관측값의 확률 밀도를 나타내는 출력 확률 밀도 함수 등에 따라서 정의된다.
교사가 있는 학습에서는, 각 카테고리(클래스)의 학습이, 그 카테고리의 학습 데이터만을 이용하여 행해진다. 즉, 도 1에서는, 카테고리 "A"의 모델의 학습은, 카테고리 "A"의 학습 데이터만을 이용하여 행해지고, 카테고리 "B"의 모델의 학습은, 카테고리 "B"의 학습 데이터만을 이용하여 행해진다. 마찬가지로, 카테고리 "C"의 모델의 학습도, 카테고리 "C"의 학습 데이터만을 이용하여 행해진다.
교사가 있는 학습에서는, 이와 같이, 각 카테고리의 학습 데이터를 이용하여, 그 카테고리의 모델의 학습을 행할 필요가 있기 때문에, 카테고리마다, 그 카테고리의 학습 데이터를 준비하고, 각 카테고리의 모델의 학습에 대하여, 그 카테고리의 학습 데이터를 부여하여, 카테고리마다의 모델을 얻는다. 즉, 교사가 있는 학습에 따르면, 클래스마다 템플릿(정답 라벨이 나타내는 클래스(카테고리)의 모델)를 얻을 수 있다.
따라서, 인식시에는, 어떤 인식 대상의 데이터에 대하여, 그 인식 대상의 데이터에 가장 적합(match)한 템플릿(우도가 가장 높은 템플릿)의 정답 라벨을, 인식 결과적으로 출력할 수 있다.
한편, 교사가 없는 학습은, 각 패턴의 학습 데이터에 정답 라벨이 공급되지 않는 상황에서 행해지는 학습으로서, 예를 들면, 템플릿 매칭이나 뉴럴 네트 등을 이용한 학습 방법이 있지만, 정답 라벨이 공급되지 않는다고 하는 점에서, 교사가 있는 학습과는 크게 상이하다.
그런데, 패턴 인식은, 그 패턴 인식에 의해서 인식하려고 하는 인식 대상의 데이터(신호)가 관측되는 신호 공간의 양자화라고 볼 수 있다. 특히, 인식 대상의 데이터가 벡터인 경우의 패턴 인식은, 벡터 양자화(vector quantization)로서 참조된다.
벡터 양자화의 학습에서는, 인식 대상의 데이터가 관측되는 신호 공간상에, 클래스에 대응하는 대표적인 벡터(이것을 센트로이드 벡터라고 부름)가 배치된다.
벡터 양자화의 교사가 없는 학습으로서 대표적인 방법의 하나로, K-평균 군집법(K-means clustering method)가 있다. K-평균 군집법은, 초기 상태로서, 센트로이드 벡터를 적당하게 배치하고, 학습 데이터로서의 벡터를, 가장 거리가 가까운 센트로이드 벡터에 할당하여, 각 센트로이드 벡터에 할당된 학습 데이터의 평균 벡터에 의해서 센트로이드 벡터를 갱신하는 것을 반복하는 학습 방법이다.
여기서, 다수의 학습 데이터를 축적하여, 그 전부를 이용하여 학습을 행하는 방법은, 배치 학습(batch learning)라고 불리고, K-평균 군집법은, 배치 학습으로 분류된다. 배치 학습에 대하여, 학습 데이터를 관측할 때마다, 그 학습 데이터를 이용하여 학습을 행하여, 파라미터(센트로이드 벡터의 콤포넌트나, HMM을 정의하는 출력 확률 밀도 함수 등)를 조금씩 갱신하는 학습은, 온라인 학습(on-line learning)라고 불린다.
온라인 학습으로서는, 코호넨(T.Kohonen)이 제안한 SOM(self-organization map)에 의한 학습이 유명한다. SOM 에 의한 학습에서는, 입력층과 출력층 간의 결합 가중치가, 조금씩 갱신(수정)되어 간다.
즉, SOM에서, 출력층은, 복수의 노드를 갖고, 출력층의 각 노드에는, 입력층 과의 결합의 정도를 나타내는 결합 가중치가 공급된다. 이 결합 가중치를 벡터로 한 경우, 벡터 양자화에서의 학습을 행할 수 있다.
구체적으로는, SOM의 출력층의 노드에서, 결합 가중치로서의 벡터와, 학습 데이터로서의 벡터와의 거리가 가장 가까운 노드가, 승자 노드로서 결정되고, 그 승자 노드의 결합 가중치로서의 벡터가, 학습 데이터로서의 벡터에 근접하도록 갱신된다. 또한, 승자 노드의 근방의 노드의 결합 가중치로서의 벡터도, 학습 데이터로서의 벡터에 근접하도록 갱신된다. 그 결과, 학습이 진행함에 따라, 결합 가중치로서의 벡터가 유사한 노드끼리는 가깝게 되고, 유사하지 않은 노드는 멀리되도록, 출력층에 노드들이 배치된다. 따라서, 출력층에는, 마치 학습 데이터에 포함되는 패턴에 따른 지도가 구성된다. 이와 같이, 학습이 진행함에 따라, 유사한 노드(결합 가중치로서의 벡터가 유사하는 노드)끼리 가까운 위치에 학습 데이터에 포함되는 패턴에 따른 지도가 구성이 구성되어 가는 학습은, 자기 조직적 또는 자기 조직화(self-organization)라고 불린다.
여기서, 전술한 바와 같은 학습의 결과적으로 얻어지는 결합 가중치의 벡터는, 신호 공간에 배치되는 센트로이드 벡터라고 볼 수 있다. K-평균 군집법에서는, 학습 데이터에 가장 거리가 가까운 벡터만이 갱신되며, 그 갱신 방법은 WTA(winner-take-all)라고 불린다. 한편, SOM 에 의한 학습에서는, 학습 데이터에 가장 거리가 가까운 노드(승자 노드)의 결합 가중치뿐만 아니라, 승자 노드의 근방의 노드의 결합 가중치도 갱신되므로, 그 갱신 방법은 SMA(soft-max adaptation)라고 불린다. WTA에서 학습을 행하면 학습 결과가 국소적인 해결법으로 되는 경향이 있는 반면, SMA에서 학습을 행하면, 국소적인 해결법으로 되는 문제를 개선할 수 있다.
SMA에서 학습을 행하는 방법으로서는, SOM 외에, 뉴럴 가스 알고리즘(Neural-Gas algorithm)이 유명한다. Neural-Gas algorithm 에서는, SOM 으로 이용되는 출력층을 사용하지 않지만, 학습 데이터와의 거리에 기초하는 랭킹에 의해 근방을 정의한다. 파라미터는, SOM과 유사한 방법에 의해 온라인 학습된다.
또한, 전술한 학습에 관한 분류에 대해서는, 예를 들면 비특허 문헌1에 기재되고, SOM에 관해서는, 예를 들면, 비특허 문헌2에 기재되고, Neural-Gas algorithm 에 관해서는, 예를 들면, 비특허 문헌3에 기재되어 있다.
그런데, 전술한 SOM 이나 Neural-Gas algorithm은, 말하자면 정적인 신호 패턴인 벡터, 즉 일정한 길이의 데이터를 대상으로 삼은 교사가 없는 학습을 제공한다. 따라서, 음성 데이터와 같은 시계열의 데이터(시계열 데이터), 즉 길이가 가변적인, 말하자면 동적인 신호 패턴에 대하여, SOM 이나 Neural-Gas algorithm을, 그대로 적용하는 것은 할 수 없다.
또한, 연속하는 벡터의 계열을 연결하여, 고차원의 벡터를 정의함으로써, 시계열 데이터로서의 시계열의 벡터를, 정적인 신호 패턴으로서 취급하는 방법이 제안되어 있지만, 이 방법도, 음성 데이터와 같이 길이가 고정되어 있지 않은(부정의) 시계열 데이터에 대하여, 그대로 통용할 수는 없다.
한편, 시계열 데이터를 자기 조직적으로 학습하는 방법으로서, 피드백 회로를 덧붙인 리커런트 뉴럴 네트워크를 이용한 방법이 제안되어 있다(예를 들면, 특허 문헌1 및 2 참조). 그러나, 리커런트 뉴럴 네트워크의 파라미터의 학습에 널리 이용되고 있는 백 프로퍼게이션법은, 리커런트 뉴럴 네트워크의 규모가 커지면, 계산량이 비약적으로 증가하여, 그 결과, 학습에 필요한 시간도 실질적으로 늘어나게 된다. 이 때문에, 1개의 리커런트 뉴럴 네트워크를, 음성 데이터 등과 같이, 다양한 패턴(클래스)가 존재하는 시계열 데이터의, 그 다양한 패턴의 학습에 이용하는 것은, 실제 문제로서, 유효한 수단이라고는 말하기 어렵다.
또한, 시계열 데이터의 패턴 인식, 즉, 예를 들면, 음성 데이터의 인식(음성 인식)으로 널리 이용되어 있는 기술 중 하나로, HMM을 이용하는 HMM 법이 있다(예를 들면, 비특허 문헌4 참조).
HMM은, 상태 천이를 갖는 확률 모델인 상태 천이 확률 모델 중 하나로서, 전술한 바와 같이, 상태 천이 확률과, 각 상태에서의 출력 확률 밀도 함수로 정의되고, HMM 법에서는, 학습할 시계열 데이터의 통계적인 특성이 HMM에 의해 모델화된다. 또한, HMM을 정의하는 출력 확률 밀도 함수로서는, 예를 들면 혼합 정규 분포 등이 이용된다. 또한, HMM의 학습, 즉 HMM의 파라미터(HMM을 정의하는 상태 천이 확률과 출력 확률 밀도 함수)의 추정의 방법으로서는, Baum-Welch 법이 널리 사용되고 있다.
HMM 법은, 현재 실용화되어 있는 고립 단어 음성 인식으로부터 대어휘 연속 음성 인식에까지 폭넓게 적용되고 있지만, HMM의 학습은, 통상적으로, 교사가 있는 학습으로서, 도 1에서 설명한 바와 같이, 정답 라벨의 부여된 학습 데이터를 이용하여 행해진다. 즉, 예를 들면, 어떤 단어를 인식하는 HMM의 학습은, 그 단어에 대응하는 학습 데이터(그 단어의 발화에 의해서 얻어지는 음성 데이터)를 이용하여 행해진다.
이와 같이, HMM의 학습은, 통상적으로, 교사가 있는 학습으로서, 정답 라벨의 부여되어 있지 않은 학습 데이터가 공급된 경우에 HMM의 학습을 행하는 것, 즉, HMM의 교사가 없는 학습은, 매우 어려운 문제가 된다.
예를 들면, 특허 문헌3에서는, 정답 라벨이 부여되어 있지 않은 음성 데이터와, 대응하는 화상 데이터로부터, 음성과 화상의 상호 정보량을 최대화하도록, 또한 카테고리 수가 최소로 되도록, HMM의 학습을 행하는 방법이 제안되어 있다. 그러나, 이 방법으로는, 음성 데이터에 대응하는 화상이 공급되지 않으면, HMM의 학습을 행할 수 없기 때문에, 엄밀한 의미에서의 교사가 없는 학습이라고는 하기 어렵다.
또한, 불특정 화자의 음성 데이터를 이용하여 학습한 HMM에 대하여, 정답 라벨의 부여되지 않는 음성 데이터를 이용하여 HMM의 파라미터를 적응하는, 소위 화자 적응을 행하는 방법이 있다(예를 들면, 비특허 문헌5 참조). 이러한 화자 적응은, 정답 라벨의 부여되지 않는 음성 데이터를 이용하여 HMM의 파라미터를 적응(갱신)하는 점에서는, HMM의 교사가 없는 학습이라고 할 수 있지만, 교사가 있는 학습을 행한 HMM이 존재하는 것이 전제 조건으로 되기 때문에, 역시 엄격한 의미에서의 교사가 없는 학습이라고는 말하기 어렵다.
이상과 같이, 종래에서는, SOM이나 Neural-Gas algorithm과 같은 정적인 패 턴의 교사가 없는 학습이나, HMM과 같은 동적인 시계열 데이터의 교사가 있는 학습을 실현하는 방법은 제공되고 있지만, 어느 경우도 동적인 시계열 데이터의 교사가 없는 학습을 실현하기 위해서는 불충분하였다. 또한, 리커런트 뉴럴 네트워크에서는, 이론상은, 동적인 시계열 데이터의 교사가 없는 학습을 행하는 것이 가능하지만, 실용상은, 대규모의 리커런트 뉴럴 네트워크가 필요하게 되기 때문에, 학습에 필요한 계산량이나 시간에 문제가 있었다.
본 발명은, 이러한 상황을 감안하여 이루어진 것으로, 시계열 데이터의 교사가 없는 학습, 또한 그 학습 결과를 이용한 시계열 데이터의 인식이나 생성을, 용이하게 행할 수 있도록 하는 것이다.
본 발명의 일 실시예에 따르면, 시계열 데이터를 학습하기 위한 학습 장치는, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 수단을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 학습하기 위한 학습 방법은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 컴퓨터가 학습하도록 한 컴퓨터 프로그램은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 관측된 시계열 데이터의 값을 인식하기 위한 인식 장치는, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 수단과, 승자 노드를 나타내는 정보를, 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 수단을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 관측된 시계열 데이터의 값을 인식하기 위한 인식 방법은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝과, 승자 노드를 나타내는 정보를, 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 관측된 시계열 데이터를 컴퓨터가 인식하도록 하는 컴퓨터 프로그램은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트 워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝과, 승자 노드를 나타내는 정보를, 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 생성하기 위한 생성 장치는, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 수단과, 노드 결정 수단에 있어서 결정된 노드가 갖는 시계열 패턴 모델에 기초하여, 시계열 데이터를 생성하는 생성 수단을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 생성하기 위한 방법은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 스텝과, 노드 결정 스텝에 있어서 결정된 노드가 갖는 시계열 패턴 모델에 기초하여, 시계열 데이터를 생성하는 생성 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 컴퓨터가 생성하도록 하는 컴퓨터 프로그램은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 스텝과, 노드 결정 스텝에 있어서 결정된 노드가 갖는 시계열 패턴 모델에 기초하여, 시계열 데이터를 생성하는 생성 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 학습하기 위한 학습 장치는, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크를, 소정의 제어 대상에 입력될 때 계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 제2 시계열 패턴 기억 네트워크를, 소정의 제어 대상이 입력 데이터에 대하여 출력하는 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 수단과, 제1 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 제2 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터에 대응하는 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 수단을 포함하는 것을 특징으로 한다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 학습하기 위한 학습 방법은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크를, 소정의 제어 대상에 입력될 때 계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 제2 시계열 패턴 기억 네트워크를, 소정의 제어 대상이 입력 데이터에 대하여 출력하는 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝과, 제1 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 제2 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터에 대응하는 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 스텝을 포함하는 것을 특징으로 한다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열 데이터를 컴퓨터가 학습하도록 하는 컴퓨터 프로그램은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크를, 소정의 제어 대상에 입력될 때 계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 제2 시계열 패턴 기억 네트워크를, 소정의 제어 대상이 입력 데이터에 대하여 출력하는 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝과, 제1 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 제2 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터에 대응하는 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 스텝을 포함하는 것을 특징으로 한다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열 데이터에 응답하여 다른 시계열 데이터를 생성하기 위한 생성 장치는, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 수단과, 제2 시계열 패턴 기억 네트워크에서, 승자 노드와의 결합의 정도가 강한 노드를, 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 수단과, 생성 노드가 갖는 시계열 패턴 모델에 기초하여, 다른 시계열 데이터를 생성하는 생성 수단을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터에 응답하여 다른 시계열 데이터를 생성하기 위한 생성 방법은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝과, 제2 시계열 패턴 기억 네트워크에서, 승자 노드와의 결합의 정도가 강한 노드를, 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 스텝과, 생성 노드가 갖는 시계열 패턴 모델에 기초하여, 다른 시계열 데이터를 생성하는 생성 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터에 응답하여 다른 시계열 데이터를 컴퓨터가 생성하도록 하는 컴퓨터 프로그램은, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1과 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크에서, 시계열 데이터에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝과, 제2 시계열 패턴 기억 네트워크에서, 승자 노드와의 결합의 정도가 강한 노드를, 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 스텝과, 생성 노드가 갖는 시계열 패턴 모델에 기초하여, 다른 시계열 데이터를 생성하는 생성 스텝을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크가, 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신된다.
본 발명의 다른 실시예에 따르면, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드가 결정되어, 그 승자 노드를 나타내는 정보가, 시계열 데이터의 관측값의 인식 결과적으로 출력된다.
본 발명의 다른 실시예에 따르면, 시계열 데이터의 패턴인 시계열 패턴을 표 현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드가 결정되어, 그 노드가 갖는 시계열 패턴 모델에 기초하여, 시계열 데이터가 생성된다.
본 발명의 다른 실시예에 따르면, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크가, 소정의 제어 대상에 입력될 때 계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신됨과 함께, 제2 시계열 패턴 기억 네트워크가, 소정의 제어 대상이 입력 데이터에 대하여 출력하는 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신된다. 그리고, 제1 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 제2 시계열 패턴 기억 네트워크의 노드 중, 입력 데이터에 대응하는 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계가 갱신된다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 제1 시계열 패턴 기억 네트워크에서, 시계열 데이터에 가장 적합한 노드인 승자 노드가 결정된 다. 그리고, 제2 시계열 패턴 기억 네트워크에서, 승자 노드와의 결합의 정도가 강한 노드가, 다른 시계열 데이터를 생성하는 생성 노드로서 결정되어, 그 생성 노드가 갖는 시계열 패턴 모델에 기초하여, 다른 시계열 데이터가 생성된다.
본 발명에 따르면, 시계열 데이터의 교사가 없는 학습, 그위에, 그 학습 결과를 이용한 시계열 데이터의 인식이나 생성을 용이하게 행할 수 있다.
<실시예>
이하에 본 발명의 실시 형태를 설명하지만, 청구항에 기재된 구성 요건과, 발명의 실시 형태에 있어서의 구체예와의 대응 관계를 예시하면, 다음과 같이 된다. 이 기재는, 청구항에 기재되어 있는 발명을 서포트하는 구체예가, 발명의 실시 형태에 기재되어 있는 것을 확인하기 위한 것이다. 따라서, 발명의 실시 형태 중에는 기재되어 있지만, 구성 요건에 대응하는 것으로서, 여기에는 기재되어 있지 않은 구체예가 있다고 해도, 그것은, 그 구체예가, 그 구성 요건에 대응하는 것이 아닌 것을 의미하는 것이 아니다. 반대로, 구체예가 구성 요건에 대응하는 것으로서 여기에 기재되어 있다고 해도, 그것은, 그 구체예가, 그 구성 요건 이외의 구성 요건에는 대응하지 않는 것을 의미하는 것도 아니다.
또한, 이 기재는, 발명의 실시 형태에 기재되어 있는 구체예에 대응하는 발명이, 청구항에 모두 기재되어 있는 것을 의미하는 것이 아니다. 바꾸어 말하면, 이 기재는, 발명의 실시 형태에 기재되어 있는 구체예에 대응하는 발명으로서, 이 출원의 청구항에는 기재되어 있지 않은 발명의 존재, 즉, 장래, 분할 출원되거나, 보정에 의해 추가되는 발명의 존재를 부정하는 것이 아니다.
본 발명의 실시예에 따른 학습 장치는, 시계열의 데이터인 시계열 데이터에 기초하여, 학습을 행하는 학습 장치(예를 들면, 도 2의 데이터 처리 장치)에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 수단(예를 들면, 도 2의 학습부(4))를 구비하는 것을 특징으로 한다.
본 발명의 실시예에 따른 학습 장치에서, 상기 학습 수단은, 상기 시계열 패턴 기억 네트워크를 구성하는 복수의 노드 중, 상기 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 수단(예를 들면, 도 8의 승자 노드 결정부(42))와, 상기 승자 노드가 갖는 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값에 기초하여 갱신하는 모델 갱신 수단(예를 들면, 도 8의 모델 학습부(45))를 갖는 것을 특징으로 한다.
상기 학습 수단은, 상기 노드가 갖는 상기 시계열 패턴 모델의 갱신에 의해서, 그 시계열 패턴 모델이 받는 상기 시계열 데이터의 관측값의 영향의 정도를 나타내는 가중치를, 상기 노드에 대하여 결정하는 가중치 결정 수단(예를 들면, 도 8의 가중치 결정부(43))를 더 갖고, 상기 모델 갱신 수단은, 상기 승자 노드가 갖는 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드가 갖는 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값, 및 상기 가중치에 기초하여 갱신하는 것을 특징으로 한다.
본 발명의 학습 장치는, 상기 노드가 갖는 상기 시계열 패턴 모델의 학습에 이용되는 학습 데이터를 기억하는 학습 데이터 기억 수단(예를 들면, 도 4의 학습 데이터 기억부(22))를 더 구비하고, 상기 학습 수단은, 상기 학습 데이터 기억 수단에 이미 기억되어 있는 상기 학습 데이터와, 상기 시계열 데이터의 관측값을 혼합하고, 그 혼합 결과를 새로운 학습 데이터로서, 상기 학습 데이터 기억 수단의 기억 내용을 갱신하는 학습 데이터 갱신 수단(예를 들면, 도 8의 학습 데이터 갱신부(44))를 더 갖고, 상기 모델 갱신 수단은, 상기 새로운 학습 데이터를 이용하여, 상기 노드가 갖는 상기 시계열 패턴 모델의 학습을 행함으로써, 그 시계열 패턴 모델을 갱신하는 것을 특징으로 한다.
본 발명의 학습 장치에서, 학습 수단은, 상기 노드가 갖는 상기 시계열 패턴 모델의 갱신에 의해, 그 시계열 패턴 모델이 받는 상기 시계열 데이터의 관측값의 영향의 정도를 나타내는 가중치를, 상기 노드에 대하여 결정하는 가중치 결정 수단(예를 들면, 도 8의 가중치 결정부(43))를 더 갖고, 상기 학습 데이터 갱신 수단은, 상기 노드에 대한 상기 학습 데이터 기억 수단에 이미 기억되어 있는 상기 학습 데이터와, 상기 시계열 데이터의 관측값을, 상기 노드에 대한 가중치에 따라서 혼합하여, 그 혼합 결과를 새로운 학습 데이터로서, 상기 학습 데이터 기억 수단의 기억 내용을 갱신하는 것을 특징으로 한다.
본 발명의 실시예에 따르면, 학습 방법은, 시계열의 데이터인 시계열 데이터에 기초하여, 학습을 행하는 학습 방법에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝(예를 들면, 도 11의 스텝 S3 내지 S7)를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 컴퓨터 프로그램은, 시계열의 데이터인 시계열 데이터에 기초하는 학습을, 컴퓨터에 행하게 하는 프로그램에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝(예를 들면, 도 11의 스텝 S3 내지 S7)를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 인식 장치는, 시계열의 데이터인 시계열 데이터의 관측값을 인식하는 인식 장치(예를 들면, 도 2의 데이터 처리 장치)에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 상기 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 수단(예를 들면, 도 13의 승자 노드 결정부(52))와, 상기 승자 노드를 나타내는 정보를, 상기 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 수단(예를 들면, 도 13의 출력부(53))를 구비하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 인식 방법은, 시계열의 데이터인 시계열 데이터의 관측값을 인식하는 인식 방법에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 상기 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝(예를 들면, 도 14의 스텝 S23)과, 상기 승자 노드를 나타내는 정보를, 상기 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 스텝(예를 들면, 도 14의 스텝 S24)를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터의 관측값을 인식하는 처리를, 컴퓨터에 행하게 하는 프로그램에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 상기 시계열 데이터의 관측값에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝(예를 들면, 도 14의 스텝 S23)과, 상기 승자 노드를 나타내다 정보를, 상기 시계열 데이터의 관측값의 인식 결과적으로 출력하는 출력 스텝(예를 들면, 도 14의 스텝 S24)을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터를 생성하는 생성 장치(예를 들면, 도 2의 데이터 처리 장치)에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 수단(예를 들면, 도 15의 생성 노드 결정부(61))와, 상기 노드 결정 수단에서 결정된 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 시계열 데이터를 생성하는 생성 수단(예를 들면, 도 15의 시계열 생성부(62))를 구비하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터를 생성하는 생성 방법에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 스텝(예를 들면, 도 16의 스텝 S32)과, 상기 노드 결정 스텝에 있어서 결정된 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 시계열 데이터를 생성하는 생성 스텝(예를 들면, 도 16의 스텝 S33)을 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터를 생성하는 처리를, 컴퓨터에 행하게 하는 프로그램에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 스텝(예를 들면, 도 16의 스텝 S32)과, 상기 노드 결정 스텝에 있어서 결정된 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 시계열 데이터를 생성하는 생성 스텝(예를 들면, 도 16의 스텝 S33)을 포함하는 것을 특징으로 한다.
본 발명의 학습 장치는, 시계열의 데이터인 시계열 데이터에 기초하여, 학습을 행하는 학습 장치에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 상기 제1 시 계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)를, 소정의 제어 대상에 입력되는 상기 시계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)를, 상기 소정의 제어 대상이 상기 입력 데이터에 대하여 출력하는 상기 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 수단(예를 들면, 도 29의 학습 처리부(221))과, 상기 제1 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 상기 제2 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터에 대응하는 상기 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 수단(예를 들면, 도 29의 결합 가중치 갱신부(222))를 구비하는 것을 특징으로 하고, 여기서, 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터에 기초하여, 학습을 행하는 학습 방법에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1와 제2 시계열 패턴 기억 네트워크의 노드끼리 결합한 결합 네트워크에 있어서의 상기 제1 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)를, 소정의 제어 대상에 입력되는 상기 시계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)를, 상기 소정의 제어 대상이 상기 입력 데이터에 대하여 출력하는 상기 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝(예를 들면, 도 30의 스텝 S102 및 S103)과, 상기 제1 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 상기 제2 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터에 대응하는 상기 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 스텝(예를 들면, 도 30의 스텝 S104)을 포함하는 것을 특징으로 한다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터에 기초하는 학습을, 컴퓨터에 행하게 하는 프로그램에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1과 제2 시계열 패턴 기억 네트워크의 노드끼리를 결합한 결합 네트워 크에서의 상기 제1 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)를, 소정의 제어 대상에 입력되는 상기 시계열 데이터로서의 입력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신함과 함께, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)를, 상기 소정의 제어 대상이 상기 입력 데이터에 대하여 출력하는 상기 시계열 데이터로서의 출력 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 스텝(예를 들면, 도 30의 스텝 S102 및 S103)과, 상기 제1 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터의 관측값에 적합한 노드인 제1 노드와, 상기 제2 시계열 패턴 기억 네트워크의 노드 중, 상기 입력 데이터에 대응하는 상기 출력 데이터의 관측값에 적합한 노드인 제2 노드와의 결합 관계를 갱신하는 갱신 스텝(예를 들면, 도 30의 스텝 S104)을 포함하는 것을 특징으로 한다. 제1 노드는 제1 시계열 패턴 기억 네트워크의 노드중 입력 데이터의 관측값에 부합하는 노드이고, 제2 노드는 제2 시계열 패턴 기억 네트워크의 노드 중 입력 데이터에 응답하는 출력 데이터의 관측값에 부합하는 노드이다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터에 대하여, 다른 시계열 데이터를 생성하는 생성 장치(예를 들면, 도 29의 데이터 처리 장치)에 있어서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1과 제2 시계열 패턴 기억 네트 워크의 노드끼리를 결합한 결합 네트워크에서의 상기 제1 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)에서, 상기 시계열 데이터에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 수단(예를 들면, 도 29의 승자 노드 결정부(232))와, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)에서, 상기 승자 노드와의 결합의 정도가 강한 노드를, 상기 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 수단(예를 들면, 도 29의 생성 노드 결정부(233))과, 상기 생성 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 다른 시계열 데이터를 생성하는 생성 수단(예를 들면, 도 29의 시계열 생성부(234))을 구비하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터에 대하여, 다른 시계열 데이터를 생성하는 생성 방법에서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1과 제2 시계열 패턴 기억 네트워크의 노드끼리를 결합한 결합 네트워크에서의 상기 제1 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)에서, 상기 시계열 데이터에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝(예를 들면, 도 31의 스텝 S113)과, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)에서, 상기 승자 노드와의 결합의 정도가 강한 노드를, 상기 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 스텝(예를 들면, 도 31의 스텝 S114)과, 상기 생성 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 다른 시계열 데이터를 생성하는 생성 단계(예를 들면, 도 31의 스텝 S115)를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르면, 시계열의 데이터인 시계열 데이터에 대하여, 다른 시계열 데이터를 생성하는 처리를, 컴퓨터에 행하게 하는 프로그램에서, 상기 시계열 데이터의 패턴인 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크인 제1과 제2 시계열 패턴 기억 네트워크의 노드끼리를 결합한 결합 네트워크에서의 상기 제1 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netin 또는 시계열 패턴 기억 네트워크 netout)에서, 상기 시계열 데이터에 가장 적합한 노드인 승자 노드를 결정하는 승자 노드 결정 스텝(예를 들면, 도 31의 스텝 S113)과, 상기 제2 시계열 패턴 기억 네트워크(예를 들면, 도 28의 시계열 패턴 기억 네트워크 netout 또는 시계열 패턴 기억 네트워크 netin)에서, 상기 승자 노드와의 결합의 정도가 강한 노드를, 상기 다른 시계열 데이터를 생성하는 생성 노드로서 결정하는 생성 노드 결정 스텝(예를 들면, 도 31의 스텝 S114)과, 상기 생성 노드가 갖는 상기 시계열 패턴 모델에 기초하여, 상기 다른 시계열 데이터를 생성하는 생성 단계(예를 들면, 도 31의 스텝 S115)를 포함하는 것을 특징으로 한다.
이하, 도면을 참조하여, 본 발명의 실시 형태에 대하여 설명한다.
도 2는 본 발명을 적용한 데이터 처리 장치의 제1 실시 형태의 구성예를 도시하는 블록도이다.
신호 입력부(1)에는, 후술하는 학습 처리나 인식 처리가 대상으로 되는 데이터(이하, 처리 대상 데이터라고 함)가 입력된다. 여기서, 처리 대상 데이터는, 예를 들면 소리나 화상, LED(Light Emitting Diode)의 밝기, 모터의 회전 각도나 회전각 속도 등의 관측값(외부로부터 관측할 수 있는 값(신호))이다. 또한, 처리 대상 데이터는, 예를 들면 도 2의 데이터 처리 장치가 적용되는 시스템의 입력을 접수하는 입력 디바이스(센서)가 출력하는 데이터(입력 데이터)라도 되고, 어떠한 출력을 행하는 출력 디바이스에 대하여 공급되는 데이터(출력 데이터)라도 된다.
즉, 도 2의 데이터 처리 장치가, 예를 들면 2족 보행 로봇 그 외의 로봇에 적용되어, 그 2족 보행 로봇이, 외부의 상황에 따라서, 어떠한 처리를 행하는 경우에는, 신호 입력부(1)는, 외부의 상황을 센싱하는 센서로 구성할 수 있다. 구체적으로는, 신호 입력부(1)는, 예를 들면 마이크(마이크로폰)나 카메라 등으로 구성할 수 있다.
신호 입력부(1)가 마이크로 구성되는 경우에는, 그 마이크에 대하여, 외부에서 발생하는 음성(사람의 음성 외, 동물의 울음 소리, 물건 소리, 그 외의 모든 소리를 포함함)이, 2족 보행 로봇(데이터 처리 장치가 적용되어 있는 시스템)에 대한 입력 데이터로서 입력되어, 대응하는 음성 데이터가, 특징 추출부(2)에 공급된다. 또한, 신호 입력부(1)가 카메라로 구성되는 경우에는, 그 카메라에 대하여, 외부로부터의 광이, 2족 보행 로봇에 대한 입력 데이터로서 입력되어, 대응하는 화상 데이터가, 특징 추출부(2)에 공급된다.
또한, 2족 보행 로봇이, 예를 들면 손이나 발에 상당하는 부분을, 액튜에이터로서의 모터에 의해서 움직일 수 있는 경우에는, 신호 입력부(1)는, 그 모터의 회전 각도나 회전 속도를 계측하는 계측 장치(회전 각도나 회전 속도를 센싱하는 센서)로 구성할 수 있다. 또한, 2족 보행 로봇의 손이나 발에 상당하는 부분을 움직이는 모터는, 그 모터를 회전 구동시키는 전기 신호로서의 구동 신호를 부여하는 것 외에, 손이나 발에 상당하는 부분에 외부로부터 힘을 가하여 움직임에 따라서도 회전하지만, 계측 장치로는, 그 어느쪽의 회전에 의해서 발생한 회전 각도나 회전 속도라도 계측할 수 있다.
신호 입력부(1)가 계측 장치로 구성되는 경우에는, 그 계측 장치에 대하여, 모터의 회전 각도나 회전 속도를 나타내는 신호가, 2족 보행 로봇로부터의 출력 데이터로서 입력되어 계측되고, 그 계측 결과가 특징 추출부(2)에 공급된다.
또한, 신호 입력부(1)에 입력되는 처리 대상 데이터는, 시간적인 변화가 일정한 정상적인 데이터(정상 신호)라도 되고, 시간적인 변화가 일정하지 않은 비정상인 데이터(비정상 신호)라도 된다.
또한, 이하에서는, 신호 입력부(1)에 대해서는, 예를 들면 시계열 데이터의 1개인 음성이 입력되는 것으로 한다. 또한, 신호 입력부(1)로부터 특징 추출부(2)에 대해서는, 소위 음성 구간의 음성 데이터만이 공급되는 것으로 한다. 또한, 음 성 구간의 검출 방법은, 특별히 한정되는 것은 아니다. 또한, 신호 입력부(1)로부터 특징 추출부(2)에 대하여 공급되는 음성 데이터는, 반드시, 음성 구간의 길이일 필요는 없고, 적절한 길이로 구획되어 있으면 된다. 즉, 신호 입력부(1)로부터 특징 추출부(2)에 대하여 공급되는 음성 데이터는, 예를 들면 음소나 음운의 단위로도 되고, 단어나 문장, 임의의 구두점으로부터 다음 구두점까지라도 된다.
여기서, 신호 입력부(1)로부터 특징 추출부(2)에 대하여 공급되는 처리 대상 데이터는, 음성 데이터에 한정되는 것은 아니고, 그 구간도, 특별히 한정되는 것은 아니다. 즉, 신호 입력부(1)로부터 특징 추출부(2)에 대해서는, 가장 좋은 방법으로 적당한 길이에 구획된 처리 대상 데이터가 공급되면 된다. 또한, 신호 입력부(1)로부터 특징 추출부(2)에 대하여 공급되는 처리 대상 데이터의 음성 구간은, 일정하여도 되고, 일정하지 않아도 된다.
특징 추출부(2)는, 신호 입력부(1)로부터의 처리 대상 데이터로서의 시계열 데이터인 음성 데이터로부터 특징량을 추출하고, 그 결과 얻어지는 시계열 데이터인 시계열의 특징량을, 인식부(3)와 학습부(4)에 공급한다. 즉, 특징 추출부(2)는, 신호 입력부(1)로부터의 음성 데이터에 대하여 일정 시간 간격으로 주파수 분석 등의 처리를 실시하여, 예를 들면 MFCC(Mel Frequency Cepstrum Coefficient) 등의 특징량을 추출하고, 그 MFCC의 시계열 데이터를, 인식부(3)와 학습부(4)에 공급한다. 또한, 특징 추출부(2)로부터 인식부(3)와 학습부(4)에 공급되는 시계열 데이터도, 외부로부터 관측할 수 있는 관측값이다.
인식부(3)는, 기억부(5)에 기억된, 후술하는 시계열 패턴 기억 네트워크에 기초하여, 특징 추출부(2)로부터 공급되는 시계열 데이터를 인식하여, 그 인식 결과를 출력한다.
여기서, 학습부(4)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를, 특징 추출부(2)로부터 공급되는 시계열 데이터(의 관측값)에 기초하여, 자기 조직적으로 갱신한다. 즉, 학습부(4)는, 특징 추출부(2)로부터 공급되는 시계열 데이터에 기초하여, 기억부(5)에 기억된 시계열 패턴 기억 네트워크의 파라미터를 갱신한다. 또한, 이 파라미터의 갱신의 것을 학습이라고 하는 경우가 있다.
학습부(4)에서는, 정답 라벨이 부여되어 있지 않은 시계열 데이터를 반복하여 부여하면, 그 공급된 시계열 데이터의 중의 특징적인 패턴(시계열 패턴)을 자기 조직적으로 획득해가는 교사가 없는 학습이 실행된다. 그 결과, 기억부(5)의 시계열 패턴 기억 네트워크에는, 대표적인 시계열 패턴이 효율적으로 기억된다. 즉, 특징 추출부(2)가 인식부(3)와 학습부(4)에 공급하는 시계열 데이터는, 몇몇의 패턴(시계열 패턴)으로 분류할 수 있어, 학습부(4)에서는, 시계열 패턴 기억 네트워크에, 시계열 데이터의 대표적인 시계열 패턴을 기억시키기 위한 학습이 행해진다.
기억부(5)는, 시계열 패턴 기억 네트워크를 기억하고 있어, 이 시계열 패턴 기억 네트워크의 파라미터는, 학습부(4)에 의해서 적절하게 갱신된다.
생성부(6)에는, 제어 데이터가 공급된다. 생성부(6)에 공급되는 제어 데이터는, 기억부(5)의 시계열 패턴 기억 네트워크가 기억하고 있는 시계열 패턴 중 어느 하나를 나타내는 것(후술하는 노드 라벨)이다. 생성부(6)는 기억부(5)의 시계열 패턴 기억 네트워크에 기초하여, 거기에 공급되는 제어 데이터가 나타내는 시계열 패턴의 시계열 데이터를 생성하여 출력한다.
다음으로, 도 3은 도 2의 기억부(5)에 기억되는 시계열 패턴 기억 네트워크의 예를 모식적으로 나타내고 있다.
시계열 패턴 기억 네트워크는, 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 네트워크로, 그 네트워크 전체로, 노드의 수만의(클래스나눔을 행함) 시계열 패턴을 기억한다.
도 3에서는, 시계열 패턴 기억 네트워크는, 노드 N1 내지 N6의 6개의 노드로 구성되어 있다.
시계열 패턴 기억 네트워크를 구성하는 각 노드 Ni(도 3에서는, i=1, 2, …,6)는, 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는다. 또한, 노드 Ni는, 다른 노드 Nj(도 3에서는, j=1, 2, …, 6)와 결합 관계를 가질 수 있다. 이 결합 관계를 링크라고 한다. 도 3에서는, 예를 들면 노드 N1은, 노드 N2, N3과 직접의 결합 관계를 갖고 있다. 또한, 예를 들면 노드 N3은, 노드 N1, N2, N5, N6과 직접의 결합 관계를 갖고 있고, 따라서, 노드 N5와 N6은, 노드 N3을 통하여, 노드 N1과 간접적인 결합 관계를 갖고 있다. 또한, 2개의 노드 Ni와 Nj와의 결합 관계로서는, 그 2개의 노드 Ni와 Nj와의 최단의 결합 관계를 생각하는 것으로 한다.
시계열 패턴 기억 네트워크의 학습은, 학습부(4)(도 2)에서, 특징 추출부(2)로부터 공급되는 시계열 데이터를, 학습용의 학습 데이터로서 행해지지만, 이 학습 데이터는, 카테고리의 종류나, 카테고리의 수가 미지의 것이다. 시계열 패턴 기억 네트워크의 학습은, 전술한 도 1에서 설명한 교사가 있는 학습과 크게 상이하다. 또한, 시계열 패턴 기억 네트워크의 학습에 이용되는 학습 데이터에는, 정답 라벨은 부여되어 있지 않다. 이 때문에, 시계열 패턴 기억 네트워크의 학습에는, 전술한 도 1에서 설명한 교사가 있는 학습을 적용할 수는 없다.
이와 같이, 시계열 패턴 기억 네트워크의 학습에는, 교사가 있는 학습을 적용할 수 없고, 또한 학습 데이터는, 그 카테고리의 종류도, 카테고리의 수도 미지이다. 따라서, 시계열 패턴 기억 네트워크의 학습은, 그 전체(의 노드)에 의해서, 학습 데이터의 특징(시계열 패턴)을 적절하게 표현할 수 있도록, 자기 조직적으로 행해진다.
또한, 시계열 패턴 기억 네트워크의 학습은, 교사가 없는 유형의 학습이다. 또한, 시계열 패턴 기억 네트워크의 학습은, 임의의 1개의 노드가, 반드시 임의의 1개의 카테고리에 대응하도록 행해지는 것은 아니다. 즉, 시계열 패턴 기억 네트워크에서는, 1개의 노드가 1개의 카테고리에 대응하도록 학습이 행해지는 경우도 있고, 복수의 노드가 1개의 카테고리에 대응하도록 학습이 행해지는 경우도 있다. 또한, 1개의 노드가 복수의 카테고리에 대응하도록 학습이 행해지는 경우도 있다. 따라서, 만약 학습 데이터가, 명확하게 카테고리 분리할 수 없는 것이어도, 시계열 패턴 기억 네트워크에 의한 학습은 행할 수 있다.
다음으로, 도 4는, 시계열 패턴 기억 네트워크의 노드 Ni의 구성예를 모식적으로 나타내고 있다.
노드 Ni는, 시계열 패턴을 표현하는 시계열 패턴 모델(21)과, 그 시계열 패턴 모델(21)의 학습에 이용하는 학습 데이터를 기억하는 학습 데이터 기억부(22)로 구성된다.
여기서, 도 4에서는, 시계열 패턴 모델(21)로서, 상태 확률 천이 모델의 1개인 HMM(연속 HMM)이 채용되어 있다. 또한, 도 4에서는, HMM은, 자기 루프와 다음 상태(우측 이웃의 상태)에의 상태 천이만을 갖는 left-to-right형의 3 상태 S1, S2, S3을 갖는 것으로 되어 있다. 도 4의 시계열 패턴 모델(21)에서의 ○ 표시는 상태를 나타내고, 화살표는 상태 천이를 나타내고 있다. 또한, 시계열 패턴 모델(21)로서의 HMM은, left-to-right 형이나, 3 상태의 것 등에 한정되지 않는다.
시계열 패턴 모델(21)이, 도 4에 도시한 바와 같은 HMM인 경우, 그 시계열 패턴 모델(21)로서의 HMM은, 상태 천이 확률과 출력 확률 밀도 함수(HMM이 이산 HMM인 경우에는, 스칼라량인 이산적인 심볼이 출력되는 확률)로 정의된다.
상태 천이 확률은, HMM에서, 상태가 천이하는 확률로, 도 4의 시계열 패턴 모델(21)에서의 화살표로 나타낸 상태 천이 각각에 대하여 공급된다. 출력 확률 밀도 함수는, 상태 천이 시에, HMM에서 관측되는 값의 확률 밀도를 나타낸다. 출력 확률 밀도 함수로서는, 예를 들면 혼합 정규 분포 등이 채용된다. 이것들의 HMM의 파라미터(상태 천이 확률과 출력 확률 밀도 함수)는, 예를 들면 Baum-Welch 법에 의해서 학습(추정)할 수 있다.
노드 Ni에서는, 학습 데이터 기억부(22)에 기억된 학습 데이터의 통계적인 특성, 즉 학습 데이터 기억부(22)에 기억된 학습 데이터의 시계열 패턴이, 시계열 패턴 모델(21)에 있어서 학습되어, 이에 의해, 시계열 패턴 모델(21)과, 학습 데이터 기억부(22)에 기억된 학습 데이터가, 대응 관계를 갖는 것으로 된다.
또한, 시계열 패턴 기억 네트워크의 학습, 나아가서는, 노드 Ni의 시계열 패턴 모델(21)의 학습은, 예를 들면 특징 추출부(2)로부터 학습부(4)에 대하여, (1 구간의)시계열 데이터가 공급될 때마다 학습을 행하는 온라인 학습에 의해서 행해진다. 따라서, 시계열 패턴 기억 네트워크의 파라미터, 즉, 노드 Ni의 시계열 패턴 모델(21)의 파라미터(시계열 패턴 모델(21)이 HMM인 경우에는, 전술한 바와 같이, 상태 천이 확률과 출력 확률 밀도 함수)는, (1 구간)의 처리 대상 데이터가 신호 입력부(1)로부터 특징 추출부(2)에 공급될 때마다, 조금씩 갱신된다.
즉, 후술하는 바와 같이, 시계열 패턴 기억 네트워크의 학습이 진행함에 따라서, 학습 데이터 기억부(22)에 기억되는 학습 데이터는, 새로운 시계열 데이터(새로운 처리 대상 데이터가 신호 입력부(1)로부터 특징 추출부(2)에 공급됨으로써, 특징 추출부(2)로부터 학습부(4)에 공급되는, 그 새로운 처리 대상 데이터에 대응하는 시계열의 특징량인 새로운 시계열 데이터)에 의해서 갱신되고, 이에 의해, 조금씩 변화한다. 그리고, 그 조금씩 변화하는 학습 데이터에 의해서, 시계열 패턴 모델(21)의 학습이 행해짐으로써, 그 시계열 패턴 모델(21)의 파라미터도, 조금씩 변화해간다.
다음으로, 도 5는, 도 2의 기억부(5)에 기억되는 시계열 패턴 기억 네트워크의 다른 예를 모식적으로 나타내고 있다.
도 5에서는, 시계열 패턴 기억 네트워크는, 9개의 노드 N1 내지 N9로 구성되어 있고, 이 9개의 노드 N1 내지 N9는, 2차원적으로 배치되어 있다. 즉, 도 5에서는, 9개의 노드 N1 내지 N9은, 2차원 평면 상에, 가로×세로가 3×3으로 되도록 배치되어 있다.
또한, 도 5에서는, 2차원적으로 배치된 9개의 노드 N1 내지 N9의, 가로 방향에 인접하는 노드끼리와, 세로 방향에 인접하는 노드끼리에 대하여, 링크(결합 관계)가 공급되고 있다. 또한, 이러한 링크를 부여함으로써, 시계열 패턴 기억 네트워크를 구성하는 노드에는, 공간적으로, 2차원적으로 배치되는 배치 구조가 공급되어 있다고 할 수 있다.
시계열 패턴 기억 네트워크에서는, 링크에 의해서 공급되는 공간적인 노드의 배치 구조에 기초하여, 그 공간상에서의 임의의 2개의 노드끼리의 거리를 정의할 수가 있고, 이 2개의 노드끼리의 거리는, 그 2개의 노드 각각이 갖는 시계열 패턴 모델(21)이 표현하는 시계열 패턴의 패턴 간 거리(시계열 패턴끼리의 유사성)로서 이용할 수 있다.
또한, 2개의 노드끼리의 거리에 의해서 표시되는 시계열 패턴의 패턴 간 거리는, 2개의 노드의 결합 관계(링크)에 기초하는 패턴 간 거리라고 할 수 있다.
2개의 노드끼리의 거리로서는, 예를 들면 그 2개의 노드끼리 연결하는 최단의 패스를 구성하는 링크의 수를 채용할 수 있다. 이 경우, 임의의 노드에 주목하면, 그 주목 노드와의 직접의 링크를 갖는 노드(도 5에서는, 주목 노드의 가로 방향이나 세로 방향에 인접하는 노드)는, 주목 노드와의 거리가 가장 가까이에, 주목 노드와의 직접의 링크를 갖는 노드로부터 앞의 링크를 찾아가가는 것으로 도달할 수 있는 노드는, 도달하는 데 찾아가는 링크의 수가 많을수록, 주목 노드와의 거리가 멀게 되어 있다.
또한, 노드에 부여하는 링크는, 도 3이나 도 5에 도시한 것에 한정되는 것은 아니다. 또한, 도 3이나 도 5에 도시한 링크는, 노드에 대하여, 2차원적인 배치 구조를 부여하지만, 링크는, 그 외에, 1차원적인 배치 구조나 3차원적인 배치 구조 등을 부여하는 링크라도 된다. 또한, 노드에는, 반드시 링크를 부여할 필요는 없다.
즉, 도 6은, 도 2의 기억부(5)에 기억되는 시계열 패턴 기억 네트워크의 또 다른 예를 모식적으로 나타내고 있다.
도 6에서는, 시계열 패턴 기억 네트워크는, 도 3에서의 경우와 마찬가지로, 6개의 노드 N1 내지 N6으로 구성되어 있지만, 이것들의 6개의 노드 N1 내지 N6은, 어느것이나 링크를 갖고 있지 않다. 따라서, 도 6의 시계열 패턴 기억 네트워크를 구성하는 노드 N1 내지 N6은, 링크에 의해서 공급되는 공간적인 배치 구조는 갖고 있지 않다. 또한, 공간적인 배치 구조는 갖고 있지 않다는 것은, 공간적인 제약이 없는 배치 구조가 공급되고 있다고 할 수 있다.
여기서, 임의의 2개의 노드에 링크가 없는 경우에는, 공간 상에서의 그 2개의 노드끼리의 거리를 정의할 수 없으므로, 그 2개의 노드 각각이(갖는 시계열 패턴 모델(21)이) 표현하는 시계열 패턴의 패턴 간 거리로서, 결합 관계(링크)에 기초하는 패턴 간 거리는 이용할 수 없다. 따라서, 이 경우에는, 예를 들면 노드가, 임의의 시계열 데이터(의 관측값)에 적합한 정도에 기초한 순위(이하, 적절하게, 적합 순위라고 함)에 대응하는 값을, 패턴 간 거리로서 이용할 수 있다.
즉, 임의의 시계열 데이터가 공급된 경우에는, 그 시계열 데이터에 대하여, 노드가 표현하는 시계열 패턴과의 유사성을, 그 노드가 적합한 정도로서 구할 수 있다. 지금, 시계열 패턴 기억 네트워크를 구성하는 노드 중, 임의의 시계열 데이터에 가장 적합한 노드를, 승자 노드라는 것으로 하면, 승자 노드와, 시계열 패턴 기억 네트워크가 있는 노드의 각각이 표현하는 시계열 패턴의 패턴 간 거리로서는, 그 노드가 시계열 데이터에 적합한 순위(적합 순위)에 대응하는 값을 채용할 수 있다.
구체적으로는, 시계열 패턴 기억 네트워크를 구성하는 노드 중, 승자 노드로 되어있는 노드의 적합 순위는 제1위이며, 이 노드(승자 노드)와 승자 노드와의(각각이 표현하는 시계열 패턴의) 패턴 간 거리는, 예를 들면 그 적합 순위로부터 1을 감산한 0으로 할 수 있다.
또한, 시계열 패턴 기억 네트워크를 구성하는 노드 중, 적합 순위가 제2위인 노드와 승자 노드와의 패턴 간 거리는, 예를 들면 그 적합 순위로부터 1을 감산한 1로 할 수 있다. 이하, 마찬가지로, 노드의 적합 순위로부터 1을 감산하여 얻어지는 값을, 그 노드와, 승자 노드(로 되어 있는 노드)와의 패턴 간 거리로 할 수 있다.
또한, 노드가 임의의 시계열 데이터에 적합한 정도에 기초하는 순위(적합 순위)에 대응하는 값에 의해서 표시되는 패턴 간 거리는, 노드가 시계열 데이터에 적합한 정도에 기초하는 패턴 간 거리라고 할 수 있다.
다음으로, 도 7은 도 2의 학습부(4)의 구성예를 나타내고 있다.
학습부(4)는, 학습 데이터 기억부(31)와 학습 처리부(32)로 구성된다.
학습 데이터 기억부(31)에는, 특징 추출부(2)로부터, (1 구간의) 새로운 시계열 데이터로서의 특징량의 계열이 공급된다. 학습 데이터 기억부(31)는, 특징 추출부(2)로부터의 새로운 시계열 데이터를, 일시적으로(학습 처리부(32)에 의한 새로운 시계열 데이터를 이용한 처리가 종료할 때까지) 기억한다.
학습 처리부(32)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터(의 관측값)에 기초하여, 자기 조직적으로 갱신한다.
다음으로, 도 8은, 도 7의 학습 처리부(32)의 구성예를 나타내고 있다.
스코어 계산부(41)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드에 대하여, 그 노드가, 학습 데이터 기억부(31)에 기억된 시계열 데이터의 관측값에 적합한 정도를 스코어로서 구하고, 승자 노드 결정부(42)에 공급한다. 즉, 노드가 갖는 시계열 패턴 모델(21)이, 예를 들면 도 4에 도시한 바와 같이 HMM인 경우에는, 스코어 계산부(41)는, 노드가 갖는 시계열 패턴 모델(21)로서의 HMM에서, 학습 데이터 기억부(31)에 기억된 시계열 데이터가 관측되는 우도를 구하여, 그 노드의 스코어로서, 승자 노드 결정부(42)에 공급한다.
승자 노드 결정부(42)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크에서, 학습 데이터 기억부(31)에 기억된 시계열 데이터에 가장 적합한 노드를 구하여, 그 노드를, 승자 노드로서 결정한다.
즉, 승자 노드 결정부(42)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 노드 중, 스코어 계산부(41)로부터의 스코어가 가장 높은 노드를 승자 노드로서 결정한다. 그리고, 승자 노드 결정부(42)는, 승자 노드를 나타내는 정보를, 가중치 결정부(43)에 공급한다.
여기서, 시계열 패턴 기억 네트워크를 구성하는 노드에는, 각 노드를 식별하기 위한 라벨인 노드 라벨을 부해 놓고, 승자 노드를 나타내는 정보, 그 밖의 노드나타내는 정보로서는, 그 노드 라벨을 채용할 수 있다. 또한, 노드 라벨은, 노드 자체를 식별하는 라벨이며, 정답이 어떤 것인지를 나타내는 정답 라벨은, 아무런 관계가 없다.
가중치 결정부(43)는, 승자 노드 결정부(42)로부터 공급되는 노드 라벨이 나타내는 승자 노드에 기초하여, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드에 대하여, 후술하는 갱신 가중치를 결정하여, 학습 데이터 갱신부(44)에 공급한다.
즉, 가중치 결정부(43)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드(승자 노드를 포함함)의 갱신 가중치를, 그 노드와, 승자 노드와의 패턴 간 거리에 기초하여 결정하여, 학습 데이터 갱신부(44)에 공급한다.
여기서, 노드가 갖는 시계열 패턴 모델(21)(도 4)은, 학습 데이터 기억부(31)(도 7)에 기억된 새로운 시계열 데이터를 이용하여 갱신되지만, 노드의 갱신 가중치는, 그 노드가 갖는 시계열 패턴 모델(21)의 갱신에 의해서, 그 시계열 패턴 모델(21)이 받는 새로운 시계열 데이터의 영향의 정도를 나타낸다. 따라서, 노드의 갱신 가중치가 0이면, 그 노드가 갖는 시계열 패턴 모델(21)은, 새로운 시계열 데이터의 영향을 받지 않는다(갱신되지 않는다).
또한, 가중치 결정부(43)에서, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드의 갱신 가중치를 결정할 때의 패턴 간 거리로서는, 시계열 패턴 기억 네트워크의 노드가, 도 3이나 도 5에 도시한 바와 같이, 링크를 갖는 경우에는, 그 노드와 승자 노드와의 결합 관계에 기초하는 패턴 간 거리를 채용하고, 또한 시계열 패턴 기억 네트워크의 노드가, 도 6에 도시한 바와 같이, 링크를 갖지 않는 경우에는, 그 노드가, 학습 데이터 기억부(31)(도 7)에 기억된 새로운 시계열 데이터에 적합한 정도에 기초하는 패턴 간 거리를 채용할 수 있다.
즉, 가중치 결정부(43)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 참조하여, 시계열 패턴 기억 네트워크의 노드 각각과, 승자 노드 결정부(42)로부터의 노드 라벨이 나타내는 승자 노드와의 결합 관계에 기초하는 패턴 간 거리를 구하여, 그 패턴 간 거리에 기초하여, 시계열 패턴 기억 네트워크의 노드 각각의 갱신 가중치를 결정한다.
혹은, 가중치 결정부(43)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 참조하여, 시계열 패턴 기억 네트워크의 노드 각각에 대하여, 노드가, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터에 적합한 정도로서, 예를 들면 스코어 계산부(41)가 구하는 것과 마찬가지의 스코어를 구한다. 또한, 가중치 결정부(43)는, 시계열 패턴 기억 네트워크의 노드 각각에 대하여, 노드의 스코어에 기초하는 순위(적합 순위)에 대응하는 값을, 새로운 시계열 데이터에 적합한 정도에 기초하는 패턴 간 거리로서 구하고, 그 패턴 간 거리에 기초하여, 시계열 패턴 기억 네트워크의 노드 각각의 갱신 가중치를 결정한다.
또한, 노드의 스코어는, 가중치 결정부(43)로 구하여도 좋지만, 스코어 계산부(41)로부터 가중치 결정부(43)에 공급하도록 하여도 된다.
학습 데이터 갱신부(44)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크의 각 노드가 갖는 학습 데이터 기억부(22)(도 4)에 기억된 학습 데이터를 갱신한다.
즉, 학습 데이터 갱신부(44)는, 노드가 갖는 학습 데이터 기억부(22)에 이미 기억되어 있는 학습 데이터와, 학습 데이터 기억부(31)에 기억된 시계열 데이터를, 가중치 결정부(43)로부터의, 대응하는 노드의 갱신 가중치에 따라서 혼합하여, 그 혼합 결과를, 새로운 학습 데이터로서, 학습 데이터 기억부(22)에 기억시킴으로써, 그 학습 데이터 기억부(22)의 기억 내용을 갱신한다.
학습 데이터 갱신부(44)는, 이상과 같이, 학습 데이터 기억부(22)(도 4)에 기억된 학습 데이터를, 갱신 가중치에 따라서 갱신하면, 그 갱신이 종료한 취지의 종료 통지를, 모델 학습부(45)에 공급한다.
모델 학습부(45)는, 학습 데이터 갱신부(44)로부터 종료 통지를 받으면, 그 학습 데이터 갱신부(44)에 의한 갱신후의 학습 데이터 기억부(22)(도 4)에 기억된 학습 데이터를 이용하여, 시계열 패턴에 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)의 학습을 행함으로써, 그 시계열 패턴 모델(21)을 갱신한다.
따라서, 모델 학습부(45)에 의한, 노드가 갖는 시계열 패턴 모델(21)의 갱신은, 그 노드가 갖는 학습 데이터 기억부(22)(도 4)에 기억되어 있던 학습 데이터(의 일부)와, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터과 기초하여 행해진다. 또한, 학습 데이터 기억부(22)의 기억 내용은, 갱신 가중치에 따라서 갱신되기 때문에, 모델 학습부(45)에 의한, 시계열 패턴 모델(21)의 갱신은, 갱신 가중치에 기초하여 행해진다고 할 수 있다.
다음으로, 도 9는, 도 8의 가중치 결정부(43)에서 갱신 가중치를 결정하는 결정 방법을 나타내고 있다.
가중치 결정부(43)는, 예를 들면 도 9에 도시한 바와 같은, 승자 노드와의 패턴 간 거리 d의 증가에 대하여 갱신 가중치 α가 감소하는 관계를 나타내는 곡선(이하, 거리/가중치 곡선이라고 함)에 따라서, 노드에 대한 갱신 가중치(노드의 갱신 가중치)를 결정한다. 거리/가중치 곡선에 따르면, 승자 노드와의 패턴 간 거리 d가 가까운 노드일수록, 큰 갱신 가중치 α가 결정되고, 패턴 간 거리 d가 먼 노드일수록, 작은 갱신 가중치 α가 결정된다.
도 9b의 거리/가중치 곡선에서, 횡축(좌측으로부터 우측 방향)은, 갱신 가중 치 α를 나타내고 있고, 종축(위에서 하방향)은, 패턴 간 거리 d를 나타내고 있다.
도 9에서는, 패턴 간 거리 d로서, 예를 들면 노드와의 결합 관계에 기초하는 패턴 간 거리, 즉, 승자 노드로부터의 거리가 채용되어 있고, 종축을 따라, 시계열 패턴 기억 네트워크를 구성하는 6개의 노드 N1 내지 N6이, 각 노드 Ni와 승자 노드와의 거리에 대응하는 위치(종축의 위치)에 기재되어 있다.
도 9에서는, 시계열 패턴 기억 네트워크를 구성하는 6개의 노드 N1 내지 N6이, 그 순서로, 승자 노드와의 거리가 가까이 되고 있다. 시계열 패턴 기억 네트워크를 구성하는 6개의 노드 N1 내지 N6 중, 승자 노드와의 거리가 가장 가까운 노드, 즉, 승자 노드와의 거리가 0의 노드인 노드 N1은, 승자 노드(로 되어있는 노드)이다.
여기서, 시계열 패턴 기억 네트워크가, 예를 들면, 도 5에 도시한 바와 같은 2차원적인 배치 구조를 갖고, 승자 노드가, 예를 들면, 노드 N6이었던 경우에는, 승자 노드 N6과 노드 N6의 거리는 가장(첫번째) 가까운 0이며, 노드 N6과 승자 노드 N6의 패턴간 거리 d도 0으로 된다. 또한, 승자 노드 N6과, 노드 N3, N5, 또는 N9 각각과의 거리는 2번째로 가까운 1이며, 노드 N3, N5, 또는 N9 각각과 승자 노드 N6의 패턴간 거리 d도 1로 된다. 또한, 승자 노드 N6과, 노드 N2, N4, 또는 N8 각각의 거리는 3번째로 가까운 2이며, 노드 N2, N4, 또는 N8 각각과 승자 노드 N6의 패턴간 거리 d도 2로 된다. 또한, 승자 노드 N6과, 노드 N1 또는 N7 각각의 거리는 가장 먼(4번째로 가까운) 3이며, 노드 N1 또는 N7 각각과 승자 노드 N6의 패턴간 거리 d도 3으로 된다.
한편, 노드가 링크를 갖지 않는, 예를 들면, 도 6에 도시한 시계열 패턴 기억 네트워크에 대해서는, 노드가 새로운 시계열 데이터에 적합한 정도에 기초하는 패턴간 거리, 즉, 노드가 새로운 시계열 데이터에 적합한 정도에 기초하는 순위(적합 순위)에 대응하는 값이, 그 노드와 승자 노드의 패턴간 거리 d로서 구해진다. 즉, 이 경우, 스코어가 가장 높은(첫번째로 높은) 노드(승자 노드)와 승자 노드의 패턴간 거리 d는 0으로 되고, 스코어가 2번째로 높은 노드와 승자 노드의 패턴간 거리 d는 1로 된다. 이하, 마찬가지로, 스코어가 k번째로 높은 노드와 승자 노드의 패턴간 거리 d는 k-1로 된다.
또한, 이상과 같은, 시계열 패턴 기억 네트워크의 각 노드와 승자 노드의 패턴간 거리 d의 제공 방법은, SOM이나 Neural-Gas algorithm에서 이용되고 있는 거리의 제공 방법과 마찬가지의 방법이다.
다음으로, 갱신 가중치 α와 패턴간 거리 d의 관계를 나타내는, 예를 들면, 도 9b에 도시한 바와 같은 거리/가중치 곡선은, 예를 들면, 수학식 1에 의해 공급된다.
Figure 112005071243387-pat00001
여기서, 수학식 1에서, 상수 G는, 승자 노드의 갱신 가중치를 나타내는 상수이며, γ는, 감쇠 계수로, 0<γ<1의 범위의 상수이다. 또한, 변수 Δ는, 시계열 패턴 기억 네트워크를 갱신하는 갱신 방법으로서, 상술한 SMA를 채용한 경우의, 승자 노드의 근방의 노드(승자 노드와의 패턴간 거리 d가 가까운 노드)의 갱신 가중치 α를 조정하기 위한 변수이다.
상술한 바와 같이, 승자 노드로 되어 있는 노드의 패턴간 거리 d로서, 0이 공급되며, 이하, 다른 노드의 패턴간 거리 d로서, 승자 노드와의 거리, 또는 적합 순위에 따라, 1, 2, …가 공급되는 경우, 수학식 1에서, 예를 들면, G=8, γ=0.5, Δ=1이면, 승자 노드로 되어 있는 노드의 갱신 가중치 α로서, 8(=G)이 구해진다. 이하, 승자 노드와의 거리, 또는 적합 순위가 커짐에 따라, 노드의 갱신 가중치 α로서는, 4, 2, 1, …로 작아지는 값이 구해진다.
여기서, 수학식 1에서의 감쇠 계수 Δ가 큰 값인 경우에는, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화는 완만하게 되며, 반대로, 감쇠 계수 Δ가 0에 가까운 값인 경우에는, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화는 급격하게 된다.
따라서, 감쇠 계수 Δ를, 예를 들면, 상술한 1로부터 조금씩 0에 가까워지도록 조정하면, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화는 급격하게 되며, 갱신 가중치 α는, 패턴간 거리 d가 커짐에 따라, 보다 작은 값으로 된다. 그리고, 감쇠 계수 Δ가 0에 가까워지면, 승자 노드(로 되어 있는 노드) 이외의 노드의 갱신 가중치 α는, 거의 0으로 되며, 이 경우, 시계열 패턴 기억 네트워크를 갱 신하는 갱신 방법으로서, 상술한 WTA를 채용한 경우와 (거의) 등가로 된다.
이와 같이, 감쇠 계수 Δ를 조정함으로써, 시계열 패턴 기억 네트워크를 갱신하는 갱신 방법으로서 SMA를 채용한 경우의, 승자 노드의 근방의 노드의 갱신 가중치 α를 조정할 수 있다.
감쇠 계수 Δ는, 예를 들면, 시계열 패턴 기억 네트워크의 갱신(학습)의 개시 시는 큰 값으로 하고, 시간의 경과와 함께, 즉, 갱신의 횟수가 증가함에 따라 작은 값으로 되도록 할 수 있다. 이 경우, 시계열 패턴 기억 네트워크의 갱신의 개시 시는, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화가 완만한 거리/가중치 곡선에 따라, 시계열 패턴 기억 네트워크의 각 노드의 갱신 가중치 α가 결정되며, 갱신(학습)이 진행됨에 따라, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화가 급격하게 되어 가는 거리/가중치 곡선에 따라, 시계열 패턴 기억 네트워크의 각 노드의 갱신 가중치 α가 결정된다.
즉, 이 경우, 승자 노드의 갱신은, 학습(갱신)의 진행에 상관없이, 학습 데이터 기억부(31)(도 8)에 기억된 새로운 시계열 데이터의 영향을 강하게 받도록 행해진다. 한편, 승자 노드 이외의 노드의 갱신은, 학습의 개시 시는, 비교적 넓은 범위의 노드(승자 노드와의 패턴간 거리 d가 소의 노드로부터, 어느 정도 큰 노드)에 걸쳐, 새로운 시계열 데이터의 영향을 받도록 행해진다. 그리고, 학습이 진행됨에 따라, 승자 노드 이외의 노드의 갱신은, 서서히 좁은 범위의 노드에 대해서만, 새로운 시계열 데이터의 영향을 받도록 행해진다.
도 8의 가중치 결정부(43)는, 이상과 같이 하여, 시계열 패턴 기억 네트워크 의 각 노드의 갱신 가중치 α를 결정하고, 학습 데이터 갱신부(44)에서는, 각 노드가 갖는 학습 데이터 기억부(22)에 기억되는 학습 데이터가, 그 노드의 갱신 가중치 α에 기초하여 갱신된다.
다음으로, 도 10을 참조하여, 노드가 갖는 학습 데이터 기억부(22)에 기억되는 학습 데이터를 갱신하는 갱신 방법에 대하여 설명한다.
지금, 임의의 노드 Ni가 갖는 학습 데이터 기억부(22)에는, 학습 데이터가 이미 기억되어 있고, 노드 Ni의 시계열 패턴 모델(21)은, 학습 데이터 기억부(22)에 이미 기억되어 있는 학습 데이터를 이용하여 학습이 행해진 것인 것으로 한다.
학습 데이터 갱신부(44)는, 상술한 바와 같이, 노드 Ni가 갖는 학습 데이터 기억부(22)에 이미 기억되어 있는 학습 데이터(이하, 적절하게, 구학습 데이터라고 함)와, 학습 데이터 기억부(31)(도 8)에 기억된 새로운 시계열 데이터를, 가중치 결정부(43)로부터의 노드 Ni의 갱신 가중치 α에 따라 혼합하고, 그 혼합 결과를, 새로운 학습 데이터로서, 학습 데이터 기억부(22)에 기억시킴으로써, 그 학습 데이터 기억부(22)의 기억 내용을, 새로운 학습 데이터로 갱신한다.
즉, 학습 데이터 갱신부(44)는, 구학습 데이터에 대하여, 새로운 시계열 데이터를 추가함으로써, 구학습 데이터와 새로운 시계열 데이터를 혼합한 새로운 학습 데이터로 하지만, 구학습 데이터에 대한 새로운 시계열 데이터의 추가(구학습 데이터와 새로운 시계열 데이터와의 혼합)는, 노드 Ni의 갱신 가중치 α에 대응하는 비에 따라 행해진다.
여기서, 새로운 시계열 데이터와 구학습 데이터를, 1 : 0의 비율로 혼합하면, 그 혼합에 의해 얻어지는 새로운 학습 데이터는, 새로운 시계열 데이터만으로 된다. 반대로, 새로운 시계열 데이터와 구학습 데이터를, 0 : 1의 비율로 혼합하면, 그 혼합에 의해 얻어지는 새로운 학습 데이터는, 구학습 데이터만으로 된다. 노드 Ni의 시계열 패턴 모델(21)(도 4)의 갱신은, 새로운 학습 데이터를 이용한 학습에 의해 행해지기 때문에, 새로운 시계열 데이터와 구학습 데이터를 혼합하는 비율을 변화시킴으로써, 갱신에 의해 시계열 패턴 모델(21)이 받는 새로운 시계열 데이터의 영향의 정도(강도)를 변화시킬 수 있다.
노드 Ni에서, 새로운 시계열 데이터와 구학습 데이터를 혼합하는 비율로서는, 노드 Ni의 갱신 가중치 α에 대응한 값이 채용되며, 예를 들면, 갱신 가중치 α가 클수록, 새로운 시계열 데이터의 비율이 커지는(구학습 데이터의 비율이 작아지는) 값으로 된다.
구체적으로는, 노드 Ni의 학습 데이터 기억부(22)에는, 일정한 수의 시계열 데이터(학습 데이터)가 기억되는 것으로 하고, 그 일정한 수를 H로 한다. 이 경우, 노드 Ni의 시계열 패턴 모델(21)의 학습은, 항상, H개의 학습 데이터(시계열 데이터)를 이용하여 행해진다.
학습 데이터 기억부(22)에, 항상, 일정한 수 H의 학습 데이터가 기억되는 경 우, 새로운 시계열 데이터와 구학습 데이터의 혼합에 의해 얻어지는 새로운 학습 데이터의 개수는, H개일 필요가 있으며, 그와 같은, 새로운 시계열 데이터와 구학습 데이터의 혼합을, 노드 Ni의 갱신 가중치 α에 대응한 비율로 행하는 방법으로서는, 새로운 시계열 데이터와 구학습 데이터를, 비율α : H-α로 혼합하는 방법이 있다.
새로운 시계열 데이터와 구학습 데이터를, 비율α : H-α로 혼합하는 구체적인 방법으로서는, 도 10에 도시한 바와 같이 H개의 구학습 데이터 중의 H-α개의 구학습 데이터에 대하여, α개의 새로운 시계열 데이터를 추가함으로써, H개의 새로운 학습 데이터를 얻는 방법이 있다.
이 경우, 학습 데이터 기억부(22)에 기억되는 시계열 데이터의 수 H가, 예를 들면, 100이며, 노드 Ni의 갱신 가중치 α가, 예를 들면, 8이면, 학습 데이터 기억부(22)의 기억 내용은, 100개의 구학습 데이터 중의 92개의 구학습 데이터에 대하여, 8개의 새로운 시계열 데이터를 추가함으로써 얻어지는 100개의 새로운 학습 데이터로 갱신된다.
H개의 구학습 데이터 중의 H-α개의 구학습 데이터에 대한, α개의 새로운 시계열 데이터의 추가는, α개의 새로운 시계열 데이터가 얻어지는 것을 대기하여 행하는 방법이 있지만, 이 방법으로는, 1개의 새로운 시계열 데이터가 얻어질 때마다, 학습 데이터 기억부(22)의 기억 내용을 갱신할 수 없다.
따라서, 학습 데이터 기억부(22)의 기억 내용의 갱신은, 1개의 새로운 시계 열 데이터가 얻어질 때마다, 그 새로운 시계열 데이터를 α개만, H-α개의 구학습 데이터에 추가함으로써 행할 수 있다. 즉, 1개의 새로운 시계열 데이터를 카피하여 α개의 새로운 시계열 데이터로 하고, 그 α개의 새로운 시계열 데이터를, H개의 구학습 데이터로부터 오래된 순서로 α개를 제거하고 남은 H-α개의 구학습 데이터에 추가함으로써, 학습 데이터 기억부(22)의 기억 내용의 갱신을 행한다. 이에 의해, 1개의 새로운 시계열 데이터가 얻어질 때마다, 학습 데이터 기억부(22)의 기억 내용을 갱신할 수 있다.
이상과 같이, 학습 데이터 기억부(22)의 기억 내용의 갱신을 행함으로써, 학습 데이터 기억부(22)에는, 항상, 새로운 순서의 H개의 시계열 데이터만이, 학습 데이터로서 보유되게 되며, 그 학습 데이터에 차지하는 새로운 시계열 데이터의 비율은, 갱신 가중치 α에 의해 조정되게 된다.
다음으로, 도 11의 플로우차트를 참조하여, 도 2의 데이터 처리 장에서 행해지는, 시계열 패턴 기억 네트워크를 학습하는 학습 처리에 대하여 설명한다.
우선 최초로, 스텝 S1에서, 학습부(4)(도 8)의 학습 처리부(32)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크의 파라미터, 즉, 시계열 패턴 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)(도 4)로서의, 예를 들면 HMM의 파라미터를 초기화하는 초기화 처리를 행한다. 이 초기화 처리에 의해, HMM의 파라미터(상태 천이 확률과 출력 확률 밀도 함수)로서, 적절한 초기값이 공급된다. 또한, 초기화 처리의 상세에 대해서는, 도 12를 참조하여 후술한다.
그 후, 스텝 S2에서, 하나의 처리 대상 데이터, 즉, 예를 들면, 1의 음성 구 간의 음성 데이터가, 신호 입력부(1)에 입력되면, 신호 입력부(1)는, 그 처리 대상 데이터를, 특징 추출부(2)에 공급한다. 특징 추출부(2)는, 처리 대상 데이터로부터 특징량을 추출하고, 그 특징량의 시계열 데이터(1개의 새로운 시계열 데이터)를, 학습부(4)에 공급한다.
학습부(4)(도 7)는, 특징 추출부(2)로부터의 새로운 시계열 데이터를, 학습 데이터 기억부(31)에 일시 기억시키고, 이하, 스텝 S3 내지 S7에서, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터(의 관측값)에 기초하여, 자기 조직적으로 갱신(학습)한다.
즉, 학습부(4)의 학습 처리부(32)(도 8)에서는, 스텝 S3에서, 스코어 계산부(41)가, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터를 판독하고, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드에 대하여, 그 노드가, 새로운 시계열 데이터에 적합한 정도를 나타내는 스코어로서 구한다.
구체적으로는, 노드가 갖는 시계열 패턴 모델(21)(도 4)이, 예를 들면 HMM인 경우에는, 그 HMM에서, 새로운 시계열 데이터가 관측되는 대수 우도가, 스코어로서 구해진다. 여기서, 대수 우도의 계산 방법으로서는, 예를 들면, 비터비 알고리즘(Viterbi algorithm)을 채용할 수 있다.
스코어 계산부(41)는, 시계열 패턴 기억 네트워크가 갖는 모든 노드에 대하여, 새로운 시계열 데이터에 대한 스코어를 계산하면, 그 각 노드에 대한 스코어를, 승자 노드 결정부(42)에 공급한다.
승자 노드 결정부(42)는, 스텝 S4에서, 시계열 패턴 기억 네트워크를 구성하 는 노드 중의, 스코어 계산부(41)로부터의 스코어가 가장 높은 노드를 구하고, 그 노드를 승자 노드로서 결정한다. 그리고, 승자 노드 결정부(42)는, 승자 노드를 나타내는 정보로서의 노드 라벨을, 가중치 결정부(43)에 공급한다.
가중치 결정부(43)는, 스텝 S5에서, 승자 노드 결정부(42)로부터의 노드 라벨이 나타내는 승자 노드를, 말하자면 기준으로 하여, 시계열 패턴 기억 네트워크를 구성하는 각 노드의 갱신 가중치를 결정한다.
즉, 가중치 결정부(43)는, 도 9에서 설명한 바와 같이, 시계열 패턴 기억 네트워크의 갱신(학습)이 진행됨에 따라, 패턴간 거리 d의 변화에 대한 갱신 가중치 α의 변화가 급격하게 되어 가는, 수학식 1에서 나타나는 거리/가중치 곡선에 따라, 시계열 패턴 기억 네트워크의 각 노드의 갱신 가중치 α를 결정하고, 학습 데이터 갱신부(44)에 공급한다.
학습 데이터 갱신부(44)는, 스텝 S6에서, 시계열 패턴 기억 네트워크의 각 노드가 갖는 학습 데이터 기억부(22)(도 4)에 기억된 학습 데이터를, 가중치 결정부(43)로부터의, 대응하는 노드의 갱신 가중치에 따라 갱신한다. 즉, 학습 데이터 갱신부(44)는, 도 10에서 설명한 바와 같이, 학습 데이터 기억부(31)에 기억되어 있는 새로운 시계열 데이터와, 노드의 학습 데이터 기억부(22)에 기억되어 있는 구학습 데이터를, 그 노드의 갱신 가중치 α에 대응한 비율α : H-α로 혼합함으로써, H개의 새로운 학습 데이터를 얻고, 그 H개의 새로운 학습 데이터에 의해, 학습 데이터 기억부(22)의 기억 내용을 갱신한다.
학습 데이터 갱신부(44)는, 시계열 패턴 기억 네트워크의 노드 모든 학습 데 이터 기억부(22)(도 4)의 기억 내용을 갱신하면, 그 갱신이 종료된 취지의 종료 통지를, 모델 학습부(45)에 공급한다.
모델 학습부(45)는, 학습 데이터 갱신부(44)로부터 종료 통지를 받으면, 스텝 S7에서, 시계열 패턴 기억 네트워크의 파라미터를 갱신한다.
즉, 모델 학습부(45)는, 시계열 패턴 기억 네트워크의 각 노드에 대하여, 학습 데이터 갱신부(44)에 의한 갱신 후의 학습 데이터 기억부(22)에 기억된 새로운 학습 데이터를 이용하여, 시계열 패턴 모델(21)의 학습을 행함으로써, 그 시계열 패턴 모델(21)을 갱신한다.
구체적으로는, 노드가 갖는 시계열 패턴 모델(21)이, 예를 들면 HMM 인 경우에는, 그 노드가 갖는 학습 데이터 기억부(22)에 기억된 새로운 학습 데이터를 이용하여, HMM의 학습이 행해진다. 이 학습에서는, 예를 들면, HMM의 현재의 상태 천이 확률과 출력 확률 밀도 함수를 초기값으로 하고, 새로운 학습 데이터를 이용하여, Baum-Welch법에 의해, 새로운 상태 천이 확률과 출력 확률 밀도 함수가 각각 구해진다. 그리고, 그 새로운 상태 천이 확률과 출력 확률 밀도 함수에 의해, HMM의 상태 천이 확률과 출력 확률 밀도 함수가 각각 갱신된다.
그 후는, 스텝 S7로부터 스텝 S2로 되돌아가서, 다음 처리 대상 데이터가, 신호 입력부(1)에 입력되는 것을 대기하고, 이하, 마찬가지의 처리가 반복된다.
다음으로, 도 12의 플로우차트를 참조하여, 도 11의 학습 처리에서의 스텝 S1에서 행해지는, 시계열 패턴 기억 네트워크의 파라미터(시계열 패턴 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)의 파라미터)를 초기화하는 초기화 처리 에 대하여 설명한다.
학습 처리부(32)(도 8)의 학습 데이터 갱신부(44)는, 우선 최초로, 스텝 S11에서, 기억부(5)에 기억된 시계열 패턴 기억 네트워크의 각 노드가 갖는 학습 데이터 기억부(22)(도 4)의 기억 내용을, 학습 데이터(시계열 데이터)가 1개도 없는 상태로 클리어한다.
그리고, 스텝 S12에서, 학습 처리부(32)(도 8)의 모델 학습부(45)는, 시계열 패턴 기억 네트워크의 파라미터로서, 랜덤한 값을 부여(설정)한다.
즉, 시계열 패턴 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)(도 4)이, 예를 들면, HMM인 경우, 그 HMM의 파라미터로서는, 상태 천이 확률과 각 상태에서의 출력 확률 밀도 함수가 있지만, 스텝 S12에서는, 이 상태 천이 확률과 출력 확률 밀도 함수(를 정의하는, 예를 들면, 평균 벡터나 공분산 행렬)로서, 랜덤한 값이 공급된다.
그 후, 1개의 처리 대상 데이터로서의, 예를 들면, 1의 음성 구간의 음성 데이터가, 신호 입력부(1)에 입력됨으로써, 도 11에서 설명한 바와 같이, 그 처리 대상 데이터에 대응하는 1개의 새로운 시계열 데이터(특징량의 시계열 데이터)가, 학습부(4)(도 7)의 학습 데이터 기억부(31)에 기억되면, 스텝 S13에서, 학습 데이터 갱신부(44)는, 시계열 패턴 기억 네트워크를 구성하는 노드 중에서, 랜덤하게 하나 또는 복수의 노드를 선택하고, 그 노드에, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터를 분배한다.
즉, 스텝 S13에서는, 시계열 패턴 기억 네트워크를 구성하는 노드 중에서, 랜덤하게 하나 또는 복수의 노드가 선택되며, 그 노드가 갖는 학습 데이터 기억부(22)(도 4)에, 학습 데이터 기억부(31)에 기억된 새로운 시계열 데이터가, 학습 데이터로서 기억(추가)된다.
스텝 S13에서의 새로운 시계열 데이터의 분배는, 학습부(4)(도 7)의 학습 데이터 기억부(31)에, 새로운 시계열 데이터가 기억될 때마다, 그 새로운 시계열 데이터를 대상으로 하여 반복하여 행해지며, 시계열 패턴 기억 네트워크를 구성하는 모든 노드가 갖는 학습 데이터 기억부(22)(도 4)에, H개의 학습 데이터가 기억되면(혹은, HMM의 학습을 행할 수 있을 만큼의 충분한 학습 데이터가 기억되면), 모델 학습부(45)는, 시계열 패턴 기억 네트워크를 구성하는 각 노드의 시계열 패턴 모델(21)로서의 HMM의 학습을, 그 노드가 갖는 학습 데이터 기억부(22)에 기억되어 있는 학습 데이터를 이용하여 행한다. 이 학습에서는, 예를 들면, 스텝 S12에서 설정된 랜덤한 값을, HMM의 상태 천이 확률과 출력 확률 밀도 함수의 초기값으로 하여, Baum-Welch법에 의해, 새로운 상태 천이 확률과 출력 확률 밀도 함수가 구해진다. 그리고, 그 새로운 상태 천이 확률과 출력 확률 밀도 함수에 의해, HMM의 상태 천이 확률과 출력 확률 밀도 함수의 초기값이 갱신된다.
이상과 같이, 초기화 처리에서는, 시계열 패턴 기억 네트워크의 모든 노드의 학습 데이터 기억부(22)에 필요한 학습 데이터를 기억시키고, 그 학습 데이터를 이용한 학습에 의해, HMM의 파라미터의 초기값이 구해진다.
도 11의 학습 처리에 따르면, 하나의 새로운 시계열 데이터가 얻어지면, 그 새로운 시계열 데이터에 대하여, 시계열 패턴 기억 네트워크를 구성하는 노드 중에 서, 승자 노드가 결정된다(스텝 S4). 또한, 그 승자 노드를 기준으로 하여, 시계열 패턴 기억 네트워크를 구성하는 각 노드의 갱신 가중치가 결정된다(스텝 S5). 그리고, 갱신 가중치에 기초하여, 시계열 패턴 기억 네트워크를 구성하는 각 노드가 갖는 시계열 패턴 모델(21)(도 4)의 파라미터가 갱신된다.
즉, 도 11의 학습 처리에서는, 하나의 새로운 시계열 데이터에 대하여, 시계열 패턴 기억 네트워크를 구성하는 노드의 파라미터의 갱신이 1번 행해지고, 이하, 마찬가지로, 새로운 시계열 데이터가 얻어질 때마다, 노드의 파라미터의 갱신이 반복됨으로써, 자기 조직적으로 학습이 행해진다.
그리고, 학습이 충분히 행해짐으로써, 시계열 패턴 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)은, 임의의 시계열 패턴을 학습(획득)한다. 시계열 패턴 기억 네트워크 전체에서 학습되는 시계열 패턴의 수(종류)는, 시계열 패턴 기억 네트워크가 갖는 노드의 수와 일치하기 때문에, 시계열 패턴 기억 네트워크가 갖는 노드의 수가, 예를 들면 100인 경우에는, 100 종류의 시계열 패턴이 학습되게 된다. 이 시계열 패턴에 기초하여, 인식부(3)(도 2)에서는, 시계열 데이터(처리 대상 데이터)를 인식하는 인식 처리를 행하는 것이 가능해지고, 생성부(6)(도 2)에서는, 시계열 데이터를 생성하는 생성 처리를 행하는 것이 가능하게 된다.
또한, 도 11의 학습 처리에서는, 학습 데이터 기억부(31)에 기억되어 있는 새로운 시계열 데이터와, 노드의 학습 데이터 기억부(22)에 기억되어 있는 구학습 데이터를, 그 노드의 갱신 가중치 α에 대응한 비율α : H-α로 혼합함으로써, H개의 새로운 학습 데이터를 얻고, 그 H개의 새로운 학습 데이터를 이용하여, 노드(가 갖는 시계열 패턴 모델(21))의 학습을 행함으로써, 그 노드(가 갖는 시계열 패턴 모델(21))의 파라미터를 갱신하도록 하였지만, 노드의 파라미터의 갱신의 방법은, 여기서 설명한 방법 이외에도, 갱신 가중치 α에 따라, 새로운 시계열 데이터를, 노드의 파라미터에 반영시키는 방법이면 어떠한 방법을 이용해도 된다.
중요한 것은, 새로운 시계열 데이터가 공급될 때마다, 노드의 파라미터를 조금씩 갱신(수정)하는 것과, 그 때에, 노드의 갱신 가중치에 따라, 새로운 시계열 데이터가 노드의 학습에 미치는 영향의 강도를 조정하는 것이다.
또한, 노드의 학습을 적절하게 행하기 위해서는, 갱신 가중치, 즉, 새로운 시계열 데이터를 이용한 노드의 학습에 의해 각 노드의 파라미터가 받는 새로운 시계열 데이터의 영향의 정도를, 시간의 경과(노드의 파라미터의 갱신의 횟수)와 함께 적절하게 조정하는 것이 중요하고, 본 실시 형태에서는, 수학식 1에서의 감쇠 상수 Δ에 의해, 갱신 가중치 α를 조정하는 방법을 채용하였다. 학습이 진행됨에 따라, 새로운 시계열 데이터의 영향을 받는 노드를, 승자 노드를 기준으로 하는 넓은 범위의 노드(다수의 노드)로부터 서서히 좁은 범위의 노드(소수의 노드)로 조정할 수 있으면 되고, 그와 같은 조정을 할 수 있으면, 노드의 학습(노드의 파라미터의 갱신)은, 어떻게 행해도 된다.
여기서, 승자 노드(가 갖는 시계열 패턴 모델(21))의 파라미터만을 갱신하는 방법은 WTA에 대응하고, 승자 노드 이외의 노드가 갖는 시계열 패턴 모델(21)의 파라미터도 갱신하는 방법은 SMA에 대응한다. 도 11의 학습 처리에서는, SMA에 의해 노드의 파라미터가 갱신된다. 단, 노드의 파라미터의 갱신은 WTA에 의해 행하는 것도 가능하다.
또한, 도 11의 학습 처리에서는, 새로운 시계열 데이터가 공급되면, 그 새로운 시계열 데이터를 이용하여, 노드의 학습을 행하는 온라인 학습을 행하도록 하였지만, 노드의 학습의 방법으로서는, 어느 정도의 수의 새로운 시계열 데이터가 얻어지고 나서, 그 새로운 시계열 데이터를 이용하여 학습을 행하는 배치 학습을 채용하는 것도 가능하다.
다음으로, 도 13은 도 2의 인식부(3)의 구성예를 도시하고 있다.
인식부(3)에는, 도 2에서 설명한 바와 같이, 특징 추출부(2)로부터, (1개의) 시계열 데이터가 공급되며, 이 시계열 데이터는, 스코어 계산부(51)에 공급된다.
스코어 계산부(51)는, 학습 처리부(32)(도 8)의 스코어 계산부(41)와 마찬가지로, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드에 대하여, 그 노드가, 특징 추출부(2)로부터의 시계열 데이터(의 관측값)에 적합한 정도를 나타내는 스코어를 구하고, 승자 노드 결정부(52)에 공급한다. 즉, 노드가 갖는 시계열 패턴 모델(21)이, 예를 들면, 도 4에 도시한 바와 같은 HMM인 경우에는, 스코어 계산부(51)는, 노드가 갖는 시계열 패턴 모델(21)로서의 HMM으로부터, 특징 추출부(2)로부터의 시계열 데이터가 관측되는 대수 우도를 구하고, 그 노드의 스코어로서, 승자 노드 결정부(52)에 공급한다.
승자 노드 결정부(52)는, 학습 처리부(32)(도 8)의 승자 노드 결정부(42)와 마찬가지로, 기억부(5)에 기억된 시계열 패턴 기억 네트워크에서, 특징 추출부(2)로부터의 시계열 데이터에 가장 적합한 노드를 구하고, 그 노드를, 승자 노드로서 결정한다.
즉, 승자 노드 결정부(52)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 노드 중의, 스코어 계산부(51)로부터의 스코어가 가장 높은 노드를 승자 노드로서 결정한다. 그리고, 승자 노드 결정부(52)는, 승자 노드를 나타내는 정보로서의 노드 라벨을, 출력부(53)에 공급한다.
출력부(53)는, 승자 노드 결정부(52)로부터의 승자 노드를 나타내는 노드 라벨을, 특징 추출부(2)로부터의 특징량의 시계열 데이터, 나아가서는, 그 특징량에 대응하는, 신호 입력부(1)에 입력된 처리 대상 데이터의 인식 결과로서 출력한다.
또한, 인식부(3)의 스코어 계산부(51)와, 학습 처리부(32)(도 8)의 스코어 계산부(41)는, 어느 한쪽의 스코어 계산부에서 겸용하는 것이 가능하다. 인식부(51)의 승자 노드 결정부(52)와, 학습 처리부(32)(도 8)의 승자 노드 결정부(42)에 대해서도, 마찬가지이다.
다음으로, 도 14의 플로우차트를 참조하여, 도 2의 데이터 처리 장치에서 행해지는, 시계열 데이터를 인식하는 인식 처리에 대하여 설명한다.
스텝 S21에서, 하나의 처리 대상 데이터, 즉, 예를 들면, 하나의 음성 구간의 음성 데이터(시계열 데이터)가, 신호 입력부(1)에 입력되면, 신호 입력부(1)는, 그 처리 대상 데이터를, 특징 추출부(2)에 공급한다. 특징 추출부(2)는, 처리 대상 데이터인 시계열 데이터로부터 특징량을 추출하고, 그 특징량의 시계열 데이터를, 인식부(3)에 공급한다.
인식부(3)(도 13)에서는, 스텝 S22에서, 스코어 계산부(51)가, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 각 노드에 대하여, 그 노드가, 특징 추출부(2)로부터의 시계열 데이터에 적합한 정도를 나타내는 스코어를 구한다.
구체적으로는, 노드가 갖는 시계열 패턴 모델(21)(도 4)이, 예를 들면 HMM인 경우에는, 그 HMM으로부터, 특징 추출부(2)로부터의 시계열 데이터가 관측되는 대수 우도가, 예를 들면, 비터비 알고리즘에 의해 구해진다. 스코어 계산부(51)는, 시계열 패턴 기억 네트워크가 갖는 모든 노드에 대하여, 특징 추출부(2)로부터의 시계열 데이터에 대한 스코어를 계산하면, 그 각 노드에 대한 스코어를, 승자 노드 결정부(52)에 공급한다.
승자 노드 결정부(52)는, 스텝 S23에서, 시계열 패턴 기억 네트워크를 구성하는 노드 중의, 스코어 계산부(51)로부터의 스코어가 가장 높은 노드를 구하고, 그 노드를 승자 노드로서 결정한다. 그리고, 승자 노드 결정부(52)는, 승자 노드를 나타내는 정보로서의 노드 라벨을, 출력부(53)에 공급한다.
출력부(53)는, 승자 노드 결정부(52)로부터의 노드 라벨을, 특징 추출부(2)로부터의 시계열 데이터(신호 입력부(1)에 입력된 처리 대상 데이터)의 인식 결과로서 출력하고, 처리를 종료한다.
또한, 출력부(53)가 출력하는 노드 라벨(승자 노드의 노드 라벨)은, 예를 들면, 제어 데이터로서, 생성부(6)에 공급할 수 있다.
이상과 같은, 시계열 패턴 기억 네트워크를 이용한 인식 처리에 따르면, 그 시계열 패턴 기억 네트워크의 노드의 수에 따른 정밀한 인식 결과를 얻을 수 있다.
즉, 예를 들면, 지금, 시계열 패턴 기억 네트워크의 학습이, 3개의 카테고리 "A", "B", "C"의 발성 각각에 의해 얻어진 음성 데이터를 이용하여 행해진 것으로 한다.
시계열 패턴 기억 네트워크의 학습에 이용된 3개의 카테고리 "A", "B", "C"의 음성 데이터가, 다수의 화자의 발화를 포함하는 경우에는, 예를 들면, 카테고리 "A"의 음성 데이터라도, 발화 속도나, 인토네이션, 화자의 연령, 성별 등의 차이에 의해, 다양한 음성 데이터가 존재한다.
교사 있음 학습이면, 카테고리 "A", "B", "C"의 음성 데이터를 이용한 학습은, 카테고리 "A"의 음성 데이터만, 카테고리 "B"의 음성 데이터만, 카테고리 "C"의 음성 데이터만을 각각 이용하여 행해진다. 따라서, 각 카테고리의 학습 결과에는, 발화 속도 등의 차이에 의한 변형(variation)은, 발생할 수 없다.
한편, 시계열 패턴 기억 네트워크의 학습에서는, 카테고리 "A", "B", "C"의 음성 데이터가, 이들을 구별(분류)하지 않고 이용된다. 그리고, 시계열 패턴 기억 네트워크에서는, 상술한 바와 같이, 그 시계열 패턴 기억 네트워크가 갖는 노드의 수만큼의 시계열 패턴이 학습된다.
따라서, 시계열 패턴 기억 네트워크에서는, 예를 들면, 그것이 갖는 노드의 수가 3보다 크면, 1개의 카테고리 "A"의 음성 데이터라도, 그 카테고리 "A"의 음성 데이터의 중의, 임의의 하나의 변형(의 시계열 패턴)이, 임의의 하나의 노드에서 학습되며, 다른 하나의 변형이, 다른 하나의 노드에서 학습되는 경우가 있다.
그리고, 이와 같이, 복수의 노드에서, 카테고리 "A"의 음성 데이터의 다양한 변형이 학습된 경우, 인식 처리에서는, 예를 들면, 카테고리 "A"의 음성 데이터가 처리 대상 데이터로서 입력되면, 카테고리 "A"의 음성 데이터가 학습된 복수의 노드 중으로부터, 처리 대상 데이터에 가장 적합한 노드가, 승자 노드로서 결정되며, 그 승자 노드의 노드 라벨이, 인식 결과적으로 출력된다.
즉, 시계열 패턴 기억 네트워크를 이용한 인식 처리에서는, 처리 대상 데이터가, 카테고리 "A", "B", "C" 중 어느 카테고리의 음성 데이터인지가 결정되는 것이 아니라, 시계열 패턴 기억 네트워크가 학습에 의해 획득한, 그 노드의 수만큼의 시계열 패턴 중 어느 것에 가장 적합한지가 결정된다.
즉, 시계열 패턴 기억 네트워크의 학습에서는, 시계열 패턴 기억 네트워크가 갖는 노드의 수에 따른 정밀함에 의해 시계열 패턴이 획득되고, 시계열 패턴 기억 네트워크를 이용한 인식에서는, 시계열 패턴 기억 네트워크가 갖는 노드의 수에 따른 정밀함에 의해, 시계열 데이터가 분류된다.
또한, 충분한 학습이 행해진 시계열 패턴 기억 네트워크의 각 노드에 대하여, 그 노드가 획득한 시계열 패턴에 따라, 적절하게, 카테고리 "A", "B", "C"의 정해 라벨을 부여하면, 시계열 패턴 기억 네트워크를 이용한 인식 처리에서, 시계열 데이터(처리 대상 데이터)가, 카테고리 "A", "B", "C" 중 어느 카테고리의 음성 데이터인지의 인식 결과를 얻을 수 있다.
다음으로, 도 15는 도 2의 생성부(6)의 구성예를 도시하고 있다.
생성부(6)에는, 도 2에서 설명한 바와 같이, 제어 데이터가 공급된다. 생성부(6)에 공급되는 제어 데이터는, 기억부(5)의 시계열 패턴 기억 네트워크가 기억 하고 있는 시계열 패턴, 나아가서는, 시계열 패턴 기억 네트워크를 구성하는 노드 중의 어느 하나를 나타내는 것으로, 예를 들면, 노드 라벨이다.
생성부(6)에 공급된 제어 데이터는, 생성 노드 결정부(61)에 공급된다. 생성 노드 결정부(61)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크에서, 거기에 공급되는 제어 데이터가 나타내는 노드를, 시계열 데이터를 생성하는 데 이용하는 노드(이하, 적절하게, 생성 노드라고 함)로서 결정하고, 그 결정 결과를, 시계열 생성부(62)에 공급한다.
즉, 생성 노드 결정부(61)는, 거기에 공급되는 제어 데이터로서의 노드 라벨이 나타내는 노드를, 생성 노드로서 결정하고, 그 결정 결과를, 시계열 생성부(62)에 공급한다.
시계열 생성부(62)는, 생성 노드 결정부(61)로부터의 결정 결과에 따라, 생성 노드가 갖는 시계열 패턴 모델(21)(도 4)에 기초하여, 시계열 데이터를 생성하여, 출력부(63)에 공급한다.
여기서, 시계열 패턴 모델(21)이, 예를 들면, HMM인 경우에는, 시계열 생성부(62)는, 생성 노드가 갖는 시계열 패턴 모델(21)로서의 HMM에서 시계열 데이터가 관측되는 우도를 나타내는 출력 확률을 최대로 하는 시계열 데이터를 생성한다. 여기서, HMM을 이용한 시계열 데이터의 생성에 대해서는, 동적 특징량을 이용함으로써 순조롭게 변화되는 시계열 데이터를 생성하는 방법이 있고, 시계열 생성부(62)에서는, 그 방법에 의해, 시계열 데이터를 생성할 수 있다. 이러한 시계열 데이터의 생성 방법은, 예를 들면, K. Tokuda, T.Yoshimura, T.Masuki, T.Kobayashi, T.Kitamura, "SPEECH PARAMETER GENERATION ALGORITHMS FOR HMM-BASED SPEECH SYNTHESIS", Proc. of ICASSP 2000, vol.3, pp.1315-1318, June 2000에 기재되어 있다.
또한, 그 밖에, 예를 들면, HMM의 파라미터를 이용한 확률적 시행에 기초하는 시계열 데이터의 생성을 반복하여 행하고, 그 평균을 취함으로써, HMM으로부터 시계열 데이터를 생성하는 방법 등도 제안되어 있고, 그 상세에 대해서는, 예를 들면, T. Inamura, H. Tanie, 및 Y. Nakamura,「연속 분포형 숨은 마르코프 모델을 이용한 시계열 데이터의 키 프레임 추출과 그 복원」, 일본 기계학회 로보틱스?메커트로닉스 강연회 2003 강연 논문집, 2P1-3F-C6, 2003에 기재되어 있다.
출력부(63)는, 시계열 생성부(62)로부터의 시계열 데이터를, 처리 대상 데이터에 상당하는 시계열 데이터로 변환하여 출력한다. 즉, 시계열 생성부(62)에서 생성되는 시계열 데이터는, 노드가 갖는 시계열 패턴 모델(21)의 학습에 이용된 특징량의 시계열 데이터이며, 출력부(63)는, 그 특징량의 시계열 데이터를, 처리 대상 데이터의 시계열 데이터로 변환하여 출력한다.
구체적으로는, 예를 들면, 처리 대상 데이터가 음성 데이터이며, 특징 추출부(2)가, 음성 데이터로부터 캡스트럼(cepstrum)을 특징량으로서 추출하고, 또한, 시계열 패턴 모델(21)이 HMM인 것으로 한다. 이 경우, 캡스트럼의 시계열 데이터가, 시계열 패턴 모델(21)에 의해 학습되기 때문에, 시계열 생성부(62)가 생성 노드의 시계열 패턴 모델(21)(도 4)에 기초하여 생성하는 시계열 데이터는, 캡스트럼의 시계열 데이터로 된다. 출력부(63)는, 시계열 생성부(62)에서 생성되는 캡스트럼의 시계열 데이터를, 처리 대상 데이터에 상당하는 시계열 데이터인 음성 데이터로 변환한다.
또한, 캡스트럼의 시계열 데이터를 음성 데이터(시간 영역의 음성)로 변환하는 방법으로서는, 예를 들면, MLSA 필터(멜 대수 스펙트럼 근사 필터)로 불리는 합성 필터에 의해, 캡스트럼의 시계열 데이터를 필터링하는 방법이 있다. MLSA 필터의 상세에 대해서는, 예를 들면, S. Imai, K. Sumita, 및 C. Furuichi,「음성 합성을 위한 멜 대수 스펙트럼 근사(MLSA) 필터」, 전자정보 통신학회 논문지(A), J66-A, 2, pp.122-129, 1983이나, K. Tokuda, T. Kobayashi, H. Saitoh, T. Fukada, 및 S. Imai「캡스트럼을 파라미터로 하는 음성의 스펙트럼 추정」, 전자정보 통신학회 논문지(A), J74-A, 8, pp.1240-1248, 1991에 기재되어 있다.
다음으로, 도 16의 플로우차트를 참조하여, 도 2의 데이터 처리 장치에서 행해지는, 시계열 데이터(처리 대상 데이터)를 생성하는 생성 처리에 대하여 설명한다.
스텝 S31에서는, 제어 데이터가, 생성부(6)에 입력된다. 이 제어 데이터는, 생성 노드 결정부(61)에 공급된다. 생성 노드 결정부(61)는, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 노드 중의, 제어 데이터로서의 노드 라벨이 나타내는 노드를, 생성 노드로서 결정하고, 그 결정 결과를, 시계열 생성부(62)에 공급한다.
시계열 생성부(62)는, 스텝 S33에서, 생성 노드 결정부(61)로부터의 결정 결과에 따라, 기억부(5)에 기억된 시계열 패턴 기억 네트워크를 구성하는 노드 중의 생성 노드가 갖는 시계열 패턴 모델(21)의 파라미터에 기초하여, 시계열 데이터를 생성하여, 출력부(63)에 공급한다. 출력부(63)는, 스텝 S34에서, 시계열 생성부(62)로부터의 시계열 데이터를, 처리 대상 데이터에 상당하는 시계열 데이터로 변환하여 출력한다.
이상과 같은, 시계열 패턴 기억 네트워크를 이용한 생성 처리에 따르면, 그 시계열 패턴 기억 네트워크의 노드의 수에 따른 시계열 패턴의 시계열 데이터를 생성할 수 있다.
즉, 예를 들면, 상술한 인식 처리에서 설명한 경우와 같이, 시계열 패턴 기억 네트워크의 학습이, 3개의 카테고리 "A", "B", "C"의 발성 각각에 의해 얻어진 음성 데이터를 이용하여 행해진 것으로 한다.
시계열 패턴 기억 네트워크의 학습에 이용된 3개의 카테고리 "A", "B", "C"의 음성 데이터가, 다수의 화자의 발화를 포함하는 경우에는, 예를 들면, 카테고리 "A"의 음성 데이터라도, 발화 속도나, 인토네이션, 화자의 연령, 성별 등의 차이에 의해, 다양한 음성 데이터가 존재하고, 시계열 패턴 기억 네트워크에서는, 카테고리 "A"의 음성 데이터 중의, 임의의 하나의 변형의 시계열 패턴이, 임의의 하나의 노드에서 학습되고, 다른 하나의 변형이, 다른 하나의 노드에서 학습되는 경우가 있다.
그리고, 이와 같이, 복수의 노드에서, 카테고리 "A"의 음성 데이터의 다양한 변형이 학습된 경우, 그 복수의 노드 중 어느 하나를 나타내는 노드 라벨이, 제어 데이터로서 공급됨으로써, 그 노드 라벨이 나타내는 노드로 학습된 변형의 카테고리 "A"의 음성 데이터가 출력된다. 따라서, 동일한 카테고리의 음성 데이터라도, 다양한 음성 데이터를 출력할 수 있다.
이상과 같이, 시계열 패턴 모델(21)을 갖는 복수의 노드로 구성되는 시계열 패턴 기억 네트워크를, 시계열 데이터에 기초하여, 자기 조직적으로 갱신하도록 하였기 때문에, 길이가 일정한 시계열 데이터는 물론, 길이가 일정하지 않은 시계열 데이터의 교사 없음 학습, 즉, 시계열 데이터의, 소위 자율적인 학습을, 용이하게 행할 수 있다.
즉, 시계열 패턴 기억 네트워크의 각 노드는, 시계열 패턴 모델(21)을 갖기 때문에, 시계열 패턴 기억 네트워크의 학습에서, 노드의 갱신, 즉, 그 노드가 갖는 시계열 패턴 모델(21)의 갱신은, 다른 노드의 갱신에 영향을 미치지 않는다. 따라서, 시계열 패턴 기억 네트워크를 구성하는 노드가 하나 증가해도, 시계열 패턴 기억 네트워크의 학습에 필요한 계산량은, 단순하게는, 하나의 노드의 갱신에 필요한 계산량만큼 증가할 뿐이며, 시계열 패턴 기억 네트워크의 규모, 즉, 시계열 패턴 기억 네트워크를 구성하는 노드의 수를 크게 해도, 시계열 패턴 기억 네트워크의 학습에 필요한 계산량이 비약적으로 증가하지는 않는다. 따라서, 대규모의 시계열 패턴 기억 네트워크라도, 용이하게, 자기 조직적으로 학습할 수 있다.
또한, 이러한 시계열 패턴 기억 네트워크의 학습에 따르면, 각 노드에, 시계열 데이터의 통계적인 특성을 나타내는 시계열 패턴이 기억되기 때문에, 그 시계열 패턴을 이용하여, 시계열 데이터의 인식이나 생성을, 용이하게 행할 수 있다. 또 한, 시계열 패턴 기억 네트워크에 따르면, 시계열 데이터의 분류나 해석 등을 행하는 것이 가능하게 된다.
또한, 학습 처리, 인식 처리, 생성 처리는, 예를 들면, 음성 데이터, 화상 데이터, 모터를 구동하는 신호, 그 밖의 임의의 시계열 데이터를 대상으로 하여 행할 수 있다. 구체적으로는, 예를 들면, 도 2의 데이터 처리 장치를 자율형의 로봇 등의 자율 시스템에 적용하고, 그 로봇의 시각이나, 청각, 촉각에 상당하는 센서가 출력하는 신호나, 로봇의 손이나 발에 상당하는 부분을 구동하는 액튜에이터를 제어하는 신호, 합성음을 생성하는 장치나 눈에 상당하는 LED에 대하여 부여하는 신호 등을, 학습 처리, 인식 처리, 생성 처리가 대상으로 하는 시계열 데이터로서 채용할 수 있다.
다음으로, 도 17 내지 도 20을 참조하여, 시계열 패턴 기억 네트워크의 학습과 인식의 실험 결과에 대하여 설명한다.
또한, 실험에서는, 학습에 이용하는 시계열 데이터로서, 「a」, 「i」, 「u」, 「e 」,「o」의 5종류(카테고리)에 관해, 남성 4명과 여성 4명의 합계 8명에, 각각 10회씩 발화하게 하여, 그 발화에 의해 얻어진 400 발화의 음성 데이터를 준비하였다. 또한, 음성 데이터의 특징량으로서는, 캡스트럼(계수)을 채용하여, 400 발화의 음성 데이터로부터 얻어진 캡스트럼 계수의 벡터의 시계열 데이터를, 랜덤한 순서로 학습에 이용하였다.
또한, 실험에서는, 시계열 패턴 기억 네트워크를, 30의 노드로 구성하고, 각 노드의 시계열 패턴 모델(21)(도 4)로서, HMM을 채용하였다. 여기서, 시계열 패턴 모델(21)로서의 HMM은, left-to-right형의 10 상태의 HMM으로 하고, HMM의 각 상태의 출력 확률 밀도 함수는, 혼합수가 1인 가우스 분포로 하였다. 또한, 시계열 패턴 기억 네트워크는, 도 6에 도시한 바와 같이, 링크에 의해 공급되는 공간적인 배치 구조를 갖고 있지 않은 것으로 하였다. 따라서, 갱신 가중치 α를 결정하기 위한 패턴간 거리 d는, 상술한 바와 같이, 적합 순위로부터 1을 감산한 값, 즉, 학습이 대상으로 된 새로운 시계열 데이터에 대한 스코어가 높은 노드의 순으로, 0, 1, 2, …를 부여하는 것으로 하였다.
또한, 시계열 패턴 기억 네트워크의 각 노드의 학습 데이터 기억부(22)(도 4)에 유지하는 시계열 데이터의 개수 H는 100으로 하고, 노드의 갱신 가중치 α에 따라, 새로운 시계열 데이터와 구학습 데이터의 비가, α : H-α로 되도록, 학습 데이터 기억부(22)의 학습 데이터를 갱신하도록 하였다. 즉, 학습 데이터 기억부(22)의 학습 데이터의 갱신은, H개의 구학습 데이터로부터, 오래된 순서로 α개의 구학습 데이터를 삭제하고, 남은 H-α개의 구학습 데이터에 대하여, 새로운 시계열 데이터를 α개만큼 카피하여 추가함으로써 행하였다. 또한, 학습 데이터의 갱신에 이용하는 갱신 가중치 α는, 소수점 이하를 반올림함으로써 정수로 하였다.
갱신 가중치 α는, 수학식 1에 따라 구하는 것으로 하고, 수학식 1에서, 상수 G=6, 감쇠 계수 γ=0.5로 하였다. 또한, 학습 처리의 개시 시는, 변수 Δ=1로 설정하고, 학습의 진행(시계열 패턴 기억 네트워크의 갱신의 횟수)에 따라, 변수 Δ를 조금씩 0에 가깝게 함으로써 갱신 가중치 α를 조정하였다.
시계열 패턴 기억 네트워크의 학습은, 온라인 학습으로 행하고, 400 발화의 음성 데이터를 반복하여 이용하여, 실험에서는, 합계 14000회의 온라인 학습을 행하였다.
또한, HMM의 파라미터의 학습에는 Baum-Welch법을 이용하여, 스코어의 계산에는 Viterbi algorithm을 이용하였다.
또한, 실험에서는, 인식에 이용하는 시계열 데이터로서, 학습 시와는 다른 남성 3명, 여성 3명의 합계 6명이, 「A」, 「I」, 「U」, 「E」, 「O」의 5종류를 각각 10회씩 발화한 300 발화의 음성 데이터를 준비하였다. 인식의 평가 방법으로서는, 시계열 패턴 기억 네트워크의 각 노드에 의사적으로, 카테고리 「A」, 「I」, 「U」, 「E」, 또는 「O」을 나타내는 정해 라벨을 부여하고, 인식용의 음성 데이터의 입력에 대하여, 옳은 정해 라벨(입력된 음성 데이터의 카테고리를 나타내는 정해 라벨)의 노드가 승자 노드로 된 경우를 「정해」로 하여 카운트함과 함께, 잘못된 정해 라벨(입력된 음성 데이터의 카테고리가 아닌 카테고리를 나타내는 정해 라벨)의 노드가 승자 노드로 된 경우를 「부정해」로 하여 카운트하고, 수학식 2에 따라, 인식용의 음성 데이터의 총수에 대한 「정해」의 수의 비율을, 정확하게 인식이 행해진 정해율로서 구하는 방법을 채용하였다.
Figure 112005071243387-pat00002
또한, 시계열 패턴 기억 네트워크의 각 노드에는, 다음과 같이 하여, 「A」, 「I」, 「U」, 「E」, 또는 「O」의 정해 라벨을 부여하였다. 즉, 시계열 패턴 기억 네트워크의 노드가 갖는 학습 데이터 기억부(22)에 기억되어 있는 학습 데이터 로서의 음성 데이터의 카테고리를 조사하고, 그 학습 데이터 기억부(22)에 기억되어 있는 음성 데이터의 비율이 가장 많은 카테고리를 나타내는 정해 라벨을, 그 노드에 부여하였다.
도 17은 학습의 횟수(시계열 패턴 기억 네트워크의 갱신의 횟수)와, 정해율의 관계를 도시하고 있다.
도 17에서, 횡축은, 학습의 횟수, 즉, 학습용의 음성 데이터의 입력 횟수를 나타내고 있고, 종축은, 정해율을 나타내고 있다. 도 17에 따르면, 학습이 진행됨에 따라, 정해율이 개선되는 것을 확인할 수 있다. 또한, 14000회의 온라인 학습이 종료된 시점에서는, 100%에 가까운 정해율이 얻어지고 있다.
도 18은 시계열 패턴 기억 네트워크의 각 노드가 갖는 학습 데이터 기억부(22)에 보유된 학습 데이터(음성 데이터)의 카테고리의 비율을 나타내고 있다.
도 18에서, 횡축은, 시계열 패턴 기억 네트워크를 구성하는 노드 Ni를 특정하는 노드 인덱스 i를 나타내며, 종축은, 노드 Ni의 학습 데이터 기억부(22)에 기억되어 있는 학습 데이터의 카테고리 「A」, 「I」, 「U」, 「E」, 「O」 각각의 비율을 나타내고 있다.
또한, 도 18에서는, 까만 부분은, 카테고리 「A」의 학습 데이터를 나타내고 있고, 횡선이 그어진 부분은, 카테고리 「I」의 학습 데이터를 나타내고 있다. 또한, 종선이 그어진 부분은, 카테고리 「U」의 학습 데이터를, 좌 상승(우 하강)의 경사선이 그어진 부분은, 카테고리 「E」의 학습 데이터를, 우 상승(좌 하강)의 경 사선이 그어진 부분은, 카테고리 「O」의 학습 데이터를, 각각 나타내고 있다.
도 18에서는, 좌측에, 50회의 온라인 학습이 종료된 시점에서의 각 노드 Ni의(학습 데이터 기억부(22)에 기억된 학습 데이터의) 카테고리 「A」, 「I」, 「U」, 「E」, 「O」의 비율을 나타내고, 우측에, 14000회의 온라인 학습이 종료된 시점에서의 각 노드 Ni의(학습 데이터 기억부(22)에 기억된 학습 데이터의) 카테고리 「A」, 「I」, 「U」, 「E」, 「O」의 비율을 나타내고 있다.
도 18a와 도 18b를 비교함으로써, 학습의 초기 단계에서는, 각 노드 Ni의 학습 데이터 기억부(22)에는, 다양한 카테고리의 음성 데이터가 기억되지만, 학습이 진행되면, 각 노드 Ni의 학습 데이터 기억부(22)에 기억되는 음성 데이터(학습 데이터)가, 특정한 카테고리로 되어 가는 것을 확인할 수 있다.
도 19는 14000회의 온라인 학습의 종료 후의 시계열 패턴 기억 네트워크를 이용하여, 인식용의 300 발화의 음성 데이터를 인식한 인식 결과를 나타내고 있다.
도 19에서, 횡축은, 도 18에서의 경우와 마찬가지로, 노드 Ni를 특정하는 인덱스 i를 나타내며, 종축은, 노드 Ni가 승자 노드로 된 횟수를 나타내고 있다.
또한, 도 19에서는, 까만 부분은, 카테고리 「A」의 음성 데이터의 입력에 대하여 승자 노드로 된 횟수를 나타내고 있고, 횡선이 그어진 부분은, 카테고리 「I」의 음성 데이터의 입력에 대하여 승자 노드로 된 횟수를 나타내고 있다. 또한, 종선이 그어진 부분은, 카테고리 「U」의 음성 데이터의 입력에 대하여 승자 노드 로 된 횟수를, 좌 상승(우 하강)의 경사선이 그어진 부분은, 카테고리 「E」의 음성 데이터의 입력에 대하여 승자 노드로 된 횟수를, 우 상승(좌 하강)의 경사선이 그어진 부분은, 카테고리 「O」의 음성 데이터의 입력에 대하여 승자 노드로 된 횟수를, 각각 나타내고 있다.
도 19에 따르면, 대부분의 노드가, 특정한 카테고리의 음성 데이터의 입력에 대하여 승자 노드로 되어 있는 것을 확인할 수 있다. 이것으로부터, 각 노드에서, 특정한 카테고리의 시계열 패턴이 학습(획득)된 것을 알 수 있다.
다음으로, 도 20은, 도 5에 도시한 바와 같이, 링크에 의해, 노드가 2차원적으로 배치되는 배치 구조가 공급된 시계열 패턴 기억 네트워크의 학습을 행한 결과를 나타내고 있다.
도 20에서는, 가로×세로가 5×5로 되도록, 가로 방향으로 인접하는 노드끼리와, 세로 방향으로 인접하는 노드끼리에 대하여, 링크가 공급되어 있고, 따라서, 시계열 패턴 기억 네트워크는, 25의 노드로 구성되어 있다.
또한, 그 밖의 실험 조건은, 도 17 내지 도 19에서의 경우와 마찬가지이다. 단, 도 20에서는, 시계열 패턴 기억 네트워크의 노드에 링크가 공급되어 있기 때문에, 갱신 가중치 α를 결정하기 위한 패턴간 거리 d로서는, 승자 노드에 도착할 때까지 통과하는 링크의 수를 채용하였다.
도 20은 상술한 학습용의 14000 발화의 음성 데이터를 이용하여 온라인 학습을 행하고, 상술한 바와 같이 하여, 카테고리 「A」, 「I」, 「U」, 「E」, 또는 「O」를 나타내는 정해 라벨을 각 노드에 부여한 상태의 시계열 패턴 기억 네트워크를 모식적으로 도시하고 있다.
도 20에 따르면, 학습이 행해진 시계열 패턴 기억 네트워크에서, 동일한 카테고리, 즉, 유사한 시계열 패턴을 획득한 노드가, 공간적으로 종합되어 배치되어 있는 것을 확인할 수 있다.
이상의 실험에서, 시계열 패턴 기억 네트워크에 따르면, 정해 라벨을 부여하지 않은 시계열 데이터의 학습(교사 없음 학습)이 적절하게 기능하는 것, 즉, 각 노드에서, 특정한 시계열 패턴(통계적인 특성)이 획득되는 것을 알 수 있었다.
또한, 실험에서는, 학습용의 음성 데이터(학습 데이터)나 인식용의 음성 데이터가, 카테고리 「A」, 「I」, 「U」, 「E」, 「O」 중의 어느 카테고리의 음성 데이터인지를 나타내는 정해 라벨을 이용하였지만, 정해 라벨은, 학습 결과나 인식 결과를 평가하기 위해 사용하였을 뿐이며, 학습 자체, 혹은 인식 자체에는, 정해 라벨은 사용하지 않는다.
다음으로, 상술한 경우에는, 시계열 패턴 기억 네트워크를 구성하는 노드가 갖는 시계열 패턴 모델(21)(도 4)로서, 상태 천이 확률 모델의 하나인 HMM을 채용하는 것으로 하였지만, 시계열 패턴 모델(21)로서는, 다른 상태 천이 확률 모델을 채용하는 것이 가능하다.
시계열 패턴 모델(21)로서 채용할 수 있는 다른 상태 천이 확률 모델로서는, 예를 들면, 베이시안 네트워크가 있다.
베이시안 네트워크에서는, 변수간의 의존 관계를 그래프 구조로 나타내며, 각 노드에 조건부 확률을 할당함으로써 모델화가 행해지지만, 특히, 시간축을 따른 상태 천이 모델을 구축함으로써, 시계열 데이터를 모델화하는 것이 가능하게 된다.
그래프 구조의 결정은, 예를 들면, 학습 데이터의 우도와 그래프 구조의 복잡함을 고려한 모델을 선택함으로써 행해지고, 조건부 확률의 추정에는, 예를 들면, 최대우 추정법이나 EM(Expectation Maximaization) 알고리즘 등이 이용된다.
시계열 패턴 기억 네트워크의 각 노드가 갖는 시계열 패턴 모델(21)로서, 상태 천이 확률 모델의 하나인 베이시안 네트워크를 이용해도, HMM을 이용한 경우와 마찬가지로, 시계열 데이터의 교사 없음 학습을 행하는 것이 가능하게 된다.
또한, 베이시안 네트워크의 상세에 대해서는, 예를 들면, Y. Kimura,「불확실성 모델링을 위한 정보 표현 : 베이시안 네트」, 2001년, 베이시안 네트 튜토리얼 등에 기재되어 있다.
시계열 패턴 모델(21)(도 4)에서는, 상술한 바와 같이, HMM이나 베이시안 네트워크 등과 같은 상태 천이 확률 모델을 채용할 수 있는 것 외에, 함수를 근사하는 모델(이하, 적절하게, 함수 근사 모델이라고 함)을 채용할 수도 있다.
함수 근사 모델은, 시계열 패턴을, 함수 f( )를 이용하여, 예를 들면, 미분 방정식 {x(t)}'=f(x(t))나, 차분 방정식 x(t+1)=f(x(t)) 등으로 표현하는 모델로, 함수 f( )가 시계열 패턴을 특징짓는다. 또한, t는 시간(시각)(샘플점)을 나타내며, x(t)는, 시각 t의 시계열 데이터의 샘플값, 또는 시각(0부터) t까지 관측된 시계열 데이터를 나타낸다. 또한, {x(t)}'는, 시계열 데이터 x(t)의 시간 t에 관한 1차 미분을 나타낸다.
학습 데이터(시계열 데이터)로부터, 임의의 시계열 패턴을 나타내는(에 대응 하는) 함수 f()를 구하는 것을, 함수 근사라고 부르면, 함수 근사의 방법으로서는, 예를 들면, 다항식 등을 이용하여 함수 f()를 표현하고, 그 다항식의 계수를, 학습 데이터로부터 결정하는 방법이나, 뉴럴 네트워크에 의해서 함수 f()를 표현하고, 그 뉴럴 네트워크의 파라미터를 학습 데이터로부터 결정하는 방법 등이 있다.
다항식으로 표현된 함수 f()의 함수 근사에서, 그 다항식의 계수의 결정(추정)은, 예를 들면, 최급강하법 등에 의해 행할 수 있다. 또한, 뉴럴 네트워크에 의해서 표현된 함수 f()의 함수 근사에서, 그 뉴럴 네트워크의 파라미터의 결정은, 예를 들면, 백프로파게이션법에 의해 행할 수 있다. 여기서, 백프로파게이션법에서는, 뉴럴 네트워크에 입력 및 출력의 데이터를 부여하고, 그 입력과 출력의 데이터가 관계를 만족하도록, 뉴럴 네트워크의 파라미터의 학습이 행하여진다.
도 21은 시계열 패턴 기억 네트워크의 노드가 갖는 시계열 패턴 모델(21)로서 함수 근사 모델을 채용한 경우의, 그 하나의 노드 Ni의 구성예를 모식적으로 도시하고 있다. 또한, 도 21 중 도 4에서의 경우와 대응하는 부분에 대해서는 동일한 부호를 붙여 둔다.
도 21에서는 시계열 패턴 모델(21)로서 함수 f()를 이용한 차분 방정식 x(t+1)=f(x(t))로 시계열 패턴을 표현하는 함수 근사 모델이 채용되어 있다.
도 22는 도 21의 함수 근사 모델에서 함수 f()가 뉴럴 네트워크에 의해서 표현되는 경우의 노드 Ni의 구성예를 모식적으로 도시하고 있다.
도 22에서는, 뉴럴 네트워크로서, 리커런트 뉴럴 네트워크가 채용되어 있고, 입력층 x(t), 출력층 x(t+1), 및 그 입력층 x(t)와 출력층 x(t+1)을 연결하는 중간층으로 구성되어 있다.
도 22에서 원으로 표시된 유닛끼리 연결하는 화살표에 첨부되는 수치가 뉴럴 네트워크의 파라미터이고, 이 파라미터가 학습 데이터 기억부(22)에 기억된 학습 데이터(시계열 데이터)에 의해 학습된다. 파라미터의 학습은, 초기치를 적당히 부여하고, 백프로파게이션법에 의해 행해진다.
도 22에 도시한 바와 같이, 함수 f()가 뉴럴 네트워크에 의해서 표현되는 시계열 패턴 모델(21)을 갖는 노드 Ni로 구성되는 시계열 패턴 기억 네트워크의 학습에서도(인식을 행하는 경우도 마찬가지임), 상술한 HMM을 시계열 패턴 모델(21)로서 채용한 경우와 마찬가지로, 승자 노드를 결정할 필요가 있고, 승자 노드의 결정을 위해서는, 시계열 패턴 기억 네트워크의 각 노드 Ni의, 새로운 시계열 데이터에 대한 스코어를 계산할 필요가 있다.
이 스코어로서는, 예를 들면, 새로운 시계열 데이터의 관측치(실제의 값)와, 함수 f()가 뉴럴 네트워크에 의해서 표현되는 시계열 패턴 모델(21)로부터 구해지는, 새로운 시계열 데이터의 이론치와의 차의 제곱합 등을 채용할 수 있다. 이 경우, 스코어의 값이 가장 작은 노드가, 새로운 시계열 데이터에 가장 적합한 노드인 승자 노드로서 결정된다.
승자 노드의 결정 후에는, 각 노드의 갱신 가중치를 결정하고, 이하, 상술한 HMM을 시계열 패턴 모델(21)로서 채용한 경우와 마찬가지의 수순으로, 각 노드 Ni( 가 갖는 뉴럴 네트워크)의 파라미터를 갱신할 수 있다.
이상과 같이, 시계열 패턴 모델(21)로서, 상태 천이 확률 모델 대신에 함수 근사 모델을 이용하여도, 시계열 데이터의 교사 없는 학습을 행하는 것이 가능하게 된다.
또한, 시계열 패턴 모델(21)로서, 함수 근사 모델을 이용한 경우, 각 노드 Ni의 함수 근사 모델이 임의의 시계열 데이터에 적합한 정도인 스코어로서, 상술한 바와 같이, 그 시계열 데이터와 함수 근사 모델(함수 f())로부터 구해지는, 그 시계열 데이터의 이론치와의 차의 제곱합을 채용함으로써, 시계열 패턴 모델(21)로서 상태 천이 확률 모델을 이용한 경우와 마찬가지로, 인식 처리를 행할 수 있다.
또한, 미분 방정식 {x(t)}'=f(x(t))나 차분 방정식 x(t+1)=f(x(t)) 등에 의해 주어지는 함수 근사 모델에 따르면, 초기치를 주면, 그 초기치로부터 순차적으로 시계열 데이터를 생성할 수 있다. 즉, 함수 근사 모델에서도, 상태 천이 확률 모델과 마찬가지로, 시계열 데이터를 생성할 수 있다. 또한, 노드 Ni가 갖는 함수 근사 모델에 의해서 시계열 데이터를 생성하는 경우의 초기치로서는, 예를 들면, 그 노드 Ni가 갖는 학습 데이터 기억부(22)에 기억되어 있는 모든 학습 데이터의 초기치(최초의 값)의 평균치 등을 채용할 수 있다.
여기서, 도 23 내지 도 25를 참조하여, 종래의 리커런트 뉴럴 네트워크에서의 복수의 시계열 패턴의 학습과, 리커런트 뉴럴 네트워크를 갖는 노드로 구성되는 시계열 패턴 기억 네트워크에서의 복수의 시계열 패턴의 학습의 차이에 대하여 설 명한다.
우선, 종래의 리커런트 뉴럴 네트워크의 학습의 방법으로서는, 도 23에 도시하는 바와 같이, 예를 들면, 복수의 카테고리 "A", "B", "C"의 음성 데이터를 학습하는 경우에, 카테고리 "A", "B", "C" 각각의 다수의 음성 데이터를 학습 데이터로서 준비함과 함께, 카테고리 "A", "B", "C" 각각용의 리커런트 뉴럴 네트워크(카테고리 "A", "B", "C" 각각의 음성 데이터를 학습시키는 리커런트 뉴럴 네트워크)를 준비하고, 각 카테고리의 학습 데이터에 의해서, 대응하는 카테고리의 리커런트 뉴럴 네트워크의 학습을 백프로파게이션법에 의해서 행하는 교사 있는 학습이 있다.
이 경우, 카테고리 "A"용의 리커런트 뉴럴 네트워크에서는, 카테고리 "A"의 학습 데이터(음성 데이터)만을 이용하여, 그 카테고리 "A"의 시계열 패턴이 학습(획득)된다. 마찬가지로, 카테고리 "B"용의 리커런트 뉴럴 네트워크에서는 카테고리 "B"의 시계열 패턴이, 카테고리 "C"용의 리커런트 뉴럴 네트워크에서는 카테고리 "C"의 시계열 패턴이 각각 학습된다.
따라서, 이 경우, 1개의 리커런트 뉴럴 네트워크에서는 1개의 시계열 패턴만의 학습이 행하여지기 때문에, 개개의 리커런트 뉴럴 네트워크의 규모를 그다지 크게 할 필요가 없어, 백프로파게이션법에 의한 학습에 요구되는 계산량은 그다지 많게 되지 않으므로, 학습에 요구되는 시간은 그리 문제가 되지 않는다.
이상과 같이, 교사 있는 학습을 행하는 경우에는, 1개의 리커런트 뉴럴 네트워크에, 1개의 시계열 패턴만의 학습을 행하게 할 수 있지만, 교사 없는 학습을 행하는 경우에는, 학습할 시계열 패턴이 부정이기 때문에, 즉 몇개의 카테고리의 학 습 데이터가 입력될지 모르고, 또한, 입력된 학습 데이터의 카테고리도 모르기 때문, 1개의 리커런트 뉴럴 네트워크에, (우연히, 1개의 카테고리의 시계열 데이터밖에 존재하지 않는 경우를 제외하고) 1개의 시계열 패턴만의 학습을 행하게 할 수는 없다.
따라서, 종래의 리커런트 뉴럴 네트워크에 의해서, 교사 없는 학습을 행하는 경우에는, 도 24에 도시하는 바와 같이, 1개의 리커런트 뉴럴 네트워크에, 부정의 수의 시계열 패턴을 학습시킬 필요가 있다.
뉴럴 네트워크는 여러 가지 패턴의 처리를 각 뉴런의 처리로 분담시키고, 또한, 학습 데이터에는, 명시적인 정답 라벨을 부여할 필요가 없으므로, 부정의 수의 시계열 패턴을 학습하는 학습 교사 없는 학습을 행하는 것은 가능하다.
그러나, 1개의 뉴럴 네트워크에서, 음성과 같은 다수의 카테고리(시계열 패턴)를 적절하게 학습하기 위해서는, 이와 같은 다수의 카테고리의 수에 따른 대규모의 뉴럴 네트워크를 마련할 필요가 있다. 그리고, 상술한 바와 같이, 뉴럴 네트워크의 파라미터의 학습에 이용되어 있는 백프로파게이션법은, 뉴럴 네트워크의 규모가 크게 되면, 계산량이 비약적으로 증가하고, 그 결과, 학습에 요구되는 시간도 매우 크게 되어, 실용상 큰 문제로 된다.
이에 대하여, 도 25에 도시한 바와 같은, 리커런트 뉴럴 네트워크를 갖는 노드로 구성되는 시계열 패턴 기억 네트워크의 학습에서는, 1개의 노드에서, 1개의 시계열 패턴이 학습(획득)된다. 즉, 1개의 노드가 갖는 리커런트 뉴럴 네트워크에서, 1개의 시계열 패턴이 학습된다. 따라서, 1개의 노드가 갖는 리커런트 뉴럴 네트워크는 그다지 규모를 크게 할 필요가 없기 때문에, 백프로파게이션법에 의한 학습에 요구되는 계산량은 도 24에서 설명한 경우와 비교해서 충분히 작아, 학습에 요구되는 시간은 문제가 되지 않는다.
다음으로, 도 26은 본 발명을 적용한 데이터 처리 장치의 제2 실시 형태의 구성예를 도시하는 블록도이다.
도 26의 데이터 처리 장치는, 예를 들면, 2족 보행형 혹은 4족 보행형의 로봇에 적용되고 있고, 입력부(101), 출력부(102), 및 데이터 처리부(103)로 구성되어 있다.
입력부(101)는 로봇에 대한 입력을 접수하는 입력 디바이스(센서)로 구성되고, 그 입력에 대응하는 시계열 데이터인 입력 데이터를 데이터 처리부(103)에 공급한다. 입력부(101)를 구성하는 입력 디바이스로서는, 예를 들면, 로봇의 청각(귀)으로서의 마이크나, 시각(눈)으로서의 카메라, 사용자에 의해 조작되는 키보드나 마우스 등이 있다. 또한, 입력부(101)를 구성하는 입력 디바이스로서는, 그 외, 예를 들면, 촉각에 대응하는 압력 센서 등을 설치할 수 있다.
출력부(102)는 로봇이 외부에의 작용(출력)을 행하기 위한 출력 디바이스로 구성되고, 데이터 처리부(103)로부터 공급되는 시계열 데이터인 출력 데이터에 따라서 활동 작용을 행한다. 출력부(102)를 구성하는 출력 디바이스로서는, 예를 들면, 로봇의 입으로서의 스피커나, 로봇의 손발, 그 밖의 신체의 부분을 움직이는 근력으로서의 모터(액튜에이터), 화상에 의한 정보의 표시를 행하는 디스플레이 등이 있다.
데이터 처리부(103)는 시계열 패턴 기억 네트워크를 기억하고 있고, 그 시계열 패턴 기억 네트워크를, 입력부(101)가 출력하는 것과 마찬가지의 입력 데이터나 출력부(102)에 공급되는 것과 마찬가지의 출력 데이터를 이용하여, 학습한다(학습 처리를 행한다). 또한, 데이터 처리부(103)는 입력부(101)로부터 공급되는 입력 데이터를 시계열 패턴 기억 네트워크에 의해 인식하고, 또한, 그 인식 결과에 따라, 시계열 패턴 기억 네트워크를 이용하여, 시계열 데이터인 출력 데이터를 생성하여, 출력부(102)에 공급한다.
즉, 데이터 처리부(103)에서, 학습부(111A)에는 시계열 데이터인 입력 데이터가 공급된다. 여기서, 학습부(111A)에 공급되는 입력 데이터는 입력부(101)가 출력하는 것과 마찬가지의 입력 데이터로서, 예를 들면, 마이크로부터 출력되는 음성 데이터, 카메라로부터 출력되는 화상 데이터, 키보드나 마우스로부터 출력되는, 그 키보드나 마우스의 조작에 대응한 데이터(조작 신호) 등이다.
학습부(111A)는, 도 2의 학습부(4)와 마찬가지로 구성되어, 학습부에 공급되는 입력 데이터를 이용하여, 후술하는 기억부(112A)에 기억된 시계열 패턴 기억 네트워크를 학습하는 학습 처리를 행한다.
학습부(111B)에는 시계열 데이터인 출력 데이터가 공급된다. 여기서, 학습부(111B)에 공급되는 출력 데이터는 출력부(102)에 공급되는 것과 마찬가지의 출력 데이터로서, 예를 들면, 스피커에 공급되어 출력되는 음성 데이터, 디스플레이에 공급되어 표시되는 화상 데이터, 모터를 구동하는 데이터(구동 신호) 등이다.
학습부(111B)도, 도 2의 학습부(4)와 마찬가지로 구성되어, 학습부에 공급되 는 출력 데이터를 이용하여, 후술하는 기억부(112B)에 기억된 시계열 패턴 기억 네트워크를 학습하는 학습 처리를 행한다.
기억부(112A 및 112B)는 모두 시계열 패턴 기억 네트워크를 기억하고 있다. 또한, 기억부(112A)에 기억되어 있는 시계열 패턴 기억 네트워크는 학습부(111A)에 의해서 입력 데이터를 이용하여 학습이 행하여지는 것으로, 말하자면, 입력용의 시계열 패턴 기억 네트워크이다. 또한, 기억부(112B)에 기억되어 있는 시계열 패턴 기억 네트워크는 학습부(111B)에 의해서 출력 데이터를 이용하여 학습이 행하여지는 것으로, 말하자면, 출력용의 시계열 패턴 기억 네트워크이다.
여기서, 입력용 및 출력용의 시계열 패턴 기억 네트워크는, 동일한 노드와 링크(링크가 없는 경우를 포함함)를 갖는 것이어도 되고, 상이한 노드 또는 링크를 갖는 것이어도 된다. 또한, 입력용 및 출력용의 시계열 패턴 기억 네트워크의 노드가 갖는 시계열 패턴 모델(21)도, 동일한 모델이어도 되고, 상이한 모델이어도 된다.
인식부(113)에는, 입력부(101)로부터 입력 데이터가 공급되도록 되어 있다. 인식부(113)는, 도 2의 인식부(3)와 마찬가지로 구성되어, 입력부(101)로부터의 입력 데이터를, 기억부(112A)에 기억된 입력용의 시계열 패턴 기억 네트워크를 이용하여 인식하고(인식 처리를 행하고), 그 인식 결과로서의 승자 노드의 노드 라벨을, 입출력 관계 연상 기억부(115)에 공급한다.
생성부(114)에는, 입출력 관계 연상 기억부(115)로부터, 생성 처리를 행하기 위한 제어 데이터로서의 노드 라벨이 공급되도록 되어 있다. 생성부(114)는, 도 2 의 생성부(6)와 마찬가지로 구성되어, 기억부(112B)에 기억된 출력용의 시계열 패턴 기억 네트워크에서, 입출력 관계 연상 기억부(115)로부터의 노드 라벨이 나타내는 노드를 생성 노드로서 결정하고, 그 생성 노드를 이용하여, 시계열 데이터인 출력 데이터를 생성한다(생성 처리를 행한다). 그리고, 생성부(114)는, 생성 노드를 이용하여 생성한 출력 데이터를, 출력부(102)에 공급한다.
입출력 관계 연상 기억부(115)는, 기억부(112A)에 기억된 입력용의 시계열 패턴 기억 네트워크를 구성하는 각 노드의 노드 라벨(이하, 적절히, 입력 라벨이라고 함)과, 기억부(112B)에 기억된 출력용의 시계열 패턴 기억 네트워크를 구성하는 각 노드의 노드 라벨(이하, 적절히, 출력 라벨이라고 함)을 대응지어서 기억한다. 그리고, 입출력 관계 연상 기억부(115)는, 인식부(113)로부터 공급되는 노드 라벨, 즉, 입력 라벨에 대응지어져 있는 출력 라벨을, 생성부(114)에 공급한다.
또한, 입출력 관계 연상 기억부(115)에서 대응지어지는 입력 라벨과 출력 라벨은 1 대 1이어도 되고, 1 대 다수나, 다수 대 1, 다수 대 다수이어도 된다.
이상과 같이 구성되는 데이터 처리 장치에서는, 학습부(111A)는, 자신에게 새로운 시계열 데이터로서의 입력 데이터가 공급되면, 그 입력 데이터를 이용하여, 기억부(112A)에 기억된 입력용의 시계열 패턴 기억 네트워크의 학습(온라인 학습)을 행한다. 마찬가지로, 학습부(111B)도, 자신에게 새로운 시계열 데이터로서의 출력 데이터가 공급되면, 그 출력 데이터를 이용하여, 기억부(112B)에 기억된 출력용의 시계열 패턴 기억 네트워크의 학습 처리를 행한다.
여기서, 학습부(111A)에의 입력 데이터의 공급과 학습부(111B)에의 출력 데 이터의 공급은, 예를 들면, 그 입력 데이터와 출력 데이터를 대응짓는 형태로 행해진다. 즉, 예를 들면, 학습부(111A)에의 입력 데이터의 공급과 학습부(111B)에의 출력 데이터의 공급이 동시에 행해지거나, 학습부(111A)에 입력 데이터가 공급되고, 이어서, 학습부(111B)에 출력 데이터가 공급된다.
이 경우, 기억부(112A)에 기억된 입력용의 시계열 패턴 기억 네트워크를 구성하는 노드의 입력 라벨과, 기억부(112B)에 기억된 출력용의 시계열 패턴 기억 네트워크를 구성하는 노드의 출력 라벨을 대응지을 수 있고, 입출력 관계 연상 기억부(115)는 그 대응을 기억한다.
즉, 학습부(111A)에서는 입력용의 시계열 패턴 기억 네트워크의 노드로부터 입력 데이터에 대한 승자 노드가 결정되고, 학습부(111B)에서도 출력용의 시계열 패턴 기억 네트워크의 노드로부터 출력 데이터에 대한 승자 노드가 결정된다.
입출력 관계 연상 기억부(115)는, 입력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대한 승자 노드로 된 노드의 노드 라벨(입력 라벨)을, 인식부(113)를 통하여 인식함과 함께, 출력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대응하는 출력 데이터에 대한 승자 노드로 된 노드의 노드 라벨(출력 라벨)을, 생성부(114)를 통하여 인식하고, 그 입력 라벨과 출력 라벨을 대응지어서 기억한다.
따라서, 예를 들면, 사용자의 발화에 따라서 마이크로부터 출력되는 음성 데이터를, 입력 데이터로서, 학습부(111A)에 공급하고, 그 발화에 대한 로봇의 응답으로서의, 합성음의 음성 데이터나, 어떤 액션을 일으키기 위한 모터의 구동 신호 등을, 사용자에게 지정해 달라고 하여 얻어서, 출력 데이터로서, 학습부(111B)에 공급하면, 입출력 관계 연상 기억부(115)에서는, 사용자의 발화에 대응하는 입력 데이터(음성 데이터)에 대한 승자 노드의 입력 라벨과, 그 발화에 대하여 로봇이 행하는 응답에 대응하는 출력 데이터에 대한 승자 노드의 출력 라벨이 대응지어져 기억된다.
그 결과, 그 후, 사용자가 발화를 행하고, 그 발화에 대응하는 음성 데이터로서의 입력 데이터가 입력부(101)로부터 데이터 처리부(103)에 공급되면, 데이터 처리부(103)에서는, 사용자가 그 발화에 대하여 지정한 출력 데이터가, 출력부(102)에 공급되고, 이에 의해, 로봇에서는, 그 출력 데이터에 대응하는 응답, 즉 예를 들면, 합성음의 출력이나 액션이 행하여진다.
즉, 사용자가 발화를 행하고, 그 발화에 대응하는 음성 데이터로서의 입력 데이터가 입력부(101)로부터 데이터 처리부(103)에 공급되면, 데이터 처리부(103)에서는, 인식부(113)에서, 입력부(101)로부터의 입력 데이터가, 기억부(112A)에 기억된 입력용의 시계열 패턴 기억 네트워크를 이용하여 인식되고, 그 인식 결과로서의 승자 노드의 입력 라벨이 입출력 관계 연상 기억부(115)에 공급된다.
입출력 관계 연상 기억부(115)에서는, 인식부(113)로부터 공급된 입력 라벨에 대응지어져 있는 출력 라벨이, 생성부(114)에 공급된다.
생성부(114)에서는, 기억부(112B)에 기억된 출력용의 시계열 패턴 기억 네트워크에서, 입출력 관계 연상 기억부(115)로부터의 출력 라벨이 나타내는 노드가, 생성 노드로서 결정되고, 그 생성 노드를 이용하여, 시계열 데이터인 출력 데이터 가 생성되어 출력부(102)에 공급된다.
그리고, 출력부(102)에서는, 예를 들면, 데이터 처리부(103)로부터의 출력 데이터에 대응하는 합성음이 스피커로부터 출력되거나, 로봇이 출력 데이터에 대응하는 액션을 행하도록 모터가 구동된다.
그 외, 입력부(101)의 마이크나, 카메라, 키보드, 마우스 등의 입력 디바이스로부터 얻어지는 임의의 입력 데이터의 학습부(111A)에의 공급과, 출력부(102)의 스피커나, 디스플레이, 모터 등의 출력 디바이스에 공급되는 임의의 출력 데이터의 학습부(111B)에의 공급을, 그 입력 데이터와 출력 데이터를 대응짓는 형태로 행함으로써, 입출력 관계 연상 기억부(115)에서는, 입력용의 시계열 패턴 기억 네트워크의 노드의 입력 라벨과, 출력용의 시계열 패턴 기억 네트워크의 노드의 출력 라벨이 대응지어져 기억되고, 이에 의해, 데이터 처리부(103)에서는, 입력부(101)의 마이크나, 카메라, 키보드, 마우스 등의 입력 디바이스로부터 공급되는 입력 데이터에 대응하여, 출력부(102)의 스피커나, 디스플레이, 모터 등의 출력 디바이스에 대하여, 여러 가지 출력 데이터를 공급하게 된다.
또한, 입출력 관계 연상 기억부(115)에서의 입력 라벨과 출력 라벨의 대응이, 예를 들면, 입력 라벨과 출력 라벨이 대응지어져 있는지의 여부를 나타내는 플래그인 1 비트의 대응 플래그를 이용함으로써 행할 수도 있고, 입력 라벨과 출력 라벨의 대응 정도(결합 정도)를 나타내는 결합 수치를 이용함으로써 행할 수도 있다.
즉, 입출력 관계 연상 기억부(115)에서는, 예를 들면, 입력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대한 승자 노드로 된 노드의 입력 라벨과, 출력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대응하는 출력 데이터에 대한 승자 노드로 된 노드의 출력 라벨의 대응을 나타내는 대응 플래그를, 대응이 되어 있지 않다는 것을 나타내는 0으로부터, 대응이 되어 있는 것을 나타내는 1로 함으로써, 입력 라벨과 출력 라벨을 대응지을 수 있다.
혹은, 입출력 관계 연상 기억부(115)에서는, 예를 들면, 입력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대한 승자 노드로 된 노드의 입력 라벨과, 출력용의 시계열 패턴 기억 네트워크에서, 입력 데이터에 대응하는 출력 데이터에 대한 승자 노드로 된 노드의 출력 라벨의 결합 정도를 나타내는 결합 수치를 1만큼 인크리먼트함으로써, 입력 라벨과 출력 라벨을 대응지을(입력 라벨과 출력 라벨의 결합 정도를 강화할) 수 있다.
입출력 관계 연상 기억부(115)에서, 대응 플래그가 이용되는 경우에는, 예를 들면, 인식부(113)로부터의 입력 라벨과의 대응 플래그가 1로 되어 있는 출력 라벨 전부가, 생성부(114)에 공급된다. 또한, 입출력 관계 연상 기억부(115)에서, 결합 수치가 이용되는 경우에는, 예를 들면, 인식부(113)로부터의 입력 라벨과의 결합 수치가 가장 큰 출력 라벨, 혹은, 인식부(113)로부터의 입력 라벨과의 결합 수치가 큰 순서의 복수의 출력 라벨이, 생성부(114)에 공급된다. 그리고, 생성부(114)에서는, 입출력 관계 연상 기억부(115)로부터의 1개 이상의 출력 라벨 각각이 나타내는 출력용의 시계열 패턴 기억 네트워크의 1개 이상의 노드에 기초하여, 1개 이상의 출력 데이터가 생성되고, 순차적으로 혹은 병렬적으로 출력부(102)에 공급된다.
이상과 같이, 예를 들면, 사용자로부터 공급되는 입력 데이터와 출력 데이터를 이용하여, 입력용 및 출력용의 시계열 패턴 기억 네트워크를 각각 온라인 학습함과 함께, 입력 라벨과 출력 라벨의 대응을 행함으로써, 여러 가지 환경에 따라서, 입력 데이터의 인식과, 그 입력 데이터에 응답하는 출력 데이터의 생성을 행하는 것이 가능하게 된다.
즉, 데이터 처리 장치(가 적용된 로봇)이 실제로 사용되는 환경에는, 예를 들면, 사용자의 음질이나 발화 속도의 차이, 조명 조건의 차이 등의 여러 가지 차이가 있다. 이러한 환경의 차이를 고려하여, 입력 데이터나 출력 데이터를, 미리 학습해 두는 것은 곤란하고, 이것이 교사 있는 학습의 가장 큰 문제이다.
이에 대하여, 시계열 패턴 기억 네트워크에 따르면, 데이터 처리 장치가 실제로 사용되는 환경마다, 입력 데이터나 출력 데이터를 학습할 수 있다.
또한, 시계열 패턴 기억 네트워크에 따르면, 학습할 시계열 패턴이 부정이어도, 즉 몇개의 카테고리의 입력 데이터나 출력 데이터가 입력될지 모르더라도, 자율적으로, 입력 데이터나 출력 데이터를 분류할 수 있으므로, 데이터 처리 장치를 사용하는 사용자에 대하여 정밀하고 치밀한 대응을 행하는 것이 가능하게 된다.
다음으로, 시계열 패턴 기억 네트워크는, 예를 들면, 순모델이나 역모델의 획득에 응용할 수 있다.
도 27은 순모델과 역모델의 개념을 도시하고 있다.
임의의 시계열 데이터인 입력 데이터에 대하여, 다른 시계열 데이터인 출력 데이터를 출력하는 제어 대상이 주어지고, 제어 대상에 관한 상세한 정보는 모르지 만(제어 대상의 내부를 모르지만), 제어 대상에 부여되는 입력 데이터와, 그 입력 데이터에 대하여 제어 대상으로부터 얻어지는 출력 데이터는 관측할 수 있는 것으로 한다.
여기서, 제어 대상에 부여되는 입력 데이터와, 그 입력 데이터에 대하여 제어 대상으로부터 얻어지는 출력 데이터는, 관측하는 것이 가능하다면, 어떠한 물리량이어도 된다. 또한, 제어 대상은, 입력 데이터를 부여할 수 있고, 또한, 그 입력 데이터에 대응한 출력 데이터를 얻을 수 있는 것이면, 어떠한 대상이어도 된다.
따라서, 예를 들면, 볼이나, 악기, 자동차, 가스 히터 등이 제어 대상으로 될 수 있다. 즉, 예를 들면, 볼에 대해서는, 입력 데이터로서의 힘을 가함으로써, 그 입력 데이터에 대응하여 변화하는 출력 데이터로서의 볼의 위치나 속도가 얻어진다. 또한, 예를 들면, 자동차에 대해서는, 입력 데이터로서의 핸들이나, 액셀러레이터, 브레이크 등의 조작을 행함으로써, 그 입력 데이터에 대응하여 변화하는 출력 데이터로서의 자동차의 위치나 속도를 얻을 수 있다. 또한, 예를 들면, 가스 히터에 대해서는, 입력 데이터로서의 화력을 조정하는 조작을 행함으로써, 그 입력 데이터에 대응하여 변화하는 출력 데이터로서의 방의 온도를 얻을 수 있다.
이상과 같이, 제어 대상에 입력 데이터를 부여하고, 이에 대응하여 출력 데이터가 얻어지는 경우에, 그 제어 대상을 모델화한 것이 순모델이다.
순모델은, 입력 데이터를 입력하면, 그 입력 데이터에 대하여, 제어 대상으 로부터 얻어지는 출력 데이터의 추정치를 출력한다. 따라서, 순모델에 따르면, 제어 대상에 대하여, 실제의 입력 데이터를 부여하지 않아도, 그 입력 데이터에 대하여, 제어 대상으로부터 얻어지는 출력 데이터를 추정할 수 있다.
한편, 제어 대상으로부터 얻어지는 출력 데이터의 목표치를 결정하고, 그 목표치로 되는 출력 데이터를 얻기 위해서, 제어 대상에 부여될 입력 데이터를 추정할 수 있는 모델이 역모델이다. 순모델은 입력 데이터로부터 출력 데이터에의 사상으로 볼 수 있지만, 이 경우, 그 역사상이 역모델이다.
여기서, 역모델에 의해 요구되는, 목표치로 되는 출력 데이터를 얻기 위해서, 제어 대상에 부여할 입력 데이터를, 이하, 적절히, 제어 데이터라고도 한다.
순모델 및 역모델 중 어느 것이나, 관측할 수 있는 입력 데이터와, 그 입력 데이터에 대한 출력 데이터만을 이용하여 구할(추정할) 필요가 있다.
그러나, 현실의 제어 대상은 복잡하고, 순모델이나 역모델을 단순한 선형 시스템으로서 모델화하면, 출력 데이터나 제어 데이터의 추정 오차가 크게 되어, 고정밀도의 추정을 행할 수 없게 된다.
시계열 패턴 기억 네트워크는, 제어 대상을, 선형 시스템에 의해서 고정밀도의 순모델이나 역모델로 모델화할 수 있는 경우에는 물론, 제어 대상을, 선형 시스템에 의해서 고정밀도의 순모델이나 역모델로 모델화할 수 없는 경우에도, 매우 유효하다.
즉, 시계열 패턴 기억 네트워크는 순모델이나 역모델에 적용할 수 있고, 시계열 패턴 기억 네트워크가 적용된 순모델이나 역모델에 따르면, 출력 데이터나 제 어 데이터를 고정밀도로 추정할 수 있다.
도 28은 시계열 패턴 기억 네트워크가 적용된 순모델 및 역모델로서의 결합 네트워크의 구성예를 모식적으로 도시하고 있다.
결합 네트워크는 2개의 시계열 패턴 기억 네트워크 netin 및 netout으로 구성되고, 시계열 패턴 기억 네트워크 netin의 각 노드 Ni(i= 1, 2, …, 노드의 총 수)와 시계열 패턴 기억 네트워크 netout의 각 노드 N'j(j=1, 2, …, 노드의 총 수)는 결합되어 있다.
여기서, 도 28에서, 시계열 패턴 기억 네트워크 netin의 노드 Ni와 시계열 패턴 기억 네트워크 netout의 노드 N'j 사이의 화살표가 그 노드 Ni와 N'j와의 결합을 표시하고 있다.
또한, 시계열 패턴 기억 네트워크 netin 및 netout은 동일한 노드와 링크(링크가 없는 경우를 포함함)를 갖는 것이어도 되고, 상이한 노드 또는 링크를 갖는 것이어도 된다. 또한, 시계열 패턴 기억 네트워크 netin의 노드 Ni가 갖는 시계열 패턴 모델(21)(도 4)과 시계열 패턴 기억 네트워크 netout의 노드가 갖는 시계열 패턴 모델(21)도 동일한 모델이어도 되고, 상이한 모델이어도 된다.
다음으로, 도 29는 본 발명을 적용한 데이터 처리 장치의 제3 실시 형태의 구성예, 즉 도 28의 결합 네트워크를 취급하는 데이터 처리 장치의 구성예를 도시하는 블록도이다.
도 29의 데이터 처리 장치에서는, 도 28의 결합 네트워크에 의해서 제어 대상을 순모델 및 역모델로 모델화하고, 또한, 그 순모델 및 역모델로서의 결합 네트워크를 이용하여, 제어 대상으로부터 얻어지는 출력 데이터나, 제어 대상에 부여할 제어 데이터(입력 데이터)를 추정한다.
즉, 도 29에서, 데이터 처리 장치는 기억부(211), 학습부(212), 및 인식 생성부(213)로 구성되어 있다.
기억부(211)는 도 28에 도시한 결합 네트워크를 기억한다.
학습부(212)에는, 모델화하고자 하는 제어 대상에 부여된 입력 데이터(의 관측치)와 그 입력 데이터에 대하여 제어 대상으로부터 얻어진 출력 데이터(의 관측치)와의 세트인 관측 데이터가 공급되도록 되어 있다. 여기서, 관측 데이터는, 임의의 구간의 시계열 데이터(임의의 시간에 걸치는 시계열 데이터)인 입력 데이터와, 그 구간의 시계열 데이터에 대하여 제어 대상으로부터 얻어지는 구간의 다른 시계열 데이터인 출력 데이터와의 세트이다.
학습부(212)는, 자신에게 공급되는 관측 데이터를 이용하여, 결합 네트워크에 의해서 제어 대상을 순모델 및 역모델로 모델화하는, 그 결합 네트워크의 학습을 행한다.
즉, 학습부(212)는 학습 처리부(221)와 결합 수치 갱신부(222)로 구성된다.
학습 처리부(221)는, 도 8에 도시한 학습 처리부(32)와 마찬가지로 구성되어, 학습부(212)에 공급되는 관측 데이터 중 입력 데이터에 기초하여, 기억부(211) 에 기억된 결합 네트워크(도 28)에서의 시계열 패턴 기억 네트워크 netin을, 도 2의 데이터 처리 장치에서의 경우와 마찬가지로, 자기 조직적으로 갱신한다. 또한, 학습 처리부(221)는, 학습부(212)에 공급되는 관측 데이터 중 출력 데이터(관측 데이터에서, 입력 데이터와 세트로 되어 있는 출력 데이터)에 기초하여, 기억부(211)에 기억된 결합 네트워크(도 28)에서의 시계열 패턴 기억 네트워크 netout을, 도 2의 데이터 처리 장치에서의 경우와 마찬가지로, 자기 조직적으로 갱신한다.
또한, 학습 처리부(221)는, 시계열 패턴 기억 네트워크 netin을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netin의 노드 Ni의 노드 라벨(이것도, 이하, 적절히, 입력 라벨이라고 함)과, 시계열 패턴 기억 네트워크 netout을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netout의 노드 N'j의 노드 라벨(이것도, 이하, 적절히, 출력 라벨이라고 함)을 세트로 한 라벨 세트를, 결합 수치 갱신부(222)에 공급한다.
결합 수치 갱신부(222)는, 학습 처리부(221)로부터 공급되는 라벨 세트에 기초하여, 기억부(211)에 기억된 결합 네트워크(도 28)에서의 시계열 패턴 기억 네트워크 netout의 노드 Ni와, 시계열 패턴 기억 네트워크 netout의 노드 N'j의 결합 관계를 갱신한다.
여기서, 학습 처리부(221)로부터 결합 수치 갱신부(222)에 공급되는 라벨 세트는 입력 라벨과 출력 라벨의 세트이고, 입력 라벨은, 관측 데이터 중 입력 데이 터에 기초하여, 시계열 패턴 기억 네트워크 netin을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netin의 노드 Ni의 노드 라벨이므로, 시계열 패턴 기억 네트워크 netin에서, 입력 데이터에 가장 적합한 노드 Ni의 노드 라벨이다.
마찬가지로, 출력 라벨은, 관측 데이터 중 출력 데이터에 기초하여, 시계열 패턴 기억 네트워크 netout을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netout의 노드 N'j의 노드 라벨이므로, 시계열 패턴 기억 네트워크 netout에서, 출력 데이터에 가장 적합한 노드 N'j의 노드 라벨이다.
결합 수치 갱신부(222)에서는, 시계열 패턴 기억 네트워크 netin의 노드 중, 관측 데이터에서의 입력 데이터에 가장 적합한 노드인 승자 노드 Ni와, 시계열 패턴 기억 네트워크 netout의 노드 중, 관측 데이터에서의 출력 데이터에 가장 적합한 노드인 승자 노드 N'j와의 결합 관계가 갱신된다.
여기서, 시계열 패턴 기억 네트워크 netin의 노드 Ni와, 시계열 패턴 기억 네트워크 netout의 노드 N'j와의 결합 관계에 대해서는, 결합 정도를 나타내는 결합 수치가 정의되어 있고, 노드 Ni와 N'j의 결합 관계의 갱신에서는, 그 노드 Ni와 N'j의 결합 정도를 강하게 하도록, 결합 수치가 갱신된다. 구체적으로는, 예를 들면, 노드 Ni와 N'j의 결합 정도를 나타내는 결합 수치가 1만큼 인크리먼트된다.
인식 생성부(213)에는, 제어 대상으로부터 얻어지는 출력 데이터를 추정하기 위한 입력 데이터, 또는 제어 대상으로부터 얻어지는 출력 데이터를 임의의 목표치로 하기 위해 대상에 부여될 입력 데이터(제어 데이터)를 추정하기 위한 출력 데이터가 공급된다.
그리고, 인식 생성부(213)는, 입력 데이터가 공급된 경우에는, 기억부(211)에 기억된 결합 네트워크에서의 시계열 패턴 기억 네트워크 netin에서, 그 입력 데이터에 가장 적합한 승자 노드 Ni를 결정하고, 그 승자 노드 Ni와의 결합 수치가 가장 강한 시계열 패턴 기억 네트워크 netout의 노드를, 그 입력 데이터에 대한 출력 데이터의 추정치로서의 시계열 데이터를 생성하는 생성 노드 N'j로서 결정한다. 또한, 인식 생성부(213)는, 생성 노드 N'j가 갖는 시계열 패턴 모델(21)(도 4)에 기초하여, 출력 데이터(의 추정치)를 생성하여 출력한다.
또한, 인식 생성부(213)는, 출력 데이터가 공급된 경우에는, 기억부(211)에 기억된 결합 네트워크에서의 시계열 패턴 기억 네트워크 netout에서, 그 출력 데이터에 가장 적합한 승자 노드 N'j를 결정하고, 그 승자 노드 N'j와의 결합 수치가 가장 강한 시계열 패턴 기억 네트워크 netin의 노드를, 그 출력 데이터가 얻어질 때에 제어 모델에 부여되는 제어 데이터(입력 데이터)의 추정치로서의 시계열 데이터를 생성하는 생성 노드 Ni로서 결정한다. 또한, 인식 생성부(213)는, 생성 노드 Ni가 갖는 시계열 패턴 모델(21)(도 4)에 기초하여, 제어 데이터(의 추정치)를 생성하여 출력한다.
즉, 인식 생성부(213)는 스코어 계산부(231), 승자 노드 결정부(232), 생성 노드 결정부(233), 및 시계열 생성부(234)로 구성된다.
또한, 스코어 계산부(231), 승자 노드 결정부(232), 생성 노드 결정부(233), 및 시계열 생성부(234)는, 인식 생성부(213)에 공급된 데이터가 입력 데이터인지 또는 출력 데이터인지를 인식할 수 있도록 되어 있는 것으로 한다. 즉, 인식 생성부(213)에 대해서는, 자신에게 공급되는 데이터와는 별도로, 혹은, 자신에게 공급되는 데이터와 함께, 그 데이터가 입력 데이터 및 출력 데이터 중 어느 것인지를 나타내는 정보가 공급되도록 되어 있고, 이에 의해, 스코어 계산부(231), 승자 노드 결정부(232), 생성 노드 결정부(233), 및 시계열 생성부(234)는, 인식 생성부(213)에 공급된 데이터가 입력 데이터인지 또는 출력 데이터인지를 인식한다.
스코어 계산부(231)는, 인식 생성부(213)에 공급된 데이터에 대하여, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 각 노드 Ni, 또는 시계열 패턴 기억 네트워크 netout의 각 노드 N'j가 적합한 정도인 스코어를, 도 13의 인식부(3)의 스코어 계산부(231)에서의 경우와 마찬가지로 하여 계산하고, 승자 노드 결정부(232)에 공급한다.
즉, 스코어 계산부(231)는, 인식 생성부(213)에 공급된 데이터가 입력 데이터인 경우, 그 입력 데이터에 대하여, 기억부(211)에 기억된 결합 네트워크를 구성 하는 시계열 패턴 기억 네트워크 netin의 각 노드 Ni의 스코어를 계산하고, 승자 노드 결정부(232)에 공급한다. 또한, 스코어 계산부(231)는, 인식 생성부(213)에 공급된 데이터가 출력 데이터인 경우, 그 출력 데이터에 대하여, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 각 노드 N'j의 스코어를 계산하고, 승자 노드 결정부(232)에 공급한다.
승자 노드 결정부(232)는, 도 13의 인식부(3)의 승자 노드 결정부(52)에서의 경우와 마찬가지로, 스코어 계산부(231)로부터 공급되는 스코어가 가장 높은 노드를 승자 노드에 결정하고, 그 승자 노드를 나타내는 노드 라벨을 생성 노드 결정부(233)에 공급한다.
따라서, 인식 생성부(213)에 공급된 데이터가 입력 데이터인 경우, 승자 노드 결정부(232)에서는, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중에서, 스코어 계산부(231)로부터 공급되는, 입력 데이터에 대한 스코어가 가장 높은 노드가 승자 노드 Ni로 결정되고, 그 승자 노드 Ni를 나타내는 입력 라벨이 생성 노드 결정부(233)에 공급된다. 또한, 인식 생성부(213)에 공급된 데이터가 출력 데이터인 경우, 승자 노드 결정부(232)에서는, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중에서, 스코어 계산부(231)로부터 공급되는, 출력 데이터에 대한 스코어가 가장 높은 노드가 승자 노드 N'j로 결정되고, 그 승자 노드 N'j를 나타내는 출력 라 벨이 생성 노드 결정부(233)에 공급된다.
생성 노드 결정부(233)는, 승자 노드 결정부(232)로부터 입력 라벨이 공급된 경우, 즉 인식 생성부(213)에 공급된 데이터가 입력 데이터인 경우, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중에서, 승자 노드 결정부(232)로부터의 입력 라벨이 나타내는 노드 Ni와의 결합 수치가 가장 강한 노드 N'j를 생성 노드로서 결정하고, 그 생성 노드 N'j를 나타내는 출력 라벨을 시계열 생성부(234)에 공급한다. 또한, 생성 노드 결정부(233)는, 승자 노드 결정부(232)로부터 출력 라벨이 공급된 경우, 즉 인식 생성부(213)에 공급된 데이터가 출력 데이터인 경우, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중에서, 승자 노드 결정부(232)로부터의 출력 라벨이 나타내는 노드 N'j와의 결합 수치가 가장 강한 노드 Ni를 생성 노드로서 결정하고, 그 생성 노드 Ni를 나타내는 입력 라벨을 시계열 생성부(234)에 공급한다.
시계열 생성부(234)는, 생성 노드 결정부(233)로부터 출력 라벨이 공급된 경우, 인식 생성부(213)에 공급된 데이터가 입력 데이터인 경우, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중의, 생성 노드 결정부(233)로부터의 출력 라벨이 나타내는 노드 N'j가 갖는 시계열 패턴 모델(21)(도 4)에 기초하여, 인식 생성부(213)에 공급된 입력 데이터에 대한 출력 데이터의 추정치로서의 시계열 데이터를, 도 15의 생성부(6)의 시계열 생성부(62)에서 의 경우와 마찬가지로 하여 생성한다.
또한, 시계열 생성부(234)는, 생성 노드 결정부(233)로부터 입력 라벨이 공급된 경우, 인식 생성부(213)에 공급된 데이터가 출력 데이터인 경우, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중, 생성 노드 결정부(233)로부터의 입력 라벨이 나타내는 노드 Ni가 갖는 시계열 패턴 모델(21)에 기초하여, 인식 생성부(213)에 공급된 출력 데이터에 대한 제어 데이터(입력 데이터)의 추정치로서의 시계열 데이터를, 도 15의 생성부(6)의 시계열 생성부(62)에서의 경우와 마찬가지로 하여 생성한다.
다음으로, 도 30의 플로우차트를 참조하여, 도 29의 데이터 처리 장치에서 행해지는, 결합 네트워크에 의한 제어 대상의 모델화, 즉 결합 네트워크의 학습에 대하여 설명한다.
단계 S101에서, 입력 데이터와 출력 데이터의 세트인 관측 데이터가 도 26의 데이터 처리 장치에 입력되면, 그 관측 데이터는 학습부(212)의 학습 처리부(221)에 공급된다.
학습 처리부(221)는, 단계 S102에서, 관측 데이터 중 입력 데이터에 기초하여, 기억부(211)에 기억된 결합 네트워크(도 28)에서의 시계열 패턴 기억 네트워크 netin을 자기 조직적으로 갱신하고, 단계 S103으로 진행한다. 단계 S103에서는, 학습 처리부(221)는, 관측 데이터 중 출력 데이터에 기초하여, 기억부(211)에 기억된 결합 네트워크에서의 시계열 패턴 기억 네트워크 netout을 자기 조직적으로 갱신한 다.
그리고, 학습 처리부(221)는, 시계열 패턴 기억 네트워크 netin을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netin의 노드 Ni의 입력 라벨과, 시계열 패턴 기억 네트워크 netout을 갱신할 때에 승자 노드로 되었던, 그 시계열 패턴 기억 네트워크 netout의 노드 N'j의 출력 라벨과의 세트인 라벨 세트를, 결합 수치 갱신부(222)에 공급한다.
결합 수치 갱신부(222)는, 단계 S104에서, 학습 처리부(221)로부터 공급되는 라벨 세트에 기초하여, 시계열 패턴 기억 네트워크 netin의 노드 Ni와, 시계열 패턴 기억 네트워크 netout의 노드 N'j와의 결합 수치를 강화한다.
즉, 결합 수치는, 학습 개시 시에, 예를 들면, 전부 O에 리세트되도록 되어 있고, 결합 수치 갱신부(222)는, 단계 S104에서, 학습 처리부(221)로부터 공급되는 라벨 세트 중 입력 라벨이 나타내는 노드 Ni와 출력 라벨이 나타내는 노드 N'j의 결합 수치를 1만큼 인크리먼트한다.
그리고, 단계 S104로부터 S101로 되돌아가, 다음 관측 데이터가 입력되는 것을 대기하고, 이하, 마찬가지의 처리가 반복된다.
다수의 관측 데이터가 입력되고, 단계 S101 내지 S104의 처리가 반복됨으로 써, 기억부(211)에 기억된 결합 네트워크는, 제어 대상에 대응하는 순모델로 되어 감과 함께, 역모델로도 되어 간다.
다음으로, 도 31의 플로우차트를 참조하여, 순모델 및 역모델로서의 결합 네트워크를 이용하여, 입력 데이터에 대한 출력 데이터나, 출력 데이터에 대한 제어 데이터(입력 데이터)를 추정하는 처리에 대하여 설명한다.
우선, 도 29의 데이터 처리 장치에서, 입력 데이터에 대한 출력 데이터를 추정하는 경우, 단계 S111에서, 그 입력 데이터가 도 29의 데이터 처리 장치에 입력된다.
데이터 처리 장치에 입력된 입력 데이터는 인식 생성부(213)의 스코어 계산부(231)에 공급된다.
스코어 계산부(231)는, 단계 S112에서, 자신에 공급된 입력 데이터에 대하여, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 각 노드 Ni의 스코어를 계산하여, 승자 노드 결정부(232)에 공급한다.
승자 노드 결정부(232)는, 단계 S113에서, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중에서, 스코어 계산부(231)로부터의 스코어가 가장 높은 노드를 승자 노드 Ni로 결정하고, 그 승자 노드 Ni를 나타내는 입력 라벨을 생성 노드 결정부(233)에 공급한다.
생성 노드 결정부(233)는, 단계 S114에서, 기억부(211)에 기억된 결합 네트 워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중에서, 승자 노드 결정부(232)로부터의 입력 라벨이 나타내는 노드 Ni와의 결합 수치가 가장 강한 노드 N'j를 생성 노드로서 결정하고, 그 생성 노드 N'j를 나타내는 출력 라벨을 시계열 생성부(234)에 공급한다.
시계열 생성부(234)는, 단계 S115에서, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중, 생성 노드 결정부(233)로부터의 출력 라벨이 나타내는 노드 N'j가 갖는 시계열 패턴 모델(21)(도 4)에 기초하여, 인식 생성부(213)에 공급된 입력 데이터에 대한 출력 데이터의 추정치로서의 시계열 데이터를 생성하고, 단계 S116으로 진행하여, 그 시계열 데이터를 출력한다.
다음으로, 도 29의 데이터 처리 장치에서, 출력 데이터에 대한 제어 데이터(입력 데이터)를 추정하는 경우에는, 단계 S111에서, 그 출력 데이터가 도 29의 데이터 처리 장치에 입력된다.
데이터 처리 장치에 입력된 출력 데이터는 인식 생성부(213)의 스코어 계산부(231)에 공급된다.
스코어 계산부(231)는, 단계 S112에서, 자신에게 공급된 출력 데이터에 대하여, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 각 노드 N'j의 스코어를 계산하여 승자 노드 결정부(232)에 공급한다.
승자 노드 결정부(232)는, 단계 S113에서, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netout의 노드 중에서, 스코어 계산부(231)로부터의 스코어가 가장 높은 노드를 승자 노드 N'j로 결정하고, 그 승자 노드 N'j를 나타내는 출력 라벨을 생성 노드 결정부(233)에 공급한다.
생성 노드 결정부(233)는, 단계 S114에서, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중에서, 승자 노드 결정부(232)로부터의 출력 라벨이 나타내는 노드 N'j와의 결합 수치가 가장 강한 노드 Ni를 생성 노드로서 결정하고, 그 생성 노드 Ni를 나타내는 입력 라벨을 시계열 생성부(234)에 공급한다.
시계열 생성부(234)는, 단계 S115에서, 기억부(211)에 기억된 결합 네트워크를 구성하는 시계열 패턴 기억 네트워크 netin의 노드 중, 생성 노드 결정부(233)로부터의 입력 라벨이 나타내는 노드 Ni가 갖는 시계열 패턴 모델(21)에 기초하여, 인식 생성부(213)에 공급된 출력 데이터에 대한 제어 데이터(입력 데이터)의 추정치로서의 시계열 데이터를 생성하고, 단계 S116으로 진행하여, 그 시계열 데이터를 출력한다.
이상과 같이, 입력 데이터와 출력 데이터의 세트를 이용해서 결합 네트워크의 학습을 행하여 제어 대상을 순모델 및 역모델로 모델화함으로써, 제어 대상을 정밀도 좋게 표현하여, 고정밀도로 출력 데이터나 제어 데이터(입력 데이터)를 추 정하는 것이 가능하게 된다.
다음으로, 상술한 일련의 처리는 하드웨어에 의해 행할 수도 있고, 소프트웨어에 의해 행할 수도 있다. 일련의 처리를 소프트웨어에 의해서 행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 범용 컴퓨터 등에 인스톨된다.
따라서, 도 32는 상술한 일련의 처리를 실행하는 프로그램이 인스톨되는 컴퓨터의 일 실시 형태의 구성예를 도시하고 있다.
프로그램은, 컴퓨터에 내장되어 있는 기록 매체로서의 하드디스크(305)나 ROM(303)에 미리 기록해 둘 수 있다.
또한, 프로그램은, 플렉시블 디스크, CD-ROM(Compact Disc Read Only Memory), MO(Magneto Optical) 디스크, DVD(Digital Versatile Disc), 자기 디스크, 반도체 메모리 등의 리무버블 기록 매체(311)에, 일시적 혹은 영속적으로 저장(기록)해 둘 수 있다. 이러한 리무버블 기록 매체(311)는, 소위 패키지드 소프트웨어로서 제공될 수 있다.
또한, 프로그램은, 상술한 바와 같은 리무버블 기록 매체(311)로부터 컴퓨터에 인스톨하는 것 외에, 다운로드 사이트로부터 디지털 위성 방송용 인공위성을 통하여 컴퓨터에 무선으로 전송되거나, LAN(Local Area Network), 인터넷 등의 네트워크를 통하여 컴퓨터에 유선으로 전송되고, 컴퓨터에서는 이와 같이 하여 전송되어 오는 프로그램을 통신부(308)에서 수신하고, 내장하는 하드디스크(305)에 인스톨할 수 있다.
컴퓨터는 CPU(Central Processing Unit)(302)를 내장하고 있다. CPU(302)에 는 버스(301)를 통하여 입출력 인터페이스(310)가 접속되어 있고, CPU(302)는 입출력 인터페이스(310)를 통하여, 사용자에 의해서, 키보드나, 마우스, 마이크 등으로 구성되는 입력부(307)가 조작 등 됨으로써 명령이 입력되면, 이에 따라서, ROM(Read Only Memory)(303)에 저장되어 있는 프로그램을 실행한다. 또한, CPU(302)는 하드디스크(305)에 저장되어 있는 프로그램, 위성 혹은 네트워크로부터 전송되어 통신부(308)에서 수신되어서 하드디스크(305)에 인스톨된 프로그램, 또는 드라이브(309)에 장착된 리무버블 기록 매체(311)로부터 판독되어 하드디스크(305)에 인스톨된 프로그램을, RAM(Random Access Memory)(304)에 로드하여 실행한다. 이에 의해, CPU(302)는 상술한 플로우차트에서 행하고자 하였던 처리 혹은 상술한 블록도의 구성에 의해 행해지는 처리를 행한다. 그리고, CPU(302)는 그 처리 결과를, 필요에 따라, 예를 들면, 입출력 인터페이스(310)를 통하여 LCD(Liquid Crystal Display)나 스피커 등으로 구성되는 출력부(306)에서 출력하거나, 통신부(308)로부터 송신되고, 나아가서는, 하드디스크(305)에 기록 등을 하게 한다.
여기서, 본 명세서에서, 컴퓨터에 각종 처리를 행하게 하기 위한 프로그램을 기술하는 처리 단계는 반드시 플로우차트로서 기재된 순서를 따라 시계열로 처리할 필요는 없고, 병렬적 혹은 개별로 실행되는 처리(예를 들면, 병렬 처리 혹은 오브젝트에 의한 처리)도 포함하는 것이다.
또한, 프로그램은 하나의 컴퓨터에 의해 처리되는 것이어도 되고, 복수의 컴퓨터에 의해서 분산 처리되는 것이어도 된다. 또한, 프로그램은 원격의 컴퓨터에 전송되어 실행되는 것이어도 된다.
당업자는 부가된 특허청구범위 또는 그 균등물의 범주내에 따른 설계 조건 및 여러 팩터에 따라 발생할 수 있는 다양한 변경, 조합, 서브-조합 및 변경이 만들어질 수 있다는 것을 알 수 있다.
본 발명에 따르면, 시계열 데이터의 교사가 없는 학습, 그위에, 그 학습 결과를 이용한 시계열 데이터의 인식이나 생성을 용이하게 행할 수 있다.

Claims (36)

  1. 시계열의 데이터(time series data)를 학습하기 위한 학습 장치로서,
    각각의 노드가 상기 시계열 데이터의 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드를 포함하는 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로(self-organizing manner) 갱신하는 학습 수단
    을 포함하고,
    상기 학습 수단은,
    상기 노드의 상기 시계열 패턴 모델이 갱신될 때, 상기 시계열 패턴 모델에 대한 상기 시계열 데이터의 관측값의 영향의 정도를 나타내는, 상기 노드의 가중치를 결정하는 가중치 결정 수단;
    상기 시계열 패턴 기억 네트워크를 구성하는 복수의 노드 중, 상기 시계열 데이터의 관측값에 가장 부합하는 노드를 승자 노드로서 결정하는 승자 노드 결정 수단; 및
    상기 승자 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값에 기초하여 갱신하는 모델 갱신 수단
    을 더 포함하고,
    상기 모델 갱신 수단은, 상기 승자 노드의 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값과 상기 가중치에 기초하여 갱신하고,
    상기 가중치 결정 수단은 거리의 증가에 따라 상기 가중치가 감소하는, 상기 거리와 상기 가중치의 관계에 대응하여, 상기 노드의 가중치를 결정하고,
    상기 거리와 상기 가중치의 관계는 상기 시계열 패턴 모델의 갱신의 횟수가 증가함에 따라 상기 가중치의 변화율이 증가하는 것인, 학습 장치.
  2. 제1항에 있어서,
    상기 시계열 패턴 모델은, 상태 천이를 갖는 상태 천이 확률 모델 및 함수를 근사하는 함수 근사 모델 중 하나를 포함하는, 학습 장치.
  3. 제1항에 있어서,
    상기 시계열 패턴 모델은, HMM(Hidden Markov Model)을 포함하는, 학습 장치.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 가중치 결정 수단은, 상기 승자 노드로부터의 거리에 대응하여, 상기 노드에 대한 가중치를 결정하는, 학습 장치.
  8. 제7항에 있어서,
    상기 가중치 결정 수단은, 상기 승자 노드와의 결합 관계에 의해 결정되는 상기 거리에 대응하여, 상기 노드에 대한 가중치를 결정하는, 학습 장치.
  9. 제7항에 있어서,
    상기 가중치 결정 수단은, 상기 노드가 상기 시계열 데이터의 관측값에 부합한 정도에 기초하여 결정되는 상기 거리에 대응하여, 상기 노드에 대한 가중치를 결정하는, 학습 장치.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 각각의 노드가 시계열 데이터의 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드를 포함하는 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습 수단을 구비한 학습 장치에서의 시계열 데이터의 학습 방법으로서,
    상기 학습 수단은 가중치 결정 수단, 승자 노드 결정 수단 및 모델 갱신 수단을 포함하며,
    상기 가중치 결정 수단에 의해, 상기 노드의 상기 시계열 패턴 모델이 갱신될 때, 상기 시계열 패턴 모델에 대한 상기 시계열 데이터의 관측값의 영향의 정도를 나타내는 가중치가 거리의 증가에 따라 감소하는, 상기 거리와 상기 가중치의 관계에 대응하여, 상기 노드의 가중치를 결정하는 단계;
    상기 승자 노드 결정 수단에 의해, 상기 시계열 패턴 기억 네트워크를 구성하는 복수의 노드 중, 상기 시계열 데이터의 관측값에 가장 부합하는 노드를 승자 노드로서 결정하는 단계; 및
    상기 모델 갱신 수단에 의해, 상기 승자 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값에 기초하여 갱신하는 단계;
    를 포함하고,
    상기 갱신하는 단계에서는 상기 승자 노드의 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값과 상기 가중치에 기초하여 갱신하고,
    상기 거리와 상기 가중치의 관계는 상기 시계열 패턴 모델의 갱신의 횟수가 증가함에 따라 상기 가중치의 변화율이 증가하는 것인, 학습 방법.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 시계열 데이터를 학습하기 위한 학습 장치로서,
    각각의 노드가 상기 시계열 데이터의 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드를 포함하는 시계열 패턴 기억 네트워크를, 상기 시계열 데이터의 관측값에 기초하여, 자기 조직적으로 갱신하는 학습부
    를 포함하고,
    상기 학습부는,
    상기 노드의 상기 시계열 패턴 모델이 갱신될 때, 상기 시계열 패턴 모델에 대한 상기 시계열 데이터의 관측값의 영향의 정도를 나타내는, 상기 노드의 가중치를 결정하는 가중치 결정부;
    상기 시계열 패턴 기억 네트워크를 구성하는 복수의 노드 중, 상기 시계열 데이터의 관측값에 가장 부합하는 노드를 승자 노드로서 결정하는 승자 노드 결정부; 및
    상기 승자 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값에 기초하여 갱신하는 모델 갱신부
    를 더 포함하고,
    상기 모델 갱신부는, 상기 승자 노드의 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값과 상기 가중치에 기초하여 갱신하고,
    상기 가중치 결정부는 거리의 증가에 따라 상기 가중치가 감소하는, 상기 거리와 상기 가중치의 관계에 대응하여, 상기 노드의 가중치를 결정하고,
    상기 거리와 상기 가중치의 관계는 상기 시계열 패턴 모델의 갱신의 횟수가 증가함에 따라 상기 가중치의 변화율이 증가하는 것인, 학습 장치.
  33. 시계열 데이터의 관측값을 인식하는 인식 장치로서,
    각각의 노드가 상기 시계열 데이터의 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 시계열 패턴 기억 네트워크에서, 상기 시계열 데이터의 관측값에 가장 부합하는 노드를 승자 노드로서 결정하는 승자 노드 결정 수단;
    거리의 증가에 따라 가중치가 감소하는, 상기 거리와 상기 가중치의 관계에 대응하여, 상기 노드의 가중치를 결정하는 가중치 결정 수단;
    상기 승자 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값에 기초하여 갱신하는 모델 갱신 수단; 및
    상기 승자 노드를 나타내는 정보를, 상기 시계열 데이터의 관측값의 인식 결과로서 출력하는 출력 수단
    을 포함하고,
    상기 모델 갱신 수단은, 상기 승자 노드의 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값과 상기 가중치에 기초하여 갱신하고,
    상기 거리와 상기 가중치의 관계는 상기 시계열 패턴 모델의 갱신의 횟수가 증가함에 따라 상기 가중치의 변화율이 증가하는 것인, 인식 장치.
  34. 시계열 데이터를 생성하기 위한 생성 장치로서,
    각각의 노드가 상기 시계열 데이터의 시계열 패턴을 표현하는 시계열 패턴 모델을 갖는 복수의 노드로 구성되는 시계열 패턴 기억 네트워크에서, 외부로부터 입력되는 신호가 나타내는 노드를 결정하는 노드 결정 수단;
    상기 노드 결정 수단에 의해 결정된 노드의 상기 시계열 패턴 모델에 기초하여, 상기 시계열 데이터를 생성하는 생성 수단;
    거리의 증가에 따라 가중치가 감소하는, 상기 거리와 상기 가중치의 관계에 대응하여, 상기 노드의 가중치를 결정하는 가중치 결정 수단; 및
    상기 시계열 데이터의 관측값에 기초하여 승자 노드의 상기 시계열 패턴 모델을 갱신하는 모델 갱신 수단
    을 포함하고,
    상기 모델 갱신 수단은, 상기 승자 노드의 상기 시계열 패턴 모델과, 상기 승자 노드 이외의 노드의 상기 시계열 패턴 모델을, 상기 시계열 데이터의 관측값과 상기 가중치에 기초하여 갱신하고,
    상기 거리와 상기 가중치의 관계는 상기 시계열 패턴 모델의 갱신의 횟수가 증가함에 따라 상기 가중치의 변화율이 증가하는 것인, 생성 장치.
  35. 삭제
  36. 삭제
KR1020050118290A 2004-12-06 2005-12-06 데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치 KR101182965B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004353382A JP4639784B2 (ja) 2004-12-06 2004-12-06 学習装置および学習方法、並びにプログラム
JPJP-P-2004-00353382 2004-12-06

Publications (2)

Publication Number Publication Date
KR20060063752A KR20060063752A (ko) 2006-06-12
KR101182965B1 true KR101182965B1 (ko) 2012-09-21

Family

ID=36123926

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050118290A KR101182965B1 (ko) 2004-12-06 2005-12-06 데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치

Country Status (5)

Country Link
US (1) US7296005B2 (ko)
EP (1) EP1667107A1 (ko)
JP (1) JP4639784B2 (ko)
KR (1) KR101182965B1 (ko)
CN (1) CN1808414B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200015444A (ko) * 2017-07-05 2020-02-12 알리바바 그룹 홀딩 리미티드 위험 주소 식별 방법, 장치 및 전자 디바이스
KR20200082893A (ko) * 2018-12-31 2020-07-08 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법
KR20210073763A (ko) * 2019-12-11 2021-06-21 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4534769B2 (ja) * 2005-01-24 2010-09-01 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP4843987B2 (ja) * 2005-04-05 2011-12-21 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP4201012B2 (ja) 2006-04-06 2008-12-24 ソニー株式会社 データ処理装置、データ処理方法、およびプログラム
JP2007280054A (ja) * 2006-04-06 2007-10-25 Sony Corp 学習装置および学習方法、並びにプログラム
JP4169063B2 (ja) 2006-04-06 2008-10-22 ソニー株式会社 データ処理装置、データ処理方法、及びプログラム
JP5076138B2 (ja) * 2006-09-15 2012-11-21 国立大学法人佐賀大学 自己組織化マップを用いたパターン生成方法、そのプログラム及び装置
JP2008276290A (ja) * 2007-04-25 2008-11-13 Sony Corp データ処理装置、データ処理方法、及びプログラム
JP2009157119A (ja) * 2007-12-27 2009-07-16 Univ Of Ryukyus 音声単語自動獲得方法
WO2009114649A2 (en) 2008-03-12 2009-09-17 Aptima, Inc. Probabilistic decision making system and methods of use
JP4803212B2 (ja) 2008-05-28 2011-10-26 ソニー株式会社 データ処理装置、データ処理方法、及びプログラム
WO2009152459A1 (en) * 2008-06-12 2009-12-17 Numenta, Inc. Hierarchical temporal memory system with higher-order temporal pooling capability
WO2010019919A1 (en) * 2008-08-14 2010-02-18 University Of Toledo Multifunctional neural network system and uses thereof for glycemic forecasting
US8572071B2 (en) * 2008-12-19 2013-10-29 Rutgers, The State University Of New Jersey Systems and methods for data transformation using higher order learning
JP2011059816A (ja) * 2009-09-07 2011-03-24 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP2011059815A (ja) * 2009-09-07 2011-03-24 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP2011059817A (ja) * 2009-09-07 2011-03-24 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP5458791B2 (ja) * 2009-10-16 2014-04-02 トヨタ自動車株式会社 連想記憶装置、連想記憶方法、及びプログラム
JP5633734B2 (ja) * 2009-11-11 2014-12-03 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
US8490056B2 (en) * 2010-04-28 2013-07-16 International Business Machines Corporation Automatic identification of subroutines from test scripts
KR101672500B1 (ko) 2010-08-12 2016-11-03 삼성전자주식회사 시공간 구조 기반의 확률 그래프 모델 학습 장치 및 방법
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US20120109563A1 (en) * 2010-10-29 2012-05-03 President And Fellows Of Harvard College Method and apparatus for quantifying a best match between series of time uncertain measurements
CN102567397B (zh) * 2010-12-30 2014-08-06 高德软件有限公司 兴趣点、连锁店分店兴趣点关联标记的方法与装置
US10290221B2 (en) * 2012-04-27 2019-05-14 Aptima, Inc. Systems and methods to customize student instruction
US10552764B1 (en) 2012-04-27 2020-02-04 Aptima, Inc. Machine learning system for a training model of an adaptive trainer
US9311600B1 (en) 2012-06-03 2016-04-12 Mark Bishop Ring Method and system for mapping states and actions of an intelligent agent
WO2014055718A1 (en) 2012-10-04 2014-04-10 Aptima, Inc. Clinical support systems and methods
US10438156B2 (en) 2013-03-13 2019-10-08 Aptima, Inc. Systems and methods to provide training guidance
CN103246963B (zh) * 2013-05-24 2016-02-24 上海和伍信息技术有限公司 基于物联网的员工培训系统
US10867597B2 (en) * 2013-09-02 2020-12-15 Microsoft Technology Licensing, Llc Assignment of semantic labels to a sequence of words using neural network architectures
US9613619B2 (en) * 2013-10-30 2017-04-04 Genesys Telecommunications Laboratories, Inc. Predicting recognition quality of a phrase in automatic speech recognition systems
US20150228277A1 (en) * 2014-02-11 2015-08-13 Malaspina Labs (Barbados), Inc. Voiced Sound Pattern Detection
US10127901B2 (en) 2014-06-13 2018-11-13 Microsoft Technology Licensing, Llc Hyper-structure recurrent neural networks for text-to-speech
US20160179992A1 (en) * 2014-12-18 2016-06-23 Dassault Systèmes Simulia Corp. Interactive 3D Experiences on the Basis of Data
US10360498B2 (en) * 2014-12-18 2019-07-23 Facebook, Inc. Unsupervised training sets for content classification
WO2017027432A1 (en) 2015-08-07 2017-02-16 Aptima, Inc. Systems and methods to support medical therapy decisions
JP6611679B2 (ja) * 2016-06-30 2019-11-27 株式会社日立製作所 データ生成方法及び計算機システム
JP6814981B2 (ja) * 2016-07-21 2021-01-20 パナソニックIpマネジメント株式会社 学習装置、識別装置、学習識別システム、及び、プログラム
US20180113951A1 (en) * 2016-10-20 2018-04-26 Micron Technology, Inc. Graph traversal using automata processor
US11100388B2 (en) 2016-11-22 2021-08-24 International Business Machines Corporation Learning apparatus and method for learning a model corresponding to real number time-series input data
US10783801B1 (en) 2016-12-21 2020-09-22 Aptima, Inc. Simulation based training system for measurement of team cognitive load to automatically customize simulation content
US11615285B2 (en) 2017-01-06 2023-03-28 Ecole Polytechnique Federale De Lausanne (Epfl) Generating and identifying functional subnetworks within structural networks
US10579689B2 (en) * 2017-02-08 2020-03-03 International Business Machines Corporation Visualization and augmentation of human knowledge construction during material consumption
CN110326004B (zh) * 2017-02-24 2023-06-30 谷歌有限责任公司 使用路径一致性学习训练策略神经网络
KR102068182B1 (ko) 2017-04-21 2020-01-20 엘지전자 주식회사 음성 인식 장치, 및 음성 인식 시스템
CN107239628A (zh) * 2017-06-15 2017-10-10 清华大学 一种基于动态时序图的不确定性机车仿真模型系统构建方法
KR102110319B1 (ko) 2018-05-16 2020-05-13 두산중공업 주식회사 학습 데이터 생성 시스템
US11893471B2 (en) 2018-06-11 2024-02-06 Inait Sa Encoding and decoding information and artificial neural networks
US11663478B2 (en) 2018-06-11 2023-05-30 Inait Sa Characterizing activity in a recurrent artificial neural network
US11652603B2 (en) 2019-03-18 2023-05-16 Inait Sa Homomorphic encryption
US11569978B2 (en) 2019-03-18 2023-01-31 Inait Sa Encrypting and decrypting information
DE102019107576A1 (de) * 2019-03-25 2020-10-01 Phoenix Contact Gmbh & Co. Kg Kombinatorik von digitalen Ausgangsdaten zur autonomen Ermittlung von Prozesszyklen und von einzelnen Prozessschritten
US20200364503A1 (en) * 2019-05-15 2020-11-19 International Business Machines Corporation Accurate ensemble by mutating neural network parameters
CN110313918A (zh) * 2019-07-17 2019-10-11 军事科学院系统工程研究院军需工程技术研究所 一种基于足底压力的步态相位识别方法及系统
US10656923B1 (en) 2019-07-31 2020-05-19 Capital One Services, Llc Systems for determining regulatory compliance of smart contracts
US11816553B2 (en) 2019-12-11 2023-11-14 Inait Sa Output from a recurrent neural network
US11580401B2 (en) 2019-12-11 2023-02-14 Inait Sa Distance metrics and clustering in recurrent neural networks
US11797827B2 (en) * 2019-12-11 2023-10-24 Inait Sa Input into a neural network
US11651210B2 (en) 2019-12-11 2023-05-16 Inait Sa Interpreting and improving the processing results of recurrent neural networks
CN113807522A (zh) * 2021-03-03 2021-12-17 京东科技控股股份有限公司 贝叶斯网络结构的生成方法、装置、电子设备和存储介质
CN114268323B (zh) * 2021-12-24 2023-07-07 成都索贝数码科技股份有限公司 支持行存的数据压缩编码方法、装置及时序数据库
CN116028662B (zh) * 2023-02-15 2023-06-13 武汉理工大学三亚科教创新园 基于无监督交互式对齐的海洋遥感图像音频检索方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2964507B2 (ja) * 1989-12-12 1999-10-18 松下電器産業株式会社 Hmm装置
JP2558943B2 (ja) 1990-10-19 1996-11-27 富士通株式会社 ニューラルネットワークを用いた人間の動作自動認識装置
JP3088171B2 (ja) * 1991-02-12 2000-09-18 三菱電機株式会社 自己組織型パタ−ン分類システム及び分類方法
JPH06231106A (ja) 1993-01-29 1994-08-19 Hitachi Ltd リカレント型ニューラルネットワーク学習方法及び装置
US5724487A (en) * 1995-07-07 1998-03-03 Streit; Roy L. Neural network for maximum likelihood classification with supervised and unsupervised training capability
JPH11122114A (ja) * 1997-10-16 1999-04-30 Sony Corp コードブック作成装置およびコードブック作成方法、並びにベクトル量子化装置およびベクトル量子化方法
DE69941499D1 (de) * 1998-10-09 2009-11-12 Sony Corp Vorrichtungen und Verfahren zum Lernen und Anwenden eines Abstand-Transition-Modelles
JP2002311988A (ja) 2001-04-11 2002-10-25 Sony Corp プログラム、記録媒体、情報処理方法、および情報処理装置
WO2003012713A1 (en) * 2001-07-30 2003-02-13 Compudigm International Limited Data visualisation system and method
US6965885B2 (en) * 2002-01-22 2005-11-15 Koninklijke Philips Electronics N.V. Self-organizing feature map with improved performance by non-monotonic variation of the learning rate
JP2004318700A (ja) * 2003-04-18 2004-11-11 Tsutomu Miyoshi 自己組織化ネットワークの特徴マップ形成制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김현돈 외 1명. 비교사 학습과 교사 학습 알고리즘을 결합한 구조 적응형 자기구성 지도. 한국정보과학회, 1999년12월.*

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200015444A (ko) * 2017-07-05 2020-02-12 알리바바 그룹 홀딩 리미티드 위험 주소 식별 방법, 장치 및 전자 디바이스
KR102244417B1 (ko) * 2017-07-05 2021-04-28 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 위험 주소 식별 방법, 장치 및 전자 디바이스
KR20200082893A (ko) * 2018-12-31 2020-07-08 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법
KR102501530B1 (ko) 2018-12-31 2023-02-21 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법
KR20210073763A (ko) * 2019-12-11 2021-06-21 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법
KR102501525B1 (ko) 2019-12-11 2023-02-22 한국전자통신연구원 시계열 데이터 처리 장치 및 이의 동작 방법

Also Published As

Publication number Publication date
EP1667107A1 (en) 2006-06-07
CN1808414B (zh) 2010-05-26
JP2006162898A (ja) 2006-06-22
JP4639784B2 (ja) 2011-02-23
US7296005B2 (en) 2007-11-13
CN1808414A (zh) 2006-07-26
US20060184471A1 (en) 2006-08-17
KR20060063752A (ko) 2006-06-12

Similar Documents

Publication Publication Date Title
KR101182965B1 (ko) 데이터 학습용 방법 및 장치, 데이터 인식용 장치, 및 데이터 생성용 장치
JP4201012B2 (ja) データ処理装置、データ処理方法、およびプログラム
US7499892B2 (en) Information processing apparatus, information processing method, and program
US11610130B2 (en) Knowledge sharing for machine learning systems
JP2006285899A (ja) 学習装置および学習方法、生成装置および生成方法、並びにプログラム
US11915152B2 (en) Learning coach for machine learning system
Bourlard et al. Connectionist speech recognition: a hybrid approach
Morgan et al. Continuous speech recognition
JP4169063B2 (ja) データ処理装置、データ処理方法、及びプログラム
Hifny et al. Speech recognition using augmented conditional random fields
JP6509694B2 (ja) 学習装置、音声検出装置、学習方法およびプログラム
Morgan et al. An introduction to hybrid HMM/connectionist continuous speech recognition
Swietojanski et al. Structured output layer with auxiliary targets for context-dependent acoustic modelling
JP4534769B2 (ja) 情報処理装置、情報処理方法、およびプログラム
McDermott et al. A derivation of minimum classification error from the theoretical classification risk using Parzen estimation
Crammer Efficient online learning with individual learning-rates for phoneme sequence recognition
JP2007280057A (ja) データ処理装置、データ処理方法、およびプログラム
JP2007280007A (ja) データ処理装置、データ処理方法、およびプログラム
JP2006285881A (ja) 学習装置、学習方法、およびプログラム
JP2007280009A (ja) データ処理装置、データ処理方法、およびプログラム
JP2007280056A (ja) データ処理装置、データ処理方法、およびプログラム
JP2008276290A (ja) データ処理装置、データ処理方法、及びプログラム
LAYOUSS A critical examination of deep learningapproaches to automated speech recognition
JP2007280008A (ja) データ処理装置、データ処理方法、およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee