KR20110112822A - 데이터 검색 디바이스 - Google Patents

데이터 검색 디바이스 Download PDF

Info

Publication number
KR20110112822A
KR20110112822A KR20117017385A KR20117017385A KR20110112822A KR 20110112822 A KR20110112822 A KR 20110112822A KR 20117017385 A KR20117017385 A KR 20117017385A KR 20117017385 A KR20117017385 A KR 20117017385A KR 20110112822 A KR20110112822 A KR 20110112822A
Authority
KR
South Korea
Prior art keywords
data
similarity
search
correspondence table
skip
Prior art date
Application number
KR20117017385A
Other languages
English (en)
Other versions
KR101277419B1 (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 KR20110112822A publication Critical patent/KR20110112822A/ko
Application granted granted Critical
Publication of KR101277419B1 publication Critical patent/KR101277419B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/71Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7847Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content

Abstract

데이터 검색 디바이스는, 검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해 검색 데이터와의 유사도가 미리결정됨 임계값과의 비교에서 미리결정된 관계를 가질 가능성을 갖는 데이터의 피스들 중에서 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 정보를 기록하는 제 1 스킵 대응표를 포함한다. 데이터 검색 디바이스는 또한, 검색 타겟 데이터 시리즈들 중에서 검색 데이터와의 유사도가 임계값 이하인 데이터를 검색할 때, 제 1 스킵 대응표를 이용하여 검색 데이터와의 유사도의 계산이 필요한 검색 타겟 데이터 시리즈들 중의 데이터를 선택한다.

Description

데이터 검색 디바이스{DATA RETRIEVAL DEVICE}
본 발명은 데이터 검색 디바이스, 특히 검색 타겟 데이터 시리즈 중에서 검색 데이터와 유사한 데이터를 검색하기 위한 데이터 검색 디바이스에 관한 것이다.
저장 디바이스에 저장된 비디오 데이터 및 오디오 데이터를 포함하는 검색 타겟 데이터 시리즈 중에서, 검색 데이터와 유사한 데이터를 검색하는 통상적인 방법은, 검색 데이터와 검색 타겟 데이터 시리즈의 모든 데이터 피스들 간의 유사도를 계산하는 단계, 및 임계값과 유사도를 비교하는 단계를 포함한다. 그러나, 일반적으로 데이터 피스들 간의 유사도의 계산량이 많기 때문에, 검색 데이터와 검색 타겟 데이터 시리즈의 모든 데이터 피스들 간의 유사도를 계산해야 하는 상기의 방법은 검색을 위해 장 시간을 필요로 한다. 이와 같이, 이런 종류의 검색의 고속화를 위한 몇몇 방법이 제안되고 있다.
예를 들어, 특허 문헌 1 은, 배경 기술의 섹션에서, 유사도가 소정 임계를 초과하는 경우 유사도 계산이 종료되는 그러한 방식으로 고속으로 검색을 수행하는 방법을 설명한다. 특허 문헌 1 은 또한, 데이터 시리즈들의 일부분과 다른 1 개 또는 복수의 일부분과의 유사도를 자기 유사도표로서 계산하고, 이 표를 이용하여 검색을 고속으로 수행하는 방법을 제안하고 있다.
선행 기술 문헌
특허 문헌
특허 문헌 1 : 일본 미심사 공개 특허 제 2005-62555 호
도 17(a) 에 도시된 바와 같이, 검색 타겟 데이터 시리즈는 yj,yj+1,yj+2,yj+3,yj+4,yj+5, 등으로 구성된 데이터의 시리즈인 것으로 가정한다. 이 경우, 도 17(b) 에 도시된 바와 같이, 예를 들어 선두의 데이터 yj 의 자기 유사도표는 데이터 yj 와 데이터 yj +1 간의 유사도 d(yj, yj +1), 데이터 yj 와 데이터 yj +2 간의 유사도 d(yj, yj +2), 데이터 yj 와 데이터 yj +3 간의 유사도 d(yj, yj +3), 데이터 yj 와 데이터 yj +4 간의 유사도 d(yj, yj +4), 데이터 yj 와 데이터 yj +5 간의 유사도 d(yj, yj +5) 를 포함하는 표이다. 여기서, 유사도의 값은 0 이상의 양의 값을 취하고, 값이 작아짐에 따라 유사도는 더 높아진다.
검색 타겟 데이터 시리즈들 중에서 검색 데이터 xi 가 임계값 th 이하인 데이터를 검색하는 경우에, 자기 유사도표를 이용하는 검색이 다음의 절차들로 수행된다.
먼저, 검색 데이터 xi 와 데이터 yj 간의 유사도가 계산된다. 이 획득된 유사도가 D(xi, yj) 라고 가정하면, 이하의 식 1 을 이용하여 데이터 yj 가 검색 데이터 xi 의 유사 데이터인지 또는 비유사 데이터인지 여부가 결정된다. 이와 같이, 유사도 D(xi, yj) 가 임계값 th 이하이면, 데이터 yj 가 유사 데이터로서 출력되는 한편, 유사도가 임계값 th 보다 크면 데이터 yj 는 비유사 데이터로 간주된다.
[식 1]
D(xi, yj)≤th
데이터 yj 를 비유사 데이터로 간주하면, 검색 데이터 xi 와의 유사도 계산이 수행되는 다음의 데이터는 이하의 방식으로 결정된다. 먼저, 데이터 yj 와 그 직후의 데이터 yj +1 간의 유사도 d(yj, yj +1) 는 데이터 yj 의 자기 유사도표로부터 획득되고, 유사도 D(xi, yj) 로부터 감산된다. 다음에, 이 감산된 결과 [D(xi, yj)-d(yj, yj +1)] 은 임계값 th 과 비교되고, [D(xi, yj)-d(yj, yj +1)≤th ] 이면, 데이터 yj +1 는 검색 데이터 xi 와의 유사도 계산이 다음에 수행되는 데이터로 결정된다. 한편, [D(xi, yj)-d(yj, yj +1)>th ] 이면, 데이터 yj +1 은 유사도 계산의 타겟으로부터 제외되는데, 그 이유는 데이터 yj +1 와 검색 데이터 xi 간의 유사도가 계산되더라도, 그 계산 결과는 임계값 th 이하가 되는 것이 논리적으로 불가능하기 때문이다. 데이터 yj +1 이 유사도 계산의 타겟으로부터 제외되면, 데이터 yj+1 에 수행된 것과 동일한 결정이 후속의 데이터 피스들에 대해 차례로 반복적으로 수행되고, 이에 의해 검색 데이터 xi 와의 유사도 계산에 이용될 데이터가 결정된다.
전술한 바와 같이 자기 유사도표를 이용함으로써, 검색 데이터 xi 와의 유사도가 계산되어야 하는 데이터의 수를 감소시키고, 이에 의해 더 고속으로 검색을 수행하는 것이 가능하다.
그러나, 유사도 계산에 이용될 데이터가 결정될 때까지, 데이터 yj 의 후속의 데이터의 각 피스들에 대해 차례로 유사도의 감산 및 임계값 결정의 프로세스를 수행할 필요가 있고, 이는 한층 더 고속화의 장해가 된다.
본 발명의 목적은, 검색 타겟 데이터 시리즈들 중에서 검색 데이터와의 유사도가 미리결정된 임계값 이하인 데이터를 고속으로 검색할 수 있는 데이터 검색 디바이스를 제공하는 것이다.
본 발명의 일 양태에 따르면, 데이터 검색 디바이스는, 검색 타겟 데이터 시리즈에서의 각 데이터 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 검색 데이터와의 유사도가 미리결정된 임계값과의 비교에서 미리결정된 관계를 가질 가능성을 갖는 데이터 피스들 중에서 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 정보를 기록하는 제 1 스킵 대응표; 및 검색 타겟 데이터 시리즈 중에서 검색 데이터와의 유사도가 임계값 이하인 데이터를 검색할 때, 제 1 스킵 대응표를 이용하여, 검색 데이터와의 유사도의 계산이 필요한 검색 타겟 데이터 시리즈들에서 데이터를 선택하는 제어 유닛을 포함한다.
본 발명에 따르면, 검색 타겟 데이터 시리즈 중에서, 검색 데이터와의 유사도가 임계값 이하인 데이터를 고속으로 검색할 수 있다.
도 1 은 본 발명의 제 1 실시형태의 블록도이다.
도 2 는 본 발명의 제 1 실시형태의 형태에 따른 제 1 스킵 대응표 생성부에 의해 수행된 프로세스 예를 나타내는 흐름도이다.
도 3 은 본 발명의 제 1 실시형태에 따른 제 1 스킵 대응표 생성부에 의해 이용될 내부 테이블의 구성예, 및 검색 타겟 데이터 시리즈들의 예를 나타낸다.
도 4 는 본 발명의 제 1 실시형태에 따른 제 1 스킵 대응표 생성부에 의해 이용될 내부 테이블의 특정예를 나타낸다.
도 5 는 본 발명의 제 1 실시형태에 따른 제 1 스킵 대응표의 특정예를 나타낸다.
도 6 은 본 발명의 제 1 실시형태에 따른 제 1 스팁 대응표의 다른 특정예를 나타낸다.
도 7 은 본 발명의 제 1 실시형태에 따른 제어부에 의해 수행된 프로세스 예를 나타내는 흐름도이다.
도 8 은 본 발명의 제 2 실시형태의 블록도이다.
도 9 는 본 발명의 제 2 실시형태에 따른 제 2 스킵 대응표 생성부에 의해 수행된 프로세스 예를 나타내는 흐름도이다.
도 10 은 본 발명의 제 2 실시형태에 따른 제 2 스킵 대응표 생성부에 의해 이용될 내부 테이블의 구성예 및 검색 타겟 데이터 시리즈의 예를 나타낸다.
도 11 은 본 발명의 제 2 실시형태에 따른 제 2 스킵 대응표 생성부에 의해 이용될 내부 테이블의 특정예를 나타낸다.
도 12 는 본 발명의 제 2 실시형태에 따른 제 2 스킵 대응표의 특정예를 나타낸다.
도 13 은 본 발명의 제 2 실시형태에 따른 제 2 스킵 대응표의 다른 특정예를 나타낸다.
도 14 는 본 발명의 제 2 실시형태에 따른 제어부에 의해 수행된 프로세스 예를 나타내는 흐름도이다.
도 15 는 본 발명의 제 3 실시형태의 블록도이다.
도 16 은 본 발명의 제 3 실시형태에 따른 제어부에 의해 수행된 프로세스 예를 나타내는 흐름도이다.
도 17 은 자기 유사도표의 예를 나타낸다.
[제 1 실시형태]
도 1 을 참조하면, 본 발명의 제 1 실시형태에 따른 데이터 검색 디바이스는, 유사도 계산부 (110), 제어부 (120), 제 1 스킵 대응표 생성부 (130), 검색 타겟 데이터 시리즈 저장부 (140), 및 제 1 스킵 대응표 저장부 (150) 를 포함한다.
검색 타겟 데이터 시리즈 저장부 (140) 는 하나 이상의 검색 타겟 데이터 시리즈들을 저장한다. 하나의 검색 타겟 데이터 시리즈는 복수의 데이터 열 (string) 들로 구성된다. 데이터 검색 디바이스 (100) 가 예를 들어 동화상 (moving image) 검색 디바이스인 경우, 검색 타겟 데이터 시리즈는 동화상들의 연속하는 프레임 화상들 또는 프레임 화상들의 특징 벡터들이 시간 순서로 배열되는 시간-시리즈 신호에 대응하고, 하나의 데이터 피스는 그것의 하나의 프레임 화상 또는 특징 벡터에 대응한다. 본 발명의 데이터 검색 디바이스는 동화상의 검색에 적용 가능할 뿐만 아니라, 오디오 검색과 같은 다양한 유형의 검색에 적용 가능하다. 그러나, 이하의 설명에서, 설명의 편의상, 검색 타겟 데이터 시리즈는, 동화상들의 연속하는 프레임 화상들의 특징 벡터들이 시간 순서로 배열되는 신호인 것으로 가정된다.
제 1 스킵 대응표 생성부 (130) 는, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈에서의 각각의 데이터 피스의 제 1 스킵 대응표를 생성하는 수단이다. 데이터 피스의 제 1 스킵 대응표는, 이러한 데이터와 검색 데이터 간의 유사도가 취할 수도 있는 범위들 각각에 대해, 검색 데이터와의 유사도가 미리결정된 임계 th 이하의 범위에서 존재할 수도 있는 데이터 중에서, 이러한 데이터 후에 첫 번재로 나타나는 데이터를 지정하기 위한 정보를 포함하는 표를 의미한다.
제 1 스킵 대응표 저장부 (150) 는, 제 1 스킵 대응표 생성부 (130) 에 의해 생성된 제 1 스킵 대응표를 저장하는 수단이다. 제 1 스킵 대응표는, 그 표에 대응하는 데이터가 명확하게 구별되는 그러한 방식으로 검색 타겟 데이터 시리즈들 중의 데이터와 연관되어 제 1 스킵 대응표 저장부 (150) 에 저장된다.
유사도 계산부 (110) 는, 검색 데이터와 검색 타겟 데이터 시리즈 중의 데이터 간의 유사도를 계산하는 수단이다. 검색 데이터는 또한, 복수의 데이터의 열들로 구성되는 데이터 열 중의 데이터 피스일 수도 있다. 본 실시형태에서, 검색 타겟 데이터 시리즈들 중의 각 데이터는 특징 벡터이며, 검색 데이터도 특징 벡터이다. 유사도 계산부 (110) 는, 벡터들 간의 거리 (예를 들어, 해밍 (hamming) 거리, 유클리드 거리, 또는 유클리드 거리의 제곱) 를 유사도로서 계산한다. 이 경우, 유사도의 값이 0 에 가까울수록, 벡터들은 보다 유사하다. 본 발명에서, 유사도의 임의의 스케일이 이용될 수도 있고, 전술된 방법들 외의 계산 방법에 의해 유사도를 계산하는 것이 물론 가능하다.
제어부 (120) 는 전체 데이터 검색 디바이스 (100) 를 제어하는 수단이다. 데이터 검색 디바이스 (100) 의 외부로부터 검색 데이터가 입력될 때, 제어부 (120) 는 유사도 계산부 (110) 를 제어하여 검색 데이터와 검색 타겟 데이터 시리즈들 중의 데이터 간의 유사도를 계산하고, 그 계산 결과를 미리결정된 임계값 th 와 비교하며, 이에 의해 이러한 데이터가 검색 데이터와 유사한 데이터인지 아닌지 여부를 결정한다. 데이터가 검색 데이터와 유사하면, 제어부 (120) 는 그 데이터를 검색 결과로서 출력하고, 다음 데이터에 대해 동일한 프로세싱을 반복한다. 반대로, 데이터가 검색 데이터와 유사하지 않으면, 제어부 (120) 는 데이터와 검색 데이터 간의 유사도 및 데이터의 제 1 스킵 대응표에 따라, 검색 데이터와의 유사도가 다음에 계산되는 검색 타겟 데이터 시리즈들 중의 데이터를 결정하고, 결정된 데이터에 대해 동일한 프로세싱을 반복한다.
다음으로, 본 발명의 실시형태에 따른 데이터 검색 디바이스 (100) 의 동작을 설명한다.
데이터 검색 디바이스 (100) 의 동작은 실제 데이터 검색 동작의 실행 이전에 수행되는 제 1 스킵 대응표 생성 동작, 및 생성된 제 1 스킵 대응표를 이용하는 데이터 검색 동작으로 분류된다.
(1) 제 1 스킵 대응표 생성 동작
제 1 스킵 대응표 생성부 (130) 는, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈들 중의 각 데이터에 대해, 도 2 의 흐름도에 도시된 흐름에 따라 그 데이터의 제 1 스킵 대응표를 생성한다.
먼저 제 1 스킵 대응표 생성부 (130) 는 제 1 스킵 대응표를 생성하기 위해 검색 타겟 데이터 시리즈들 중의 데이터 피스에 주목한다 (단계 S101). 본 설명에서, 설명의 편의상, 검색 타겟 데이터 시리즈는 도 3(a) 에 도시된 바와 같이, yj+1, yj +2, yj +3, yj +4, yj +5, 등으로 구성된 데이터 시리즈들 (본 예에서, n 차원의 특징 벡터) 이고, 선두의 데이터 yj 에 주목되는 것으로 가정된다.
다음으로, 제 1 스킵 대응표 생성부 (130) 는, 주목된 데이터 yj 와 후속의 m 개의 데이터 피스들 yj +1, yj +2,…, yj +m 간의 유사도 d(yj, yj +1),d(yj, yj +2),…,d(yj, yj+m) 를 계산하고, 그 계산 결과를 내부 테이블에 저장한다 (단계 S102). 유사도를 계산하기 위한 후속 데이터의 수 m 은 임의적이다. 후속 데이터의 수 m 이 더 크면, 검색 데이터와의 유사도 계산이 수행되는 다수의 데이터를 감소시킬 가능성은 있지만, 스킵 대응표에 필요한 저장 용량은 증가된다. 이와 같이, m 의 값은 양자를 고려하여 미리 결정된다.
도 3(b) 는 제 1 스킵 대응표 생성부 (130) 에 의해 제 1 스킵 대응표를 생성하는 프로세스에서 이용될 내부 테이블의 예를 나타낸다. 내부 테이블은 최대 m 개의 엔트리 수로 구성되고, 엔트리들 각각은 후속 데이터, 유사도, 최소 값, 스킵 가능 조건, 및 연속 스킵 가능 조건을 포함하는 5 항목으로부터 구성된다. 단계 S102 에서, 제 1 스킵 대응표 생성부 (130) 는, 내부 테이블의 각 엔트리에서, 후속 데이터의 항목에 yj +1, yj +2,…, yj +m 을 설정하고, 유사도의 항목에 데이터 yj 와의 유사도 d(yj, yj +1),d(yj, yj +2),…,d(yj, yj+m) 를 설정한다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 1 스킵 대응표 생성부 (130) 는 검색 데이터와 데이터 yj 간의 유사도 D(x, yj), 및 데이터 yj 와 후속 데이터 간의 유사도를 이용하여 검색 데이터와의 유사도의 최소 값을 계산하고, 이 값을 내부 테이블의 최소 값의 항목으로 설정한다 (단계 S103). 예를 들어, 후속 데이터 yj +1 의 경우, 데이터 yj 와의 유사도가 d(yj, yj +1) 이고 검색 데이터와의 유사도가 D(x,yj) 이기 때문에, 검색 데이터와 후속 데이터 yj +1 의 유사도의 최소 값은 [D(x,yj)-d(yj, yj +1)] 이다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 1 스킵 대응표 생성부 (130) 는, 검색 데이터와의 유사도의 최소 값 및 별도로 제공되는 임계값 th 를 이용하여, 검색 데이터와의 유사도가 임계값 이하가 될 가능성이 없는 (검색 데이터와 유사할 가능성이 없는) 데이터 yj 와 검색 데이터 간의 유사도 범위의 하한을 계산하고, 이 값을 내부 테이블의 스킵 가능 조건의 항목으로 설정한다 (단계 S104). 예를 들어, 후속 데이터 yj +1 의 경우, 최소 값 [D(x,yj)-d(yj, yj +1)] 조차도 임계값 th 보다 크면 데이터는 검색 데이터와 유사할 가능성이 없기 때문에 식 1 에 따라 [D(x,yj)>th + d(yj, yj +1)] 이 스킵 가능 조건으로 설정된다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 1 스킵 대응표 생성부 (130) 는 자기 데이터 (self data) 및 자기 데이터에 선행하는 다른 후속 데이터의 스킵 가능 조건으로 주어지는 유사도의 하한의 최대 값을 계산하고, 이 값을 내부 테이블의 연속 스킵 가능 조건의 항목으로 설정한다 (단계 S105).
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건에 따라, 제 1 스킵 대응표 생성부 (130) 는 주목된 데이터 yj 의 제 1 스킵 대응표를 생성하고, 이 표를 제 1 스킵 대응표 저장부 (150) 에 저장한다 (단계 S106). 구체적으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어지는 유사도들의 하한들 중에서, 제 1 스킵 대응표 생성부 (130) 는 가장 작은 값을 갖는 하한이 하한치로 설정되고 두 번째로 가장 작은 값을 갖는 하한이 상한치로 설정되는 제 1 유사도 범위를 생성하고, 주목된 데이터 yj 와 검색 데이터 간의 유사도가 이 제 1 유사도 범위를 만족하는 경우의 스킵 데스티네이션 (skip destination) 데이터로서, 제 1 유사도 범위의 상한치와 동일한 연속 스킵 가능 조건을 갖는 후속 데이터 중 마지막 데이터를 설정한다. 다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어지는 유사도들의 하한들 중에서, 제 1 스킵 대응표 생성부 (130) 는 두 번째로 가장 작은 값을 갖는 하한이 하한치로 설정되고 세 번째로 가장 작은 값을 갖는 하한이 상한치로 설정되는 제 2 유사도 범위를 생성하고, 주목된 데이터 yj 와 검색 데이터 간의 유사도가 제 2 유사도 범위를 만족하는 경우의 스킵 데스티네이션 데이터로서, 제 2 유사도 범위의 상한치와 동일한 연속 스킵 가능 조건을 갖는 후속 데이터 중 마지막 데이터를 설정한다. 제 1 스킵 대응표 생성부 (130) 는, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어진 유사도들의 하한들 중에서 최대 값이 하한치로 설정되는 유사도 범위를 생성할 때까지 동일한 프로세싱을 반복한다.
도 4 는 데이터 yj 의 제 1 스킵 대응표를 생성하는 프로세스에서 이용된 내부 테이블의 특정 예를 나타내고, 도 5 는 데이터 yj 의 제 1 스킵 대응표의 특정 예를 나타낸다. 이 예에서, 임계값 th 는 50 이고, 수 m 은 13 이다.
예를 들어, 도 4 의 내부 테이블에서, 후속 데이터 yj +3 의 엔트리는 데이터 yj 와의 유사도가 12, 검색 데이터와의 유사도의 최소 값이 [D(x,yj)-12], 스킵 가능 조건이 [D(x,yj)>62], 및 연속 스킵 가능 조건이 [D(x,yj)>64] 인 것을 나타낸다. 후속 데이터 yj +3 의 연속 스킵 가능 조건이 [D(x,yj)>62] 의 스킵 가능 조건이 아니고 [D(x,yj)>64] 인 이유는 자기 데이터 yj +3 에 선행하는 데이터 yj+2 의 스킵 가능 조건이 [D(x,yj)>64] 이기 때문이다.
또한, 도 5 에서, 데이터 yj 의 제 1 스킵 대응표에서 첫 번째 엔트리는, 데이터 yj 과 검색 데이터 간의 유사도가 60 보다 크고 64 이하이면, 검색 타겟 데이터와의 유사도가 계산된 다음의 데이터는 데이터 yj +2 인 것을 나타낸다. 이 첫 번째 엔트리는, 도 4 에 도시된 내부 테이블에서 후속 데이터 yj +1 및 yj +2 의 연속 스킵 가능 조건으로부터 생성된 데이터이다.
또한, 예를 들어 도 5 에 도시된 데이터 yj 의 제 1 스킵 대응표에서의 두 번째 엔트리는, 데이터 yj 와 검색 데이터 간의 유사도가 64 보다 크고 67 이하이면, 검색 타겟 데이터와의 유사도가 계산되는 다음의 데이터는 데이터 yj +5 인 것을 나타낸다. 이 두 번째 엔트리는, 도 4 에 도시된 내부 테이블에서 후속 데이터 yj +2 내지 yj +5 의 연속 스킵 가능 조건으로부터 생성된 데이터이다.
제 1 스킵 대응표 생성부 (130) 는, 데이터 yj 에 대한 절차와 동일한 절차에 따라, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 데이터 yj 이외의 데이터의 제 1 스킵 대응표를 생성한다. 그러나, 검색 타겟 데이터 시리즈의 마지막 데이터에 후속하는 데이터가 존재하지 않기 때문에, 제 1 스킵 대응표는 마지막 데이터에 대해 생성되지 않는다. 또한, 마지막 데이터를 제외한 모든 데이터의 제 1 스킵 대응표를 생성하는 것이 아니라, 미리결정된 일부의 데이터에 대해서만 제 1 스킵 대응표를 생성하는 것이 가능하다. 일부의 데이터의 예들로는, 짝수 번째의 데이터, 홀수 번째의 데이터, p(>2) 개의 데이터 등이 있다.
또한, 제 1 스킵 대응표 생성부 (130) 는, 도 2 의 단계 S106 에서 생성된 제 1 스킵 대응표 내의 연속하는 복수의 엔트리들을 하나의 엔트리로 통합하는 프로세스를 수행하여, 이에 의해 제 1 스킵 대응표 내의 엔트리들의 수를 감소시킬 수도 있다. 연속하는 복수의 엔트리를 통합함으로써 형성된 엔트리는, 통합 전의 복수의 엔트리의 유사도 범위의 하한의 최소 값이 하한치이고, 그 유사도 범위의 상한의 최대 값이 상한치인 유사도 범위를 갖고, 통합 전의 복수의 엔트리들의 스킵 데스티네이션 데이터 중 선두의 데이터인 스킵 데스티네이션 데이터를 갖는다. 예를 들어, 도 5 의 제 1 스킵 대응표에서 다섯 번째와 여섯 번째 엔트리들이 하나의 엔트리로 통합되고 일곱 번째와 여덟 번째 엔트리들이 하나의 엔트리로 통합되면, 도 6 에 도시된 제 1 스킵 대응표가 생성된다.
전술된 바와 같이, 엔트리들의 수를 감소시키기 위해 제 1 스킵 대응표 내의 복수의 엔트리들을 통합함으로써, 스킵이 가능한 최대 범위의 희생에서 (스킵은 실제로 약간 길게 수행될 수 있음) 제 1 스킵 대응표에 필요한 저장 용량을 감소시키는 것이 가능하다.
또한, 제 1 스킵 대응표의 복수의 엔트리들을 통합할 때, 이하의 프로세스가 수행될 수도 있다.
예를 들어, 제 1 스킵 대응표에 할당될 수 있는 저장 용량의 상한이 설정되면, 제 1 스킵 대응표의 저장 용량이 상한보다 작아질 때까지, 엔트리들을 통합함으로써 엔트리들의 수의 삭감을 반복하는 것이 가능하다.
또한, 복수의 엔트리들을 통합할 때, 예를 들어 엔트리의 통합에 의해 희생될 (스킵은 실제로 약간 길게 수행될 수 있음) 유사도 범위를 감소시키도록 통합될 엔트리들을 선택하는 것이 가능하다. 구체적으로, 도 5 에 도시된 다섯 번째와 여섯 번째 엔트리들이 하나의 엔트리로 통합되면, 여섯 번째 엔트리의 유사도 범위, 즉 [75<D≤77] 가 희생된다 (스킵은 실제로 약간 길게 수행됨). 일곱 번째와 여덟 번째 엔트리들이 하나의 엔트리로 통합되면, 여덟 번째 엔트리의 유사도 범위, 즉 [80<D≤84] 이 희생된다 (스킵은 실제로 약간 길게 수행됨). 이들 두 경우를 비교할 때, 전자의 경우에서 희생될 유사도 범위가 작기 때문에, 다섯 번째와 여섯 번째 엔트리들을 통합하는 것이 효율적이다. 이 경우, 희생될 프레임들의 수 또는 유사도에 의해 취해질 가능성이 고려될 수도 있다. 전술된 바와 같이 희생의 가능성을 고려하면서 제 1 스킵 대응표의 엔트리들을 통합함으로써 엔트리들의 수를 감소시키는 것에 의해, 제 1 스킵 대응표의 유닛 저장 용량에 대하여 제 1 스킵 대응표에 의해 제공된 검색 동작의 고속화의 효율성을 최대화시키는 것이 가능하다.
(2) 데이터 검색 동작
검색 데이터 수신 시에, 제어부 (120) 는 도 7 의 흐름도에 도시된 흐름에 따라, 그 검색 데이터에 유사하는 데이터를 검색 타겟 데이터 시리즈로부터 검색한다. 복수의 검색 타겟 데이터 시리즈들이 존재하면, 각각의 검색 타겟 데이터 시리즈에 대해 동일한 프로세싱이 수행된다. 하나의 검색 타겟 데이터 시리즈가 주목되고, 검색 데이터와 유사한 데이터가 데이터 시리즈로부터 검색되는 경우의 예에 대해, 본 실시형태에 따른 데이터 검색 동작이 이하에서 주어진다.
제어부 (120) 는 초기에, 검색 타겟 데이터 시리즈의 선두로부터 프로세싱의 대상이 되는 데이터의 순서를 관리하는 변수 j 에 1 을 설정하고 (단계 S111), 유사도 계산부 (110) 에 의해 제 1 데이터와 검색 데이터 간의 유사도를 계산한다 (S112).
제 1 데이터와 검색 데이터 간의 유사도가 임계값 th 이하이면 (단계 S113 에서 예), 제 1 데이터는 유사 데이터로서 출력된다 (단계 S114). 그 다음에, 제어부 (120) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S115), 단계 S119 를 통해 단계 S112 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
한편, 제 1 데이터와 검색 데이터 간의 유사도가, 임계값 th 보다 크면 (단계 S113 에서 아니오), 제어부 (120) 는 제 1 데이터의 제 1 스킵 대응표가 저장부 (150) 에 저장되는지 아닌지 여부를 체크한다 (단계 S116). 표가 저장되지 않으면, 제어부 (120) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S115), 단계 S119 를 통해 단계 S112 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 1 스킵 대응표가 저장되면, 제어부 (120) 는 제 1 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하는지 아닌지 여부를 체크한다 (단계 S117). 표가 이 범위를 포함하지 않으면, 제어부 (120) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S115), 단계 S119 를 통해 단계 S112 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 1 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하면, 제어부 (120) 는 그 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로서 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S118), 단계 S119 를 통해 단계 S112 로 리턴하며, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
단계 S119 에서, 제어부 (120) 는 변경된 변수 j 의 값이 검색 타겟 데이터 시리즈의 데이터 수의 최대 값 jmax 를 초과하는지 여부를 결정하고, 이 값이 최대 값을 초과하지 않으면, 단계 S112 로 리턴하는 한편, 이 값이 최대 값을 초과하면, 검색 타겟 데이터 시리즈에 대하여 검색 프로세스를 종료한다.
전술된 바와 같이, 본 실시형태에 따르면, 검색 데이터와의 유사도가 미리결정된 임계값 이하인 데이터는 검색 타겟 데이터 시리즈로부터 고속으로 검색될 수 있다. 그 이유는, 검색 타겟 데이터 시리즈 중의 데이터와 검색 데이터 간의 유사도가 임계값보다 큰 경우, 유사도 계산이 필요하지 않은 데이터는 이러한 데이터의 제 1 스킵 대응표를 참조함으로써 스킵 될 수 있기 때문이다.
예를 들어, 검색 타겟 데이터 시리즈 중의 데이터 yj 와 검색 데이터 간의 유사도가 72 이면, 도 5 또는 도 6 에 도시된 데이터 yj 의 제 1 스킵 대응표에 따라, 스킵 데스티네이션 데이터는 j+7 이다. 이와 같이, 검색 타겟 데이터 시리즈 중의 6 개의 데이터 피스 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 대해 검색 데이터와의 유사도 계산이 수행되지 않기 때문에, 이들 데이터에 대한 검색 시간이 감소된다. 또한, 각각의 데이터 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 관하여 검색 데이터와의 유사도 계산 수행의 필요성을 결정할 필요가 없기 때문에, 검색 시간이 이러한 계산 동안 또한 감소될 수 있다.
본 실시형태에서, 임계값 th 는 하나의 값에 고정되고 있지만, 본 발명은 복수의 임계값 th 가 이용되는 데이터 검색 디바이스에도 적용 가능하다. 그 경우, 각각의 임계값 th 에 대해, 사전에 제 1 스킵 대응표가 생성 및 저장된다. 예를 들어, 3 개의 임계값 th, 예컨대 50, 60, 및 70 있는 경우, th=50 에 대한 제 1 스킵 대응표, th=60 에 대한 제 1 스킵 대응표, th=70 에 대한 제 1 스킵 대응표가 생성 및 저장될 수도 있다.
[제 2 실시형태]
도 8 을 참조하면, 본 발명의 제 2 실시형태에 따른 데이터 검색 디바이스 (200) 는 제 1 실시형태에 따른 데이터 검색 디바이스 (100) 와 구별되는데, 여기서 제어부 (120), 제 1 스킵 대응표 생성부 (130), 및 제 1 스킵 대응표 저장부 (150) 대신에, 제어부 (220), 제 2 스킵 대응표 생성부 (230), 및 제 2 스킵 대응표 저장부 (250) 가 포함된다.
제 2 스킵 대응표 생성부 (230) 는 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 각각의 데이터 피스의 제 2 스킵 대응표를 생성하는 수단이다. 데이터 피스의 제 2 스킵 대응표는 이러한 데이터와 검색 데이터 간의 유사도가 취할 수도 있는 범위들 각각에 대해, 검색 데이터와의 유사도가 미리결정된 임계 th 보다 클 수도 있는 데이터 중에서 이러한 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 정보를 포함하는 표를 의미한다.
제 2 스킵 대응표 저장부 (250) 는 제 2 스킵 대응표 생성부 (230) 에 의해 생성된 제 2 스킵 대응표를 저장하는 수단이다. 제 2 스킵 대응표는, 그 표에 대응하는 데이터가 명확하게 구별되는 그러한 방식으로, 검색 타겟 데이터 시리즈 중의 데이터와 연관되어 제 2 스킵 대응표 저장부 (250) 에 저장된다.
제어부 (220) 는 전체 데이터 검색 디바이스 (200) 를 제어하는 수단이다. 데이터 검색 디바이스 (200) 의 외부로부터 검색 데이터가 입력될 때, 제어부 (220) 는 유사도 계산부 (110) 을 제어하여 검색 데이터와 검색 타겟 데이터 시리즈 중의 데이터 간의 유사도를 계산하고, 그 계산 결과를 미리결정된 임계값 th 와 비교하며, 이에 의해 이러한 데이터가 검색 데이터에 유사한 데이터인지 아닌지 여부를 결정한다. 이러한 데이터가 검색 데이터와 유사하면, 제어부 (220) 는 그 데이터를 검색 결과로서 출력하고, 이러한 데이터의 제 2 스킵 대응표 및 이러한 데이터와 검색 데이터 간의 유사도에 따라, 검색 데이터와의 유사도가 다음으로 계산되는 검색 타겟 데이터 시리즈들 중의 데이터를 결정한다. 결정된 데이터가 이러한 데이터의 다음 데이터가 아니면, 제어부 (120) 는 이러한 데이터의 다음 데이터로부터 결정된 데이터에 바로 선행하는 데이터까지 범위의 데이터를 유사 데이터로서 출력하고, 결정된 데이터에 동일한 프로세싱을 반복한다. 반대로, 이러한 데이터가 검색 데이터와 유사하지 않으면, 제어부 (120) 는 이러한 데이터의 다음 데이터에 동일한 프로세싱을 반복한다.
다음으로, 본 실시형태에 따른 데이터 검색 디바이스 (200) 의 동작을 설명한다.
데이터 검색 디바이스 (200) 의 동작은 실제 데이터 검색 동작의 실행 이전에 수행되는 제 2 스킵 대응표 생성 동작, 및 생성된 제 2 스킵 대응표를 이용하는 데이터 검색 동작으로 분류된다.
(1) 제 2 스킵 대응표 생성 동작
제 2 스킵 대응표 생성부 (230) 는, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 각 데이터에 대해, 도 9 의 흐름도에 도시된 흐름에 따라 그 데이터의 제 2 스킵 대응표를 생성한다.
먼저 제 2 스킵 대응표 생성부 (230) 는 제 2 스킵 대응표를 생성하기 위해 검색 타겟 데이터 시리즈들 중의 데이터 피스에 주목한다 (단계 S201). 본 설명에서, 설명의 편의상, 검색 타겟 데이터 시리즈는 도 10(a) 에 도시된 바와 같이, yj, yj +1, yj +2, yj +3, yj +4,yj +5, 등으로 구성된 데이터 시리즈들 (본 예에서, n 차원의 특징 벡터) 이고, 선두의 데이터 yj 에 주목되는 것으로 가정된다.
다음으로, 제 2 스킵 대응표 생성부 (230) 는, 주목된 데이터 yj 와 후속의 m 개의 데이터 피스 yj +1, yj +2,…, yj +m 간의 유사도 d(yj, yj +1),d(yj, yj +2),…,d(yj, yj +m) 를 계산하고, 그 계산 결과를 내부 테이블에 저장한다 (단계 S202). 유사도를 계산하기 위한 후속 데이터의 수 m 은 임의적이다. 후속 데이터의 수 m 이 더 크면, 검색 데이터와의 유사도 계산이 수행되는 다수의 데이터를 감소시킬 가능성은 있지만, 스킵 대응표에 필요한 저장용량은 증가된다. 이와 같이, m 의 값은 양자를 고려하여 미리 결정된다.
도 10(b) 는 제 2 스킵 대응표 생성부 (230) 에 의해 제 2 스킵 대응표를 생성하는 프로세스에서 이용될 내부 테이블의 예를 나타낸다. 내부 테이블은 최대 m 개의 엔트리 수로 구성되고, 엔트리들 각각은 후속 데이터, 유사도, 최대 값, 스킵 가능 조건, 및 연속 스킵 가능 조건을 포함하는 5 항목으로부터 구성된다. 단계 S202 에서, 제 2 스킵 대응표 생성부 (230) 는, 내부 테이블의 각 엔트리에서, 후속 데이터의 항목에 yj +1, yj +2,…, yj +m 을 설정하고, 유사도의 항목에 데이터 yj 와의 유사도 d(yj, yj +1),d(yj, yj +2),…,d(yj, yj +m) 를 설정한다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 2 스킵 대응표 생성부 (230) 는 검색 데이터와 데이터 yj 간의 유사도 D(x,yj) 및 데이터 yj 와 후속 데이터 간의 유사도를 이용하여 검색 데이터와의 유사도의 최대 값을 계산하고, 이 값을 내부 테이블의 최대 값의 항목으로 설정한다 (단계 S203). 예를 들어, 후속 데이터 yj +1 의 경우, 데이터 yj 와의 유사도가 d(yj, yj +1) 이고, 데이터 yj 와 검색 데이터 간의 유사도가 D(x,yj) 이기 때문에, 검색 데이터와 후속 데이터 yj +1 간의 유사도의 최대 값은 [D(x,yj)+d(yj, yj +1)] 이다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 2 스킵 대응표 생성부 (230) 는 검색 데이터와의 유사도의 최대 값 및 별도로 제공되는 임계값 th 를 이용하여, 검색 데이터와의 유사도가 임계값보다 커질 가능성이 없는 (검색 데이터와 유사하지 않을 가능성이 없는), 데이터 yj 와 검색 데이터 간의 유사도 범위의 상한을 계산하고, 이 값을 내부 테이블의 스킵 가능 조건의 항목으로 설정한다 (단계 S204). 예를 들어, 후속 데이터 yj +1 의 경우, 최대 값 [D(x,yj)+d(yj, yj+1)] 조차도 임계값 th 이하이면 데이터는 검색 데이터와 유사할 가능성이 없기 때문에 [D(x,yj)>th - d(yj, yj +1)] 이 스킵 가능 조건으로 설정된다.
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 각각에 대해, 제 2 스킵 대응표 생성부 (230) 는 자기 데이터 및 자기 데이터에 선행하는 다른 후속 데이터의 스킵 가능 조건으로 주어지는 유사도의 상한의 최소 값을 계산하고, 이 값을 내부 테이블의 연속 스킵 가능 조건의 항목으로 설정한다 (단계 S205).
다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건에 따라, 제 2 스킵 대응표 생성부 (230) 는 주목된 데이터 yj 의 제 2 스킵 대응표를 생성하고, 이 표를 제 2 스킵 대응표 저장부 (250) 에 저장한다 (단계 S206). 구체적으로는, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어지는 유사도의 상한 중에서, 제 2 스킵 대응표 생성부 (230) 는 가장 큰 값을 갖는 상한이 상한치로 설정되고 두 번째로 가장 큰 값을 갖는 상한이 하한치로 설정되는 제 1 유사도 범위를 생성하고, 주목된 데이터 yj 와 검색 데이터 간의 유사도가 제 1 유사도 범위를 만족하는 경우의 스킵 데스티네이션 데이터로서, 제 1 유사도 범위의 하한치와 동일한 연속 스킵 가능 조건을 갖는 후속 데이터 중 마지막 데이터를 설정한다. 다음으로, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어지는 유사도의 상한 중에서, 제 2 스킵 대응표 생성부 (230) 는 두 번째로 가장 큰 값을 갖는 상한이 상한치로 설정되고 세 번째로 가장 큰 값을 갖는 상한이 하한치로 설정되는 제 2 유사도 범위를 생성하고, 주목된 데이터 yj 와 검색 데이터 간의 유사도가 제 2 유사도 범위를 만족하는 경우의 스킵 데스티네이션 데이터로서, 제 2 유사도 범위의 하한치와 동일한 연속 스킵 가능 조건을 갖는 후속 데이터 중 마지막 데이터를 설정한다. 제 2 스킵 대응표 생성부 (230) 는, 후속 데이터 yj +1, yj +2,…, yj +m 의 연속 스킵 가능 조건으로 주어진 유사도들의 상한 중에서 최소 값이 하한치로 설정되는 유사도 범위를 생성할 때까지 동일한 프로세싱을 반복한다.
도 11 은 데이터 yj 의 제 1 스킵 대응표를 생성하는 프로세스에서 이용된 내부 테이블의 특정 예를 나타내고, 도 12 는 데이터 yj 의 제 2 스킵 대응표의 특정 예를 나타낸다. 이 예에서, 임계값 th 는 50 이고, 수 m 은 13 이다.
도 11 에 도시된 내부 테이블에서, 예를 들어, 후속 데이터 yj +3 의 엔트리는 데이터 yj 와의 유사도가 12, 검색 데이터와의 유사도의 최대 값이 [D(x,yj)+12], 스킵 가능 조건이 [D(x,yj)≤38], 및 연속 스킵 가능 조건이 [D(x,yj)≤36] 인 것을 나타낸다. 후속 데이터 yj +3 의 연속 스킵 가능 조건이 [D(x,yj)≤38] 의 스킵 가능 조건이 아니고 [D(x,yj)≤36] 가 되는 이유는 자기 데이터 yj +3 에 선행하는 데이터 yj+2 의 스킵 가능 조건이 [D(x,yj)≤36] 이기 때문이다.
또한, 도 12 에서, 데이터 yj 의 제 2 스킵 대응표에서 첫 번째 엔트리는, 데이터 yj 과 검색 데이터 간의 유사도가 36 보다 크고 40 이하이면, 검색 타겟 데이터와의 유사도가 계산되는 다음의 데이터는 데이터 yj+2 인 것을 나타낸다. 이 첫 번째 엔트리는, 도 11 에 도시된 내부 테이블에서 후속 데이터 yj +1 및 yj +2 의 연속 스킵 가능 조건으로부터 생성된 데이터이다.
또한, 예를 들어 도 12 에 도시된 데이터 yj 의 제 2 스킵 대응표에서의 두 번째 엔트리는, 데이터 yj 와 검색 데이터 간의 유사도가 33 보다 크고 36 이하이면, 검색 타겟 데이터와의 유사도가 계산되는 다음의 데이터는 데이터 yj +5 인 것을 나타낸다. 이 두 번째 엔트리는, 도 11 에 도시된 내부 테이블에서 후속 데이터 yj +2 내지 yj +5 의 연속 스킵 가능 조건으로부터 생성된 데이터이다.
제 2 스킵 대응표 생성부 (230) 는, 데이터 yj 에 대한 절차와 동일한 절차에 따라, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 데이터 yj 이외의 데이터의 제 2 스킵 대응표를 생성한다. 그러나, 검색 타겟 데이터 시리즈의 마지막 데이터에 후속하는 데이터가 존재하지 않기 때문에, 제 2 스킵 대응표는 마지막 데이터에 대해 생성되지 않는다. 또한, 마지막 데이터를 제외한 모든 데이터의 제 2 스킵 대응표를 생성하는 것이 아니라, 미리결정된 일부의 데이터에 대해서만 제 2 스킵 대응표를 생성하는 것이 가능하다. 일부의 데이터의 예들로는, 짝수 번째의 데이터, 홀수 번째의 데이터, p(>2) 인 수의 모든 데이터 등이 있다.
또한, 제 2 스킵 대응표 생성부 (230) 는, 도 9 의 단계 S206 에서 생성된 제 2 스킵 대응표 내의 연속하는 복수의 엔트리들을 1 개의 엔트리로 통합하는 프로세스를 수행하여, 이에 의해 제 2 스킵 대응표 내의 엔트리들의 수를 감소시킬 수도 있다. 연속하는 복수의 엔트리를 통합함으로써 형성된 엔트리는, 통합 전의 복수의 엔트리의 유사도 범위의 하한의 최소 값이 하한치이고, 그 유사도 범위의 상한의 최대 값이 상한치인 유사도 범위를 갖고, 통합 전의 복수의 엔트리들의 스킵 데스티네이션 데이터 중 선두의 데이터인 스킵 데스티네이션 데이터를 갖는다. 예를 들어, 도 12 의 제 2 스킵 대응표에서, 다섯 번째와 여섯 번째 엔트리들이 하나의 엔트리로 통합되고 일곱 번째와 여덟 번째 엔트리들이 하나의 엔트리로 통합되면, 도 13 에 도시된 제 1 스킵 대응표가 생성된다.
전술된 바와 같이, 엔트리들의 수를 감소시키기 위해 제 2 스킵 대응표 내의 복수의 엔트리들을 통합함으로써, 스킵이 가능한 최대 범위의 희생에서 (스킵은 실제로 약간 길게 수행될 수 있음) 제 2 스킵 대응표에 필요한 저장 용량을 감소시키는 것이 가능하다.
또한, 제 2 스킵 대응표의 복수의 엔트리들을 통합할 때, 이하의 프로세스가 수행될 수도 있다.
예를 들어, 제 2 스킵 대응표에 할당될 수 있는 저장 용량의 상한이 설정되면, 제 2 스킵 대응표의 저장 용량이 상한보다 작아질 때까지, 엔트리들을 통합함으로써 엔트리들의 수의 삭감을 반복하는 것이 가능하다.
또한, 복수의 엔트리들을 통합할 때, 예를 들어 엔트리의 통합에 의해 희생될 (스킵은 실제로 약간 길게 수행될 수 있음) 유사도 범위를 감소시키도록 통합될 엔트리들을 선택하는 것이 가능하다. 구체적으로, 도 12 에 도시된 다섯 번째와 여섯 번째 엔트리들이 하나의 엔트리로 통합되면, 여섯 번째 엔트리의 유사도 범위, 즉 [23<D≤25] 가 희생된다 (스킵은 실제로 약간 길게 수행될 수 있음). 일곱 번째와 여덟 번째 엔트리들이 하나의 엔트리로 통합되면, 여덟 번째 엔트리의 유사도 범위, 즉 [16<D≤20] 이 희생된다 (스킵은 실제로 약간 길게 수행될 수 있음). 이들 두 경우를 비교할 때, 전자의 경우에서 희생될 유사도 범위가 작기 때문에, 다섯 번째와 여섯 번째 엔트리들을 통합하는 것이 효율적이다. 이 경우, 희생될 프레임들의 수 또는 유사도에 의해 취해질 가능성이 고려될 수도 있다. 전술된 바와 같이 희생의 가능성을 고려하면서 제 2 스킵 대응표의 엔트리들을 통합함으로써 엔트리들의 수를 감소시키는 것에 의해, 제 2 스킵 대응표의 유닛 저장 용량에 대하여 제 2 스킵 대응표에 의해 제공된 검색 동작의 고속화의 효율성을 최대화시키는 것이 가능하다.
(2) 데이터 검색 동작
검색 데이터 수신 시에, 제어부 (220) 는 도 14 의 흐름도에 도시된 흐름에 따라, 그 검색 데이터에 유사한 데이터를 검색 타겟 데이터 시리즈로부터 검색한다. 복수의 검색 타겟 데이터 시리즈들이 존재하면, 각각의 검색 타겟 데이터 시리즈에 대해 동일한 프로세싱이 수행된다. 하나의 검색 타겟 데이터 시리즈가 주목되고, 검색 데이터와 유사한 데이터가 데이터 시리즈로부터 검색되는 경우의 예에 대해, 본 발명의 실시형태에 따른 데이터 검색 동작이 이하에서 주어진다.
제어부 (220) 는 초기에, 검색 타겟 데이터 시리즈의 선두로부터 프로세싱의 대상이 되는 데이터의 순서를 관리하는 변수 j 에 1 을 설정하고 (단계 S211), 유사도 계산부 (110) 에 의해 제 1 데이터와 검색 데이터 간의 유사도를 계산한다 (S212).
제 1 데이터와 검색 데이터 간의 유사도가 임계값 th 이하이면 (단계 S213 에서 예), 제 1 데이터는 유사 데이터로서 출력된다 (단계 S215). 그 다음에, 제어부 (220) 는 제 1 데이터의 제 2 스킵 대응표가 저장부 (250) 에 저장되는지 아닌지 여부를 체크한다 (단계 S216). 표가 저장되지 않으면, 제어부 (220) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S214), 단계 S221 을 통해 단계 S212 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 2 스킵 대응표가 저장되면, 제어부 (220) 는 제 2 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하는지 아닌지 여부를 체크한다 (단계 S217). 표가 이 범위를 포함하지 않으면, 제어부 (220) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S214), 단계 S221 을 통해 단계 S212 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 2 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하면, 제어부 (220) 는 그 유사도 범위에 대응하여기록되는 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음의 데이터인지 아닌지를 결정한다 (단계 S218). 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음 데이터가 아니면 (이는, 몇몇 데이터 피스들이 스킵되는 경우를 의미함), 제어부 (220) 는 현재 프로세싱되고 있는 데이터의 다음 데이터로부터 스킵 데스티네이션 데이터에 바로 선행하는 데이터까지 범위의 데이터를 유사 데이터로서 출력한다 (단계 219). 그 다음에, 제어부 (220) 는 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S220), 단계 221 을 통해 단계 212 로 리턴하며, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다. 다르게는, 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음 데이터이면, 제어부 (220) 는 단계 S219 를 수행하지 않고, 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S220), 단계 S221 을 통해 단계 S212 로 리턴하며, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
한편, 제 1 데이터와 검색 데이터 간의 유사도가 임계값 th 보다 크면 (단계 S213 에서 아니오), 제어부 (220) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S214), 단계 S221 를 통해 단계 S212 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
단계 S221 에서, 제어부 (220) 는 변경된 변수 j 의 값이 검색 타겟 데이터 시리즈의 데이터 수의 최대 값 jmax 를 초과하는지 여부를 결정하고, 이 값이 최대 값을 초과하지 않으면, 단계 S112 로 리턴하는 한편, 이 값이 최대 값을 초과하면 검색 타겟 데이터 시리즈에 대하여 검색 프로세스를 종료한다.
전술된 바와 같이, 본 실시형태에 따르면, 검색 데이터와의 유사도가 미리결정된 임계값 이하인 데이터는 검색 타겟 데이터 시리즈로부터 고속으로 검색될 수 있다. 그 이유는, 검색 타겟 데이터 시리즈 중의 데이터와 검색 데이터 간의 유사도가 임계값 이하인 경우, 유사도 계산이 필요하지 않은 데이터는 이러한 데이터의 제 2 스킵 대응표를 참조함으로써 스킵 될 수 있기 때문이다.
예를 들어, 검색 타겟 데이터 시리즈 중의 데이터 yj 와 검색 데이터 간의 유사도가 28 이면, 도 12 또는 도 13 에 도시된 데이터 yj 의 제 2 스킵 대응표에 따라, 스킵 데스티네이션 데이터는 j+7 이다. 이와 같이, 검색 타겟 데이터 시리즈 중의 6 개의 데이터 피스 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 대해 검색 데이터와의 유사도 계산이 수행되지 않기 때문에, 이들 데이터에 대한 검색 시간이 감소된다. 또한, 각각의 데이터 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 관하여 검색 데이터와의 유사도 계산 수행의 필요성을 결정할 필요가 없기 때문에, 검색 시간이 이러한 계산 동안 또한 감소될 수 있다.
본 실시형태에서, 임계값 th 는 하나의 값에 고정되고 있지만, 본 발명은 복수의 임계값 th 가 이용되는 데이터 검색 디바이스에도 적용 가능하다. 그 경우, 각각의 임계값 th 에 대해, 사전에 제 2 스킵 대응표가 생성 및 저장된다. 예를 들어, 3 개의 임계값 th, 예컨대 50, 60, 70 있는 경우, th=50 에 대한 제 2 스킵 대응표, th=60 에 대한 제 2 스킵 대응표, th=70 에 대한 제 2 스킵 대응표가 생성 및 저장될 수도 있다.
[제 3 실시형태]
도 15 를 참조하면, 본 발명의 제 3 실시형태와 관련되는 데이터 검색 디바이스 (300) 는, 제 1 실시형태에 따른 데이터 검색 디바이스 (100) 와 구별되는데, 여기서 제 2 스킵 대응표 생성부 (230) 및 제 2 스킵 대응표 저장부 (250) 가 추가되고, 제어부 (120) 대신에 제어부 (320) 가 포함된다.
제 2 스킵 대응표 생성부 (230) 는 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 각각의 데이터 피스의 제 2 스킵 대응표를 생성하는 수단인, 제 2 실시형태에 따른 제 2 스킵 대응표 생성부 (230) 와 완전히 동일하다. 또한, 제 2 스킵 대응표 저장부 (250) 는 제 2 스킵 대응표 생성부 (230) 에 의해 생성된 제 2 스킵 대응표를 저장하는 수단인, 제 2 실시형태에 따른 제 2 스킵 대응표 저장부 (250) 와 완전이 동일하다.
제어부 (320) 는 전체 데이터 검색 디바이스 (300) 를 제어하는 수단이다. 데이터 검색 디바이스 (300) 의 외부로부터 검색 데이터가 입력될 때, 제어부 (320) 는 유사도 계산부 (110) 를 제어하여 검색 데이터와 검색 타겟 데이터 시리즈 중의 데이터 간의 유사도를 계산하고, 그 계산 결과를 미리결정된 임계값 th 와 비교하며, 이에 의해 이러한 데이터가 검색 데이터와 유사한 데이터인지 아닌지 여부를 결정한다.
이 데이터가 검색 데이터와 유사하지 않으면, 제어부 (320) 는 이 데이터와 검색 데이터 간의 유사도 및 이 데이터의 제 1 스킵 대응표에 따라, 검색 데이터와의 유사도가 다음으로 계산되는 검색 타겟 데이터 시리즈들 중의 데이터를 결정하고, 결정된 데이터에 동일한 프로세싱을 반복한다.
반대로, 이 데이터가 검색 데이터와 유사하면, 제어부 (320) 는 그 데이터를 검색 결과로서 출력하고, 이러한 데이터와 검색 데이터 간의 유사도 및 이러한 데이터의 제 2 스킵 대응표에 따라, 검색된 데이터와의 유사도가 다음으로 계산되는 검색 타겟 데이터 시리즈들 중의 데이터를 결정한다. 결정된 데이터가 이러한 데이터의 다음 데이터가 아니면, 제어부 (320) 는 이러한 데이터의 다음 데이터로부터 결정된 데이터에 바로 선행하는 데이터까지 범위의 데이터를 유사 데이터로서 출력하고, 결정된 데이터에 동일한 프로세싱을 반복한다.
다음으로, 본 실시형태에 따른 데이터 검색 디바이스 (300) 의 동작을 설명한다.
데이터 검색 디바이스 (300) 의 동작은 실제 데이터 검색 동작의 실행 이전에 수행되는 제 1 및 제 2 스킵 대응표 생성 동작, 및 생성된 제 1 및 제 2 스킵 대응표를 이용하는 데이터 검색 동작으로 분류된다.
(1) 제 1 및 제 2 스킵 대응표 생성 동작
제 1 스킵 대응표 생성부 (130) 에 의해, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 각각의 데이터 피스의 제 1 스킵 대응표를 생성하는 동작은 제 1 실시형태에 따른 제 1 스킵 대응표 생성부 (130) 에 의해 수행되는 것과 동일하고, 그 상세한 동작은 전술되어 있기 때문에, 그 설명은 생략된다.
제 2 스킵 대응표 생성부 (230) 에 의해, 검색 타겟 데이터 시리즈 저장부 (140) 에 저장된 검색 타겟 데이터 시리즈 중의 각각의 데이터 피스의 제 2 스킵 대응표를 생성하는 동작은 제 2 실시형태에 따른 제 2 스킵 대응표 생성부 (230) 에 의해 수행되는 것과 동일하고, 그 상세한 동작은 전술되어 있기 때문에, 그 설명은 생략된다.
(2) 데이터 검색 동작
검색 데이터 수신 시에, 제어부 (320) 는 도 16 의 흐름도에 도시된 흐름에 따라, 그 검색 데이터와 유사한 데이터를 검색 타겟 데이터 시리즈로부터 검색한다. 복수의 검색 타겟 데이터 시리즈들이 존재하면, 각각의 검색 타겟 데이터 시리즈에 대해 동일한 프로세싱이 수행된다. 하나의 검색 타겟 데이터 시리즈가 주목되고, 검색 데이터와 유사한 데이터가 데이터 시리즈로부터 검색되는 경우의 예에 대해, 본 실시형태에 따른 데이터 검색 동작이 이하에서 주어진다.
제어부 (320) 는 초기에, 검색 타겟 데이터 시리즈의 선두로부터 프로세싱의 대상이 되는 데이터의 순서를 관리하는 변수 j 에 1 을 설정하고 (단계 S311), 유사도 계산부 (110) 에 의해 제 1 데이터와 검색 데이터 간의 유사도를 계산한다 (S312).
제 1 데이터와 검색 데이터 간의 유사도가 임계값 th 보다 크면 (단계 S313 에서 아니오), 제어부 (320) 는 제 1 데이터의 제 1 스킵 대응표가 저장부 (150) 에 저장되는지 아닌지 여부를 체크한다 (단계 S314). 표가 저장되지 않으면, 제어부 (320) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S317), 단계 S324 을 통해 단계 S312 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 1 스킵 대응표가 저장되면, 제어부 (320) 는 제 1 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하는지 아닌지 여부를 체크한다 (단계 S315). 표가 이 범위를 포함하지 않으면, 제어부 (320) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S317), 단계 S324 를 통해 단계 S312 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 1 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하면, 제어부 (320) 는 그 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로서 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S316), 단계 324 를 통해 단계 312 로 리턴하며, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터와 검색 데이터 간의 유사도가 임계값 th 이하이면 (단계 S313 에서 예), 제 1 데이터는 유사 데이터로서 출력된다 (단계 S318). 그 다음에, 제어부 (320) 는 제 1 데이터의 제 2 스킵 대응표가 저장부 (250) 에 저장되는지 아닌지 여부를 체크한다 (단계 S319). 표가 저장되지 않으면, 제어부 (320) 는 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S317), 단계 S324 를 통해 단계 S312 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 2 스킵 대응표가 저장되면, 제어부 (320) 는 제 2 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하는지 아닌지 여부를 체크한다 (단계 S320). 그 표가 그 범위를 포함하지 않으면, 변수 j 에 1 을 더함으로써 2 로 변경하고 (단계 S317), 단계 S324 를 통해 단계 S312 로 리턴하고, 제 2 데이터를 유사도가 다음으로 계산되는 데이터로 설정하며, 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
제 1 데이터의 제 2 스킵 대응표가 제 1 데이터와 검색 데이터 간의 유사도를 포함하는 유사도 범위를 포함하면, 제어부 (320) 는 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음 데이터인지 아닌지 여부를 결정한다 (단계 S321). 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음 데이터가 아니면 (이는, 몇몇의 데이터 피스가 스킵되는 경우를 의미함), 제어부 (320) 는 현재 프로세싱되고 있는 데이터의 다음 데이터로부터 스킵 데스티네이션 데이터에 바로 선행하는 데이터까지 범위의 데이터를 유사 데이터로서 출력한다 (단계 S322). 그 다음에, 제어부 (320) 는 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S323), 단계 S324 를 통해 단계 S312 로 리턴하고, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다. 다르게는, 스킵 데스티네이션 데이터가 현재 프로세싱되고 있는 데이터의 다음 데이터이면, 제어부 (320) 는 단계 S322 를 수행하지 않고, 스킵 데스티네이션 데이터를 유사도가 다음으로 계산되는 데이터로 설정하고 (즉, 스킵 데스티네이션 데이터를 나타내도록 변수 j 를 변경)(단계 S323), 단계 S324 를 통해 단계 S312 로 리턴하며, 스킵 데스티네이션 데이터에 대해 제 1 데이터에 적용된 프로세싱과 동일한 프로세싱을 반복한다.
단계 S324 에서, 제어부 (320) 는 변경된 변수 j 의 값이 검색 타겟 데이터 시리즈의 데이터 수의 최대 값 jmax 를 초과하는지 여부를 결정하고, 이 값이 최대 값을 초과하지 않으면 단계 S312 로 리턴하는 한편, 이 값이 최대 값을 초과하면 검색 타겟 데이터 시리즈에 대하여 검색 프로세스를 종료한다.
전술된 바와 같이, 본 실시형태에 따르면, 검색 데이터와의 유사도가 미리결정된 임계값 이하인 데이터는 검색 타겟 데이터 시리즈로부터 고속으로 검색될 수 있다.
첫 번째 이유는, 검색 타겟 데이터 시리즈 중의 데이터와 검색 데이터 간의 유사도가 임계값보다 클 때, 유사도 계산이 필요하지 않은 데이터는 이러한 데이터의 제 1 스킵 대응표를 참조함으로써 스킵 될 수 있기 때문이다.
예를 들어, 검색 타겟 데이터 시리즈 중의 데이터 yj 와 검색 데이터 간의 유사도가 72 이면, 도 5 또는 도 6 에 도시된 데이터 yj 의 제 1 스킵 대응표에 따라, 스킵 데스티네이션 데이터는 j+7 이다. 이와 같이, 검색 타겟 데이터 시리즈 중의 6 개의 데이터 피스 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 대해 검색 데이터와의 유사도 계산이 수행되지 않기 때문에, 이들 데이터에 대한 검색 시간이 감소된다. 또한, 각각의 데이터 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 관하여 검색 데이터와의 유사도 계산의 필요성을 결정할 필요가 없기 때문에, 검색 시간이 이러한 계산 동안 또한 감소될 수 있다.
두 번째 이유는, 검색 타겟 데이터 시리즈 중의 데이터와 검색 데이터 간의 유사도가 임계값 이하일 때, 유사도 계산이 필요없는 데이터는 이러한 데이터의 제 2 스킵 대응표를 참조함으로써 스킵될 수 있기 때문이다.
예를 들어, 검색 타겟 데이터 시리즈 중의 데이터 yj 와 검색 데이터 간의 유사도가 28 이면, 도 12 또는 도 13 에 도시된 데이터 yj 의 제 2 스킵 대응표에 따라, 스킵 데스티네이션 데이터는 j+7 이다. 이와 같이, 검색 타겟 데이터 시리즈 중의 6 개의 데이터 피스 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 대해 검색 데이터와의 유사도 계산이 수행되지 않기 때문에, 이들 데이터에 대한 검색 시간이 감소된다. 또한, 각각의 데이터 yj +1, yj +2, yj +3, yj +4, yj +5, 및 yj +6 에 관하여 검색 데이터와의 유사도 계산 수행의 필요성을 결정할 필요가 없기 때문에, 검색 시간이 이러한 계산 동안 또한 감소될 수 있다.
본 실시형태에서, 임계값 th 는 하나의 값에 고정되고 있지만, 본 발명은 복수의 임계값 th 가 이용되는 데이터 검색 디바이스에도 적용 가능하다. 그 경우, 각각의 임계값 th 에 대해, 사전에 제 1 및 제 2 스킵 대응표가 생성 및 저장된다. 예를 들어, 3 개의 임계값 th, 예컨대 50, 60, 70 있는 경우, th=50 에 대한 제 1 및 제 2 스킵 대응표, th=60 에 대한 제 1 및 제 2 스킵 대응표, th=70 에 대한 제 1 및 제 2 스킵 대응표가 생성 및 저장될 수도 있다.
본 발명의 실시형태들이 전술되어 있으나, 본 발명은 이들 에에 제한되지 않는다. 본 발명의 범위를 벗어남 없이 형태 및 디테일에서 각종 변경이 이루어질 수도 있음이 당업자에게 자명하다. 또한, 본 발명의 데이터 검색 디바이스는, 그 기능들이 컴퓨터 및 프로그램 뿐만 아니라 하드웨어에 의해 실현될 수 있도록 구성된다. 이러한 프로그램은 자기 디스크, 반도체 메모리 등과 같은 컴퓨터 판독가능 기록 매체 상에 기입되는 형태로 제공되고, 예를 들어 컴퓨터가 시작될 때 컴퓨터에 의해 판독되며, 컴퓨터의 동작을 제어하여, 컴퓨터로 하여금 전술된 실시형태들의 유사도 계산부, 제어부, 제 1 스킵 대응표 생성부, 제 2 스킵 대응표 생성부 등과 같은 기능을 하게 한다.
본 출원은 2009 년 1 월 23 일자로 출원된 일본 공개특허공보 제 2009-12811 호에 기초하고 이에 대해 우선권을 주장하며, 이의 개시물은 그 전체가 본원에서 참조로서 포함된다.
100, 200, 300 데이터 검색 디바이스
110 유사도 계산부
120, 220, 320 제어부
130 제 1 스킵 대응표 생성부
140 검색 타겟 데이터 시리즈 저장부
150 제 1 스킵 대응표 저장부
230 제 2 스킵 대응표 생성부
250 제 2 스킵 대응표 저장부

Claims (43)

  1. 데이터 검색 디바이스로서,
    검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 미리결정된 임계값과의 비교에서 상기 검색 데이터와의 유사도들이 미리결정된 관계를 가질 가능성을 갖는 데이터의 피스들 중에서 상기 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 (skip destination data) 정보를 기록하는 제 1 스킵 대응표; 및
    상기 검색 타겟 데이터 시리즈들 중에서 상기 검색 데이터와의 유사도가 상기 임계값 이하인 데이터를 검색할 때, 상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를, 상기 제 1 스킵 대응표를 이용하여 선택하는 제어 유닛을 포함하는, 데이터 검색 디바이스.
  2. 제 1 항에 있어서,
    상기 미리결정된 관계는 상기 검색 데이터와의 유사도가 상기 임계값 이하의 관계인, 데이터 검색 디바이스.
  3. 제 2 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하가 아닌 경우, 상기 제어 유닛은 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는, 데이터 검색 디바이스.
  4. 제 3 항에 있어서,
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제어 유닛은 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는, 데이터 검색 디바이스.
  5. 제 2 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하고, 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 제 1 스킵 대응표 생성 유닛을 더 포함하는, 데이터 검색 디바이스.
  6. 제 5 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하고, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값 이하가 될 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 하한을 나타내는 스킵 가능 조건을 획득하고, 자기 데이터 (self data) 및 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건들에 의해 제공된 상기 유사도의 상기 하한의 최대 값을 나타내는 연속 스킵 가능 조건을 계산하며, 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하는, 데이터 검색 디바이스.
  7. 제 1 항에 있어서,
    상기 미리결정된 관계는 상기 검색 데이터와의 유사도가 상기 임계값보다 큰 관계인, 데이터 검색 디바이스.
  8. 제 7 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하인 경우, 상기 제어 유닛은 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 타겟 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는, 데이터 검색 디바이스.
  9. 제 8 항에 있어서,
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제어 유닛은 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는, 데이터 검색 디바이스.
  10. 제 7 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하고, 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 제 1 스킵 대응표 생성 유닛을 더 포함하는, 데이터 검색 디바이스.
  11. 제 10 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하고, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값보다 커질 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 상한을 나타내는 스킵 가능 조건을 획득하고, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건에 의해 제공된 상기 유사도의 상기 상한의 최소 값을 나타내는 연속 스킵 가능 조건을 계산하며, 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하는, 데이터 검색 디바이스.
  12. 제 6 항 또는 제 11 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은, 상기 생성된 제 1 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하고, 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하는, 데이터 검색 디바이스.
  13. 제 4 항, 제 5 항, 제 6 항, 제 10 항, 제 11 항, 또는 제 12 항 중 어느 한 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 상기 제 1 스킵 대응표를 생성하는, 데이터 검색 디바이스.
  14. 제 2 항에 있어서,
    검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 상기 검색 데이터와의 유사도가 상기 임계값과의 상기 미리 결정된 관계를 가질 가능성이 없는 데이터의 피스들 중에서 상기 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 정보를 기록하는 제 2 스킵 대응표를 더 포함하고,
    상기 제어 유닛은 상기 제 1 스킵 대응표 및 상기 제 2 스킵 대응표를 이용하여 상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는, 데이터 검색 디바이스.
  15. 제 14 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하가 아닌 경우, 상기 제어 유닛은 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하고,
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하인 경우, 상기 제어 유닛은 상기 데이터의 피스의 상기 제 2 스킵 대응표 및 상기 계산된 유사도에 따라 상기 타겟 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는, 데이터 검색 디바이스.
  16. 제 15 항에 있어서,
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제어 유닛은 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하고,
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 2 스킵 대응표에 존재하는 경우, 상기 제어 유닛은 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는, 데이터 검색 디바이스.
  17. 제 14 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하고, 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 제 1 스킵 대응표 생성 유닛; 및
    상기 검색 타겟 데이터 시리즈들을 수신하고, 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 2 스킵 대응표를 생성하는 제 2 스킵 대응표 생성 유닛을 더 포함하는, 데이터 검색 디바이스.
  18. 제 17 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하고, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값 이하가 될 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 하한을 나타내는 스킵 가능 조건을 획득하고, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건들에 의해 제공된 상기 유사도의 상기 하한의 최대 값을 나타내는 연속 스킵 가능 조건을 계산하며, 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하고,
    상기 제 2 스킵 대응표 생성 유닛은, 상기 제 2 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하고, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값보다 커질 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 상한을 나타내는 스킵 가능 조건을 획득하고, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건에 의해 제공된 상기 유사도의 상기 상한의 최소 값을 나타내는 연속 스킵 가능 조건을 계산하며, 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 2 스킵 대응표를 생성하는, 데이터 검색 디바이스.
  19. 제 18 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은, 상기 생성된 제 1 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하고, 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하고,
    상기 제 2 스킵 대응표 생성 유닛은, 상기 생성된 제 2 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하고, 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하는, 데이터 검색 디바이스.
  20. 제 17 항 내지 제 19 항 중 어느 한 항에 있어서,
    상기 제 1 스킵 대응표 생성 유닛은 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 상기 제 1 스킵 대응표를 생성하고,
    상기 제 2 스킵 대응표 생성 유닛은 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 상기 제 2 스킵 대응표를 생성하는, 데이터 검색 디바이스.
  21. 제 1 항 내지 제 20 항 중 어느 한 항에 있어서,
    상기 데이터는 특징 벡터이며,
    상기 유사도는 특징 벡터들 간의 거리인, 데이터 검색 디바이스.
  22. 데이터 검색 방법으로서,
    검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 미리결정된 임계값과의 비교에서 상기 검색 데이터와의 유사도들이 상기 미리결정된 관계를 가질 가능성을 갖는 데이터의 피스들 중에서 상기 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 (skip destination data) 정보를 기록하는 제 1 스킵 대응표를 이용하여,
    상기 검색 타겟 데이터 시리즈들 중에서 상기 검색 데이터와의 유사도가 상기 임계값 이하인 데이터를 검색할 때,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계를 포함하는, 데이터 검색 방법.
  23. 제 22 항에 있어서.
    상기 미리결정된 관계는 상기 검색 데이터와의 유사도가 상기 임계값 이하의 관계인, 데이터 검색 방법.
  24. 제 23 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는, 상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하가 아닌 경우, 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는 단계를 포함하는, 데이터 검색 방법.
  25. 제 24 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는, 상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는 단계를 포함하는, 데이터 검색 방법.
  26. 제 23 항 내지 제 25 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하는 단계, 및 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계를 더 포함하는, 데이터 검색 방법.
  27. 제 26 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계는, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하는 단계, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값 이하가 될 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 하한을 나타내는 스킵 가능 조건을 획득하는 단계, 자기 데이터 (self data) 와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건들에 의해 제공된 상기 유사도의 상기 하한의 최대 값을 나타내는 연속 스킵 가능 조건을 계산하는 단계, 및 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하는 단계를 포함하는, 데이터 검색 방법.
  28. 제 22 항에 있어서,
    상기 미리결정된 관계는 상기 검색 데이터와의 유사도가 상기 임계값보다 큰 관계인, 데이터 검색 방법.
  29. 제 28 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는, 상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하인 경우, 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 타겟 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는 단계를 포함하는, 데이터 검색 방법.
  30. 제 29 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는, 상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는 단계를 포함하는, 데이터 검색 방법.
  31. 제 28 항 내지 제 30 항 중 어느 한 항에에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하는 단계, 및 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계를 더 포함하는, 데이터 검색 방법.
  32. 제 31 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계는, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하는 단계, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값보다 커질 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 상한을 나타내는 스킵 가능 조건을 획득하는 단계, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건에 의해 제공된 상기 유사도의 상기 상한의 최소 값을 나타내는 연속 스킵 가능 조건을 계산하는 단계, 및 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하는 단계를 포함하는, 데이터 검색 방법.
  33. 제 27 항 또는 제 32 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계는, 상기 생성된 제 1 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하는 단계, 및 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하는 단계를 포함하는, 데이터 검색 방법.
  34. 제 25 항, 제 26 항, 제 27 항, 제 31 항, 제 32 항, 또는 제 33 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계에서, 상기 제 1 스킵 대응표는 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 생성되는, 데이터 검색 방법.
  35. 제 23 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는,
    상기 제 1 스킵 대응표에 추가하여, 검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 상기 검색 데이터와의 유사도가 상기 임계값과의 상기 미리 결정된 관계를 가질 가능성이 없는 데이터의 피스들 중에서 상기 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 정보를 기록하는 제 2 스킵 대응표를 이용하는 단계, 및
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계를 더 포함하는, 데이터 검색 방법.
  36. 제 35 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는,
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하가 아닌 경우, 상기 데이터의 피스의 상기 제 1 스킵 대응표 및 상기 계산된 유사도에 따라 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는 단계, 및
    상기 검색 타겟 데이터 시리즈들 중의 데이터의 피스에 대해 계산된 상기 검색 데이터와의 유사도가 상기 임계값 이하인 경우, 상기 데이터의 피스의 상기 제 2 스킵 대응표 및 상기 계산된 유사도에 따라 상기 타겟 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터를 결정하는 단계를 포함하는, 데이터 검색 방법.
  37. 제 36 항에 있어서,
    상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 단계는,
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 1 스킵 대응표에 존재하는 경우, 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는 단계, 및
    상기 데이터의 피스와 상기 검색 데이터 간의 유사도를 포함하는 유사도 범위가 상기 제 2 스킵 대응표에 존재하는 경우, 상기 제 1 스킵 대응표에 존재하는 상기 유사도 범위에 대응하여 기록되는 스킵 데스티네이션 데이터 정보에 의해 나타나는 데이터를 상기 검색 데이터와의 유사도가 다음으로 계산되는 상기 검색 타겟 데이터 시리즈들 중의 데이터로 결정하는 단계를 포함하는, 데이터 검색 방법.
  38. 제 35 항 내지 제 37 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들을 수신하는 단계, 및 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계; 및
    상기 검색 타겟 데이터 시리즈들을 수신하는 단계, 및 상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 2 스킵 대응표를 생성하는 단계를 더 포함하는, 데이터 검색 방법.
  39. 제 38 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계는, 상기 제 1 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하는 단계, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값 이하가 될 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 하한을 나타내는 스킵 가능 조건을 획득하는 단계, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건들에 의해 제공된 상기 유사도의 상기 하한의 최대 값을 나타내는 연속 스킵 가능 조건을 계산하는 단계, 및 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 1 스킵 대응표를 생성하는 단계를 포함하고,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 2 스킵 대응표를 생성하는 단계는, 상기 제 2 스킵 대응표의 생성 타겟 데이터의 후속 데이터와 상기 생성 타겟 데이터 간의 유사도를 계산하는 단계, 상기 유사도 및 상기 임계값으로부터 상기 후속 데이터와 상기 검색 데이터 간의 유사도가 상기 임계값보다 커질 가능성이 없는 상기 검색 데이터와 상기 생성 타겟 데이터 간의 유사도의 상한을 나타내는 스킵 가능 조건을 획득하는 단계, 자기 데이터와 상기 자기 데이터에 선행하는 후속 데이터의 상기 스킵 가능 조건에 의해 제공된 상기 유사도의 상기 상한의 최소 값을 나타내는 연속 스킵 가능 조건을 계산하는 단계, 및 상기 계산된 연속 스킵 가능 조건에 따라 상기 생성 타겟 데이터의 제 2 스킵 대응표를 생성하는 단계를 포함하는, 데이터 검색 방법.
  40. 제 39 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계는, 상기 생성된 제 1 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하는 단계, 및 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하는 단계를 포함하고,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 2 스킵 대응표를 생성하는 단계는, 상기 생성된 제 2 스킵 대응표 내의 연속하는 복수의 유사도 범위들을 하나의 유사도 범위 내로 통합하는 단계, 통합 전에 상기 유사도 범위들에 대응하는 복수의 스킵 데스티네이션 데이터의 가장 선행하는 데이터를 상기 통합된 유사도 범위에 대응하는 스킵 데스티네이션 데이터로서 할당하는 단계를 포함하는, 데이터 검색 방법.
  41. 제 38 항 내지 제 40 항 중 어느 한 항에 있어서,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 1 스킵 대응표를 생성하는 단계에서, 상기 제 1 스킵 대응표는 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 생성되고,
    상기 검색 타겟 데이터 시리즈들 중의 각 데이터의 상기 제 2 스킵 대응표를 생성하는 단계에서, 상기 제 2 스킵 대응표는 상기 검색 타겟 데이터 시리즈들의 일부의 데이터에 대해서만 생성되는, 데이터 검색 방법.
  42. 제 22 항 내지 제 41 항 중 어느 한 항에 있어서,
    상기 데이터는 특징 벡터이며,
    상기 유사도는 특징 벡터들 간의 거리인, 데이터 검색 방법.
  43. 컴퓨터로 하여금,
    검색 타겟 데이터 시리즈들 중의 각각의 데이터의 피스에 대응하고, 대응하는 데이터와 검색 데이터 간의 유사도에 의해 취해지는 각각의 가능한 유사도 범위에 대해, 미리결정된 임계값과의 비교에서 상기 검색 데이터와의 유사도들이 상기 미리결정된 관계를 가질 가능성을 갖는 데이터의 피스들 중에서 상기 대응하는 데이터 후에 첫 번째로 나타나는 데이터를 지정하기 위한 스킵 데스티네이션 데이터 (skip destination data) 정보를 기록하는 제 1 스킵 대응표를 이용하고,
    상기 검색 타겟 데이터 시리즈들 중에서 상기 검색 데이터와의 유사도가 상기 임계값 이하인 데이터를 검색할 때,
    상기 제 1 스킵 대응표를 이용하여 상기 검색 데이터와의 유사도의 계산이 필요한 상기 검색 타겟 데이터 시리즈들 중의 데이터를 선택하는 프로세스를 수행하게 하는, 프로그램.
KR1020117017385A 2009-01-23 2010-01-14 데이터 검색 디바이스 KR101277419B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009012811 2009-01-23
JPJP-P-2009-012811 2009-01-23
PCT/JP2010/000155 WO2010084712A1 (ja) 2009-01-23 2010-01-14 データ検索装置

Publications (2)

Publication Number Publication Date
KR20110112822A true KR20110112822A (ko) 2011-10-13
KR101277419B1 KR101277419B1 (ko) 2013-06-20

Family

ID=42355771

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117017385A KR101277419B1 (ko) 2009-01-23 2010-01-14 데이터 검색 디바이스

Country Status (6)

Country Link
US (1) US8244739B2 (ko)
EP (1) EP2287749A4 (ko)
JP (1) JP4697355B2 (ko)
KR (1) KR101277419B1 (ko)
CN (1) CN102292728B (ko)
WO (1) WO2010084712A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101277419B1 (ko) * 2009-01-23 2013-06-20 닛본 덴끼 가부시끼가이샤 데이터 검색 디바이스
JP2011243148A (ja) * 2010-05-21 2011-12-01 Sony Corp 情報処理装置、情報処理方法及びプログラム
CN108763413B (zh) * 2018-05-23 2021-07-23 唐山高新技术产业园区兴荣科技有限公司 基于数据存储格式的数据查找定位方法

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3847100A (en) * 1974-01-09 1974-11-12 Singer Co Pattern selection system for sewing machines
US4490811A (en) * 1979-03-14 1984-12-25 Yianilos Peter N String comparator device system circuit and method
US5265242A (en) * 1985-08-23 1993-11-23 Hiromichi Fujisawa Document retrieval system for displaying document image data with inputted bibliographic items and character string selected from multiple character candidates
US5014327A (en) * 1987-06-15 1991-05-07 Digital Equipment Corporation Parallel associative memory having improved selection and decision mechanisms for recognizing and sorting relevant patterns
US4823306A (en) * 1987-08-14 1989-04-18 International Business Machines Corporation Text search system
JPH022419A (ja) * 1988-06-10 1990-01-08 Hitachi Ltd プログラム情報管理方式
US5008818A (en) * 1989-04-24 1991-04-16 Alexander K. Bocast Method and apparatus for reconstructing a token from a token fragment
US5206845A (en) * 1989-06-05 1993-04-27 Document Imaging Systems Corporation Modular data storage and retrieval system
US5301109A (en) * 1990-06-11 1994-04-05 Bell Communications Research, Inc. Computerized cross-language document retrieval using latent semantic indexing
US5321833A (en) * 1990-08-29 1994-06-14 Gte Laboratories Incorporated Adaptive ranking system for information retrieval
DE4031022A1 (de) * 1990-10-01 1992-04-02 Agfa Gevaert Ag Verfahren zur herstellung von kopien von streifenfoermigen kopiervorlagen und zugehoerige vorrichtung
EP0502532B1 (en) * 1991-03-06 2000-05-24 Nec Corporation Single chip microcomputer having protection function for content of internal ROM
US5251316A (en) * 1991-06-28 1993-10-05 Digital Equipment Corporation Method and apparatus for integrating a dynamic lexicon into a full-text information retrieval system
US5278980A (en) * 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
US5189709A (en) * 1991-08-26 1993-02-23 The United States Of America As Represented By The United States National Aeronautics And Space Administration Dynamic pattern matcher using incomplete data
US5546572A (en) * 1991-08-28 1996-08-13 Hitachi, Ltd. Method for retrieving database of image information
US5331554A (en) * 1992-12-10 1994-07-19 Ricoh Corporation Method and apparatus for semantic pattern matching for text retrieval
JPH07146871A (ja) * 1993-11-24 1995-06-06 Hitachi Ltd 静止画検索装置および静止画検索方法
JP3067966B2 (ja) * 1993-12-06 2000-07-24 松下電器産業株式会社 画像部品を検索する装置及びその方法
US5694594A (en) * 1994-11-14 1997-12-02 Chang; Daniel System for linking hypermedia data objects in accordance with associations of source and destination data objects and similarity threshold without using keywords or link-difining terms
US5758257A (en) * 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US5717835A (en) * 1995-01-11 1998-02-10 International Business Machines Corporation Simple approach to case-based reasoning for data navigation tasks
JPH08305638A (ja) * 1995-05-01 1996-11-22 Nec Corp Romデータ検査方法
JP3326670B2 (ja) * 1995-08-02 2002-09-24 ソニー株式会社 データ符号化/復号化方法および装置、および符号化データ記録媒体
US5893095A (en) * 1996-03-29 1999-04-06 Virage, Inc. Similarity engine for content-based retrieval of images
US5911139A (en) * 1996-03-29 1999-06-08 Virage, Inc. Visual image database search engine which allows for different schema
US5915250A (en) * 1996-03-29 1999-06-22 Virage, Inc. Threshold-based comparison
US5913205A (en) * 1996-03-29 1999-06-15 Virage, Inc. Query optimization for visual information retrieval system
US5845261A (en) * 1996-06-12 1998-12-01 Mcabian; Adi Jacob Interactive multi-media presentation and marketing apparatus
US5930783A (en) * 1997-02-21 1999-07-27 Nec Usa, Inc. Semantic and cognition based image retrieval
JP3195752B2 (ja) * 1997-02-28 2001-08-06 シャープ株式会社 検索装置
US5991714A (en) * 1998-04-22 1999-11-23 The United States Of America As Represented By The National Security Agency Method of identifying data type and locating in a file
JP3615657B2 (ja) * 1998-05-27 2005-02-02 株式会社日立製作所 映像検索方法及び装置ならびに記録媒体
US6774917B1 (en) 1999-03-11 2004-08-10 Fuji Xerox Co., Ltd. Methods and apparatuses for interactive similarity searching, retrieval, and browsing of video
US6424688B1 (en) * 1999-10-27 2002-07-23 Advanced Micro Devices, Inc. Method to transfer data in a system with multiple clock domains using clock skipping techniques
US6906823B1 (en) * 2000-05-15 2005-06-14 International Business Machines Corporation Input interface for a raster object memory in a method, system and program
JP3532835B2 (ja) * 2000-07-04 2004-05-31 松下電器産業株式会社 データ処理装置およびプログラム変換装置
US7046733B2 (en) * 2001-03-30 2006-05-16 Matsushita Electric Industrial Co., Ltd. Data sequencing method to improve transmission of self-similar data in a multi-node network
GB2387302B (en) * 2002-04-05 2005-11-30 Phyworks Ltd Error correcting decoder
CA2431384C (en) * 2002-06-10 2009-08-04 Research In Motion Limited Voicemail user interface methods and apparatus for mobile communication devices
US7257206B2 (en) * 2002-06-14 2007-08-14 General Electric Capital Corporation Skip tracing system
JP3960151B2 (ja) * 2002-07-09 2007-08-15 ソニー株式会社 類似時系列検出方法及び装置、並びにプログラム
JP4228662B2 (ja) * 2002-11-19 2009-02-25 日本電気株式会社 映像閲覧システムおよび方法
JPWO2005011294A1 (ja) * 2003-07-28 2007-09-27 日本電気株式会社 視聴調査システム
JP3943060B2 (ja) 2003-08-14 2007-07-11 日本電信電話株式会社 信号検出方法、装置、プログラム及びその記録媒体
US7283999B1 (en) * 2003-12-19 2007-10-16 Ncr Corp. Similarity string filtering
US7461183B2 (en) * 2004-08-03 2008-12-02 Lsi Corporation Method of processing a context for execution
US7596639B2 (en) * 2004-09-01 2009-09-29 Lsi Corporation Skip mask table automated context generation
US9665629B2 (en) * 2005-10-14 2017-05-30 Yahoo! Inc. Media device and user interface for selecting media
US20070089057A1 (en) * 2005-10-14 2007-04-19 Yahoo! Inc. Method and system for selecting media
JP4469785B2 (ja) 2005-12-08 2010-05-26 株式会社東芝 信号探索装置及びその方法
US7747769B1 (en) * 2005-12-22 2010-06-29 Kearns James L Method and apparatus for efficiently searching and selecting preferred content from a plurality of active multimedia streams
JP2007306322A (ja) 2006-05-11 2007-11-22 Nippon Telegr & Teleph Corp <Ntt> 映像再生制御装置及び方法並びにプログラム
US7577644B2 (en) * 2006-10-11 2009-08-18 Yahoo! Inc. Augmented search with error detection and replacement
JP4893508B2 (ja) 2007-07-05 2012-03-07 株式会社ダイフク 袋が装着される箱体およびこの箱体に袋を装着する袋装着装置
WO2009078686A2 (en) * 2007-12-18 2009-06-25 Humax Co., Ltd. Method and device for video coding and decoding
KR101277419B1 (ko) * 2009-01-23 2013-06-20 닛본 덴끼 가부시끼가이샤 데이터 검색 디바이스

Also Published As

Publication number Publication date
EP2287749A4 (en) 2011-08-03
KR101277419B1 (ko) 2013-06-20
US20110099177A1 (en) 2011-04-28
CN102292728A (zh) 2011-12-21
JPWO2010084712A1 (ja) 2012-07-12
US8244739B2 (en) 2012-08-14
WO2010084712A1 (ja) 2010-07-29
CN102292728B (zh) 2015-07-22
JP4697355B2 (ja) 2011-06-08
EP2287749A1 (en) 2011-02-23

Similar Documents

Publication Publication Date Title
CN106557545B (zh) 视频检索方法和装置
KR100903961B1 (ko) 시그니처 파일을 이용한 고차원 데이터 색인 및 검색방법과 그 시스템
JP5286732B2 (ja) 情報処理装置および方法、プログラム、並びに記録媒体
JP4979070B2 (ja) 動画像提示システム
JP2008310634A (ja) データベース検索装置及びデータベース検索プログラム
KR101277419B1 (ko) 데이터 검색 디바이스
CN116034401A (zh) 用于使用自然语言描述检索视频的系统和方法
JP6434162B2 (ja) データ管理システム、データ管理方法およびプログラム
JP2010186307A (ja) 動画コンテンツ識別装置および動画コンテンツ識別方法
WO2020071216A1 (ja) 画像検索装置、画像検索方法及び画像検索用プログラム
JP4721066B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2005269510A (ja) ダイジェスト画像データの生成
WO2021145030A1 (ja) 映像検索システム、映像検索方法、及びコンピュータプログラム
JP2000341631A (ja) 映像検索方法及び装置並びに映像検索プログラムを記録した記録媒体
KR100446639B1 (ko) 셀 기반의 고차원 데이터 색인 장치 및 그 방법
JP2001134584A (ja) 類似データの検索方法,検索装置および類似データ検索プログラム記録媒体
KR20010056528A (ko) 대용량 데이터 파일의 검색 및 처리를 위한 데이터 타일링방법
JP2012173817A (ja) 検索支援装置、プログラム及び方法
JP2008287493A (ja) 文書群組合せ装置、文書分類方法、プログラムおよび記録媒体
WO2022070340A1 (ja) 映像検索システム、映像検索方法、及びコンピュータプログラム
JP4136406B2 (ja) プレゼンテーション映像と電子プレゼンテーション資料の対応付けシステム
JP2690861B2 (ja) 情報再生装置
JP3157878B2 (ja) 推論装置
KR101544603B1 (ko) 개인화된 웹 정보 제공 장치 및 방법
TW202046140A (zh) 動態處理並播放多媒體內容的方法及多媒體播放裝置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180517

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7