(19) 대한민국특허청(KR) (12) 공개특허공보(A)
(11) 공개번호 10-2019-0061224 (43) 공개일자 2019년06월05일 (51) 국제특허분류(Int. Cl.)
G06F 16/00 (2019.01) (52) CPC특허분류
G06F 16/90335 (2019.01) G06F 16/951 (2019.01)
(21) 출원번호 10-2017-0159353 (22) 출원일자 2017년11월27일 심사청구일자 2018년06월22일
(71) 출원인
한국전자통신연구원
대전광역시 유성구 가정로 218 (가정동) (72) 발명자
손정우
대전광역시 유성구 봉명로 93, 608동 105호(봉명 동, 도안6단지 센트럴시티)
한민호
대전광역시 유성구 엑스포로123번길 46-15, 202동 303호(도룡동, 스마트시티)
(뒷면에 계속) (74) 대리인
성병기 전체 청구항 수 : 총 1 항
(54) 발명의 명칭 컨텐츠 검색 방법 및 장치 (57) 요 약
컨텐츠 검색 방법이 개시된다. 본 개시의 일 실시 예에 따른 컨텐츠 검색 방법은 입력 컨텐츠에 대한 특징 벡터 를 확인하고, 상기 특징 벡터에 기초한 상기 입력 컨텐츠의 인덱스 정보를 결정하고, 상기 인덱스 정보를 사용하 여 상기 입력 컨텐츠를 데이터베이스에 저장하되, 상기 인덱스 정보는 복수의 컨텐츠에 대한 학습을 통해 생성된 특징 벡터 및 연관 정보를 포함하는 과정과, 검색 컨텐츠를 입력 받고, 상기 검색 컨텐츠에 대한 상기 특징 벡터 를 사용하여 인덱스 정보를 생성하고, 상기 인덱스 정보에 대응되는 컨텐츠를 검출하는 과정을 포함한다.
대 표 도 - 도1
(72) 발명자 김선중
세종특별자치시 보람로 15, 910동 902호(도담동, 도램마을9단지)
박종현
대전광역시 유성구 대덕대로 617, 101동 501호(도 룡동, 로덴하우스아파)
함경준
대전광역시 유성구 어은로42번길 7, 201호(어은동)
명 세 서 청구범위 청구항 1
입력 컨텐츠에 대한 특징 벡터를 확인하고, 상기 특징 벡터에 기초한 상기 입력 컨텐츠의 인덱스 정보를 결정하 고, 상기 인덱스 정보를 사용하여 상기 입력 컨텐츠를 데이터베이스에 저장하되, 상기 인덱스 정보는 복수의 컨 텐츠에 대한 학습을 통해 생성된 특징 벡터 및 연관 정보를 포함하는 과정과,
검색 컨텐츠를 입력 받고, 상기 검색 컨텐츠에 대한 상기 특징 벡터를 사용하여 인덱스 정보를 생성하고, 상기 인덱스 정보에 대응되는 컨텐츠를 검출하는 과정을 포함하는 것을 특징으로 하는 컨텐츠 검색 방법.
발명의 설명 기 술 분 야
본 개시는 컨텐츠 검색 기술에 관한 것이며, 보다 구체적으로는 컨텐츠 검색 에 사용되는 인덱스 정보를 구성하 [0001]
는 방법 및 장치에 대한 것이다.
배 경 기 술
인터넷 상의 컨텐츠가 기하급수적으로 늘어가고 있는 상황에서 검색은 모든 서비스의 기초가 되는 핵심 기술이 [0002]
다.
종래의 컴퓨터 기반 검색은 검색 엔진이 통상적으로 텍스트 또는 키워드의 검색 질의를 분석하여 결과를 반환하 [0003]
도록 이루어진다. 이미지, 영상과 같은 미디어 컨텐츠 역시 시각적 개체에 대한 메타데이터를 사전에 태깅하여 저장하고, 이와 같이 태깅된 정보(텍스트 또는 키워드)를 사용하여 검색이 이루어지게 된다.
이와 같은 키워드 기반의 검색 방법은 텍스트 기반의 컨텐츠뿐 아니라, 이미지, 영상과 같은 미디어 컨텐츠에 [0004]
대해서도 텍스트 또는 키워드를 사용한 인덱싱 처리 동작이 요구되는 문제가 있다.
나아가, 이미지, 영상과 같은 미디어 컨텐츠를 검색 질의로 사용하여 컨텐츠를 검색하더라도, 이미지, 영상과 [0005]
같은 미디어 컨텐츠 자체를 대상으로 검색이 이루어지는 것이 아니고, 미리 태깅된 정보(텍스트 또는 키워드)를 기준으로 해당되는 미디어 컨텐츠의 검색 결과를 반환하게 되므로, 사용자의 의도에 맞지 않는 검색 결과가 나 타나는 문제가 있다.
발명의 내용 해결하려는 과제
본 개시의 기술적 과제는 전술한 문제점을 해결하기 위한 것으로써, 입력된 컨텐츠에 대응되는 인덱싱 정보를 [0006]
적응적으로 구성할 수 있는 컨텐츠 검색 방법 및 장치를 제공하는 것이다.
본 개시의 다른 기술적 과제는 컨텐츠에 적응적으로 설정된 인덱싱 정보를 사용함으로써, 서로 다른 종류의 컨 [0007]
텐츠에 대해서도 검색의 신뢰도를 높일 수 있는 컨텐츠 검색 방법 및 장치를 제공하는 것이다.
본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 [0008]
또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하 게 이해될 수 있을 것이다.
과제의 해결 수단
본 개시의 일 양상에 따르면 컨텐츠 검색 방법이 제공될 수 있다. 상기 방법은 입력 컨텐츠에 대한 특징 벡터를 [0009]
확인하고, 상기 특징 벡터에 기초한 상기 입력 컨텐츠의 인덱스 정보를 결정하고, 상기 인덱스 정보를 사용하여 상기 입력 컨텐츠를 데이터베이스에 저장하되, 상기 인덱스 정보는 복수의 컨텐츠에 대한 학습을 통해 생성된 특징 벡터 및 연관 정보를 포함하는 과정과, 검색 컨텐츠를 입력 받고, 상기 검색 컨텐츠에 대한 상기 특징 벡
터를 사용하여 인덱스 정보를 생성하고, 상기 인덱스 정보에 대응되는 컨텐츠를 검출하는 과정을 포함한다.
본 개시에 대하여 위에서 간략하게 요약된 특징들은 후술하는 본 개시의 상세한 설명의 예시적인 양상일 [0010]
뿐이며, 본 개시의 범위를 제한하는 것은 아니다.
발명의 효과
본 개시에 따르면, 이미지, 영상과 같은 미디어 컨텐츠의 검색을 위한 별도의 정보를 구성하지 않더라도 미디어 [0011]
컨텐츠의 검색을 용이하게 실현할 수 있는 컨텐츠 검색 방법이 제공될 수 있다.
또한, 본 개시에 따르면, 컨텐츠에 적응적으로 설정된 인덱싱 정보를 사용함으로써, 컨텐츠의 종류에 상관 없이 [0012]
신뢰도가 높은 검색 결과를 실현할 수 있다.
또한, 본 개시에 따르면, 검색 질의의 제약 없이 사용자가 원하는 컨텐츠를 입력하여 다양한 종류의 컨텐츠를 [0013]
검색할 수 이는 컨텐츠 검색 방법이 제공될 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 [0014]
아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도면의 간단한 설명
도 1은 본 개시의 일 실시예에 따른 컨텐츠 검색 방법의 구성을 도시하는 흐름도이다.
[0015]
도 2는 본 개시의 일 실시예에 따른 컨텐츠 검색 방법에 사용되는 입력 컨텐츠와 목표 컨텐츠 사이의 관계를 예 시하는 도면이다.
도 3은 본 개시의 일 실시예에 따른 컨텐츠 검색 방법에 사용되는 연고나 정보를 예시하는 도면이다.
도 4는 본 개시의 일 실시예에 따른 컨텐츠 검색 방법을 실행하는 컴퓨팅 시스템을 예시하는 블록도이다.
발명을 실시하기 위한 구체적인 내용
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지 [0016]
식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현 될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
본 개시의 실시 예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 [0017]
있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없 는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접 [0018]
적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다 른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되 [0019]
며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시 예에서의 제1 구성요소는 다른 실시 예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시 예에서의 제2 구성요소를 다른 실시 예에서 제1 구성요소라고 칭할 수도 있다.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드 [0020]
시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위 로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시 예도 본 개시의 범위에 포함된다.
본 개시에 있어서, 다양한 실시 예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아 [0021]
니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시 예에서 설명하는 구성요소들의 부분집합으로 구성 되는 실시 예도 본 개시의 범위에 포함된다. 또한, 다양한 실시 예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시 예도 본 개시의 범위에 포함된다.
이하, 첨부한 도면을 참조하여 본 개시의 실시 예들에 대해서 설명한다.
[0022]
도 1은 본 개시의 일 실시예에 따른 컨텐츠 검색 방법의 구성을 도시하는 흐름도이다.
[0023]
도 1을 참조하면, 본 개시의 일 실시예에 따른 컨텐츠 검색 방법은 컨텐츠의 검색에 사용되는 정보를 학습하는 [0024]
과정(S110)과, 학습된 정보를 사용하여 컨텐츠의 검색을 처리하는 과정(S170)을 포함한다.
본 개시의 일 실시예에 따른 컨텐츠 검색 방법에서, 상기 컨텐츠는 문서, 이미지, 영상 등 다양한 종류의 컨텐 [0025]
츠를 포함할 수 있다.
또한, 본 개시의 일 실시예에 따른 컨텐츠 검색 방법에서, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정에서 [0026]
의 컨텐츠를 입력 컨텐츠로 지시하며, 컨텐츠의 검색을 처리하는 과정에서 입력되는 컨텐츠를 검색 컨텐츠로 지 시한다.
본 개시의 일 실시예에 따른 컨텐츠 검색 방법에서, '입력 컨텐츠', '검색 컨텐츠', '컨텐츠'라는 용어를 사용 [0027]
하여 설명하지만, 이들 용어('입력 컨텐츠', '검색 컨텐츠', '컨텐츠')는 실질적으로는 동일한 대상을 지시할 수 있다.
우선, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정(S110)은 컨텐츠의 특성을 나타내는 특징 벡터를 생성하 [0028]
고, 생성된 특징 벡터에 기초한 인덱스 정보를 생성하는 과정을 포함할 수 있다.
여기서, 특징 벡터의 생성은 학습을 통해 수행될 수 있다. 예컨대, 입력 컨텐츠에 대해, 미리 정해진 n 차원(여 [0029]
기서, n은 자연수)의 특징 벡터를 생성할 수 있는데, 이때, n 차원의 특징 벡터는 입력 컨텐츠를 복원할 수 있 는 정보를 포함하도록 구성될 수 있다. 또한, 유사한 입력 컨텐츠들로부터 검출된 n 차원의 특징 벡터들이 서로 유사한 값의 특징 벡터를 포함하도록 구성될 수 있다.
이를 위해, 입력 컨텐츠들의 연관성 정보를 확인하고, 확인된 연관성 정보에 대응되는 가중치를 특징 벡터에 반 [0030]
영할 수 있다.
이러한 동작은 RBMs (Restricted Boltzmann Machines), DAE (Deep Auto-Encoder) 등의 학습 방법에 기초하여 [0031]
수행될 수 있다.
이하, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정(S110)의 구체적인 동작을 설명한다.
[0032]
우선, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정(S110)은 입력 컨텐츠(201)로부터 특성 개체를 검출하는 [0033]
과정(S120)과, 상기 특성 개체에 기초하여 입력 컨텐츠(201)와 적어도 하나의 목표 컨텐츠(203) 사이의 연관 정 보를 검출하는 과정(S130)과, 연관 정보에 기초하여 상기 입력 컨텐츠(201)의 특성 개체에 대한 조합을 설정하 는 과정(S140)과, 상기 입력 컨텐츠(201)의 특성 개체에 대한 조합을 기반으로 인덱스 정보를 설정하는 과정 (S150)을 포함할 수 있다.
S120 단계에서는, 예컨대, 입력 컨텐츠(301)로부터 적어도 하나의 특성 개체가 검출된다. 특성 개체의 검출은 [0034]
학습에 의해 수행될 수 있으며, 입력 컨텐츠(301)의 종류 또는 내부에 포함된 정보에 기초하여, 다양하게 설정 또는 검출될 수 있다.
상기 적어도 하나의 특성 개체는 상기 입력 컨텐츠(301)의 게시 영역, 상기 입력 컨텐츠(301)가 생성된 위치정 [0035]
보, 상기 입력 컨텐츠(301)에 포함된 인물 정보, 상기 입력 컨텐츠(301)에 포함된 객체, 상기 입력 컨텐츠(30 1)에 대응되는 키워드 등을 포함할 수 있다.
상기 입력 컨텐츠(301)의 게시 영역은 입력 컨텐츠(301)가 게시된 웹 페이지의 영역에 대한 정보일 수 있으며, [0036]
예컨대, 입력 컨텐츠(301)가 게시된 웹 페이지 주소, 웹 페이지 내에서의 위치 등에 대한 정보를 포함할 수 있 다.
상기 입력 컨텐츠(301)가 생성된 위치정보는 상기 입력 컨텐츠(301)의 생성시 태깅된 GPS 정보 등을 포함할 수 [0037]
있다.
상기 입력 컨텐츠(301)에 포함된 인물 정보는, 상기 입력 컨텐츠(301)에 포함된 인물을 식별하는 인물 식별자 [0038]
(예, 사람 이름 등), 또는 상기 입력 컨텐츠(301)에 포함된 인물의 특징점을 조합한 정보(예, 안면 인식 정보) 등을 포함할 수 있다.
상기 입력 컨텐츠(301)가 문서일 경우, 입력 컨텐츠(301)에 포함된 객체는 입력 컨텐츠(301)에 포함되는 단어를 [0039]
포함할 수 있으며, 상기 입력 컨텐츠(301)가 영상이나, 이미지 같은 미디어 컨텐츠일 경우, 상기 입력 컨텐츠 (301)에 포함되는 객체는 영상이나, 이미지에 마련된 사물에 대한 정보를 포함할 수 있다.
나아가, 특성 개체는 상기 입력 컨텐츠(301)의 종류(예, 영상, 오디오, 이미지, 텍스트, 문서, 멀티미디어 등) [0040]
에 따라 각각 다르게 구비될 수 있다. 따라서, S120 단계에서는 입력 컨텐츠(301)의 종류를 식별하고, 입력 컨 텐츠(301)의 종류에 맞는 특성 개체를 확인하는 동작을 처리할 수 있다.
S130 단계에서는, 입력 컨텐츠(301)의 적어도 하나의 특성 개체를 기반으로, 적어도 하나의 목표 컨텐츠(311, [0041]
312, 313) 사이의 연관 정보가 설정된다. 적어도 하나의 목표 컨텐츠(311, 312, 313)는 컨텐츠DB(200)에 저장되 는 과정에서, 특성 개체가 검출되고, 연관 정보를 기반으로 한 인덱싱 정보가 설정되게 된다. 따라서, S130 단 계에서는, 입력 컨텐츠(301)의 적어도 하나의 특성 개체와, 컨텐츠DB(200)에 저장된 적어도 하나의 목표 컨텐츠 (311, 312, 313)의 특성 개체 사이의 연관 정보를 확인할 수 있다.
본 개시의 일 실시예에서, 연관 정보는 입력 컨텐츠(301)와 적어도 하나의 목표 컨텐츠(311, 312, 313) 사이의 [0042]
연관성을 나타내는 정보일 수 있다. 예를 들어, 연관 정보는 입력 컨텐츠(301)와 적어도 하나의 목표 컨텐츠 (311, 312, 313)와의 연관성을 수치화하여 표시한 정보일 수 있으며, 컨텐츠들 사이의 연관성이 높을 경우 연관 정보가 나타내는 수치를 상대적으로 크게 설정하고, 컨텐츠들 사이의 연관성이 낮을 경우 연관 정보가 나타내는 수치를 상대적으로 작게 설정할 수 있다.
다른 예로서, 연관 정보는 컨텐츠들 사이의 연관성을 영문자로 표시한 정보일 수 있으며, 컨텐츠들 사이의 연관 [0043]
성이 높은 순서대로 영문 알파벳을 부여 할 수 있다. 예컨대, 컨텐츠들 사이의 연관성이 높을 수록 'A'에 가까 운 값을 부여하고, 컨텐츠들 사이의 연관성이 낮을 수록 'Z'에 가까운 값을 부여할 수 있다.
상기 연관 정보는 입력 컨텐츠(301)의 특성 개체와, 적어도 하나의 목표 컨텐츠(311, 312, 313)의 특성 개체 사 [0044]
이의 유사성에 기초하여 결정될 수 있다.
예를 들어, 입력 컨텐츠(301)와 목표 컨텐츠(311)가 모두 이미지 컨텐츠임에 따라, 입력 컨텐츠(301)의 특성 개 [0045]
체로서 이미지에 포함된 인물 정보, 이미지가 촬영된 지역의 위치정보, 이미지가 촬영된 시간정보 등의 개체가 검출될 수 있다. 이에 따라, S130 단계에서는, 입력 컨텐츠(301)에 포함된 인물 정보, 이미지가 촬영된 지역의 위치정보, 이미지가 촬영된 시간정보와 연관도가 높은 특성 개체를 구비하는 목표 컨텐츠(311)를 검출한다.
상기 연관 정보는 컨텐츠가 게시된 환경을 고려하여 설정될 수 있다. 예를 들어, 소셜미디어 서비스를 기반으로 [0046]
상기 입력 컨텐츠가 게시될 경우, 특성 개체로서 상기 입력 컨텐츠가 생성된 위치정보를 검출할 수 있다. 그리 고, 상기 입력 컨텐츠가 생성된 위치정보를 기준으로 입력 컨텐츠와 목표 컨텐츠 사이의 연관 정보를 결정할 수 있다. 다른 예로서, 입력 컨텐츠가 개인의 블로그와 같은 웹 페이지에 게시되어 있을 경우, 특성 개체로서 상기 입력 컨텐츠의 게시 영역, 입력 컨텐츠에 포함된 객체, 입력 컨텐츠에 포함된 키워드 등을 검출할 수 있다. 그 리고, 입력 컨텐츠의 게시 영역, 입력 컨텐츠에 포함된 객체, 키워드 사이의 관련성 등을 종합적으로 반영하여 연관 정보를 결정할 수 있다.
S140 단계에서는, 연관 정보에 기초하여 입력 컨텐츠의 특성 개체에 대한 조합을 설정한다. 입력 컨텐츠와 목표 [0047]
컨텐츠 사이의 연관 정보에 기초하여, 상대적으로 높은 연관 정보를 갖는 목표 컨텐츠를 결정하고, 상기 결정된 목표 컨텐츠와의 연관 정보에 관련된 특성 개체의 결정한다. 그리고, 상기 결정된 특성 개체의 순서 조합을 설 정한다. 즉, 연관 정보를 결정하는데 중요한 특성 개체에 대해서 우선 순위를 부여하여 상대적으로 높은 순서를 부여고, 부여된 순서에 기초하여 특성 개체를 조합할 수 있다.
S150 단계에서는, 복수의 목표 컨텐츠들에 대해 입력 컨텐츠 사이의 연관 정보를 확인하고, 연관 정보에 대한 [0048]
가중치를 설정함으로써, 연관 정보에 대한 학습을 수행할 수 있다.
구체적으로, 입력 콘텐츠(x)는 n 차원 특징 벡터(여기서, n은 자연수이다.)로 표현될 수 있다. 입력 콘텐츠(x) [0049]
에 가중치(w)를 적용한 함수(f(x;w))를 통해 인덱스(z)를 설정할 수 있다. S150 단계에서는, 입력 콘텐츠에 적 용할 가중치(w)를 학습하는 동작이 수행된다.
인덱스(z)는 k차원의 특징 벡터이며, 특징 벡터의 각 필드는 식별 가능한 캐릭터로 구성된다. 즉 인덱스(z)는 k [0050]
길이의 문자열로 표현될 수 있다. 식별 가능한 캐릭터로 구성하는 것은 종래 데이터베이스가 인덱스를 숫자 혹 은 문자로만 구성하기 때문이다. 가중치(w)는 콘텐츠(x)와 f'(z;w-1)의 출력 간 차이를 최소화 하도록 학습된다.
이때, w-1는 가중치 w의 역(inverse)이며, f'(z;w-1)는 인덱스(z)를 통해 원래 콘텐츠(x)를 추정한 결과(x')를
반환한다. 이와 같은 과정은 종래 학습 기술인, RBMs (Restricted Boltzmann Machines), DAE (Deep Auto- Encoder) 등을 활용하여 구현 가능하다.
본 개시의 일 실시예에서의 인덱스(z)가 컨텐츠들 사이의 연관 정보를 반영하고, 인덱스로서의 역할을 할 수 있 [0051]
도록 세가지 제약 사항을 추가하여 학습을 수행하는 것이 바람직하다.
첫째, 인덱스(z)의 각 필드는 식별 가능한 캐릭터 중 하나로 맵핑되어야 한다.
[0052]
둘째, 콘텐츠(x) 사이의 인덱스(z)는 중복되지 않는다.
[0053]
셋째, 콘텐츠 A(x_A)가 컨텐츠 C(x_C)보다 컨텐츠 B(x_B)에 가깝다면, 컨텐츠 A, 컨텐츠 B, 컨텐츠 C에 대응되 [0054]
는 각각의 인덱스(z_a, z_b, z_c)는 하기의 수학식 1에 나타내는 조건을 만족해야 한다.
수학식 1
[0055]
한편, 학습된 정보를 사용하여 컨텐츠의 검색을 처리하는 과정(S170)에서는 검색 컨텐츠를 입력받고, 검색 컨텐 [0056]
츠의 인덱스 정보(예, 특징 벡터)를 확인한다. 이때, 상기 검색 컨텐츠에 대한 인덱스 정보(예, 특징 벡터)는 전술한 입력 컨텐츠의 인덱스 정보(예, 특징 벡터)를 생성하는 동작과 유사하게 처리될 수 있다.
다음으로, 컨텐츠 DB에 수록된 컨텐츠를 대상으로, 확인된 검색 컨텐츠의 인덱스 정보(예, 특징 벡터)에 대응되 [0057]
는 컨텐츠를 검출할 수 있다. 이때, 검출된 컨텐츠에 대한 리스트(예, 컨텐츠 리스트)를 생성하여 제공할 수도 있다.
이하, 학습된 정보를 사용하여 컨텐츠의 검색을 처리하는 과정(S170)의 구체적인 동작을 설명한다.
[0058]
우선, S180 단계에서는, 검색 컨텐츠를 입력받고, 상기 검색 컨텐츠에 대한 인덱스 정보를 생성한다. 상기 검색 [0059]
컨텐츠에 대한 인덱스 정보는 전술한 입력 컨텐츠의 인덱스 정보를 생성하는 동작과 유사하게 처리될 수 있다.
즉, 학습에 의해 결정된 방식에 기초하여, 상기 검색 컨텐츠로부터 특성 개체를 확인하고, 상기 특성 개체를 사 용하여 인덱스 정보를 생성할 수 있다.
그리고, S190 단계에서는, 컨텐츠 DB에 수록된 컨텐츠를 대상으로, 상기 검색 컨텐츠의 인덱스 정보에 대응되는 [0060]
인덱스 정보를 구비하는 컨텐츠를 검출할 수 있다. 그리고, 검출된 컨텐츠에 대한 리스트(예, 컨텐츠 리스트)를 생성하여 제공할 수 있다. 나아가, 상기 검색 컨텐츠의 인덱스 정보에 대응되는 인덱스 정보를 구비하는 컨텐츠 를 검출하는 과정에서, 상기 검색 컨텐츠의 인덱스 정보와 저장된 컨텐츠의 인덱스 정보 사이의 차이를 확인하 고, 가장 가까운 순서대로 컨텐츠를 추출할 수 있다.
비록, 본 개시의 일 실시예에서, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정(S110)에서, 입력 컨텐츠의 특 [0061]
성 개체와 연관 정보를 사용하여 인덱스 정보를 생성하는 것을 예시하였으나, 본 개시가 이를 한정하는 것은 아 니다. 본 개시의 일 실시예에서, 컨텐츠의 검색에 사용되는 정보를 학습하는 과정(S110)은 인덱스 정보를 설정 할 수 있으면 충분하다.
예컨대, 입력 컨텐츠가 문서, 웹페이지, 미디어 컨텐츠와 같이 특성 개체를 구비하는 컨텐츠일 경우, 전술한 바 [0062]
와 같이, 특성 개체와 연관정보를 확인하고 이러한 정보에 기초하여 인덱스 정보를 설정할 수 있다. 다른 예로 서, 입력 컨텐츠가 미리 정해진 n 차원(여기서, n은 자연수)의 특징 벡터를 구비하는 컨텐츠일 경우, 입력 컨텐 츠에 구비된 특징 벡터를 확인하여 인덱스 정보로서 설정할 수 있다.
도 4는 본 개시의 일 실시예에 따른 컨텐츠 검색 방법을 실행하는 컴퓨팅 시스템을 예시하는 블록도이다.
[0063]
도 4를 참조하면, 컴퓨팅 시스템(1000)은 버스(1200)를 통해 연결되는 적어도 하나의 프로세서(1100), 메모리 [0064]
(1300), 사용자 인터페이스 입력 장치(1400), 사용자 인터페이스 출력 장치(1500), 스토리지(1600), 및 네트워 크 인터페이스(1700)를 포함할 수 있다.
프로세서(1100)는 중앙 처리 장치(CPU) 또는 메모리(1300) 및/또는 스토리지(1600)에 저장된 명령어들에 대한 [0065]
처리를 실행하는 반도체 장치일 수 있다. 메모리(1300) 및 스토리지(1600)는 다양한 종류의 휘발성 또는 불휘발
성 저장 매체를 포함할 수 있다. 예를 들어, 메모리(1300)는 ROM(Read Only Memory) 및 RAM(Random Access Memory)을 포함할 수 있다.
따라서, 본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서(1100)에 의해 [0066]
실행되는 하드웨어, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM과 같은 저장 매체(즉, 메모리(1300) 및/또는 스토리지(1600))에 상주할 수도 있다. 예시적인 저장 매체 는 프로세서(1100)에 커플링되며, 그 프로세서(1100)는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정 보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서(1100)와 일체형일 수도 있다. 프로세서 및 저장 매 체는 주문형 집적회로(ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법 으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 [0067]
순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있 다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단 계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있 다.
본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 [0068]
것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.
또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현 [0069]
될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 [0070]
또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체 (non-transitory computer-readable medium)를 포함한다.
도면 도면1
도면2
도면3
도면4