이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 검색시스템을 도시한 도면이다. 본 실시예에 따른 검색시스템을 구성하는 블럭들은 S/W로 구현할 수 있음은 물론 H/W로 구현할 수 있다. 또한, 검색시스템을 구성하는 블럭들 중 일부는 S/W로 나머지는 H/W로 구현하는 것도 가능하다.
본 실시예에 따른 검색시스템은, 정보 제공자가 제공하는 정보를 제공자의 의도에 따라 디렉토리 별로 분류하여 저장하고, 정보 검색자의 검색 의도를 파악하여 해당하는 디렉토리에 저장되어 있는 정보에 대해 검색을 수행하는 문맥 지각형(Context awareness) 정보 제공/검색을 통해, 합의형/맞춤형 검색서비스를 제공하는 것이다.
또한, 본 실시예에서는 컨텐츠 별로 각기 다른 메타데이터(metadata)를 정의하고, 이 메타데이터를 기반으로 생성되는 편집기를 이용하여, 정보 제공 및 검색 내용을 보다 상세하게 발전시키는 방식을 채택하여, 기존의 검색 방식 보다 간편하고 정교한 검색을 가능하게 한다.
여기서, 메타데이터란 정보 제공/검색의 대상이 되는 컨텐츠의 특징을 보다 상세하고 체계적으로 정의할 수 있는 데이터이다. 예를 들어, '책'에 대한 메타데이터는 책이름, 저자, 출판사, 출판년도, 가격 및 주제 등과 같은, 책에 대한 세부정보가 이에 해당한다.
본 실시예에서, 메타데이터는 정해진 프레임(Frame)을 가지는 편집기를 통해 입력하고 확인하는 것이 가능하게 한다. 프레임의 형식은 테이블 형식 또는 문장 형식으로 구현할 수 있다.
도 2는 컨텐츠들에 대한 메타데이터를 예시한 도면이다. 도 2에 도시된 바에 따르면, 모든 영역의 컨텐츠들에 대해 필수적인 메타데이터가 정의되어 있는 것을 확인할 수 있다.
예를 들어, 부동산매매(202)는 메타데이터로, "매물", "소재지", "희망가", "특징", "지하철 정보" 및 "영상정보" 등이 표준화되어 있음을 확인할 수 있다.
도 2에 도시된 컨텐츠들에 대한 메타데이터는 도 1에 도시된 메타데이터 DB(119)에 저장되어 있다.
한편, 본 실시예에 따른 검색시스템은, 도 1에 도시된 바와 같이, 정보검색창(101), 검색어 입력기(102), 검색어 형태소 처리기(103), 검색어 구문 해석 기(104), 검색자 의도 파악기(105), 정보 모니터(106), 검색용 메타데이터 추출기(107), 검색용 편집기(108), 검색 디렉토리 결정기(109), 검색기(110), 메타데이터 비교기(111), 부가서비스 데이터베이스(112), 부가서비스 생성기(113), 검색 결과 생성기(114), 정보 저장기(115), 저장 디렉토리 결정기(116), 정보 제공용 편집기(117), 정보 제공용 메타데이터 추출기(118), 메타데이터 DB(119), 정보 제공자 의도 파악기(120), 정보 모니터(121), 정보 구문 해석기(122), 구문문법 규칙사전(123), 정보 형태소 처리기(124), 형태소 사전(125), 정보 입력기(126), 정보 제공창(127), 정보 DB(128) 및 검색결과 표시기(129)를 포함한다.
정보 입력기(126)는 정보 제공창(127)을 통해 사용자가 입력한 정보를 정보 형태소 처리기(124)로 전달한다.
형태소 사전(125)에는 각 단어의 품사 정보가 데이터 베이스화 되어 있다. 뿐만 아니라, 형태소 사전(125)에는 각 단어의 의미 정보, 동의어 정보, 대역 외국어 등의 확장 정보도 데이터 베이스화 되어 있다. 여기서, 형태소 사전(125)에 등록되는 단어에 대한 제한은 없으므로, 형태소 사전(125)에는 명사 이외의 다른 품사(대명사, 형용사, 조사, 어미 등)도 등록될 수 있음은 물론이다.
형태소 사전(125)에 수록되어 있는 품사 정보는 텍스트를 품사 별로 분리하는데 참조되고, 의미 정보는 컨텐츠 작성자 또는 검색자의 의도를 파악하는데 이용된다. 또한, 동의어 정보는 보다 넓은 범위의 확장 검색을 수행하는데 이용되고, 대역 외국어는 다국어 검색을 수행하는데 이용된다.
도 3에는 형태소 사전(125)에 수록되어 있는 정보가 예시되어 있으므로, 형 태소 사전(125)에 대해서는 후에 도 3을 참조하여 상세히 설명하기로 한다.
정보 형태소 처리기(124)는 정보 입력기(126)로부터 전달받은 텍스트를 '의미 있는 단어' 단위로 분리한다. 여기서, '의미 있는 단어'란 품사를 말하는데, 이에 따르면 정보 형태소 처리기(124)는 텍스트를 품사 별로 분리하는 것으로 이해할 수 있다.
이를 위해, 정보 형태소 처리기(124)는 형태소 사전(125)에 데이터 베이스화되어 있는 단어에 대한 품사 정보를 참조하여, 텍스트를 품사별로 분리하게 된다.
정보 구문 해석기(122)는 정보 형태소 처리기(124)의 형태소 처리 결과를 토대로, 사용자가 입력한 정보에 대해 구문 해석을 수행한다. 정보 구문 해석기(122)는 구문 해석을 수행함에 있어, 구문문법 규칙사전(123)에 수록되어 있는 문법 규칙을 참조한다.
정보 제공자 의도 파악기(120)는 정보 구문 해석기(122)에서 출력되는 구문 해석 결과를 이용하여, 정보 제공자의 의도를 파악한다.
정보 모니터(121)는 정보 제공자 의도 파악기(120)에 의해 파악된 정보 제공자의 의도를 사용자가 볼 수 있도록 출력한다. 이를 위해, 정보 모니터(121)는 그래픽 툴을 이용할 수 있다.
정보 제공용 메타데이터 추출기(118)는 정보 제공자 의도 파악기(120)가 파악한 정보 제공자의 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(119)로부터 추출한다.
정보 제공용 편집기(117)는 정보 제공용 메타데이터 추출기(118)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 정보 제공자에게 제공한다.
저장 디렉토리 결정기(116)는 컨텐츠가 저장되기에 적합한 정보 DB(128) 상의 디렉토리를 결정한다. 이때, 저장 디렉토리 결정기(116)는 정보 제공자 의도 파악기(120)가 파악한 정보 제공자의 의도를 참조하여 디렉토리를 결정할 수 있다.
정보 저장기(115)는 정보 제공용 편집기(117)에 의해 생성된 메타데이터들을 통합한 컨텐츠를 정보 DB(128)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(116)에 의해 결정된 디렉토리에 저장된다.
지금까지 설명한 구성들은 정보제공을 위해 필요한 정보를 생성하여 저장하는데 이용되는 구성들이다. 이하에서는, 정보 검색자가 검색어를 입력하여 검색을 요청한 경우, 검색 의도를 파악하여 보다 상세한 검색어 입력을 유도하여 보다 정확한 검색이 가능하도록 하는 구성들에 대해 상세히 설명한다. 여기서, 사용자가 입력하는 검색어는 단어는 물론이고, 구나 문장인 경우도 포함된다.
정보검색창(101)은 사용자가 검색어를 단어, 구 또는 문장으로 입력할 수 있는 입력창을 제공한다. 그리고, 검색어 입력기(102)는 정보검색창(101)을 통해 사용자가 입력한 검색어를 검색어 형태소 처리기(103)로 전달한다.
검색어 형태소 처리기(103)는 검색어 입력기(102)로부터 전달받은 검색어를 '의미 있는 단어' 단위로 분리한다. 여기서, '의미 있는 단어'란 품사를 말하는데, 이에 따르면 검색어 형태소 처리기(103)는 정보 형태소 처리기(124)와 동일한 방법으로 검색어를 품사 별로 분리하는 것으로 이해할 수 있다.
이를 위해, 검색어 형태소 처리기(103)는 형태소 사전(125)에 데이터 베이스화되어 있는 단어에 대한 품사 정보를 참조하여, 텍스트를 품사별로 분리하게 된다.
검색어 구문 해석기(104)는 검색어 형태소 처리기(103)의 형태소 처리 결과를 토대로, 검색자가 입력한 검색어에 대해 구문 해석을 수행한다. 검색어 구문 해석기(104)는 구문 해석을 수행함에 있어, 구문문법 규칙사전(123)을 참조한다.
검색자 의도 파악기(105)는 검색어 구문 해석기(104)에서 출력되는 구문 해석 결과를 이용하여, 검색자의 의도를 파악한다.
정보 모니터(106)는 검색자 의도 파악기(105)에 의해 파악된 검색자의 의도를 사용자가 볼 수 있도록 출력한다. 이를 위해, 정보 모니터(106)는 그래픽 툴을 이용할 수 있다.
검색용 메타데이터 추출기(107)는 검색자 의도 파악기(105)가 파악한 검색자의 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(119)로부터 추출한다.
검색용 편집기(108)는 검색용 메타데이터 추출기(107)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다.
검색 디렉토리 결정기(109)는 컨텐츠를 검색하기에 적합한 정보 DB(128) 상의 디렉토리를 결정한다. 이때, 검색 디렉토리 결정기(109)는 검색자 의도 파악기(105)가 파악한 검색자의 의도를 참조하여 디렉토리를 결정할 수 있다. 그리고, 검색 디렉토리 결정기(109)는 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
검색기(110)는 검색용 편집기(108)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(128)에서 검색한다. 이때, 검색은 검색 디렉토리 결정기(109)에서 결정된 디렉토리에서 수행된다.
검색기(110)는 검색용 편집기(108)에 의해 입력된 메타데이터들을 동의의 메타데이터들로 교체하여 검색하는 확장 검색을 수행하는 것도 가능함은 물론이다.
또한, 검색기(110)는 메타데이터와 구조 및 단어가 완전히 동일한 메타데이터 뿐만 아니라, 구조와 단어가 일부만 동일한 메타데이터를 가지는 컨텐츠를 검색하는 것도 가능하다. 즉, 검색기(110)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색도 가능한 것이다.
메타데이터 비교기(111)는 검색용 편집기(108)를 통해 입력된 메타데이터들과 검색기(110)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교하고, 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다. 이와 같은, 비교(일치정도 판단)는 테이블 형식으로 이루어진 메타데이터들 각각을 비교하는 방법에 의해 가능하다.
부가서비스 데이터베이스(112)에는 검색자의 검색 의도에 적합한 사이트 정보 또는 관련 광고서비스를 제공하는 수단 등이 저장되어 있다.
부가서비스 생성기(113)는 검색키와 관련한 부가서비스를 생성한다. 이를 위해, 부가서비스 생성기(113)는 부가서비스 데이터베이스(112)에 저장되어 있는 부가서비스들 중 검색자의 검색 의도에 적합한 부가서비스를 이용한다.
부가서비스 데이터베이스(112)와 부가서비스 생성기(113)에 의해 제공되는 부가서비스는 컨텐츠 문맥 지각형(Context awareness) 서비스로 구현할 수 있다. 이때, 컨텐츠 문맥 지각형 서비스에는 안내서비스, 매매서비스, 광고서비스, 교육서비스, 상담서비스, 추천서비스, 행정서비스 등이 포함된다.
검색 결과 생성기(114)는 메타데이터 비교기(111)에서 출력되는 검색결과(컨텐츠들)와 일치정도에 부가서비스 생성기(113)에서 생성된 부가서비스를 부가한다.
검색결과 표시기(129)는 검색 결과 생성기(114)에서 생성된 부가서비스가 부가된 검색결과를 화면을 통해 출력하여 사용자에게 제공한다.
한편, 부가서비스 없이 검색결과와 일치정도만을 사용자에게 제공하는 것이 가능하다. 이 경우는, 부가서비스 생성기(113)가 부가서비스를 생성하지 않도록 하거나, 생성하더라도 검색 결과 생성기(114)가 생성된 부가서비스를 부가하지 않도록 하는 방식에 의해 가능하다.
이하에서는, 전술한 형태소 사전(125)에 대해, 도 3을 참조하여 상세히 설명한다. 도 3에는 형태소 사전의 일 예로, 한국어 형태소 사전을 도시하였다.
도 3에 도시된 바와 같이, 형태소 사전(125)은, 1) 제1열에는 단어가, 2) 제2열에는 단어의 품사정보가, 3) 제3열에는 단어의 의미 정보가, 4) 제4열에는 동의어(또는 동의구), 유사어 및/또는 대표어의 집합이, 5) 제5열에는 대역 영어가, 6) 제6열에는 대역 일본어가, 7) 제7열에는 대역 중국어가, 각각 나열되어 구성된다.
도시된 형태소 사전(125)은, 정보 형태소 처리기(124)가 텍스트를 형태소 처리하는데 이용되고, 검색어 형태소 처리기(103)가 검색어를 형태소 처리하는데 이 용된다.
전술한 바 있듯이, 형태소 처리는 주어진 문장의 요소가 어떤 의미 있는 단어로 구성되어 있는가를 가리는 것이다. 예를 들어, "학교에 간다"를 형태소 처리하면 "학교+에+가+ㄴ다"와 같이 단어 경계를 나누는 것이, 형태소 처리이다.
이때, 사용하는 정보는 형태소 사전(125)에 저장되어 있는 품사 정보로 각 품사간의 인접가능 관계를 조사하여 처리 결과로써, "학교/명사+에/조사+가/동사+ㄴ다/어미"와 같이 출력한다.
이와 동시에 형태소 처리의 부차적 정보로써 "단어빈도", "문장수" 등 언어통계치를 구할 수 있고 의미 정보, 동의어 정보, 대역 외국어를 동시에 출력하는 것이 가능하다.
한편, 형태소 사전(125)에 수록되어 있는 의미 정보는,
1) 명사의 경우, 물건|자연|재료|요소|도구|수단|인간관계|사회|범죄|조직|문화|동물|인간|식물|수|추상|구성|구체|행위|상태|때|장소|위치|간격|회수|비율|정도|수량|강조|진위|감정|욕설|비하|정치|경제|회사명|지역명|사건|인명|음식|음란|의약품 등으로 분류되고,
2) 동사의 경우, 행위|순간|계속|이동|변화|감정|사고|지각|존재|판단|무의지|표현|서비스 등으로 분류되며,
3) 형용사의 경우, 상태|관계|성질|정도|강조|호감|비호감|선정|음란|양태 등으로 분류되고,
4) 조사의 경우, 구|수단/방법|원료/재로|원인/이유|원천/기점|착점/방 향|목적/목표|결과|주는쪽|받는쪽|장소|때|경우|내용|역할|대조|범위/회수|정도|수량|비율|강조|진위|양태 등으로 분류하며,
5) 부사의 경우, |강조|등으로 분류되고,
6) 양태를 나타내는 어미의 경우, 과거|현재|미래|부정|가능|자별|의무|필요|불가피|요청|요구|단정|확실한추정|불확실추정|예정|희망|시행|명령|의문|의리|허가|권유|사역|의뢰|수동|수익|겸손|존칭 등으로 분류된다.
하지만, 위에서 제시한 분류는 일 예에 불과하며 고정적인 것도 아니다. 단어의 의미는 시시각각 변화한다는 점에서, 의미 분류도 고정된 것이 아닌 시대의 변천에 따라 변화될 수 있음은 물론이다. 또한, 의미 정보 분류시에는 시소러스 분류에 의한 어휘 사전을 참조할 수 있음은 물론이다.
도 3에 예시된 바에 따르면,
1) "이승만(125-1)"은, 품사 정보가 "명사", 의미 정보는 "인명", 동의어 정보는 "한국 대통령"임을 알 수 있고,
2) "냉면(125-2)"은, 품사 정보가 "명사", 의미 정보는 "음식명", 동의어 정보는 "한국 대표적 면류 음식"임을 알 수 있으며,
3) "이산화탄소(125-3)"는, 품사 정보가 "명사", 의미 정보가 "유해물질", 동의어 정보가 "시오투, 지구 온난화"임을 알 수 있고,
4) "세요(125-4)"는, 품사 정보가 "어미", 의미 정보가 "요청,존대", 동의어 정보가 "명령"임을 알 수 있으며,
5) "놈(125-5)"은 품사 정보가 "명사", 의미 정보가 "비하", 동의어 정보가 "넘"임을 알 수 있다.
의미 정보와 동의어 정보는, 검색을 확대, 확장시키는데 이용될 수 있다. 예를 들어, "이승만"을 검색어로 한 경우, "이승만"에 대한 검색결과는 물론, "한국 대통령"에 관련하는 검색 결과도 더 제공하는 것이 가능하도록 한다.
또한, "이산화탄소 대책"을 검색어로 한 경우, "이산화탄소 대책"에 대한 검색결과는 물론, "유해 물질", "CO2 대책", "지구 온난화 대책"에 관련하는 검색결과도 더 제공하는 것이 가능하다.
마찬가지로, "소고기, 돼지고기, 김치" 등의 의미 정보는 "식품"이고, 동의어 정보는 "육류", "채소류"이므로, 의미 정보와 동의어 정보를 이용하여 확장 검색을 수행하는 것이 가능하다.
이와 같이, 형태소 사전(125)에는 품사 정보 외에도 의미 정보와 동의어 정보가 수록되어 있으므로, 풍부한 정보 검색을 가능하게 한다.
이하에서는, 구/문장을 형태소 처리하여 구문 해석하는 과정에 대해 도 3을 참조하여 부연설명한다.
구문해석이란, 문장을 구성하는 각각의 의미 있는 단어가 바른 문으로서 어떤 구조를 가지고 있는지를 해석하는 과정이다. 구문해석에는 자연언어를 기술하는 문법이론이 이용된다. 자연언어를 기술하는 문법이론에는 구구조문법, 격문법, 의존문법, 어휘문법 등이 있는데, 이들은 문법기술 방법에 차이점이 있다.
영어, 한국어, 중국어, 일본어 등 모든 언어에 상기 문법이론은 적용 가능하므로, 본 실시예에서 제시하는 한국어 구문 해석 방법론은 다른 언어들에도 적용할 수 있다.
도 4에 도시된 형태소 처리(401) 과정을 끝낸 입력문은 의미 있는 단어 단위로 분리되며 분리된 단어들에는 각각 품사 정보가 부가(402)되어 있다. 품사 정보는 {명사, 대명사, 수사, 형용사, 부사, 조사…} 등 10~12개 정도의 품사명으로 되어 있다.
각각의 단어들이 서로 어떻게 결합되어 바른 구, 절, 문을 이루는가를 해석하기 위해서는 각 언어에서의 바른 구, 절, 문에 대한 생성규칙(403)이 필요한데, 이 규칙은 전술한 구문문법 규칙사전(123)에 포함되어 있으므로, 구문문법 규칙사전(123)으로부터 추출한다.
예를 들면, "문장은 주부(명사구)와 술부(동사구)로 이루어진다" 라는 지식을 문법 규칙화하면 S(Sentence)←NP(Noun Phrase)·VP(Verb Phrase)로 표현된다. 이러한 규칙이 정의된 곳이 구, 절, 문에 대한 생성규칙(403)인 것이다.
이들 규칙을 간단히 설명하면, 1) 구구조문법 형식은 단어 단위에서 구, 절, 문 단위로 생성하는 규칙을 기반으로 정의되고, 2) 격문법 형식과 의존문법형식은 어절이라는 단위들의 수식과 피수식 관계를 규칙으로 정의되며, 3) 어휘문법형식은 VP=cat(동사, 종지, … Sub, SEM) 형식을 취하며 각 단어간의 바른 결합을 단일화(Unification)라는 연산으로 수행된다.
구체적인 예를 들면, 구구조문법 규칙과 처리방법은
(1) S ← PPV
(2) PP ← NP
과 같이 정의해 두고 "서울에서 왔다"를 구문 해석하면 형태소 처리 결과 (서울/N(명사), 에서/P(조사), 왔다/V(동사)과거)의 단어들이 생성되며, 구문 해석이 수행되면, "서울에서"는 "NP"이므로 "서울에서"는 문법규칙(2)에 따라 "PP(전치사구)"로 구문 해석되며 "왔다"는 'V(동사)'이므로 PP와 V는 문법규칙(1)에 따라 'S(문장)'으로 해석되어 그 결과를 한국어의 경우 ((서울에서)왔다)라는 목(tree)구조 또는 리스트(list)구조식으로 출력된다.
한편, 상기의 예문을 의존문법규칙으로 해석하면 어절, "서울에서"가 어절 "왔다"를 수식하는 구문 해석 관계를 "서울에서→왔다"라는 표현식으로 출력된다.
그리고, 어휘문법형식은 (왔다, [누가], [서울에서])라는 구문해석 결과를 의미표현식으로 출력한다. 본 발명에서는 문법 이론에 따라 각각의 구문해석 표현식을 출력(404)할 수 있다. 이에 따라, 품사정보에 의한 표현식(405), 의미정보에 의한 표현식(406), 동의어/구에 의한 표현식(407)이 출력가능하다.
도 5은 본 발명의 다른 실시예에 따른 검색방법의 설명에 제공되는 흐름도이다.
도 5에 도시된 바와 같이, 정보 제공창(127)을 통해 사용자가 "중고차 팝니다"를 입력하면, 정보 입력기(126)는 사용자가 입력한 정보를 정보 형태소 처리기(124)로 전달한다(501).
그러면, 정보 형태소 처리기(124)는 형태소 사전(125)를 참조하여, "중고차 팝니다"를 품사 별로 분리하여 "중고차/파/ㅂ니다"로 출력한다(502).
이때, 형태소 처리 결과로 품사 정보와 의미 정보(명사/중고차, 동사/판매, 어미/존대)가 함께 출력된다. 여기서, 품사 정보는 명사, 동사, 어미이고, 의미 정보는 중고차, 판매, 존대이다.
이후, 정보 구문 해석기(122)는 형태소 처리 결과에 대해 구문 해석을 수행하여 그 결과인 (중고차→판매)를 출력한다(503).
정보 제공자 의도 파악기(120)는 정보 구문 해석기(122)에서 출력되는 구문 해석 결과를 이용하여, 정보 제공자의 의도를 '중고차 판매'로 파악한다(504).
그러면, 정보 제공용 메타데이터 추출기(118)는 정보 제공자의 의도인 '중고차 판매'에 적합한 컨텐츠에 대한 메타데이터들을 메타데이터 DB(119)로부터 추출한다(505).
정보 제공용 편집기(117)는 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 정보 제공자에게 제공한다(506). 그러면, 정보제공자는 제공된 편집기를 통해 메타데이터들을 입력한다(507).
도 5에서는 세부 항목들에 대해, "중고차량 명: 소나타", "변속기: 오토", "년식: 2001년", "주행거리: 10만 킬로", "색깔: 은색", "희망가격: 120만원"와 사진 정보를 함께 입력한 경우를 예시하였다.
그러면, 저장 디렉토리 결정기(116)는 컨텐츠가 저장되기에 적합한 정보 DB(128) 상의 디렉토리를 결정하여, 디렉토리 색인키(중고차, 판매)을 부가한다. 이는, 컨텐츠가 해당 디렉토리에 저장되도록 하기 위함이다. 한편, 저장 디렉토리 결정기(116)는 디렉토리 색인키(중고차, 판매) 외에 사용자 ID를 부가할 수 있다(508).
그리고, 정보 저장기(115)는 정보 제공용 편집기(117)에 의해 입력된 메타데이터들을 통합한 컨텐츠를 정보 DB(128)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(116)에 의해 결정된 디렉토리에 저장된다.
지금까지, 정보 제공자가 입력한 정보로부터 사용자의 의도를 파악하고, 파악된 의도를 기초로 세부적인 메타데이터 입력을 유도하여 하나의 컨텐츠로 저장하는 과정에 대해 상세히 설명하였다.
이하에서는, 위와 같은 과정으로 저장된 메타 데이터들을 이용하여 정보 검색자가 입력한 검색어를 기초로 검색을 수행하는 과정에 대해, 도 6을 참조하여 상세히 설명한다.
도 6은 본 발명의 또 다른 실시예에 따른 검색방법의 설명에 제공되는 도면이다. 본 실시예에서는, 정보 검색자가 검색어를 입력하면, 검색자의 검색 의도를 파악하고, 파악된 검색자의 의도를 토대로 세부적이고 정확한 검색이 가능하도록 한다. 여기서, 사용자가 입력하는 검색어는 단어는 물론이고, 구나 문장인 경우도 포함된다.
도 6에 도시된 바와 같이, 먼저 정보검색창(101)을 통해 사용자가 검색어 "중고차 삽니다"를 입력하면(601), 검색어 형태소 처리기(103)는 입력된 검색어를 품사 별로 분리하여 (중고차/사/ㅂ니다)로 출력함과 동시에 (명사/중고차, 사/구매, 어미/존대)의 품사정보와 의미정보를 부가하여 출력한다(602).
그러면, 검색어 구문 해석기(104)는 형태소 처리 결과를 토대로 구문 해석을 수행하여, 그 결과로 (중고차→구매)를 출력한다(603).
검색자 의도 파악기(105)는 구문 해석 결과를 이용하여, 검색자의 의도를 '중고차→구매'로 파악한다(604).
그러면, 검색용 메타데이터 추출기(107)는 검색자의 의도인 '중고차 구매'에 적합한 컨텐츠에 대한 메타데이터들을 메타데이터 DB(119)로부터 추출하고, 검색용 편집기(108)는 검색용 메타데이터 추출기(107)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다(605).
그러면, 검색자는 제공된 편집기를 통해 메타데이터들을 입력한다(606). 도 6에서는 세부 항목들에 대해, "중고차량 명: 소나타", "변속기: 오토", "년식: 2001년 이후", "주행거리: 10만 km 미만", "색깔: 은색", "희망가격: 120만원 이하" 및 "연료: LPG"를 입력한 경우를 예시하였다.
검색 디렉토리 결정기(109)는 컨텐츠를 검색하기에 적합한 정보 DB(128) 상의 디렉토리를 결정하고, 검색기(110)는 검색용 편집기(108)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(128)에서 검색한다(607). 검색은 검색 디렉토리 결정기(109)에서 결정된 디렉토리에서 수행된다.
이때, 검색 디렉토리 결정기(109)는 검색자 의도 파악기(105)가 파악한 검색자의 의도를 참조하여 디렉토리를 결정하는데, 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
그리고, 검색기(110)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색을 수행할 수도 있다.
이후, 메타데이터 비교기(111)는 검색용 편집기(108)를 통해 입력된 메타데이터들과 검색기(110)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교한다(608). 그리고, 메타데이터 비교기(111)는 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다(609).
지금까지, 검색자가 입력한 정보로부터 검색자의 의도를 파악하고, 파악된 의도를 기초로 세부적인 메타데이터 입력을 유도하고, 입력된 메타데이터를 이용하여 검색자의 의도에 부합하는 디렉토리에서 검색을 수행하는 과정에 대해 상세히 설명하였다.
본 실시예에서는 정형화 또는 표준화된 편집기를 이용하여 메타데이터를 입력하도록 구현하였다. 이에 따라, 정보 제공자 또는 검색자는 메타데이터를 보다 편리하게 입력할 수 있게 되며, 어떠한 종류의 메타데이터를 입력하여야 하는지에 대한 가이드도 제공받을 수 있게 되는바, 입력의 편의성을 증대시킬 수 있게 된다.
이와 같은 정형화된 편집기를 이용한 메타데이터 입력방식은 휴대폰 또는 IPTV와 같은 기기의 경우에도 적용할 수 있다.
한편, 본 실시예에서는 조건 검색도 가능하도록 하였는데, 이는 특정 메타데이터를 특정한 조건으로 한정하는 것이다. 예를 들면, "120만원이하 중고차"라는 검색어로 검색을 수행하는 것이 조건 검색에 해당한다.
도 7은 부가서비스 DB(112)에 저장되어 있으며 부가서비스 생성기(113)에 의 해 생성되는 부가서비스의 일 예로 문맥지각형 검색서비스의 일종인 지리안내 서비스의 설명에 제공되는 도면이다.
이를 위해, 도 7에서는 정보검색창(101)을 통해 "이근처 맛있는 이태리 레스토랑은"(701)이라는 문장이 입력된 것을 가정하였다.
입력된 문장(701)은 검색어 형태소 처리기(103)에 의해 형태소 처리되어, "이근처/맛있/는/이태리/레스토랑/은"으로 분리된 후(702), 의미 정보들이 부가된 "이근처/명사/현재위치, 맛있/형용사/음식평가, 는/조사/수식, 이태리/명사/국명, 레스토랑/명사/음식점, 은/조사/제시"(703)가 출력된다.
그러면, 검색어 구문 해석기(104)는 형태소 처리 결과를 구문해석하고, 검색자 의도 파악기(105)는 구문해석 결과를 통해, 검색자의 의도를 파악한다. 구체적으로, 검색자 의도 파악기(105)는 문맥지각형 단어 '은/는'의 의미 정보가 '제시'를 나타내므로 '검색요청'을 의미하는 것으로 파악하고, 문맥지각형 단어 "이근처"는 'GPS에 의해 확인가능한 현재 위치'를 획득하여야 하는 의미로 파악하고, '이태리 레스토랑'은 음식점 데이터베이스의 검색을 각각 요구한다는 의도로 파악한다.
이에 따라, 부가서비스 생성기(113)는 GPS를 이용하여 현재위치 파악하고(704), 검색기(110)는 맛있는 이태리 레스토랑에 대한 검색을 수행하고(705), 부가서비스 생성기(113)는 지도를 실행하여(706), 현재 위치가 나타난 지도에 검색된 맛있는 이태리 레스토랑이 표시된 지도를 출력한다(707).
도 8에는 다른 종류의 부가 서비스를 제공하는 방법의 설명에 제공되는 도면이다. 도시된 부가 서비스는, 검색결과로 출력되는 텍스트에 포함되어 있는 특정 단어, 주제와 관련하여 다양한 부가 정보를 제공하는 것이다. 이를 위해서는, 부가서비스 데이터베이스(112)에 저장되어 있는 기관정보(801), 광고(802), 인물정보(803), 토픽주제정보(804), 회사정보(805) 등의 각종 정보를 활용할 수 있음은 물론, 네트워크를 통해 연결된 다른 데이터 베이스로부터 획득할 수 있음은 물론이다.
도 9는 정보검색창과 정보제공창이 함께 구비된 정보 제공/검색창의 일 예를 도시한 도면이다. 도시된 정보 제공/검색창에서 입력창(901)은 검색어를 입력하는데 이용되는 창이고, 정보제공 버튼(902)은 입력창(901)에 입력된 정보를 제공/등록하고자 할 때 이용되는 버튼이며, 정보검색 버튼(903)은 입력창(901)에 입력된 검색어에 대한 정보검색을 명령하는데 이용되는 버튼이다.
그리고, 하부에 마련된 버튼들(904)은 검색 방법과 검색 결과 제공방법을 설정하는데 이용되는 버튼이다. 예를 들어, 도 9에 제시된 "완전검색" 버튼은 검색방식을 완전 검색으로 설정하는데 이용되는 버튼이고, "광고허용" 버튼은 검색결과와 관련된 광고물을 검색결과와 함께 표시할 것을 허용하는데 이용되는 버튼이고, "관련서비스 제공허용" 버튼은 검색결과에 포함되어 있는 단어, 문구들에 대한 부가정보를 함께 제공할 것을 허용하는데 이용되는 버튼이다.
도 7 내지 도 9에 제시된 구현 예들은, 이하에서 설명할 다른 실시예들에도 적용되므로, 이하에서 설명할 실시예들에서는 이 구현 예들에 대해 반복하여 설명하지 않을 것이다.
도 10는 본 발명의 또 다른 실시예에 따른 검색시스템을 도시한 도면이다. 본 실시예에 따른 검색시스템을 구성하는 블럭들은 S/W로 구현할 수 있음은 물론 H/W로 구현할 수 있다. 또한, 검색시스템을 구성하는 블럭들 중 일부는 S/W로 나머지는 H/W로 구현하는 것도 가능하다.
본 실시예에 따른 검색시스템은, 도 10에 도시된 바와 같이, 정보검색창(1001), 검색어 입력기(1002), 검색어 형태소 처리기(1003), 검색어 구문 해석기(1004), 검색자 의도 파악기(1005), 정보 모니터(1006), 검색용 메타데이터 추출기(1007), 검색용 편집기(1008), 검색기(1009), 메타데이터 비교기(1010), 부가서비스 데이터베이스(1011), 부가서비스 생성기(1012), 검색결과 생성기(1013), 정보 저장기(1014), 정보 제공용 편집기(1015), 정보 제공용 메타데이터 추출기(1016), 메타데이터 DB(1017), 컨텐츠 제공자 의도 파악기(1018), 정보 모니터(1019), 구문 해석기(1020), 구문문법 규칙사전(1021), 형태소 처리기(1022), 형태소 사전(1023), 디렉토리 컨텐츠 크롤러(1024), 정보 DB(1025), 검색결과 표시기(1026), 검색 디렉토리 결정기(1027) 및 저장 디렉토리 결정기(1028)를 구비한다.
디렉토리 컨텐츠 크롤러(1024)는 디렉토리 별로 구분되어 있는 컨텐츠에 포함되어 있는 텍스트를 수집한다. 디렉토리 컨텐츠 크롤러(1024)에 의해 수집된 텍스트는 후술할 형태소 처리기(1022)로 전달된다.
도 10에는 컨텐츠가 저장되어 있는 디렉토리로, 구인정보(21), 대학입시정보(13), 부동산(23), 금융(24), 자동차(25), 영화연극(26), 쇼핑(27), 교통 정보(28), 여행 정보(29), 추천(30) 등을 상정하였으나, 이외의 다른 디렉토리가 적용될 수 있음은 물론이다.
형태소 사전(1023)은 도 1에 도시된 형태소 사전(125)과 동일한 것으로 구현할 수 있다. 형태소 처리기(1022)는 형태소 사전(1023)를 참조하여, 디렉토리 컨텐츠 크롤러(1024)로부터 전달되는 텍스트를 품사 별로 분리하여 출력한다.
구문 해석기(1020)는 형태소 처리기(84)의 형태소 처리 결과를 토대로, 컨텐츠에 포함된 텍스트에 대해 구문 해석을 수행한다. 구문 해석을 수행함에 있어, 구문 해석기(1020)는 구문문법 규칙사전(1021)을 참조한다.
컨텐츠 제공자 의도 파악기(1018)는 구문 해석기(1020)에서 출력되는 구문 해석 결과를 이용하여, 컨텐츠 작성자의 의도를 파악한다.
정보 모니터(1019)는 컨텐츠 제공자 의도 파악기(1018)에 의해 파악된 컨텐츠 작성자의 의도를 사용자가 볼 수 있도록 출력한다. 이를 위해, 정보 모니터(1019)는 그래픽 툴을 이용할 수 있다.
정보 제공용 메타데이터 추출기(1016)는 컨텐츠 제공자 의도 파악기(1018)가 파악한 컨텐츠 제공자의 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1017)로부터 추출한다.
정보 제공용 편집기(1015)는 정보 제공용 메타데이터 추출기(1016)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 정보 제공자에게 제공한다.
저장 디렉토리 결정기(1028)는 컨텐츠가 저장되기에 적합한 정보 DB(1025) 상의 디렉토리를 결정한다. 이때, 저장 디렉토리 결정기(1028)는 컨텐츠 제공자 의도 파악기(1020)가 파악한 컨텐츠 제공자의 의도를 참조하여 디렉토리를 결정할 수 있다.
정보 저장기(1014)는 정보 제공용 편집기(1015)에 의해 생성된 메타데이터들을 통합한 컨텐츠를 정보 DB(1025)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(1028)에 의해 결정된 디렉토리에 저장된다.
지금까지 설명한 구성들은 컨텐츠를 수집하고 수집된 컨텐츠를 작성자의 의도를 기초로 구분하여 저장하는데 이용되는 구성들이다. 이하에서는, 정보 검색자가 검색어를 입력하여 검색을 요청한 경우, 검색 의도를 파악하여 보다 상세한 검색어 입력을 유도하여 보다 정확한 검색이 가능하도록 하는 구성들에 대해 상세히 설명한다. 여기서, 사용자가 입력하는 검색어는 단어는 물론이고, 구나 문장인 경우도 포함된다.
정보검색창(1001)은 사용자가 검색어를 단어, 구 또는 문장으로 입력할 수 있는 입력창을 제공한다. 그리고, 검색어 입력기(1002)는 정보검색창(1001)을 통해 사용자가 입력한 검색어를 검색어 형태소 처리기(1003)로 전달한다.
검색어 형태소 처리기(1003)는 형태소 사전(1023)를 참조하여, 검색어 입력기(1002)로부터 전달받은 검색어를 품사 별로 분리하여 출력한다.
검색어 구문 해석기(1004)는 검색어 형태소 처리기(1003)의 형태소 처리 결과를 토대로, 검색자가 입력한 검색어에 대해 구문 해석을 수행한다. 검색어 구문 해석기(1004)는 구문 해석을 수행함에 있어, 구문문법 규칙사전(1021)을 참조한다.
검색자 의도 파악기(1005)는 검색어 구문 해석기(1004)에서 출력되는 구문 해석 결과를 이용하여, 검색자의 의도를 파악한다.
정보 모니터(1006)는 검색자 의도 파악기(1005)에 의해 파악된 검색자의 의도를 사용자가 볼 수 있도록 출력한다. 이를 위해, 정보 모니터(1006)는 그래픽 툴을 이용할 수 있다.
검색용 메타데이터 추출기(1007)는 검색자 의도 파악기(1005)가 파악한 검색자의 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1017)로부터 추출한다.
검색용 편집기(1008)는 검색용 메타데이터 추출기(1007)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다.
검색 디렉토리 결정기(1027)는 컨텐츠를 검색하기에 적합한 정보 DB(1025) 상의 디렉토리를 결정한다. 이때, 검색 디렉토리 결정기(1027)는 검색자 의도 파악기(1005)가 파악한 검색자의 의도를 참조하여 디렉토리를 결정할 수 있다. 그리고, 검색 디렉토리 결정기(1027)는 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
검색기(1009)는 검색용 편집기(1008)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(1025)에서 검색한다. 이때, 검색은 검색 디렉토리 결정기(1027)에서 결정된 디렉토리에서 수행된다.
검색기(1009)는 검색용 편집기(1008)에 의해 입력된 메타데이터들을 동의의 메타데이터들로 교체하여 검색하는 확장 검색을 수행하는 것도 가능함은 물론이다.
또한, 검색기(1009)는 메타데이터와 구조 및 단어가 완전히 동일한 메타데이터 뿐만 아니라, 구조와 단어가 일부만 동일한 메타데이터를 가지는 컨텐츠를 검색 하는 것도 가능하다. 즉, 검색기(1009)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색도 가능한 것이다.
메타데이터 비교기(1010)는 검색용 편집기(1008)를 통해 입력된 메타데이터들과 검색기(1010)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교하고, 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다. 이와 같은, 비교(일치정도 판단)는 테이블 형식으로 이루어진 메타데이터들 각각을 비교하는 방법에 의해 가능하다.
이와 같은, 비교(일치정도 판단)는 테이블 형식으로 이루어진 메타데이터들 각각을 비교하는 방법에 의해 가능하다.
부가서비스 데이터베이스(1011)에는 검색자의 검색 의도에 적합한 사이트 정보 또는 관련 광고서비스를 제공하는 수단 등이 저장되어 있다.
부가서비스 생성기(1012)는 검색키와 관련한 부가서비스를 생성한다. 이를 위해, 부가서비스 생성기(1012)는 부가서비스 데이터베이스(1011)에 저장되어 있는 부가서비스들 중 검색자의 검색 의도에 적합한 부가서비스를 이용한다.
부가서비스 데이터베이스(1011)와 부가서비스 생성기(1012)에 의해 제공되는 부가서비스는 컨텐츠 문맥 지각형(Context awareness) 서비스로 구현할 수 있다. 이때, 컨텐츠 문맥 지각형 서비스에는 안내서비스, 매매서비스, 광고서비스, 교육서비스, 상담서비스, 추천서비스 등이 포함된다.
검색결과 생성기(1013)는 메타데이터 비교기(1010)에서 출력되는 검색결과와 일치정도를 부가서비스 생성기(1012)에서 생성된 부가서비스를 부가한다.
검색결과 표시기(1026)는 검색결과 생성기(1013)에서 생성된 부가서비스가 부가된 검색결과를 화면을 통해 출력하여 사용자에게 제공한다.
한편, 부가서비스 없이 검색결과와 일치정도만을 사용자에게 제공하는 것이 가능하다. 이 경우는, 부가서비스 생성기(1012)가 부가서비스를 생성하지 않도록 하거나, 생성하더라도 검색 결과 생성기(1013)가 생성된 부가서비스를 부가하지 않도록 하는 방식에 의해 가능하다.
이하에서는, 추천 디렉토리(30)에 돌잔치 경험담을 곁들어 중국음식점을 추천하는 글이 계시된 경우를 상정하고, 이 글을 정보로 저장하는 과정에 대해, 도 11을 참조하여 상세히 설명한다. 도 11은 본 발명의 또 다른 실시예에 따른 검색방법의 설명에 제공되는 도면이다.
먼저, 디렉토리 컨텐츠 크롤러(1024)는 도 11의 (a)에 도시된 바와 같이 추천 디렉토리(30)에 게시된 추천문을 수집하여 형태소 처리기(1022)로 전달한다.
그러면, 형태소 처리기(1022)는 형태소 사전(1023)를 참조하여, 형태소 처리를 수행한다. 형태소 처리기(1022)에 의한 형태소 처리결과는, 도 11의 (b)에 나타난 바와 같다.
이후, 구문 해석기(1020)는 도 11의 (b)에 대해 구문 해석을 수행한다. 구문 해석기(1020)에 의한 구문 해석결과는 도 11의 (c)에 나타난 바와 같다.
그리고, 컨텐츠 제공자 의도 파악기(1018)는 도 11의 (c)를 기초로 제공자의 의도를 파악한다. 컨텐츠 제공자 의도 파악기(1018)에 의해 파악된 제공자의 의도는 도 11의 (d)에 나타난 바와 같다.
이후, 정보 제공용 메타데이터 추출기(1016)는 제공자의 의도에 부합하는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1017)로부터 추출한다.
정보 제공용 편집기(1015)는 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 사용자에게 제공한다.
도 11의 (d)에서 "돌잔치→장소→추천"에 부합하는 컨텐츠는 "돌잔치 장소제공" 컨텐츠이다. 정보 제공용 편집기(1015)는 컨텐츠 제공자 의도 파악기(1018)에 의해 파악된 컨텐츠 제공자의 의도를 도 11의 (e)와 같이 정리한다. 그리고, 정보 제공용 편집기(1015)는 도 12의 (a)에 도시된 편집기의 각 항목에 해당 메타데이터를 자동으로 입력하며, 입력된 결과는 도 12의 (b)에 도시된 바와 같다.
저장 디렉토리 결정기(1028)는 컨텐츠가 저장되기에 적합한 정보 DB(1025) 상의 디렉토리를 결정한다. 이때, 저장 디렉토리 결정기(1028)는 정보 제공자 의도 파악기(1018)가 파악한 컨텐츠 제공자의 의도를 참조하여 디렉토리를 결정할 수 있다.
정보 저장기(1014)는 정보 제공용 편집기(1015)에 의해 생성된 메타데이터들을 통합한 컨텐츠를 정보 DB(1025)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(1028)에 의해 결정된 디렉토리에 저장된다.
본 실시예에 따르면, 컨텐츠 제공자의 의도를 기초로 해당하는 정보를 디렉토리 별로 구분하되, 이에 해당하는 메타데이터들을 매칭시켜 저장할 수 있게 된다.
이하에서는, 위와 같은 과정으로 저장된 메타 데이터들을 이용하여 정보 검 색자가 입력한 검색어를 기초로 검색을 수행하는 과정에 대해, 도 13를 참조하여 상세히 설명한다.
도 13은 본 발명의 또 다른 실시예에 따른 검색방법의 설명에 제공되는 도면이다. 본 실시예에서는, 정보 검색자가 검색어를 입력하면, 검색자의 검색 의도를 파악하고, 파악된 검색자의 의도를 토대로 세부적이고 정확한 검색이 가능하도록 한다. 여기서, 사용자가 입력하는 검색어는 단어는 물론이고, 구나 문장인 경우도 포함된다.
도 13에 도시된 바와 같이, 먼저 정보검색창(1001)을 통해 사용자가 검색어 "이번 토요일 볼만한 뮤지컬 추천 바람"을 입력하면(1301), 검색어 형태소 처리기(1003)는 입력된 검색어를 품사 별로 분리하여 (이번/토요일/볼만한/뮤지컬/추천/바람)으로 출력함과 동시에(1302), (명사/현재, 명사/요일, 형용사/호감, 명사/뮤지컬, 명사/추천, 동사/요청)의 품사정보와 의미정보를 부가하여 출력한다(1303).
그러면, 검색어 구문 해석기(1004)는 형태소 처리 결과를 토대로 구문 해석을 수행하여, 그 결과로 (이번→토요일, 볼만한→뮤지컬, →추천, →바람)를 출력한다(1304).
구문 해석결과, 이 예문에서는 문맥지각형 정보가 2가지 있음을 알 수 있다. 하나는 "모든 토요일"이라는 실제 물리적 데이터로서 "날짜"이고, 다른 하나는 "추천, 요청"이라는 "의도"이다.
따라서, 검색어 구문 해석기(1004)는 전자에 대해 문맥지각 처리를 수행하는데, 이하에서 상세히 설명한다.
먼저, "이번 토요일"에 대해 문맥지각형 리얼 데이터를 생성하는 과정에 대해 상세히 설명한다. 도 14는 때를 나타내는 문맥지각형 단어들인데, 이들은 형태소 사전(1023)에 수록될 수 있다. 도 14에 도시된 바와 같이 각 언어의 의미정보는 "과거", "현재", "미래" 등으로 정의되어 있다.
도 15는 "현재시각"을 "년", "월", "일", "요일", "시", "분", "초" 단위로 지정하여 시스템에서 관리하는 것을 나타낸 도면이다.
도 16에서는 "이번 토요일" 이란 언어표현을 오늘 현재시각에서 정량적으로 계산해내는 방식을 나타내고 있다. 즉, 구하고자 하는 것은 때를 나타내는 언어표현에서 실제 정량적인 시각이므로 "이번 토요일"을 형태소 처리하면 "이번/현재, 토요일/토요일"의 의미정보에서 현재시각의 요일을 시스템 카렌더에서 구하며 "수요일"이고 현재의 시스템 "토요일"은 "수→목→금→토"의 3일 후이므로 현재의 날짜 2008년 11월 6일에 3일을 더하면 2008년 11월 9일이라는 리얼 데이터를 생성할 수 있다.
이와 같은 과정에 의해, 현재와 다른 때를 나타내는 언어표현도 리얼 데이터로 변형할 수 있게 된다. 도 14 내지 도 16를 참조하여 설명한 "이번 토요일"에 대해 문맥지각형 리얼 데이터를 생성은, 도 13의 1306, 1307 및 1308에 해당한다.
한편, 검색자 의도 파악기(1005)는 구문 해석 결과를 이용하여, 검색자의 의도를 '뮤지컬→추천→요청'으로 파악한다(1308).
그러면, 검색용 메타데이터 추출기(1007)는 검색자의 의도인 '뮤지컬 추천 요청'에 적합한 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1017)로부터 추출하 고, 검색용 편집기(1008)는 검색용 메타데이터 추출기(1007)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다(1311). 이때, 생성된 리얼 데이터인 공연날짜 "2008.11.9"는 편집기에 자동으로 입력된다.
그러면, 검색자는 제공된 편집기를 통해 메타데이터들을 입력한다(1312).
검색 디렉토리 결정기(1027)는 컨텐츠를 검색하기에 적합한 정보 DB(1025) 상의 디렉토리를 결정하고, 검색기(1009)는 검색용 편집기(1008)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(1025)에서 검색한다(1313). 검색은 검색 디렉토리 결정기(1027)에서 결정된 디렉토리에서 수행된다.
이때, 검색 디렉토리 결정기(1027)는 검색자 의도 파악기(1005)가 파악한 검색자의 의도를 참조하여 디렉토리를 결정하는데, 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
그리고, 검색기(1009)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색을 수행할 수도 있다.
이후, 메타데이터 비교기(1010)는 검색용 편집기(1008)를 통해 입력된 메타데이터들과 검색기(1009)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교한다(1314). 그리고, 메타데이터 비교기(1010)는 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다(1315).
지금까지, 검색자가 입력한 정보로부터 검색자의 의도를 파악하고, 파악된 의도를 기초로 세부적인 메타데이터 입력을 유도하되 리얼 데이터 생성이 가능한 메타 데이터는 자동으로 입력되도록 하고, 이 메타데이터를 이용하여 검색자의 의도에 부합하는 디렉토리에서 검색을 수행하는 과정에 대해 상세히 설명하였다.
지금까지 설명한 실시예들에서는, 정보 제공자 또는 정보 검색자의 의도를 입력된 언어 표현을 분석하여 자동으로 파악하였다.
예를 들어, "구하다, 사다, 구매하다, 주시다, 요청하다, 청하다, 찾다" 등의 언어 표현이 포함된 표현은 모두 "정보를 찾는다"라는 의미에서 정보 "검색"의 의미로 "정보검색"이라는 의도로 파악하여 처리하는 한편, "팔다, 판매하다, 제공하다, 드리다, 주다" 등의 언어 표현이 포함된 표현은 모두 "정보를 제공하다" 라는 의미에서 정보 "제공"의 의미로 "정보제공"이라는 의도로 파악하여 처리하였다.
이하에서 설명할 실시예는, 정보 제공자와 정보 검색자의 의도를 자동으로 파악하는 것이 아니라, 정보 제공자 또는 정보 검색자가 직접 입력하도록 한 방식이 채택된다. 이는, 정보 제공자와 정보 검색자의 의도를 보다 정확하게 파악하기 위함이다.
도 17은 이를 적용한 실시예에 따른 검색시스템을 도시한 도면이다. 본 실시예에 따른 검색시스템을 구성하는 블럭들은 S/W로 구현할 수 있음은 물론 H/W로 구현할 수 있다. 또한, 검색시스템을 구성하는 블럭들 중 일부는 S/W로 나머지는 H/W로 구현하는 것도 가능하다.
본 실시예에 따른 검색시스템은, 도 17에 도시된 바와 같이, 정보 제공/검색창(1701), 형태소 처리기(1702), 형태소 사전(1703), 구문 해석기(1704), 구문문법 규칙사전(1705), 의도 지정기(1706), 정보 모니터(1707), 정보 제공용 메타데이터 추출기(1708), 정보 제공용 편집기(1709), 저장 디렉토리 결정기(1710), 정보 저장기(1711), 정보 DB(1712), 메타데이터 DB(1713), 검색용 메타데이터 추출기(1714), 검색용 편집기(1715), 검색 디렉토리 결정기(1716), 검색기(1717), 메타데이터 비교기(1718), 검색 결과 생성기(1719), 검색결과 표시기(1720), 부가서비스 데이터베이스(1721) 및 부가서비스 생성기(1722)를 포함한다.
정보 제공/검색창(1701)은 정보 제공자가 등록시키고자 하는 정보를 입력하거나, 정보 검색자가 검색어를 입력하는데 이용되는 사용자 인터페이스이다.
정보 제공/검색창(1701)에는 입력창(1701-1), 정보제공 버튼(1701-2) 및 정보검색 버튼(1701-3)이 마련되어 있다. 입력창(1701-1)은 제공하고자 정보 또는 검색어를 입력하는데 이용되는 창이며, 이 입력창(1701-1)에는 정보와 검색어가 단어, 구 또는 문장으로 입력될 수 있다.
정보제공 버튼(1701-2)은 입력창(1701-1)에 입력된 정보를 제공/등록하고자 할 때 이용되는 버튼이며, 정보검색 버튼(1701-3)은 입력창(1701-1)에 입력된 검색어에 대한 정보검색을 명령하는데 이용되는 버튼이다.
정보 제공/검색창(1701)을 통해 입력된 정보 또는 검색어는 형태소 처리기(1702)로 전달된다.
형태소 사전(1703)은 도 1에 도시된 형태소 사전(125)과 동일한 것으로 구현할 수 있다. 형태소 처리기(1702)는 형태소 사전(1023)를 참조하여, 정보 제공/검색창(1701)을 통해 입력된 정보 또는 검색어를 품사 별로 분리하여 출력한다.
구문 해석기(1704)는 형태소 처리기(1702)의 형태소 처리 결과를 토대로, 사용자가 입력한 정보 또는 검색어에 대해 구문 해석을 수행한다. 구문 해석기(1704)는 구문 해석을 수행함에 있어, 구문문법 규칙사전(1705)에 수록되어 있는 문법 규칙을 참조한다.
의도 지정기(1706)는 정보 제공자의 의도 또는 정보 검색자의 의도를 직접 지정받기 위한 사용자 인터페이스 수단을 제공하며, 구문 해석 결과에 지정된 의도를 통합하여 궁극적인 의도를 출력한다.
정보 모니터(1707)는 의도 지정기(1706)에서 출력되는 궁극적인 의도를 사용자가 볼 수 있도록 출력한다. 이를 위해, 정보 모니터(1707)는 그래픽 툴을 이용할 수 있다.
정보 제공용 메타데이터 추출기(1708)는 의도 지정기(1706)에서 출력되는 정보 제공자의 궁극적인 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1713)로부터 추출한다.
정보 제공용 편집기(1709)는 정보 제공용 메타데이터 추출기(1708)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 정보 제공자에게 제공한다.
저장 디렉토리 결정기(1710)는 컨텐츠가 저장되기에 적합한 정보 DB(1712) 상의 디렉토리를 결정한다. 이때, 저장 디렉토리 결정기(1710)는 의도 지정기(1706)가 파악한 정보 제공자의 궁극적인 의도를 참조하여 디렉토리를 결정할 수 있다.
정보 저장기(1711)는 정보 제공용 편집기(1709)에 의해 생성된 메타데이터들을 통합한 컨텐츠를 정보 DB(1712)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(1710)에 의해 결정된 디렉토리에 저장된다.
검색용 메타데이터 추출기(1714)는 의도 지정기(1706)에서 출력되는 정보 검색자의 궁극적인 의도에 맞는 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1713)로부터 추출한다.
검색용 편집기(1715)는 검색용 메타데이터 추출기(1714)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다.
검색 디렉토리 결정기(1716)는 컨텐츠를 검색하기에 적합한 정보 DB(1712) 상의 디렉토리를 결정한다. 이때, 검색 디렉토리 결정기(1716)는 의도 지정기(1706)에서 출력되는 검색자의 궁극적인 의도를 참조하여 디렉토리를 결정할 수 있다.
그리고, 검색 디렉토리 결정기(1716)는 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
검색기(1717)는 검색용 편집기(1715)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(1712)에서 검색한다. 이때, 검색은 검색 디렉토리 결정기(1716)에서 결정된 디렉토리에서 수행된다.
검색기(1717)는 검색용 편집기(1715)에 의해 입력된 메타데이터들을 동의의 메타데이터들로 교체하여 검색하는 확장 검색을 수행하는 것도 가능함은 물론이다.
또한, 검색기(1717)는 메타데이터와 구조 및 단어가 완전히 동일한 메타데이터 뿐만 아니라, 구조와 단어가 일부만 동일한 메타데이터를 가지는 컨텐츠를 검색하는 것도 가능하다. 즉, 검색기(1717)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색도 가능한 것이다.
메타데이터 비교기(1718)는 검색용 편집기(1715)를 통해 입력된 메타데이터들과 검색기(1717)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교하고, 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다. 이와 같은, 비교(일치정도 판단)는 테이블 형식으로 이루어진 메타데이터들 각각을 비교하는 방법에 의해 가능하다.
부가서비스 데이터베이스(1721)에는 검색자의 검색 의도에 적합한 사이트 정보 또는 관련 광고서비스를 제공하는 수단 등이 저장되어 있다.
부가서비스 생성기(1722)는 검색키와 관련한 부가서비스를 생성한다. 이를 위해, 부가서비스 생성기(1722)는 부가서비스 데이터베이스(1721)에 저장되어 있는 부가서비스들 중 검색자의 검색 의도에 적합한 부가서비스를 이용한다.
부가서비스 데이터베이스(1721)와 부가서비스 생성기(1722)에 의해 제공되는 부가서비스는 컨텐츠 문맥 지각형(Context awareness) 서비스로 구현할 수 있다. 이때, 컨텐츠 문맥 지각형 서비스에는 안내서비스, 매매서비스, 광고서비스, 교육서비스, 상담서비스, 추천서비스, 행정서비스 등이 포함된다.
검색 결과 생성기(1719)는 메타데이터 비교기(1718)에서 출력되는 검색결과(컨텐츠들)와 일치정도를 부가서비스 생성기(1722)에서 생성된 부가서비스를 부가 한다.
검색결과 표시기(1720)는 검색 결과 생성기(1719)에서 생성된 부가서비스가 부가된 검색결과를 화면을 통해 출력하여 사용자에게 제공한다.
한편, 부가서비스 없이 검색결과와 일치정도만을 사용자에게 제공하는 것이 가능하다. 이 경우는, 부가서비스 생성기(1722)가 부가서비스를 생성하지 않도록 하거나, 생성하더라도 검색 결과 생성기(1719)가 생성된 부가서비스를 부가하지 않도록 하는 방식에 의해 가능하다.
도 18은 본 발명의 또 다른 실시예에 따른 검색방법의 설명에 제공되는 흐름도이다.
도 18에 도시된 바와 같이, 정보 제공/검색창(1701)의 입력창(1701-1)에 사용자가 "수업시간표"를 입력하고 정보제공 버튼(1701-2)을 누르면(1801), 형태소 처리기(1702)는 형태소 사전(1703)를 참조하여, "수업시간표"를 품사 별로 분리하여 "수업/시간표"로 출력한다(1802).
그러면, 구문 해석기(1704)는 형태소 처리 결과에 대해 구문 해석을 수행하여 그 결과인 (수업→시간표)를 출력한다(1803).
이후, 의도 지정기(1706)를 통해 정보 제공자의 의도가 "제공"으로 지정되면(1804,1805), 의도 지정기(1706)는 구문 해석 결과에 지정된 의도를 통합한 궁극적인 의도 "수업→시간표→제공"를 출력한다(1806).
그러면, 정보 제공용 메타데이터 추출기(1708)는 정보 제공자의 궁극적인 의도인 "수업→시간표→제공"에 적합한 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1713)로부터 추출한다(1807).
정보 제공용 편집기(1709)는 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 정보 제공자에게 제공한다(1808). 그러면, 정보제공자는 제공된 편집기를 통해 메타데이터들을 입력한다(1809).
그러면, 저장 디렉토리 결정기(1710)는 컨텐츠가 저장되기에 적합한 정보 DB(1712) 상의 디렉토리를 결정한다(1810).
그리고, 정보 저장기(1711)는 정보 제공용 편집기(1709)에 의해 입력된 메타데이터들을 통합한 컨텐츠를 정보 DB(1712)에 저장한다. 이때, 컨텐츠는 저장 디렉토리 결정기(1710)에 의해 결정된 디렉토리에 저장된다.
지금까지, 정보 제공자가 입력한 정보와 의도를 통해 정보 제공자의 궁극적인 의도를 파악하고, 파악된 의도를 기초로 세부적인 메타데이터 입력을 유도하여 하나의 컨텐츠로 저장하는 과정에 대해 상세히 설명하였다.
이하에서는, 위와 같은 과정으로 저장된 메타 데이터들을 이용하여 정보 검색자가 입력한 검색어와 의도를 기초로 검색을 수행하는 과정에 대해, 도 19를 참조하여 상세히 설명한다.
도 19는 본 발명의 또 다른 실시예에 따른 검색방법의 설명에 제공되는 도면이다. 본 실시예에서는, 정보 검색자가 검색어와 의도를 이를 토대로 세부적이고 정확한 검색이 가능하도록 한다. 여기서, 사용자가 입력하는 검색어는 단어는 물론이고, 구나 문장인 경우도 포함된다.
도 19에 도시된 바와 같이, 정보 제공/검색창(1701)의 입력창(1701-1)에 사 용자가 "일정표"를 입력하고 검색 버튼(1701-3)을 누르면(1901), 형태소 처리기(1702)는 형태소 사전(1703)를 참조하여, "일정표"를 품사 별로 분리하여 "일정/표"로 출력한다(1902).
그러면, 구문 해석기(1704)는 형태소 처리 결과에 대해 구문 해석을 수행하여 그 결과인 (일정→표)를 출력한다(1903).
이후, 의도 지정기(1706)를 통해 정보 제공자의 의도가 "검색"으로 지정되면(1904,1905), 의도 지정기(1706)는 구문 해석 결과에 지정된 의도를 통합한 궁극적인 의도 "일정→표→검색"를 출력한다(1906).
그러면, 검색용 메타데이터 추출기(1714)는 검색자의 궁극적인 의도인 '일정→표→검색'에 적합한 컨텐츠에 대한 메타데이터들을 메타데이터 DB(1713)로부터 추출하고, 검색용 편집기(1715)는 검색용 메타데이터 추출기(1714)가 추출한 메타데이터들이 입력 항목으로 되어 있는 편집기를 생성하여, 검색자에게 제공한다(1908).
그러면, 검색자는 제공된 편집기를 통해 메타데이터들을 입력한다(1909).
검색 디렉토리 결정기(1716)는 컨텐츠를 검색하기에 적합한 정보 DB(1712) 상의 디렉토리를 결정하고(1910), 검색기(1717)는 검색용 편집기(1715)에 의해 입력된 메타데이터들과 동일한 메타데이터들을 가지는 컨텐츠를 정보 DB(1712)에서 검색한다(1911). 검색은 검색 디렉토리 결정기(1716)에서 결정된 디렉토리에서 수행된다.
이때, 검색 디렉토리 결정기(1716)는 의도 지정기(1706)가 파악한 검색자의 의도를 참조하여 디렉토리를 결정하는데, 결정된 디렉토리와 유사한 디렉토리들을 추가적으로 결정하는 것이 가능하다. 보다 폭넓은 검색이 가능하도록 하기 위함이다.
그리고, 검색기(1717)는 동일 검색 뿐만 아니라, 부분 검색이나 연관 검색을 수행할 수도 있다.
이후, 메타데이터 비교기(1718)는 검색용 편집기(1715)를 통해 입력된 메타데이터들과 검색기(1717)가 검색한 컨텐츠를 구성하는 메타데이터들을 비교한다(1912). 그리고, 메타데이터 비교기(1718)는 비교결과 일치도가 높은 컨텐츠들만을 선별하여 출력한다(1913).
지금까지, 검색자가 입력한 정보와 의도를 기초로 세부적인 메타데이터 입력을 유도하고, 입력된 메타데이터를 이용하여 검색자의 의도에 부합하는 디렉토리에서 검색을 수행하는 과정에 대해 상세히 설명하였다.
지금까지 설명한 실시예는, 전자투표용 입후보자의 홍보 제공용으로 이용될 수 있다.
정보 제공/검색창(1701)에 사용자가 "입후보자 홍보 제공"을 입력하여, 형태소 처리, 구문 해석, 의도 지정 및 메타데이터 추출을 거친 후에 생성되는 편집기와 정보제공자가 제공된 편집기에 메타데이터들을 입력한 결과를, 도 20에 도시하였다.
이후, 저장 디렉토리 결정을 거쳐 정보 DB(1712)에 정보를 저장하면, 입후보자에 대한 홍보물을 PC, 휴대폰 등을 이용하여 유권자에게 배포할 수 있게 된다. 이에 따르면, 현재 이용중인 종이포스터에 의한 입후보자 홍보물을 값싸고, 신속하게 제공할 수 있게 된다.
지금까지 설명한 실시예들은, 휴대폰과 같은 모바일 정보기기들은 물론 여타의 정보기기들에서 구현가능하다. 또한, 정보제공 버튼 및 정보검색 버튼은 휴대폰과 같은 모바일 정보기기들은 물론 여타의 정보기기들의 특정 버튼(키)에 대응/할당할 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.