KR20110037882A - 이종 데이터 소스를 통해 이종 엔티티를 검색하는 정보 이론 기반 결과 병합 - Google Patents

이종 데이터 소스를 통해 이종 엔티티를 검색하는 정보 이론 기반 결과 병합 Download PDF

Info

Publication number
KR20110037882A
KR20110037882A KR1020100096577A KR20100096577A KR20110037882A KR 20110037882 A KR20110037882 A KR 20110037882A KR 1020100096577 A KR1020100096577 A KR 1020100096577A KR 20100096577 A KR20100096577 A KR 20100096577A KR 20110037882 A KR20110037882 A KR 20110037882A
Authority
KR
South Korea
Prior art keywords
class
search results
subquery
query
search
Prior art date
Application number
KR1020100096577A
Other languages
English (en)
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 KR20110037882A publication Critical patent/KR20110037882A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2264Multidimensional index structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24535Query rewriting; Transformation of sub-queries or views
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • G06F16/838Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Abstract

검색 결과를 병합하는 방법, 시스템 및 컴퓨터 프로그램 제품이 개시된다. 일 실시예에서, 방법은 질의를 식별하는 단계와, 질의를 서브 질의로 분할하는 단계와, 서브 질의의 각각에 대한 정보 콘텐츠를 계산하는 단계를 포함한다. 이 방법은 또한 복수의 검색 결과를 획득하도록 서브 질의의 각각을 실행하는 단계와, 서브 질의에 대해 계산된 정보 콘텐츠에 기초하여 검색 결과를 조합하는 단계를 포함한다. 실시예에서, 서브 질의의 각각의 실행은 서브 질의 중 적어도 하나에 대한 다수의 검색 결과를 식별하는 단계를 포함하고, 조합하는 단계는 다수의 검색 결과를 복수의 클러스터로 그룹화하는 단계와, 클러스터의 각각에 대한 검색능력 점수를 계산하는 단계를 포함한다. 실시예에서, 조합하는 단계는 클러스터에 대해 계산된 검색능력 점수뿐만 아니라 서브 질의에 대해 계산된 정보 콘텐츠에도 기초하여 클러스터를 병합하는 단계를 더 포함한다.

Description

이종 데이터 소스를 통해 이종 엔티티를 검색하는 정보 이론 기반 결과 병합{INFORMATION THEORY BASED RESULT MERGING FOR SEARCHING HIERARCHICAL ENTITIES ACROSS HETEROGENEOUS DATA SOURCES}
본 발명은 일반적으로 데이터 처리에 관한 것으로, 보다 구체적으로는, 질의에 응답하기 위해 데이터 또는 정보를 검색하는 것에 관한 것이다. 좀 더 구체적으로, 본 발명의 실시예는 이종 검색 인덱스를 통해 정보를 검색하기에 적합한 방법, 장치 및 컴퓨터 프로그램 제품에 관한 것이다.
인터넷 및 월드 와이드 웹은 상업적 운영, 개인의 삶 및 교육 프로세스의 중요한 필수 부분이 되어 왔다. 인터넷의 핵심은 웹 브라우저 기술 및 인터넷 서버 기술이다. 인터넷 서버는 문서, 이미지 또는 그래픽 파일, 폼, 오디오 클립 등과 같은 "콘텐츠"를 포함하며, 이들 모두 인터넷 접속을 구비하는 시스템 및 브라우저에 이용가능하다. 웹 브라우저 또는 "클라이언트" 컴퓨터는 적합한 웹 서버가 하나 이상의 웹 문서, 이미지 또는 그래픽 파일, 폼, 오디오 클립 등을 전송함으로써 응답하는 웹 주소로부터 문서를 요청할 수 있다. 서버로부터 브라우저로의 웹 문서 및 콘텐츠의 전송에 대한 가장 일반적인 프로토콜은 하이퍼 텍스트 전송 프로토콜(HTTP)이다.
인터넷 콘텐츠 또는 문서의 가장 일반적인 유형은 하이퍼 텍스트 마크업 언어(HTML) 문서이지만, 어도비 포터블 문서 포맷(PDF)과 같은 다른 포맷도 당해 기술에 잘 알려져 있다. HTML, PDF 및 다른 웹 문서는 문서 내에 "하이퍼링크"를 제공하며, 이는 사용자가 보기 위해 다른 문서 또는 웹 사이트를 선택하게 한다. 하이퍼링크는 특히 사용자에 의해 선택될 때 브라우저 소프트웨어에 표시된 문서를 검색 또는 인출하거나 새로운 웹 사이트에 액세스하라고 명령하는 문서 내의 마킹된 텍스트 또는 영역이다. 보통, 사용자가 평문 하이퍼링크를 선택할 때, 웹 브라우저의 그래픽 사용자 인터페이스("GUI") 윈도우에서 디스플레이되는 현재 페이지는 사라지고, 새롭게 수신된 페이지가 디스플레이된다. 만일 부모 페이지가 인덱스, 예컨대, IBM 웹 사이트 www.patents.ibm.com이고, 사용자가 각각의 하향 링크를 방문(예컨대, 사이트를 사용하는 방법에 대한 팁을 가진 문서를 판독)하기를 원하면, 부모 또는 인덱스 페이지는 사라지고 (도움말 페이지와 같은) 새로운 페이지가 디스플레이된다.
웹 브라우저 컴퓨터의 컴퓨팅 능력이 증가하고 웹 브라우저 컴퓨터에 대한 통신 대역폭이 급격히 증가함에 따라, 인터넷 웹 사이트 및 콘텐츠를 제공하는 구성에 대한 도전은 프로세싱 및 처리 속도가 증가할 것을 예상하여 그러한 콘텐츠를 전달하고 필터링하는 것이다. 이는 특히 웹 기반 애플리케이션의 영역에서 및 데스크탑 또는 클라이언트로 사용자 관련 정보를 이동시키기 위한 더 낫고 효율적인 방법의 개발시에 사실이다. 그러나, 오늘날의 웹 브라우저는 일반적으로 비지능적인 소프트웨어 패키지이다. 이들 브라우저가 현재 존재할 때 브라우저는 사용자가 자신이 관심 있는 기사 또는 문서를 수동으로 검색하는 것을 필요로 하고, 이들 브라우저는 적절한 흥미 중 하나가 발견되기 전에 다수의 문서의 다운로드를 필요로 한다는 점에서 종종 방해가 된다.
검색 엔진은 사용자가 자신의 비지능형 웹 브라우저를 검색 엔진 주소로 포인팅할 수 있는 브라우징 경험에 몇몇 "지능" 레벨을 도입하고, 검색을 위해 몇몇 키워드를 입력하며, 이어서 검색 결과에서 하이퍼링크를 선택하거나 웹 브라우저를 리턴된 웹 주소로 수동으로 재포인팅함으로써 리턴된 문서의 각각을 하나씩 검토한다. 그러나, 검색 엔진은 실제로 전체 인터넷을 검색하지 않으며, 오히려 다양한 보관소에 포함된 정보를 분석하는 프로세스를 통해 보통 소프트웨어를 인덱싱하는 검색 엔진에 의해 구성되는 인터넷 콘텐츠의 그들 자신의 인덱스를 검색한다.
도그파일(Dogpile) 보고서 [Different Engines, Different Results, A Research Study by Dogpile.com. 2007년 4월]에 공개된 바와 같이, 어떠한 단일 웹 검색 엔진도 자신에 의해 양호한 검색 결과 전부를 불러올 수 없다. 예컨대, 구글만을 검색함으로써, 검사기는 웹의 최상의 제 1 페이지 검색 결과의 72.7%를 놓칠 수 있다.
이 문제를 해결하기 위해, 다른 기술이 개발되어 왔고 "메타검색 엔진"으로서 당해 기술에 알려져 있다. 메타검색 엔진은 자신의 인덱스를 유지하지 않으며, 오히려 동시에 다수의 구성요소 검색 엔진에 질의를 제공하고, 이들 검색 엔진의 각각으로부터의 최고 랭킹 결과를 사용자에게 리턴한다. 메타검색 엔진은 예컨대, 4 개의 검색 엔진으로부터 상위 5 개의 목록을 리턴할 수 있다. 그 결과, 더 관심 있는 정보가 필터링될 수 있다. 오늘날 다수의 메타검색 엔진이 메타크롤러(Metacrawler) 및 도그파일(Dogpile)과 같은 인터넷에서 구성되고 이용가능하다.
본 발명은 또한 분산형 정보 검색(IR) 기술에 관한 것이다. 일반론을 잃지 않으면서, 메타검색의 콘텍스트를 사용하여 개념을 설명한다. 그러나, 분산형 IR 환경에 적용가능하다.
메타검색 시스템에서, 각각의 구성요소 검색 엔진은 어떤 문서가 인덱싱하는지, 얼마나 많은 문서가 주어진 질의를 검색하는지, 검색 결과를 어떻게 랭킹하는지 등에 관하여 독립적인 결정을 한다[Weiyi Meng, Clement Yu and King-Liu. Building Efficient and Effective Metasearch Engines. ACM Computing Surveys, Vol. 34, No. 1, March 2002, pp. 48-89]. 그러한 이종성 때문에, 구성요소 검색 엔진으로부터의 결과를 효율적으로 및 효과적으로 조합하기가 어렵다. "Metasearch Technique That Ranks Documents Obtained From Multiple Collections"의 미국 특허 제 6,795,820 호는 문서를 분류할 때 국부적이고 포괄적인 통계 모두를 고려하여 구성요소 검색 엔진으로부터 문서를 조합하는 프레임워크를 개시한다. "Using Fuzzy Model for Combining and Reranking Search Result from Different information Sources to Build Metasearch Engine" (Wiratna S. Wiguna, Juan J. Fernandez-iebar and Ana Garcia-Serrano, Computational Intelligence, Theory and Applications, International conference 9th fuzzy days in Dortmend, Germany, September 18-20, 2006)에서, Wiguna 등은 분산형 검색 엔진으로부터의 결과를 조합하는 데 퍼지 로직을 사용하는 방법을 공개한다. 그러나 그 방안은 문서 조합에만 적용가능하다.
기존의 방안 중 어느 것도 사람 대 부서 또는 페이지 대 책과 같은 상이한 의미론을 가진 검색 결과를 조합하는 데 적합하지 않다. 상이한 의미론을 가지며 또한 특정 방법으로 접속되는 데이터 소스를 가지는 것은 예컨대, "Document Searching Using Contextual Information Leverage and Insight"의 미국 특허 출원 공개 번호 제2009/0112841호에 언급된 바와 같이, 오늘날 기업에서 매우 일반적이다. 이들 검색 결과를 적절히 조합하고 분류하는 방법이 필요하다.
본 발명의 실시예는 검색 결과를 병합하는 방법, 시스템 및 컴퓨터 프로그램 제품을 제공한다. 일 실시예에서, 방법은 질의를 식별하는 단계와, 질의를 서브 질의로 분할하는 단계와, 서브 질의의 각각에 대한 정보 콘텐츠를 계산하는 단계를 포함한다. 이 방법은 또한 복수의 검색 결과를 획득하도록 서브 질의의 각각을 실행하는 단계와, 서브 질의에 대해 계산된 정보 콘텐츠에 기초하여 검색 결과를 조합하는 단계를 포함한다.
일 실시예에서, 서브 질의의 각각을 실행하는 단계는 서브 질의 중 적어도 하나에 대한 다수의 검색 결과(예컨대, 문서)를 식별하는 단계를 포함하고, 조합하는 단계는 다수의 검색 결과를 복수의 클러스터(각각의 클러스터는 책과 같은 하이 레벨 엔티티를 나타냄)로 그룹화하는 단계와, 클러스터의 각각에 대한 검색능력 점수를 계산하는 단계를 포함한다. 일 실시예에서, 조합하는 단계는 클러스터에 대해 계산된 검색능력 점수와 서브 질의에 대해 계산된 정보 콘텐츠에 기초하여 클러스터를 병합하는 단계를 더 포함한다.
일 실시예에서, 서브 질의의 각각을 실행하는 단계는 각각의 질의에 대한 다수의 검색 결과를 식별하는 단계를 포함하고, 조합하는 단계는 각각의 질의마다 각각의 질의에 대해 식별된 다수의 검색 결과를 하나 이상의 클러스터로 그룹화하는 단계를 포함하며, 조합하는 단계는 각각의 클러스터마다 검색능력 점수를 계산하는 단계와, 클러스터에 대해 계산된 검색능력 점수와 서브 질의에 대해 계산된 정보 콘텐츠에 기초하여 클러스터를 병합하는 단계를 더 포함한다.
일 실시예에서, 서브 질의는 제 1 서브 질의 및 제 2 서브 질의를 포함하고, 서브 질의의 각각을 실행하는 단계는 복수의 제 1 클래스 엔티티(예컨대, 책 또는 부서)를 식별하도록 제 1 서브 질의를 실행하는 단계와, 다수의 제 2 클래스 엔티티(예컨대, 책 내의 페이지 또는 부서 내의 사람)를 식별하도록 제 2 서브 질의를 실행하는 단계를 포함하되, 제 2 클래스 엔티티의 각각은 규정된 기준에 따라 제 1 클래스 엔티티 중 하나와 연관된다. 또한, 이 실시예에서, 조합하는 단계는 제 2 클래스 엔티티의 각각이 속하는 제 1 클래스 엔티티 중 하나에 기초하여 제 2 클래스 엔티티를 복수의 클러스터로 클러스터링하는 단계와, 검색능력 점수를 클러스터의 각각에 할당하는 단계를 포함한다.
본 발명의 일 실시예에서, 질의시에 사용자의 의도는 동적으로 추정되고, 상이한 데이터 소스로부터 리턴된 정보를 조합하는 데 사용된다. 이 방법에서, 사용자는 L. Si 및 J. Callan의 "A Semisupervised Learning Method to Merge Search Engine Results," ACM Transactions of Information Systems, 21(4), (pp.457-491)(2003)과 같은 방안을 학습함으로써 요구되는 피드백을 제공할 필요가 없다. 또한, 본 발명의 이 실시예는 이전의 방안이 처리할 수 없었던 완전히 상이한 의미론을 가진 결과를 조합하는 문제점을 해결한다.
본 발명의 실시예는 구조화, 비구조화 및 반구조화 데이터 소스를 포함하는 이종 인덱스를 통한 검색 및 결과 병합을 가능하게 한다. 본 발명의 실시예는 엔티티 레벨에서의 검색 및 결과 병합을 가능하게 한다.
도 1은 본 발명의 실시예에 따른 정보 이론 기반 병합 및 랭킹 방법을 도시한다.
도 2는 본 발명의 실시예에 따라 검색 결과를 병합하는 알고리즘을 도시한다.
도 3은 본 발명의 실시예에서 사용될 수 있는 컴퓨팅 환경을 도시한다.
당업자가 알게 되듯이, 본 발명은 시스템, 방법 또는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 따라서, 본 발명은 완전한 하드웨어 실시예, (펌웨어, 상주 소프트웨어, 마이크로 코드 등을 포함하는) 완전한 소프트웨어 실시예 또는 본 명세서에서 일반적으로 모두 "회로", "모듈" 또는 "시스템"으로 지칭될 수 있는 소프트웨어와 하드웨어 양상을 조합한 실시예의 형태를 취할 수 있다. 또한, 본 발명은 매체에 구현된 컴퓨터 사용가능 프로그램 코드를 가진 표현의 임의의 유형 매체에 구현된 컴퓨터 프로그램 제품의 형태를 취할 수 있다.
하나 이상의 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체(들)의 임의의 조합이 이용될 수 있다. 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체는 예컨대, 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치, 디바이스 또는 전파 매체를 포함할 수 있지만, 이들로 제한되지 않는다. 컴퓨터 판독가능 매체의 보다 구체적인 예(완전하지 않은 리스트)는 하나 이상의 와이어를 가진 전기적 접속, 휴대용 컴퓨터 디스켓, 하드 디스크, RAM, ROM, EPROM 또는 플래시 메모리, 광섬유, 휴대용 CDROM, 광학 저장 장치, 인터넷 또는 인트라넷을 지원하는 것과 같은 전송 매체, 또는 자기 저장 장치를 포함할 것이다. 프로그램이 가령, 종이 또는 다른 매체의 광학 스캐닝을 통해 전기적으로 캡처될 수 있고 이어서 컴파일되거나 해석되거나 적합한 방식으로 처리된 후 필요하다면 컴퓨터 메모리에 저장될 수 있으므로, 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체가 프로그램이 인쇄되는 종이 또는 다른 적합한 매체일 수도 있음을 알아야 한다. 이 문서의 맥락에서, 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체는 인스트럭션 실행 시스템, 장치 또는 디바이스에 의해 또는 이와 관련하여 사용할 프로그램을 포함하거나, 저장하거나, 통신하거나, 전파하거나, 전송할 수 있는 임의의 매체일 수 있다. 컴퓨터 사용가능 매체는 베이스밴드 내에 또는 반송파의 일부로서, 함께 구현된 컴퓨터 사용가능 프로그램 코드를 가진 전파된 데이터 신호를 포함할 수 있다. 컴퓨터 사용가능 프로그램 코드는 무선, 유선, 광섬유 케이블, RF 등을 포함하는 임의의 적합한 매체를 사용하여 전송될 수 있지만, 이들로 제한되지 않는다.
본 발명의 동작을 수행하는 컴퓨터 프로그램 코드는 자바, 스몰토크, C++ 등과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어와 같은 통상적인 절차 프로그래밍 언어를 포함하는 하나 이상의 프로그래밍 언어의 임의의 조합으로 기록될 수 있다. 프로그램 코드는 전적으로 사용자의 컴퓨터 상에서, 부분적으로 독립형 소프트웨어 패키지로서 사용자의 컴퓨터 상에서, 부분적으로 사용자의 컴퓨터 상에서, 부분적으로 원격 컴퓨터 상에서 또는 전적으로 원격 컴퓨터 또는 서버 상에서 실행할 수 있다. 후자의 시나리오에서, 원격 컴퓨터는 LAN 또는 WAN을 포함하는 임의의 유형의 네트워크를 통해 사용자의 컴퓨터에 접속될 수 있고, 그 접속은 (예컨대, 인터넷 서비스 공급자를 사용하는 인터넷을 통해) 외부 컴퓨터에 이루어질 수 있다.
본 발명은 본 발명의 실시예에 따른 방법, 장치(시스템) 및 컴퓨터 프로그램 제품의 순서도 및/또는 블록도를 참조하여 후술된다. 순서도 및/또는 블록도의 각각의 블록 및 순서도 및/또는 블록도 내의 블록의 조합이 컴퓨터 프로그램 인스트럭션에 의해 구현될 수 있음을 알아야 할 것이다. 이들 컴퓨터 프로그램 인스트럭션은 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치의 프로세서를 통해 실행하는 인스트럭션이 순서도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작을 구현하는 수단을 생성하도록, 범용 컴퓨터, 특별 용도의 컴퓨터 또는 기계를 생성하는 다른 프로그램가능 데이터 처리 장치의 프로세서에 제공될 수 있다. 이들 컴퓨터 프로그램 인스트럭션은 또한 컴퓨터 판독가능 매체에 저장된 인스트럭션이 순서도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작을 구현하는 인스트럭션 수단을 포함하는 제조품을 산출하도록, 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치가 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독가능 매체에 저장될 수 있다.
컴퓨터 프로그램 인스트럭션은 또한 컴퓨터 또는 다른 프로그램가능 장치 상에서 실행하는 인스트럭션이 순서도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작을 구현하는 프로세스를 제공하도록 컴퓨터 구현 프로세스를 생성하기 위해 일련의 동작 단계가 컴퓨터 또는 다른 프로그램가능 장치 상에서 수행되게 하도록 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치로 로딩될 수 있다.
본 발명은 이종 검색 인덱스로부터 검색 결과를 조합하도록 정보 이론 기반 방안을 제공한다. 보다 구체적으로, 본 발명은 이 질의가 최종 사용자에게 얼마나 중요한지를 추정하도록 질의(정보 필요)의 정보 콘텐츠를 사용하고, 일단 질의의 정보 콘텐츠가 계산되면, 검색 결과는 적절한 방법으로 조합된다.
도 1을 참조하면, 본 발명의 일실시예에서, 메타검색 엔진(10)(이것은 또한 분산형 IR 기술에 기초한 검색 엔진일 수 있다)은 질의를 수신하고, 질의를 복수의 또는 다수의 서브 질의로 분할하며, 각각의 단일 검색 인덱스(12)를 사용하여 각각의 서브 질의를 실행한다. 이어서 14에 표시된 바와 같이 정보 이론 기반 병합 및 랭킹을 사용하여 검색 결과가 조합된다.
예컨대, 메타검색 엔진은 책의 키워드 검색 인덱스 및 책에 대한 메타데이터를 포함하는 데이터베이스(예컨대, 출판사, 출판일 및 작가명)에 대한 액세스를 갖는다. 만일 사용자가 O'Reilly에 의해 출판된 C 프로그래밍에 대한 책을 찾고 있으면, O'Reilly가 다른 제목으로 더 많은 책을 출판해 왔으므로 사용자의 초점은 C 프로그래밍에 있을 가능성이 크다. 그러므로, 키워드 검색 인덱스로부터의 결과는 높은 가중치를 가질 것으로 예상된다. 반면에, 사용자가 특정 작가가 쓴 C 프로그래밍 책을 찾고 있으면, 현재 사용자가 작가의 이름에 대해 더 주목하고 있으므로 데이터베이스로부터의 결과는 더 높은 가중치를 획득해야 한다.
이상의 예는 본 발명 이면의 직관을 예시한다. 이종 구성요소 검색 엔진으로부터의 결과를 조합할 때, 본 발명은 사용자에게 더 중요한 것이 무엇인지를 고려하고, 서브 질의에 동적 가중치를 할당한다. 기존의 방안 중 어느 것도 검색의 양상에 대해 언급하지 않는다. 그 방안은 검색 결과의 랭킹을 결정할 때 (용어 빈도 및 문서 빈도와 같은) 검색 엔진의 특성에 의존하며, 이는 사용자의 의도를 반영하지 않을 수 있다.
다른 예로써, 사용자가 "iSeries" 서버와 재해 복구 서비스 양자 모두를 수반하는 사업 계약을 찾고 있다고 가정한다. 리소스 선택 단계 동안에, 재해 복구 서비스에 대한 검색이 서비스 범위 및 총 계약 값과 같은 계약 레벨 정보를 포함하는 데이터베이스로 라우팅되는 동안, "iSeries"에 대한 검색은 비구조화 문서를 포함하는 키워드 검색 인덱스로 라우팅된다. 의미상 다른 데이터 콘텐츠를 사용하면, 상이한 검색 엔진에 의해 리턴된 결과를 간단히 분류하고 표시를 위해 조합하는 데 이전의 방안은 사용될 수 없다. 본 발명은 결과들을 함께 주의 깊게 조합하고 이어서 사업 계약 레벨에서 결과들을 분류하기 위해 더 나은 방법을 제공한다.
주목할 점은 사용자가 ("iSeries" 및 재해 복구와 같은) 질의 내의 다수의 정보 요구조건을 지정할 때, 보통 질의 구성요소(서브 질의) 중 하나가 1차 초점이고 다른 구성요소가 콘텍스트를 제공한다는 것이다. 이상의 예에서 특히, "iSeries"는 "재해 복구"가 추가 콘텍스트를 제공하는 동안 사용자가 찾고 있는 것의 1차 초점이다. 이는 사용되고 있는 데이터 수집에서, "iSeries"가 "재해 복구"에 비해 드문 용어이기 때문이다. 정보 콘텐츠는 이 요약 개념을 양을 한정하는 데 사용된다.
정보 이론에서[C.E. Shannon, "A Mathematical Theory of Communication," Bell System Technical Journal, 27, pp. 379-423 & 623-656, July and October, 1948 참조], 정보 콘텐츠(a/k/a 자기 정보)는 확률 변수의 결과와 연관된 정보를 측정한다. 그것은 log(p(E))로서 계산되는데, p(E)는 사건 E의 확률이다. 사건 E의 확률이 낮아질수록, E의 정보 콘텐츠는 높아진다.
질의의 확률을 계산할 다수의 방법이 존재한다. 예로써, 검색되고 있는 데이터베이스에 N 개의 사업 계약에 대한 정보가 존재한다고 가정한다. 재해 복구에 대한 질의 Q가 리턴된 m 개의 계약에 대한 정보를 갖는다고 가정한다. 이어서 확률 p(Q)은 m/N으로서 계산될 수 있고, Q의 정보 콘텐츠는 logp(Q)로서 계산될 수 있다.
일단 (사용자의 정보 요구조건을 나타내는) 질의의 정보 콘텐츠를 계산하면, 리턴된 결과는 적절한 방법으로 병합된다. 도 2는 검색 결과를 병합하는 일 방법을 도시한다. 가령, 데이터 소스 C1가 재해 복구 서비스를 검색하기 위해 제공되고, C2는 "iSeries" 서버 관련 정보를 검색하기 위해 제공된다고 가정한다. 또한, 단계(22)에서, C1이 검색능력(relevance) 점수와 함께 첨부된 사업 계약을 리턴하고, C2는 검색능력 점수와 함께 첨부된 문서를 리턴한다고 가정한다. 단계(24, 26, 30, 32, 34)에서, 사용자가 계약 레벨에서의 정보에 관심이 있으므로 리턴된 사업 계약마다 데이터 소스 독립 점수가 계산된다. 그러므로, 단계(30)에서, C2로부터 리턴된 문서는 그들이 속하는 계약에 기초하여 클러스터링되고, 단계(32)에서 각각의 클러스터마다 점수가 계산된다. 클러스터에 대한 점수를 계산하는 다수의 방법이 존재한다. 예컨대, 일 방법은 식(1)에 도시된 바와 같이, 평균 점수를 사용하는 것이다.
Figure pat00001
n은 C2로부터 리턴된 문서의 수이고, SC2(di)는 i번째 리턴된 문서의 점수를 나타낸다.
이어서 단계(36)에서 C1 또는 C2 또는 양자로부터 리턴된 각각의 사업 계약의 병합 점수는 식(2)에 도시된 바와 같이 계산될 수 있다.
Figure pat00002
SC1은 C1으로부터 리턴된 계약에 첨부된 점수이고, a1은 C1으로 전송된 질의의 정보 콘텐츠이며, a2은 C2로 전송된 질의의 정보 콘텐츠이다. 이어서 단계(40)에서, 계산된 점수에 기초하여 엔티티가 랭킹된다.
도 2에 도시된 알고리즘은 이상의 예의 일반화 버전이다. 또한, 서브 질의의 정보 콘텐츠는 사전계산되고 알고리즘은 정보 콘텐츠를 입력으로서 사용한다. 도 2의 단계(32)에서, 클러스터의 검색능력 점수는 식(1)을 사용하여 계산될 수 있다. 단계(36)에서, 엔티티 레벨에서의 병합된 검색능력 점수는 다수의 검색 엔진(데이터 소스)을 위해 확장될 수 있는 식(2)을 사용하여 계산될 수 있다.
본 발명의 실시예는 구조화, 비구조화 및 반구조화 데이터 소스를 포함하는 이종 인덱스를 통해 검색 및 결과 병합을 가능하게 한다. 예컨대, 이들 중 몇몇은 관계형 데이터베이스일 수 있고, 이들 중 몇몇은 XML 데이터베이스일 수 있으며, 다른 것들은 키워드 검색 인덱스일 수 있다. 데이터 소스로부터 리턴된 검색 결과는 의미상 다를 수 있지만, 관련될 수 있다.
본 발명의 실시예는 엔티티 레벨에서 검색 및 결과 병합을 가능하게 한다. 각각의 엔티티는 계층적 구조를 갖는데, 예컨대, 책은 장(chapter)을 갖고, 장은 섹션을 가지며, 섹션은 페이지를 갖는다. 키워드 검색 인덱스는 책 세트 내의 페이지에 대한 정보를 가질 수 있지만, 관계형 데이터베이스는 (출판사와 같은) 책의 메타데이터 정보를 가질 수 있다. 본 발명은 2 개의 데이터 소스로 전송된 서브 질의에 대한 정보 콘텐츠를 동적 가중치로서 계산하고, 키워드 검색 인덱스로부터 책으로 리턴된 페이지를 그룹화하며 그 다음에 사용자에게 저장된 책을 최종 검색 결과로서 제공한다.
본 발명의 실시예가 구성요소 검색 엔진(데이터 소스)의 긴밀한 협력을 가능하거나 요구하지 않음을 아는 것이 중요하다. 데이터 소스가 정보 콘텐츠 기반 점수를 계산하도록 충분한 정보를 제공하지 않으면, L. Si and J. Callan in "A Semisupervised Learning Method to Merge Search Engine Results," ACM Transactions of Information Systems, 21(4), (pp. 457-491)(2003)와 같은 몇몇 학습 방안에서 논의되는 바와 같이 필요한 파라미터를 학습하는 데 샘플링이 사용될 수 있다.
도 3을 참조하면, 본 발명을 구현하는 예시적인 시스템은 컴퓨터(110)의 형태의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(110)의 구성요소는 처리 장치(120), 시스템 메모리(130) 및 처리 장치(120)에 시스템 메모리를 포함하는 다양한 시스템 구성요소를 연결하는 시스템 버스(121)를 포함할 수 있지만, 이것으로 제한되지 않는다. 시스템 버스(121)는 메모리 버스 또는 메모리 제어기, 주변장치 버스 및 다양한 버스 아키텍처를 사용하는 로컬 버스를 포함하는 몇몇 유형의 버스 구조 중 임의의 것일 수 있다. 예로써 그리고 제한하지 않는 것으로서, 그러한 아키텍처는 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, EI-SA(Enhanced ISA) 버스, VESA(Video Electronics Standards Association) 로컬 버스 및 PCI(Peripheral Component Interconnect) 버스(Mezzanine 버스로도 알려져 있음)를 포함한다.
컴퓨터(110)는 전형적으로 다양한 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 컴퓨터(110)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체 양자 모두를 포함한다. 예로써 그리고 제한하지 않는 것으로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 인스트럭션, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CDROM, DVD 또는 다른 광학 디스크 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 다른 자기 저장 장치 또는 원하는 정보를 저장하는 데 사용될 수 있고 컴퓨터(110)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이들로 제한되지 않는다.
통신 매체는 전형적으로 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내에 컴퓨터 판독가능 인스트럭션, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 구현하고, 임의의 정보 전달 매체를 포함한다. 용어 "변조된 데이터 신호"는 하나 이상의 특성을 갖거나 신호 내의 정보를 인코딩하는 것에 관한 방법으로 변경된 신호를 의미한다. 예로써 그리고 제한하지 않는 것으로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다. 이상의 것들 중 임의의 것의 조합 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
시스템 메모리(130)는 ROM(131) 및 RAM(132)과 같은 휘발성 및/또는 비휘발성 메모리의 형태의 컴퓨터 저장 매체를 포함한다. 예컨대, 시동 동안에 컴퓨터(110) 내의 요소들 사이에 정보를 전송하는 것을 지원하는 기본 루틴을 포함하는 기본 입력/출력 시스템(133)(BIOS)은 전형적으로 ROM(131) 내에 저장된다. RAM(132)은 전형적으로 처리 장치(120)에 의해 즉시 액세스가능하고/하거나 현재 작동되고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로써 그리고 제한하지 않는 것으로서, 도 3은 운영 시스템(134), 애플리케이션 프로그램(135), 다른 프로그램 모듈(136) 및 프로그램 데이터(137)를 도시한다.
컴퓨터(110)는 또한 다른 분리형/비분리형, 휘발성/비휘발성 컴퓨터 저장 매체를 포함할 수 있다. 예로써만, 도 3은 비분리형, 비휘발성 자기 매체로부터 판독하거나 이에 기록하는 하드 디스크 드라이브(141), 분리형, 비휘발성 자기 디스크(152)로부터 판독하거나 이에 기록하는 자기 디스크 드라이브(151), 및 분리형, 비휘발성 광학 디스크(156)로부터 판독하고 이에 기록하는 CD ROM 또는 다른 광학 매체와 같은 광학 디스크 드라이브(155)를 도시한다. 예시적인 운영 환경에서 사용될 수 있는 다른 분리형/비분리형, 휘발성/비휘발성 컴퓨터 저장 매체는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고체 상태 RAM, 고체 상태 ROM 등을 포함하지만, 이들로 제한되지 않는다. 하드 디스크 드라이브(141)는 전형적으로 인터페이스(140)와 같은 비분리형 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 자기 디스크 드라이브(151) 및 광학 디스크 드라이브(155)는 전형적으로 인터페이스(150)와 같은 분리형 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
도 3에 도시되고 전술된 라이브 및 연관된 컴퓨터 저장 매체는 컴퓨터 판독가능 인스트럭션, 데이터 구조, 프로그램 모듈 및 컴퓨터(110)에 대한 다른 데이터의 저장을 제공한다. 예컨대, 하드 디스크 드라이브(141)는 운영 시스템(144), 애플리케이션 프로그램(145), 다른 프로그램 모듈(146) 및 프로그램 데이터(147)를 저장하는 것으로 도시된다. 이들 구성요소가 운영 시스템(134), 애플리케이션 프로그램(135), 다른 프로그램 모듈(136) 및 프로그램 데이터(137)와 동일하거나 상이할 수 있음을 알아야 한다. 운영 시스템(144), 애플리케이션 프로그램(135), 다른 프로그램 모듈(136) 및 프로그램 데이터(137)는 적어도 상이한 사본임을 도시하도록 상이한 번호로 주어진다.
사용자는 키보드(162) 및 일반적으로 마우스, 트랙볼 또는 터치 패드로 지칭되는 포인팅 장치(161)와 같은 입력 장치를 통해 컴퓨터(110)에 명령 및 정보를 입력할 수 있다. 다른 입력 장치(도시 생략)는 마이크로폰, 조이스틱, 게임 패드, 위성 방송 수신 안테나, 스캐너 등을 포함할 수 있다. 이들 및 다른 입력 장치는 흔히 시스템 버스(121)에 연결되는 사용자 입력 인터페이스(160)를 통해 처리 장치(120)에 접속되지만, 병렬 포트, 게임 포트 또는 범용 직렬 버스(USB)와 같은 다른 인터페이스 및 버스 구조에 의해 접속될 수 있다.
모니터(191) 또는 다른 유형의 디스플레이 장치는 또한 비디오 인터페이스(190)와 같은 인터페이스를 통해 시스템 버스(121)에 접속되고, 차례로 비디오 메모리(186)와 통신할 수 있다. 모니터(191) 외에, 컴퓨터는 또한 출력 주변장치 인터페이스(195)를 통해 접속될 수 있는 스피커(197) 및 프린터(196)와 같은 다른 주변 출력 장치를 포함할 수 있다. 노스브릿지(Northbridge)와 같은 그래픽 인터페이스(182)도 시스템 버스(121)에 접속될 수 있다. 노스브릿지는 CPU 또는 호스트 처리 장치(120)와 통신하는 칩셋이고, AGP(accelerated graphics port) 통신을 담당한다고 가정한다. 하나 이상의 그래픽 처리 장치(GPU)(184)는 그래픽 인터페이스(182)와 통신할 수 있다. 이에 관하여, GPU(184)는 일반적으로 레지스터 저장장치와 같은 온칩 메모리 저장장치를 포함하고, GPU(184)는 비디오 메모리(186)와 통신한다. 그러나, GPU(184)는 코프로세서의 일례이므로 컴퓨터(110) 내에 다양한 코프로세싱 장치가 포함될 수 있다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 하나 이상의 원격 컴퓨터에 대한 논리적 접속을 사용하여 네트워킹 환경에서 작동할 수 있다. 원격 컴퓨터(180)는 개인 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 다른 공통 네트워크 노드일 수 있고, 전형적으로 컴퓨터(110)에 관하여 전술된 요소의 전부 또는 다수를 포함하지만, 도 3에는 메모리 저장 장치(181)만 도시된다. 도 3에 도시된 논리적 접속은 LAN(171) 및 WAN(173)을 포함하지만, 다른 네트워크도 포함할 수 있다. 그러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크, 인트라넷 및 인터넷에서 아주 흔하다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 전형적으로 인터넷과 같은 WAN(173)을 통해 통신을 수립하는 모뎀(172) 또는 다른 수단을 포함한다. 내부적 또는 외부적일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 다른 적합한 메커니즘을 통해 시스템 버스(121)에 접속될 수 있다. 네트워킹된 환경에서, 컴퓨터(110)에 관하여 도시된 프로그램 모듈 또는 그 일부는 원격 메모리 저장 장치에 저장될 수 있다. 예로써 그리고 제한하지 않는 것으로서, 도 3은 원격 애플리케이션 프로그램(185)을 메모리 장치(181)에 상주하는 것으로 도시한다. 도시된 네트워크 접속이 예시적이며 컴퓨터들 사이에 통신 링크를 수립하는 다른 수단이 사용될 수 있음을 알아야 할 것이다.
당업자는 컴퓨터(110) 또는 다른 클라이언트 장치가 컴퓨터 네트워크의 일부로서 배치될 수 있음을 알 수 있다. 이에 관하여, 본 발명은 임의의 수의 메모리 또는 저장 장치를 구비하는 임의의 컴퓨터 시스템 및 임의의 수의 저장 장치 또는 볼륨을 통해 발생하는 임의의 수의 애플리케이션 및 프로세스에 속한다. 본 발명은 원격 또는 로컬 저장장치를 가진 네트워크 환경에 배치된 서버 컴퓨터 및 클라이언트 컴퓨터를 가진 환경에 적용될 수 있다. 본 발명은 또한 프로그래밍 언어 기능, 해석 및 실행 능력을 가진 독립형 컴퓨팅 장치에 적용될 수 있다.
본 명세서에 개시된 발명이 전술된 목적을 이행하기 위해 잘 계산된다는 점을 자명하지만, 당업자에 의해 다수의 변경 및 실시예가 발명될 수 있음을 알아야 할 것이며, 첨부된 특허청구범위가 본 발명의 참된 사상 및 범위 내에서 그러한 모든 변경 및 실시예를 포함하도록 의도된다.

Claims (10)

  1. 검색 결과를 병합하는 방법에 있어서,
    질의를 식별하는 단계와,
    상기 질의를 서브 질의로 분할하는 단계와,
    상기 서브 질의의 각각에 대한 정보 콘텐츠를 계산하는 단계와,
    복수의 검색 결과를 획득하도록 상기 서브 질의의 각각을 실행하는 단계와,
    상기 서브 질의에 대해 계산된 상기 정보 콘텐츠에 기초하여 상기 검색 결과를 조합하는 단계를 포함하는
    검색 결과 병합 방법.
  2. 제 1 항에 있어서,
    상기 실행하는 단계는 구조화 데이터 소스, 비구조화 데이터 소스 및 반구조화 데이터 소스를 포함하는 이종 인덱스를 통해 검색하는 단계를 포함하고,
    상기 조합하는 단계는 상기 이종 인덱스를 통해 상기 검색 결과를 병합하는 단계를 포함하는
    검색 결과 병합 방법.

  3. 제 1 항에 있어서,
    상기 서브 질의의 각각을 실행하는 단계는 상기 서브 질의 중 적어도 하나에 대한 다수의 검색 결과를 식별하는 단계를 포함하고,
    상기 조합하는 단계는 상기 다수의 검색 결과를 복수의 클러스터로 그룹화하는 단계와, 상기 클러스터의 각각에 대한 검색능력 점수(relevance socre)를 계산하는 단계를 포함하되,
    각각의 클러스터는 하이 레벨 엔티티를 나타내는
    검색 결과 병합 방법.
  4. 제 1 항에 있어서,
    상기 서브 질의는 제 1 서브 질의 및 제 2 서브 질의를 포함하고,
    상기 서브 질의의 각각을 실행하는 단계는 복수의 제 1 클래스 엔티티를 식별하도록 상기 제 1 서브 질의를 실행하는 단계와, 다수의 제 2 클래스 엔티티를 식별하도록 상기 제 2 서브 질의를 실행하는 단계를 포함하되, 상기 제 2 클래스 엔티티의 각각은 규정된 기준에 따라 상기 제 1 클래스 엔티티 중 하나와 연관되고,
    상기 조합하는 단계는 상기 제 2 클래스 엔티티의 각각이 속하는 제 1 클래스 엔티티에 기초하여 상기 제 2 클래스 엔티티를 복수의 클러스터로 클러스터링하는 단계와, 상기 클러스터의 각각에 검색능력 점수를 할당하는 단계를 포함하는
    검색 결과 병합 방법.
  5. 검색 결과 병합 시스템에 있어서,
    하나 이상의 처리 장치를 포함하되,
    상기 처리 장치는,
    질의를 식별하고,
    상기 질의를 서브 질의로 분할하며,
    상기 서브 질의의 각각에 대한 정보 콘텐츠를 계산하고,
    복수의 검색 결과를 획득하도록 상기 서브 질의의 각각을 실행하며,
    상기 서브 질의에 대해 계산된 상기 정보 콘텐츠에 기초하여 상기 검색 결과를 조합하도록 구성되는
    검색 결과 병합 시스템.
  6. 제 5 항에 있어서,
    상기 서브 질의는 제 1 서브 질의 및 제 2 서브 질의를 포함하고,
    상기 서브 질의의 각각의 실행은 복수의 제 1 클래스 엔티티를 식별하도록 상기 제 1 서브 질의를 실행하고, 다수의 제 2 클래스 엔티티를 식별하도록 상기 제 2 서브 질의를 실행하는 것을 포함하며, 상기 제 2 클래스 엔티티의 각각은 규정된 기준에 따라 각각의 단일 제 1 클래스 엔티티와 연관되고,
    상기 조합은 상기 제 2 클래스 엔티티의 각각이 속하는 상기 제 1 클래스 엔티티에 기초하여 상기 제 2 클래스 엔티티를 복수의 클러스터로 클러스터링하는 것과, 상기 클러스터의 각각에 검색능력 점수를 할당하는 것을 포함하며,
    상기 조합은 상기 제 1 클래스 엔티티의 각각에 대한 중요도 값을 결정하는 것을 포함하고,
    상기 할당은 상기 각각의 클러스터의 상기 제 2 클래스 엔티티가 연관되는 상기 제 1 클래스 엔티티의 상기 중요도 값에 기초하여 상기 클러스터의 각각에 검색능력 점수를 할당하는 것을 포함하는
    검색 결과 병합 시스템.
  7. 검색 결과를 병합하기 위해 하나 이상의 처리 장치에서 인스트럭션을 실행하도록 컴퓨터 판독가능 프로그램 코드 로직을 가진 적어도 하나의 컴퓨터 사용가능 매체를 포함하는 제조물로서,
    실행되는 경우, 상기 컴퓨터 판독가능 프로그램 코드 로직은,
    질의를 식별하고,
    상기 질의를 서브 질의로 분할하며,
    상기 서브 질의의 각각에 대한 정보 콘텐츠를 계산하고,
    복수의 검색 결과를 획득하도록 상기 서브 질의의 각각을 실행하며,
    상기 서브 질의에 대해 계산된 상기 정보 콘텐츠에 기초하여 상기 검색 결과를 조합하는 것을 수행하는
    제조물.
  8. 제 7 항에 있어서,
    상기 서브 질의는 제 1 서브 질의 및 제 2 서브 질의를 포함하고,
    상기 서브 질의의 각각의 실행은 복수의 제 1 클래스 엔티티를 식별하도록 상기 제 1 서브 질의를 실행하고, 다수의 제 2 클래스 엔티티를 식별하도록 상기 제 2 서브 질의를 실행하는 것을 포함하며, 상기 제 2 클래스 엔티티의 각각은 규정된 기준에 따라 제 1 클래스 엔티티 중 하나와 연관되고,
    상기 조합은 상기 제 2 클래스 엔티티의 각각이 속하는 상기 제 1 클래스 엔티티에 기초하여 상기 제 2 클래스 엔티티를 복수의 클러스터로 클러스터링하는 것과, 상기 클러스트의 각각에 검색능력 점수를 할당하는 것을 포함하며,
    상기 조합은 상기 제 1 클래스 엔티티의 각각에 대한 중요도 값을 결정하는 것을 포함하고,
    상기 할당은 상기 각각의 클러스터의 상기 제 2 클래스 엔티티가 연관되는 상기 제 1 클래스 엔티티의 상기 중요도 값에 기초하여 상기 클러스터의 각각에 검색능력 점수를 할당하는 것을 포함하는
    제조물.
  9. 이종 인덱스를 통해 검색하고 검색 결과를 병합하는 방법에 있어서,
    질의를 식별하는 단계와,
    상기 질의를 서브 질의로 분할하는 단계와,
    상기 서브 질의의 각각에 대한 정보 콘텐츠를 계산하는 단계와,
    복수의 검색 결과를 획득하도록, 구조화 데이터 소스, 비구조화 데이터 소스 및 반구조화 데이터 소스를 포함하는 이종 인덱스를 통해 검색함으로써 상기 서브 질의의 각각을 실행하는 단계와,
    상기 서브 질의에 대해 계산된 상기 정보 콘텐츠에 기초하여 상기 검색 결과를 조합하는 단계를 포함하는
    검색 및 검색 결과 병합 방법.
  10. 제 9 항에 있어서,
    상기 서브 질의는 제 1 서브 질의 및 제 2 서브 질의를 포함하고,
    상기 제 1 서브 질의의 실행은 복수의 제 1 클래스 엔티티를 식별하도록 상기 질의를 실행하는 것을 포함하며,
    상기 제 2 서브 질의의 실행은 다수의 제 2 클래스 엔티티를 식별하도록 상기 질의를 실행하는 것을 포함하되, 상기 제 2 클래스 엔티티의 각각은 규정된 기준에 따라 제 1 클래스 엔티티 중 하나에 속하고,
    상기 조합하는 단계는 상기 제 2 클래스 엔티티의 각각이 속하는 상기 제 1 클래스 엔티티에 기초하여 상기 제 2 클래스 엔티티를 복수의 클러스터로 클러스터링하는 단계와, 상기 클러스트의 각각에 검색능력 점수를 할당하는 단계를 포함하는
    검색 및 검색 결과 병합 방법.
KR1020100096577A 2009-10-07 2010-10-04 이종 데이터 소스를 통해 이종 엔티티를 검색하는 정보 이론 기반 결과 병합 KR20110037882A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/575,210 2009-10-07
US12/575,210 US8219552B2 (en) 2009-10-07 2009-10-07 Information theory based result merging for searching hierarchical entities across heterogeneous data sources

Publications (1)

Publication Number Publication Date
KR20110037882A true KR20110037882A (ko) 2011-04-13

Family

ID=43823989

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100096577A KR20110037882A (ko) 2009-10-07 2010-10-04 이종 데이터 소스를 통해 이종 엔티티를 검색하는 정보 이론 기반 결과 병합

Country Status (3)

Country Link
US (3) US8219552B2 (ko)
JP (1) JP5480093B2 (ko)
KR (1) KR20110037882A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140102717A (ko) * 2011-12-28 2014-08-22 라쿠텐 인코포레이티드 검색 장치 및 검색 방법

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8639773B2 (en) * 2010-06-17 2014-01-28 Microsoft Corporation Discrepancy detection for web crawling
US8849811B2 (en) * 2011-06-29 2014-09-30 International Business Machines Corporation Enhancing cluster analysis using document metadata
US20130018864A1 (en) * 2011-07-14 2013-01-17 Nuance Communications, Inc. Methods and apparatus for identifying and providing information of various types to a user
US9471747B2 (en) * 2012-01-06 2016-10-18 Upmc Apparatus and method for viewing medical information
US9251270B2 (en) * 2012-01-17 2016-02-02 International Business Machines Corporation Grouping search results into a profile page
US10127314B2 (en) * 2012-03-21 2018-11-13 Apple Inc. Systems and methods for optimizing search engine performance
CN103377190B (zh) * 2012-04-11 2017-01-18 阿里巴巴集团控股有限公司 一种基于交易平台的供应商信息搜索方法和装置
CN103377240B (zh) * 2012-04-26 2017-03-01 阿里巴巴集团控股有限公司 信息提供方法、处理服务器及合并服务器
EP2682878A1 (en) * 2012-07-04 2014-01-08 Software AG Method of processing relational queries in a database system and corresponding database system
US9230383B2 (en) * 2012-12-28 2016-01-05 Konica Minolta Laboratory U.S.A., Inc. Document image compression method and its application in document authentication
US9081826B2 (en) * 2013-01-07 2015-07-14 Facebook, Inc. System and method for distributed database query engines
US9704136B2 (en) * 2013-01-31 2017-07-11 Hewlett Packard Enterprise Development Lp Identifying subsets of signifiers to analyze
US9519703B2 (en) 2013-03-20 2016-12-13 International Business Machines Corporation Refining search results for a compound search query
US9721020B2 (en) * 2013-07-31 2017-08-01 International Business Machines Corporation Search query obfuscation via broadened subqueries and recombining
WO2015094417A1 (en) * 2013-12-20 2015-06-25 The Dun & Bradstreet Corporation Discovering a business relationship network, and assessing a relevance of a relationship
US11200233B2 (en) * 2016-09-28 2021-12-14 International Business Machines Corporation Evaluation of query for data item having multiple representations in graph by evaluating sub-queries
US11275794B1 (en) * 2017-02-14 2022-03-15 Casepoint LLC CaseAssist story designer
US10740557B1 (en) 2017-02-14 2020-08-11 Casepoint LLC Technology platform for data discovery
US11158012B1 (en) 2017-02-14 2021-10-26 Casepoint LLC Customizing a data discovery user interface based on artificial intelligence
US11243949B2 (en) 2017-04-21 2022-02-08 Microsoft Technology Licensing, Llc Query execution across multiple graphs
US10956436B2 (en) 2018-04-17 2021-03-23 International Business Machines Corporation Refining search results generated from a combination of multiple types of searches
CN109542984B (zh) * 2018-11-02 2021-06-04 浙江大学 一种面向建筑结构试验的异构数据融合方法
US11036867B2 (en) * 2019-02-27 2021-06-15 International Business Machines Corporation Advanced rule analyzer to identify similarities in security rules, deduplicate rules, and generate new rules
US11544597B2 (en) * 2020-04-30 2023-01-03 International Business Machines Corporation Problem manipulators for language-independent computerized reasoning
CN111913986B (zh) * 2020-08-03 2024-04-16 支付宝(杭州)信息技术有限公司 一种查询优化方法及装置
JP7213559B2 (ja) 2020-10-30 2023-01-27 保線機器整備株式会社 レール削正装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185558B1 (en) * 1998-03-03 2001-02-06 Amazon.Com, Inc. Identifying the items most relevant to a current query based on items selected in connection with similar queries
US7181438B1 (en) * 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US7289911B1 (en) * 2000-08-23 2007-10-30 David Roth Rigney System, methods, and computer program product for analyzing microarray data
US6697818B2 (en) * 2001-06-14 2004-02-24 International Business Machines Corporation Methods and apparatus for constructing and implementing a universal extension module for processing objects in a database
US6795820B2 (en) 2001-06-20 2004-09-21 Nextpage, Inc. Metasearch technique that ranks documents obtained from multiple collections
US6738762B1 (en) * 2001-11-26 2004-05-18 At&T Corp. Multidimensional substring selectivity estimation using set hashing of cross-counts
US7856413B2 (en) * 2004-10-14 2010-12-21 International Business Machines Corporation Dynamic search criteria on a search graph
US20080016048A1 (en) * 2006-07-12 2008-01-17 Dettinger Richard D Intelligent condition pruning for size minimization of dynamic, just in time tables
US20080114750A1 (en) * 2006-11-14 2008-05-15 Microsoft Corporation Retrieval and ranking of items utilizing similarity
JP4464975B2 (ja) * 2007-01-22 2010-05-19 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータネットワーク上の電子文書の重要度を、当該電子文書に関係付けられた他の電子文書の当該電子文書に対する批評に基づいて、計算するためのコンピュータ装置、コンピュータプログラム及び方法
US20080263006A1 (en) * 2007-04-20 2008-10-23 Sap Ag Concurrent searching of structured and unstructured data
US20090112841A1 (en) 2007-10-29 2009-04-30 International Business Machines Corporation Document searching using contextual information leverage and insights
US20090292685A1 (en) * 2008-05-22 2009-11-26 Microsoft Corporation Video search re-ranking via multi-graph propagation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140102717A (ko) * 2011-12-28 2014-08-22 라쿠텐 인코포레이티드 검색 장치 및 검색 방법

Also Published As

Publication number Publication date
US20160147770A1 (en) 2016-05-26
US9251208B2 (en) 2016-02-02
JP2011081802A (ja) 2011-04-21
US10474686B2 (en) 2019-11-12
US8219552B2 (en) 2012-07-10
JP5480093B2 (ja) 2014-04-23
US20110082859A1 (en) 2011-04-07
US20120221542A1 (en) 2012-08-30

Similar Documents

Publication Publication Date Title
US10474686B2 (en) Information theory based result merging for searching hierarchical entities across heterogeneous data sources
JP5727512B2 (ja) 検索提案のクラスタ化及び提示
US8060513B2 (en) Information processing with integrated semantic contexts
US9576029B2 (en) Trust propagation through both explicit and implicit social networks
TWI463337B (zh) 用於實施於跨多搜尋引擎之結盟搜尋之方法及系統
US8429173B1 (en) Method, system, and computer readable medium for identifying result images based on an image query
US20100005087A1 (en) Facilitating collaborative searching using semantic contexts associated with information
Baeza-Yates et al. Next generation Web search
US7756867B2 (en) Ranking documents
US20130282693A1 (en) Object oriented data and metadata based search
US20200081926A1 (en) Using historical information to improve search across heterogeneous indices
US7698329B2 (en) Method for improving quality of search results by avoiding indexing sections of pages
US20070094250A1 (en) Using matrix representations of search engine operations to make inferences about documents in a search engine corpus
US10810181B2 (en) Refining structured data indexes
US9990425B1 (en) Presenting secondary music search result links
Al-akashi SAMA: a real-time Web search architecture
Khusro et al. Issues and challenges in book information retrieval
Gunjal et al. A Study of Knowledge Organisation System in Digital Libraries: An IRS Perspective.
Iyengar et al. Data Integration, Entity Reconciliation and Search in Personal Information Networks
Guo Integrating Automatic Web Page Clustering Into Web Log Association Mining

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application