KR20040063822A - 구조화 문서 검색 - Google Patents

구조화 문서 검색 Download PDF

Info

Publication number
KR20040063822A
KR20040063822A KR1020040000739A KR20040000739A KR20040063822A KR 20040063822 A KR20040063822 A KR 20040063822A KR 1020040000739 A KR1020040000739 A KR 1020040000739A KR 20040000739 A KR20040000739 A KR 20040000739A KR 20040063822 A KR20040063822 A KR 20040063822A
Authority
KR
South Korea
Prior art keywords
elements
document
term
query
ranking
Prior art date
Application number
KR1020040000739A
Other languages
English (en)
Other versions
KR101120760B1 (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 KR20040063822A publication Critical patent/KR20040063822A/ko
Application granted granted Critical
Publication of KR101120760B1 publication Critical patent/KR101120760B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61JCONTAINERS SPECIALLY ADAPTED FOR MEDICAL OR PHARMACEUTICAL PURPOSES; DEVICES OR METHODS SPECIALLY ADAPTED FOR BRINGING PHARMACEUTICAL PRODUCTS INTO PARTICULAR PHYSICAL OR ADMINISTERING FORMS; DEVICES FOR ADMINISTERING FOOD OR MEDICINES ORALLY; BABY COMFORTERS; DEVICES FOR RECEIVING SPITTLE
    • A61J3/00Devices or methods specially adapted for bringing pharmaceutical products into particular physical or administering forms
    • A61J3/07Devices or methods specially adapted for bringing pharmaceutical products into particular physical or administering forms into the form of capsules or similar small containers for oral use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3341Query execution using boolean model
    • 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/951Indexing; Web crawling techniques
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61JCONTAINERS SPECIALLY ADAPTED FOR MEDICAL OR PHARMACEUTICAL PURPOSES; DEVICES OR METHODS SPECIALLY ADAPTED FOR BRINGING PHARMACEUTICAL PRODUCTS INTO PARTICULAR PHYSICAL OR ADMINISTERING FORMS; DEVICES FOR ADMINISTERING FOOD OR MEDICINES ORALLY; BABY COMFORTERS; DEVICES FOR RECEIVING SPITTLE
    • A61J2200/00General characteristics or adaptations
    • A61J2200/40Heating or cooling means; Combinations thereof
    • A61J2200/42Heating means
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61JCONTAINERS SPECIALLY ADAPTED FOR MEDICAL OR PHARMACEUTICAL PURPOSES; DEVICES OR METHODS SPECIALLY ADAPTED FOR BRINGING PHARMACEUTICAL PRODUCTS INTO PARTICULAR PHYSICAL OR ADMINISTERING FORMS; DEVICES FOR ADMINISTERING FOOD OR MEDICINES ORALLY; BABY COMFORTERS; DEVICES FOR RECEIVING SPITTLE
    • A61J2200/00General characteristics or adaptations
    • A61J2200/70Device provided with specific sensor or indicating means
    • A61J2200/72Device provided with specific sensor or indicating means for temperature
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/956Hierarchical
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99937Sorting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Medicinal Chemistry (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 명세서는 다수의 구조화 문서들을 포함하는 데이터베이스의 탐색 용어에 대한 질의 실행에 관한 것이다. 탐색 용어를 포함하지 않는 구조화 문서들은 초기 탐색 중에 탐색되거나 필터링된다. 탐색 용어를 포함하는 구조화 문서들인 매치 구조화 문서들은 각각의 개별 엘리먼트가 탐색 용어와 얼마나 잘 매치하는지를 근거로 개별 엘리먼트들의 순위를 매김으로써 평가되며, 개별 엘리먼트들의 순위가 사용자에게 표시되는데, 여기서 개별 엘리먼트들은 사용자에 의해 액세스될 수 있다.

Description

구조화 문서 검색{RETRIEVAL OF STRUCTURED DOCUMENTS}
본 발명은 문서 검색에 관한 것으로, 특히, 구조화 문서의 검색에 관한 것이다.
컴퓨터, 네트워크, 인터넷 등의 사용이 증가함에 따라, 특정한 용어들에 대해 문서들이 종종 탐색된다. 예를 들어, 특정 주제에 대한 개별 탐색 또는 학생 탐색은 상기 용어에 대해 네트워크 컴퓨터, 독립형 컴퓨터 또는 인터넷의 특정 탐색 엔진을 사용해서 전자 문서(이하, 문서라고 함)를 탐색할 수 있다. 탐색 엔진은 컴퓨터 기반 문서 검색 기술을 사용해서 상기 용어를 포함하는 문서들의 리스트를 리턴할 것이다. 종종 질의에 대해 검색된 문서들은 각각의 특정 문서가 질의된 용어(들)와 얼마나 잘 매치하는지에 따라 순위가 매겨진다. 사용자는 종종 특정한 탐색 용어가 어디에 존재하는지를 결정하기 위해서 전체 문서를 살펴 보아야 한다.
흔히 컴퓨터의 메모리 로케이션은 계층적 구조로 특정 문서들을 저장한다. 계층 구조에 의존하는 XML(eXtensible Markup Language)과 같은 특정 구조화 컴퓨터 언어들은 태그들 또는 유사한 디바이스들을 사용해서 데이터를 특정 섹션들 또는 엘리먼트들로 구조적으로 구성할 수 있다. 검색된 구조화 문서에서, 사용자는 보통 각각의 특정 문서에서 탐색 용어가 존재하는 장소를 알지 못하는데, 이 장소는 문서의 용어에 대한 문맥을 찾기 위한 것이다. 확장된 질의를 위해 추가적인 사용 시간 및 노력이 고려될 수 있다.
다수의 문서 검색 시스템들은 문서들이 더 이상 분할될 수 없는, 질의되고 리턴될 수 있는 비교적 적은 크기의 이산 검색 유닛들로 간주한다. 종종 검색된 문서는 너무 커서 사용자가 의미있는 방식으로 분석할 수 없다. 따라서, 사용자들은 종종 적합한 용어들의 로케이션들 및/또는 적합한 용어들의 문맥을 결정하기 위해 디지털 라이브러리 컴퓨터 애플리케이션들의 전체 검색 문서들을 주의 깊게 검토해야 한다.
구절 검색(passage retrieval)은 원칙적으로 문서 검색과 유사하지만, 문서들로부터 구절들을 추출하는 추가의 예비 단계를 포함한다. 구절 검색의 한 측면은 사용자에게 간단한 답들을 리턴한다. 이를 달성하기 위해, 문서는 구절 또는 단락 레벨에서 색인을 지정하기 위해, 예를 들어 TFIDF(term frequency inversedocument frequency)를 사용해서 고정 길이 또는 소정의 부분들로 분해될 수 있다. 그러나, 다수의 문서 검색 시스템들이 의존하는 이 색인 지정 방법은 문서들의 엘리먼트들 간의 의미 관계들을 유지하지 않는다. 또한, 이러한 색인 지정 메카니즘은 의미있는 텍스트를 사용자들에게 제공하기 위해서는 상당한 컴퓨터 작업을 요구하는 형태로 다수의 이산 검색 엘리먼트들을 요구할 것이다.
본 발명은 구조화 문서들을 검색하기 위한 스케일 가능한 방법 및 적합한 시스템에 관한 것이다.
한 측면에서, 프로세스 및 적합한 시스템은 다수의 구조화 문서들을 포함하는 데이터베이스의 탐색 용어에 대한 질의 실행을 포함한다. 탐색 용어를 포함하지 않는 구조화 문서들은 초기 탐색 중에 탐색되거나 필터링된다. 탐색 용어를 포함하는 구조화 문서들인 매치 구조화 문서들은 각각의 개별 엘리먼트가 탐색 용어와 얼마나 잘 매치하는지에 기초하여 개별 엘리먼트들의 순위를 매김으로서 평가된다. 순위화 평가는 적어도 특정 개별 엘리먼트들이 사용자에 의해 액세스될 수 있는 방식으로 사용자에게 표시된다.
다른 측면에서, 프로세스는 탐색 용어에 대한 다수의 엘리먼트들을 갖는 문서의 질의를 포함한다. 엘리먼트들 중 상이한 엘리먼트들의 적합성(relevancies)은 탐색 용어을 근거로 웨이팅된다. 엘리먼트들 중 상이한 엘리먼트들은 엘리먼트들 중 웨이팅된 상이한 엘리먼트들에 응답해서 순위가 매겨진다. 추가로, 문서 내의 다수의 엘리먼트들의 경로 구조가 디스플레이되는데, 경로 구조는 문서 내의 엘리먼트들 중 상이한 엘리먼트들의 적합성을 나타낸다. 구조화 문서들의 엘리먼트들은 문서의 구조를 근거로 스케일된다.
도 1은 구조화 문서 검색 시스템의 한 실시예의 블록도.
도 2는 구조화 문서 검색 시스템의 다른 실시예의 블록도.
도 3은 계층적 색인을 사용하는 파일들의 구조의 한 실시예의 블록도.
도 4는 도 1 또는 도 2에 도시된 구조화 문서 검색 시스템을 사용하는 도 3의 구조화 문서로부터 유도된 계층적 색인의 한 실시예의 블록도.
도 5a는 수개의 색인들에 포함된 색인어들을 포함하는 계층적 색인의 일부를 도시한 블록도.
도 5b는 2개의 자식 노드들에 의해 공유된 공통 색인어의 부모 노드로의 전송 후에 도 5a에 도시된 계층적 색인의 부분을 도시한 도면.
도 6은 계층적 색인 지정 프로세스의 한 실시예의 플로우챠트.
도 7a 및 도 7b는 구조화 문서 검색 프로세스의 한 실시예의 플로우챠트.
도 8a 및 도 8b는 구조화 문서 검색 프로세스의 다른 실시예의 플로우챠트.
도 9는 구조화 문서 검색 프로세스로부터의 출력을 디스플레이하는 컴퓨터 디스플레이의 한 실시예를 도시한 도면.
도 10은 파라(Para) TFIDF 방법과 비교되는 스케일 가능한 문서 검색 프로세스에 대한 F-값 대 임계값을 도시한 그래프.
도 11은 TFIDF 파라 방법에 대한 동적 임계값 설정을 도시한 막대 그래프.
도 12는 구조화 문서 검색 프로세스에 대한 동적 임계값 설정을 도시한 막대 그래프.
도 13은 구조화 문서 검색 프로세스를 위해 사용될 수 있는 컴퓨터 환경의 한 실시예의 블록도.
<도면의 주요 부분에 대한 부호의 설명>
100 : 구조화 문서 검색 시스템 106 : 데이터베이스부
300 : 구조화 문서 312 : 문서 색인 엘리먼트
314 : 섹션 색인 엘리먼트 316 : 단락 색인 엘리먼트
400 : 계층적 색인
문서 검색 시스템들은 사용자에 의해 제공된 하나 이상의 소정의 탐색 용어들 또는 탐색어들을 근거로 적합한 전자 문서들(이후부터는 "문서들"이라고 함)의 위치를 지정하고 디스플레이하기 위한 탐색 엔진에 의존한다. 문서 검색 시스템들은 인터넷 시대에 더 많이 사용된다(또한 보다 도전적인 동작들을 수행하는데 필요하다). 구조화 문서 검색 시스템(100)의 상이한 실시예들이 도 1 및 도 2에 도시되어 있는데, 상기 상이한 실시예들은 특히 구조화 문서들을 검색하는데 적합하다. SGML(Standard Generalized Markup Language) 및 XML(eXtensible Markup Language)는 구조화 문서들을 생성하고 사용하는 최신 컴퓨터 언어들의 예들이다. 구조화 문서 검색 시스템(100)은 전체 문서를 검색하는 대신 사용자의 질의로부터의 색인 용어들을 근거로 문서의 가장 적합한 부분을 검색한다. SGML 및 XML은 사용자가 정의할 수 있는 태그들을 사용해서 문서들 내의 데이터 콘텐츠를 상이하게 분류할 수 있다. 태그들은 문서들의 외관뿐만 아니라 콘텐츠를 정의할 수 있다. 트리 또는 계층 구조로 정리된 문서들을 생성할 수 있는 임의의 컴퓨터 언어는 상술된 구조화 문서 검색 프로세스를 사용할 수 있다.
문서의 구조(예를 들어, 계층)가 각각의 섹션 내에 기억된 데이터에 대한 정보를 제공할 수 있기 때문에 구조화 문서들은 특히 의미있는 정보 검색에 특히 적합하다. 본 발명의 한 측면은 탐색과 관련된 문서의 부분들(예를 들어, 태그들 또는 몇몇 다른 유사 메카니즘에 의해 차별화된 부분들)을 탐색 엔진이 어떻게 탐색 및 검색할 수 있는지를 기술한다. 구조화 문서 검색 시스템은 적합한 구성 단위(granularity)을 갖는 구조화 문서들을 리턴할 수 있다. 문서의 구성 단위는 문서가 얼마나 많이 분할될 수 있는지를 나타낼 수 있다. 구성 단위는 문서가 별개의 엘리먼트들로 분할될 수 있는지의 척도를 나타낸다. 일반적으로 구조화된 문서들이 고도의 구성 단위를 가지고 구조화되지 않은 문서들이 상당한 구성 단위이 결여되더라도, 상기 규칙에는 예외가 있다.
본 발명의 다른 측면은 다수의 구조화 문서들의 다수의 경로들 중 하나의 경로를 탐색 및 사용할 때 어떻게 색인 지정 기법을 사용하는지를 기술한다. 구조화 문서 검색 시스템은 구조화 문서의 적합한 부분들을 그 자체만으로 디스플레이할 수도 있고 아니면 문서의 다른 부분들과 관련해서 디스플레이할 수도 있다.
도 1은 클라이언트부(102), 서버부(104), 데이터베이스부(106) 및 네트워크부(108)를 포함하는 구조화 문서 검색 시스템(100)(네트워크-기반)의 한 실시예를 도시한 것이다. 도 1에 도시된 구조화 문서 검색 시스템(100)의 실시예는 네트워크 기반이다. 클라이언트부(102) 및 서버부(104)는 상호 간의 데이터 전송을 위해 표준 네트워크 통신 프로토콜들을 사용해서 네트워크부(108)를 통해 인터페이스한다. 데이터 전송 프로세스를 돕기 위해 시스템 콜들은 네트워크부(108)를 통해 전송한다. 정상 오퍼레이션 중에, 서버부(104)는 데이터베이스부(106)로부터 데이터에 액세스한다. 구조화 문서 검색 시스템(100)은 (클라이언트부(102)에서) 사용자로부터의 질의를 근거로 특정 탐색 용어들에 대해 데이터베이스부(106)에 기억된문서들을 탐색한다.
도 2의 구조화 문서 검색 시스템(100)의 실시예는 독립형 컴퓨터(202) 및 데이터베이스부(106)를 포함한다(상기 데이터베이스부는 독립형 컴퓨터의 일부일 수도 있다). 독립형 컴퓨터(202)는 도 1에 도시된 결합된 클라이언트부(102), 서버부(104) 및 네트워크부(108)와 유사한 방식으로 (모니터에 보일) 데이터베이스부(106)로부터의 구조화 문서들을 검색할 수 있다. 구조화 문서 검색 시스템에 의해 액세스되는 데이터베이스부(106)는 도 2에 도시된 독립형 컴퓨터 또는 도 1에 도시된 네트워크 시스템으로 구성된다. 데이터베이스부(106)는 각각 네트워크 또는 독립형 컴퓨터로부터 분리된 컴포넌트로 도 1 및 도 2에 도시되어 있다. 실제로, 데이터베이스부는 네트워크 또는 독립형 컴퓨터 내부에 통합될 수도 있다. 구조화 문서 검색 시스템(100)과 연관될 수도 있는 컴퓨터 구조의 다른 세부 사항들은 후술된다.
상이한 실시예들에서, 데이터베이스부(106)는 XML 포맷, HTML(HyperText Markup Language) 포맷, SGML 포맷 또는 다른 구조화 포맷으로 기억된 데이터를 포함하는 구조화 문서들을 저장한다. HTML은 인터넷을 통해 현재 압도적으로 사용되는 마크업 언어이다. HTML 문서들은 통상 자신만의 구조를 갖는다. HTML은 컴퓨터 디스플레이들을 통해 디스플레이되는 색, 폰트 등을 정의하는데 가장 흔하게 사용된다. HTML은 전형적으로 콘텐츠 스타일이 아닌 디스플레이 스타일에 더 관련되어 적용되었기 때문에, 구조화 문서 검색 시스템(100)의 다수의 실시예들에서의 구조화 질의에서 예를 들어, XML 및 SGML 보다 HTML을 사용하는 것이 더 어렵다. 비교적, XML 및 SGML은 사용자 정의 언어이며 주로 문서에서 데이터 콘텐츠와 관련된다. XML 및 SGML이 특히 적합하지만, HTML, XML 또는 SGML이 구조화 문서 검색 시스템의 상이한 실시예들에 적용될 수 있다. 본 발명의 의도된 범위 내에서 마크업 언어들이 변경 및 수정될 수 있다.
구조화 문서 검색 시스템(100)은 문서를 검색 및 디스플레이할 때 문서의 콘텐츠 및 문맥에 의존한다. 구조화 문서 검색 시스템은 따라서 구조화 문서의 콘텐츠(예를 들어, 언어)를 매치시킨다. 또한 구조화 문서는 사용자에게 문서의 검색된 부분들의 문맥을 표시한다. 정보 검색을 위해 근사한 매치가 사용될 수 있다. 각각의 구조화 부분을 탐색한 후에, 각각의 구조화 부분의 어디가 매치되는지가 결정된다.
구조화 문서 검색 시스템이 구조화 문서들을 검색하는 방법을 설명하기 위해, 구조화 문서들의 특정 측면들이 기술된다. 도 3은 구조화 문서 검색 시스템(100)에 의해 탐색되는 구조화 문서(300) 및 적합한 엘리먼트들의 한 실시예의 구성을 도시한 것이다. 구조화 문서(300)는 콘텐츠 문서 엘리먼트(302), 적어도 하나의 콘텐츠 섹션 엘리먼트(304) 및 적어도 하나의 콘텐츠 단락 엘리먼트(306)를 포함한다. 긴 문서는 도 3에 도시된 것 보다 많은 수의 콘텐츠 섹션 엘리먼트들(304) 및 콘텐츠 단락 엘리먼트들을 포함할 것이다. 각각의 콘텐츠 섹션 엘리먼트(304)는 콘텐츠 문서 엘리먼트(302) 및/또는 다른 콘텐츠 섹션 엘리먼트(304)와 독립적으로 연관된다. 각각의 콘텐츠 단락 엘리먼트(306)는 콘텐츠 문서 엘리먼트(302) 및/또는 콘텐츠 섹션 엘리먼트(304)와 독립적으로 연관된다.비독립적인 관계의 방향은 하향 화살표를 갖는 선으로 표시된다. 다시 말해서, 도 3의 선들의 화살표들은 부모 노드로부터 자식 노드로 진행된다. 잎 노드 엘리먼트들은 다른 종속 엘리먼트들을 갖지 않기 때문에, 도 3에 도시된 콘텐츠 단락 엘리먼트(306)는 통상 잎 노드 엘리먼트로 구조화된다.
문서의 특정 부분(즉, 텍스트, 이미지, 표 등)이 콘텐츠 문서 엘리먼트(302), 콘텐츠 섹션 엘리먼트(304) 또는 콘텐츠 단락 엘리먼트(306)로 특징화되는지는 각각의 특정 엘리먼트와 관련된 태그에 따라 좌우된다. XML 및 SGML이 모두 사용자 정의 태그들을 사용한다는 점을 제외하고는, XML, SGML, HTML 및 다른 마크업 언어들에서 태그의 사용은 널리 공지되어 있기에 더 상세히 설명되지 않을 것이다. 특정 문서 내의 콘텐츠 문서 엘리먼트(302), 콘텐츠 섹션 엘리먼트(304) 및 콘텐츠 단락 엘리먼트(306)의 특정 기술은 사용자 또는 프로그래머에 의해 규정될 수 있다. 콘텐츠 문서 엘리먼트(302), 콘텐츠 섹션 엘리먼트(304) 및 콘텐츠 단락 엘리먼트(306)는 본 발명의 의도된 범위 내에서 상이한 이름들 또는 기술로 기술될 수 있다(도 4와 관련되어 기술된 엘리먼트들에 대해서도 마찬가지다).
구조화 문서 검색 시스템(100)은 문서들의 콘텐츠, 문맥 및 계층 구조를 포함한다. 도 3은 구조화 문서의 콘텐츠 구조(300)의 한 실시예의 블록도이다. 이에 비해, 도 4는 문서 검색 시스템을 사용해서 구조화 문서의 콘텐츠 구조(300)로부터 유도된 계층적 색인(400)의 한 실시예의 블록도이다. 문서들(도 3에 도시된 바와 같음)의 콘텐츠 구조(300)는 계층적 색인 지정 메카니즘을 사용해서 계층적색인(400)(도 4에 도시된 바와 같음)으로 구조적으로 사상될 수 있다. 상기 계층적 색인 지정 메카니즘에서, 콘텐츠 엘리먼트는 일대일 관계로 계층적 색인 엘리먼트로 사상된다. 계층 색인 지정 메카니즘은 상이한 레벨들의 문서 엘리먼트들을 동일하게 처리하고 모든 엘리먼트들에게 적합한 색인 용어들을 할당한다.
(도 3 및 도 4에 각각 도시된 바와 같이) 문서들의 콘텐츠 구조(300)를 계층적 색인(300)으로 사상하면, 문서 색인 엘리먼트(312), 적어도 하나의 섹션 색인(314) 및 적어도 하나의 단락 색인(316)을 포함하는 구조가 된다. 일대일 사상을 유지하기 위해, 각각의 콘텐츠 문서 엘리먼트(302)는 계층적 색인 지정 메카니즘에 의해 문서 색인 엘리먼트(312)가 되도록 사상한다. 각각의 콘텐츠 섹션 엘리먼트(304)는 계층적 색인 지정 메카니즘에 의해 섹션 색인 엘리먼트(314)가 되도록 사상한다. 각각의 콘텐츠 단락 엘리먼트(306)는 계층적 색인 지정 메카니즘에 의해 단락 색인 엘리먼트(316)가 되도록 사상한다. 각각의 문서 색인 엘리먼트(312), 각각의 섹션 색인 엘리먼트(314) 및 각각의 단락 색인 엘리먼트(316)는 색인 용어들을 기억 및 전송할 수 있다. 문서의 엘리먼트들(도 4에 도시된 계층적 색인(400)을 형성하는 문서 색인 엘리먼트(312), 섹션 색인 엘리먼트(314) 및 단락 색인 엘리먼트(316); 또는 도 3에 도시된 콘텐츠 구조(300)를 형성하는 콘텐츠 문서 엘리먼트(302), 콘텐츠 섹션 엘리먼트(304) 및 콘텐츠 단락 엘리먼트(306))은 개념 트리로 배열된 것으로 보일 수 있다. 개념 트리에서, 상위 엘리먼트는 하위 개념들을 모두 커버하는 보다 넓은 개념을 나타낸다.
임의의 구성 단위를 갖는 적합한 문서 엘리먼트들은 보통의 키워드 기반의질의들을 사용함으로써 스케일 가능한 엘리먼트 검색 기법을 사용해서 획득될 수 있다. 구조화 문서 검색 시스템(100)은 계층적 색인 지정 메카니즘 및 알고리즘을 포함한다. 색인 용어들은 상이한 레벨들의 엘리먼트들의 용어 빈도수 및 분포에 따라 XML 문서들의 트리 구조를 따라 전달된다. 도 3에 도시된 각각의 문서 색인 엘리먼트(312), 섹션 색인 엘리먼트(314) 및 단락 색인 엘리먼트(316)는 대응 용어들이 도 4에 도시된 각각의 콘텐츠 문서 엘리먼트(302), 콘텐츠 섹션 엘리먼트(304) 및 콘텐츠 단락 엘리먼트(306)에 나타난 빈도수에 따라 색인 용어들을 기억한다. 알고리즘(즉, 스케일 가능한 문서 엘리먼트 검색 알고리즘)은 계층적 색인 지정 메카니즘을 근거로 적합한 문서 엘리먼트들을 선택한다. 스케일 가능한 문서 엘리먼트 검색 알고리즘은 문서 색인 엘리먼트(312), 섹션 색인 엘리먼트(314) 및 단락 색인 엘리먼트(316)에 포함된 색인 구조를 근거로 구현된다.
도 4에 도시된 계층적 색인(400)은 (도 3에 도시된 콘텐츠 구조(300)와 같이) 계층적으로 구조화되고, 따라서 부모 노드들 및 자식 노드들을 포함한다. 각각의 부모 노드는 해당 부모 노드의 자식 노드들 보다 상위이며 자식 노드들을 포함한다. 계층 트리 (및 다른 트리) 구조에서, 자식 노드는 부모 노드의 속성들을 계승해야만 한다. 따라서, 부모 노드는 자식 노드의 상위 개념이어야만 한다. 예를 들어, 도 5b에 도시된 문서 검색 일례를 사용할 때, 중국은 중국의 역사, 중국의 경제, 중국의 문화 등의 상위 개념이다. 따라서, 중국 역사 엘리먼트, 중국 경제 엘리먼트 및 중국 문화 엘리먼트는 각각 중국 엘리먼트의 속성들을 계승해야 한다.
구조화 문서 검색 시스템(100)은 구조화 문서 검색의 텍스트 길이 정규화 및 임계값 설정에 존재할 수도 있는 어려움들을 다소 극복한다. 전체 문서는 종종 너무 길어서 사용자가 특정 용어들의 문맥을 효율적으로 분석 또는 결정할 수 없게 한다. 문서의 부분만을 분석하는 것은 사용자, 특히, 보다 긴 문서들을 분석하는 사용자들에게 유익하다. 또한, 문서의 디스플레이된 부분과 문서의 다른 부분들 간의 문맥(즉, 관계)을 나타내는 것이 중요할 수도 있다.
XML 및 SGML(및 HTML)은 특히 계층적 색인 지정 및 구조화 문서 검색에 관한 구성으로 구조화 문서들을 제공하는 컴퓨터 언어들을 나타낸다. 전형적인 XML 또는 SGML 문서들은 논리 엘리먼트(예를 들어, 타이틀, 섹션, 서브섹션, 단락 등) 집합을 포함한다. XML 및 SGML 문서들은 통상 계층적 관계를 근거로 구조화되고, 따라서, 계층적 색인 지정 및 구조화 문서 검색 시스템(100)에 잘 적용될 수 있다. XML 및 SGML은 사용자 정의 태그들을 사용해서 문서들의 구조를 명백하게 나타내는 표준 및 효과적인 방법을 제공한다.
본 발명의 한 측면에서, 문서 검색은 사용자가 문서의 임의의 레벨들의 엘리먼트들을 검색할 수 있지 않는 한 효과적인 정보 검색을 제공하지 않는다. 종종 문서 내에서 탐색 용어들(또는 색인 용어들)의 문맥을 유도하는 메카니즘을 사용자에게 제공하지 않는 한 질의에 응답해서 매우 긴 문서 집합을 검색하는 것은 사용자에게 거의 쓸모없는 일이다. 문서들의 임의의 레벨들의 엘리먼트들을 획득하는 것은 구조화 문서 검색 시스템(100)이 상이한 길이들 및 구조들을 갖는 문서들을 질의하는데 적응할 수 있게 해준다. 따라서, 검색 시스템은 사용자가 결정한대로사용자에게 적합한 엘리먼트들만을 리턴할 수 있다.
구조화 문서 검색 시스템(100)의 한 측면은 보다 규제된 데이터를 검색하는 검색 기술들(예를 들어, 색인 지정 기술들)을 사용하는 것이다. 구조화 문서 검색 시스템(100)은 임의의 구성 단위를 가짐으로써 변경되는 키워드에 기반한 질의들(적합한 문서 엘리먼트들을 검색하기 위해 문서 검색에서 흔히 사용됨)을 사용한다. 본 발명의 한 측면은 도 4에 도시된 계층적 색인(400)을 근거로 2개의 부분들 - 적합한 문서 엘리먼트들을 선택 및 디스플레이하는 알고리즘 및 새로운 계층적 색인 지정 메카니즘을 포함한다.
특정한 종래 기술 기법들은 색인 용어들을 잎 엘리먼트들 또는 고정 길이 구절들에 할당만 한다. 상이한 레벨들의 엘리먼트들은 동일한 적합한 색인 용어들을 할당 받는다. 구조화 문서 검색 시스템(100)은 너무 광범위하거나 또는 너무 협소한 의미들을 갖는 용어들을 필터링하면서 각각의 엘리먼트에 대한 고유 개념을 정확하게 기술할 수 있는 색인 용어들을 할당하는 계층적 색인 지정 메카니즘을 사용한다. "중국"에 대한 샘플 문서가 "당나라 왕조", "명나라 왕조" 및 "청나라 왕조" 등과 같은 서브섹션들을 포함하는 섹션 "역사"를 포함한다고 고려한다. 섹션 "역사"에 대해 적합한 색인 용어들을 선택하는 것은 힘들다. "중국"은 비교적 광범위한 용어로서 너무 많은 결과들을 제공할 것으로 보인다. 이에 비해 "당나라", "명나라" 및 "청나라"는 협소한 용어들로서 적합한 문서들을 빼먹을 수도 있을 것으로 보인다. "역사" 및 "왕조"와 같은 용어들이 좋은 후보 용어들로 보인다.
도 5a 및 도 5b는 하나의 섹션 색인 엘리먼트(314) 및 부모 섹션 색인 엘리먼트의 자식으로서 각각 구성되는 2개의 단락 색인 엘리먼트들(316)을 포함하는 계층적 색인(400)의 일부 내의 색인 용어를 적합하게 필터링하는 한 실시예를 도시한 것이다. 색인 용어 필터링은 계층적 색인(400)의 부모 노드 또는 엘리먼트들에 존재하는 색인 용어들이 자식 노드 또는 엘리먼트들에 중복 발생하는 것을 감소시킨다. 또한, 색인 용어 필터링은 각각 계층적 색인(400)의 동일한 부모 노드 또는 엘리먼트의 자식인 다수의 자식 노드들 또는 엘리먼트에서의 색인 용어 중복(duplicity)을 제한한다. 도 5a 및 도 5b의 섹션 색인 엘리먼트(314) 및 단락 색인 엘리먼트(316)의 사용은 임의적이지만, 부모-자식 구성으로 배열된 색인 엘리먼트들(색인 용어들을 포함할 수 있음)을 보여주도록 선택된다. 단락(즉, 자식) 색인 엘리먼트들(316)은 잎 노드일 수도 있고 아닐 수도 있다.
도 5a에서, 하나의 자식 색인 엘리먼트(356)는 색인 용어들 "중국" 및 "역사"를 포함하고, 다른 자식 색인 엘리먼트(356)는 색인 용어들 "중국" 및 "경제"를 포함한다. 부모 색인 엘리먼트(354)는 색인 용어를 포함하지 않는다. 문서의 색인 엘리먼트들은 부모 색인 엘리먼트(들)(354)가 보다 광범위한 개념들을 나타내는 개념 트리로서 배열될 수 있는데, 이는 부모 색인 엘리먼트(354)의 하위 자식 색인 엘리먼트(들)(356)의 모든 개념들에 적용된다. 자식 색인 엘리먼트들(356)에서 공통인 용어는 모든 개별 자식 엘리먼트들에서 탐색될 필요가 없기 때문에, 색인어들이 가장 적은 엘리먼트들로 필터링될 수 있는 개념 트리로 계층적 색인 지정 구조를 배열함으로써 탐색 엔진 성능이 향상된다. 대신 용어는 부모 색인 엘리먼트(354)에서 한 번만 탐색되어야 한다.
본 명세서에 기술된 계층적 색인 지정 메카니즘은 상향식 전파 방식에 따라 각각의 엘리먼트를 위한 적합한 색인 용어들을 자동으로 선택한다. 한 실시예에서, 구조화 문서 검색 시스템(100)의 색인 지정 방법은 엘리먼트에 나타난 색인 용어가 상기 엘리먼트의 임의의 자식 엘리먼트들에는 나타나지 않음을 보장한다. 색인 지정 방법은 기억 공간 및 검색 시간을 상당히 절약한다. 또한, 검색 프로세스가 전체 문서 트리에 걸쳐서 색인 용어들의 완전한 분포로 인해 바람직한 엘리먼트들을 직접 획득할 수 있기 때문에, 계층적 색인 지정 메카니즘은 결과 집합의 잠정적인 문제점을 회피한다. 긴 문서 탐색 및 검색 프로세스에 대한 시간 절약으로 시간이 상당히 절약될 것이다.
도 6은 문서 검색 시스템(100)에 적용된 계층적 색인 지정 메카니즘(470)의 한 실시예를 도시한 것이다. 계층적 색인 지정 메카니즘(470)은 문서의 최하위 레벨의 엘리먼트를 선택하는 단계(472)로부터 시작된다. 예를 들어, 단락 색인 엘리먼트들(316) 중 하나가 도 5a에 도시된 계층적 색인(400)에서 제공된다. 계층적 색인 지정 메카니즘은 단계(474)로 진행해서 선택된 엘리먼트에 대한 0개의 또는 그 보다 많은 계층적 색인 용어들을 식별한다.
계층적 색인 지정 메카니즘은 결정 단계(478)로 진행해서 문서에 고려한 임의의 추가 엘리먼트들이 있는지가 결정된다. 단계들(472, 474, 476)이 색인 용어들에 대해 계층적 색인(400)의 각각의 엘리먼트를 고려하는 루프를 생성함을 주지하라. 한 실시예에서, 사용자는 오퍼레이션 중에 컴퓨터에 의해 제공된 프롬프트에 의해 또는 사용자가 탐색하기 희망하는 영역의 예비 사용자 제한 선택에 의해고려 사항으로부터 계층적 색인(400)의 특정 섹션들을 제한할 수 있다.
계층적 색인 지정 메카니즘(470)의 단계들(472, 474, 476)을 통한 루핑에 이어, 계층적 색인 지정 메카니즘은 단계(478)로 진행한다. 단계(478)에서, 계층적 색인의 각각의 색인 용어에 있어서, 적합한 용어들이 계층적 색인(400)에서 자식 엘리먼트들로부터 부모 엘리먼트로 전달된다. 자식 엘리먼트들로부터 부모 엘리먼트들로의 적합한 용어 전달은 도 5a 및 도 5b에 도시된 바와 관련하여 기술된 "필터링 프로세스"와 동등할 수 있다.
예를 들어, 사용자가 질의 "중국 역사"를 제시할 때, 검색 문서의 타이틀은 "중국"이고, 섹션은 "역사"이다. "역사" 섹션이 헤딩 "중국"과 가장 관련이 있기 때문에, 가장 적합한 경로는 헤딩 "중국"을 걸쳐 섹션 "역사"로 가는 것이다. 따라서, 섹션들 "중국" 및 "역사"는 "중국 역사" 질의로부터 색인 경로를 형성하고; 중국 역사를 질의한 사용자는 상기 경로를 리턴한다.
방법의 다른 파트는 사용자의 정보 요구 사항을 만족시키기 위해 적합한 문서 엘리먼트들을 선택하는 스케일 가능한 알고리즘을 사용한다. 구조화 문서 검색 시스템(100)에 적용되는 "스케일 가능한"이라는 용어는 알고리즘이 사용자의 질의의 개념의 범위에 따라 적합한 문서 엘리먼트들의 임의의 구성 단위를 검색할 수 있음을 나타낸다. 도 4에 도시된 계층적 색인(400)이 임의의 구성 단위를 갖는 문서 엘리먼트들을 직접 검색하는 효과적인 방법을 제공하기 때문에, 검색 알고리즘이 질의들에 따라 후보 엘리먼트들의 순위를 매기는 것이 중요하다. 도 5a 및 도 5b에 도시된 계층적 색인(400)은 3개의 색인 엘리먼트들(314, 316)을 포함하고, 도4의 계층적 색인은 11개의 색인 엘리먼트들을 포함한다. 또한, 긴 문서의 색인 엘리먼트들의 수는 매우 클 수도 있다.
한 측면에서, 문서 검색 시스템(100)은 스케일 가능한할 수 있다. 구조화 문서 검색 시스템의 특정 실시예들은 사용자가 아주 다양한 구성들 및/또는 구성 단위들로 문서들을 검색하고 섹션 문서들을 디스플레이할 수 있게 해준다. 예를 들어, 사용자는 전체 문서에 액세스하도록 광범위한 검색을 실행할 수 있다. 중국의 일례에서, 사용자는 검색된 문서의 전체 계층적 색인(400)을 산출하는 "중국" 색인 용어에 액세스할 수 있다. 또한, 사용자는 "중국 역사"에 대응하는 도 4에 도시된 섹션 색인 엘리먼트들(314)을 검색하는 중간 검색 프로세스를 실행할 수 있다. 최종적으로, 사용자는 청나라 왕조에 대응하는 도 4의 단락 색인 엘리먼트들(316) 또는 섹션 색인 엘리먼트들(314)을 검색함으로써 문서의 매우 협소한 부분에 액세스할 수 있다.
후술된 경로 순위화 알고리즘은 의미있는 방식으로 문서들을 검색 및 디스플레이할 수 있게 해준다. 구조 정보를 갖는 데이터를 검색하기 위해 특정 색인들을 사용하는 것은 다수의 영역들(예를 들어, 데이터베이스, IR 및 XML)의 애플리케이션들을 갖는다. 구조화 문서 검색 시스템(100)은 문서의 구조에 직접 사상하는 계층적 색인(400)을 포함한다. 계층적 색인 지정 메카니즘은 무엇이 다양한 구성 단위들을 갖는 문서 엘리먼트들을 검색하는지를 결정하고, 사용자들의 질의 언어를 제한하지 않는다. 예를 들어, 구조화 문서 검색 시스템(100)은 비교적 간단한 문서들 뿐만 아니라 매우 긴 문서들에도 적용될 수 있다. 문서 트리의 각각의 엘리먼트 또는 컴포넌트의 경우, 색인 트리의 대응 색인 엘리먼트 또는 컴포넌트가 있다. 질의가 들어올 때, 탐색 엔진은 가장 적합한(사용자의 탐색에 가장 적합한) 컴포넌트 경로 또는 경로들의 위치를 지정하기 위해 색인 트리를 사용한다. 상기 컴포넌트 경로(들)는 (루트 경로 또는 문서 엘리먼트(302)로부터) 도 3에 도시된 바와 같이 경로의 루트라고 하는 하나 이상의 섹션 엘리먼트들(304)을 걸쳐 적합한 개별 단락 엘리먼트(306)까지이다. 구조화 문서 검색 시스템은 사용자에게 경로의 루트를 리턴한다.
각각의 문서의 경우, 문서와 동일한 구조를 갖는 계층적 색인(400)이 설정된다. 따라서 계층적 색인(400)의 구조는 고유 문서의 콘텐츠 구조(300)를 반영한다. 색인 용어들은 일반적으로 문서의 개념을 어떻게 나타내는지에 따라 모든 엘리먼트들에 분포된다. 색인 용어를 엘리먼트에 효율적으로 할당하기 위해, 색인 용어는 엘리먼트를 다른 엘리먼트들과 차별화하면서 엘리먼트의 개념을 특징화해야만 한다. 따라서, 엘리먼트에 대한 색인 용어들을 선택하기 위해, 엘리먼트의 용어 빈도수 및 분포가 고려되야만 한다. 또한 색인 용어의 웨이트가 상기 엘리먼트의 다른 용어들과 비교된다. 상위 순위 색인 용어들이 상기 엘리먼트에 대한 색인 용어들로서 선택된다. 용어가 자주 나타나고 엘리먼트의 텍스트에 균일하게 분포되어 있으며, 임계값을 넘어서는 순위를 가지면, 색인 용어는 상기 엘리먼트에 대한 색인 용어로 간주되야 한다.
구조화 문서 검색 시스템(100)은 특정 구조화 문서들의 계층 구조를 이용한다. 계층 문서들(한 타입의 구조화 문서들을 나타냄)은 부모 엘리먼트들과 자식엘리먼트들간의 관계를 포함한다. 부모 엘리먼트의 용어 분포는 부모 엘리먼트의 자식 엘리먼트들의 용어 외관들을 고려함으로써 양이 정해질 수 있다. 한 실시예에서, 각각의 엘리먼트의 주제가 직접 자손 엘리먼트들에 의해 지원되어야만 하기 때문에 분포량은 부모 엘리먼트로부터 직접 자손인 자식 엘리먼트들에게만 적용된다. 섹션 또는 문서의 자식 엘리먼트에서 용어가 균일하게 분포되면, 상기 용어는 상기 섹션 또는 문서에 대한 양호한 후보 색인 용어가 된다. 정보 이론은 정보 콘텐츠(또는 정보 불확실성)을 포착하기 위한 특별 개념으로서 엔트로피를 정의한다. 엔트로피는 한 실시예에서 엘리먼트의 용어의 분포를 측정하는 유용한 기준이다.
단락 엘리먼트들(306) 중 어느 것도 자식 엘리먼트들을 갖지 않기 때문에, 도 3에 도시된 단락 엘리먼트들(306)은 "원자" 엘리먼트로 분류된다. 따라서, 전형적인 TFIDF 측량(measure)은 단일 단락 엘리먼트의 용어들을 웨이트하는데 적용될 수 있다. 단락 엘리먼트(306)에 대한 용어 웨이트는 다음과 같다:
Weight(t i , P j )는 단락P j 의 용어t i 의 웨이트를 나타낸다. "tf(t i , P j )"는 상기 단락의t i 의 용어 빈도수이다.N은 전체 문서들의 수를 나타내고n i 는 용어t i 를 포함하는 문서들의 수를 나타낸다.
원자 엘리먼트들(예를 들어, 섹션 엘리먼트(304) 및 문서 엘리먼트(302))이아닌 다른 레벨들의 엘리먼트들의 경우, 용어 빈도수 및 용어 분포가 용어에 대한 웨이트를 제공하기 위해 결합된다. 따라서, 임의의 복합 엘리먼트E j 의 용어t i 의 웨이트는 다음과 같이 정의될 수 있다:
"I(t i , E j )"는 엘리먼트E j 의 용어t i 의 엔트로피 척도(measure)이며, 다음과 같이 정의된다:
여기서,sub k E j k번째 직접 자손 엘리먼트를 나타내고N(sub)는 자손 엘리먼트들의 수를 나타낸다.
수학식 3에서, 항는 색인 지정 메카니즘의 중요한 역할을 한다. 용어 빈도수는 텍스트 길이가 상당히 변화되기 때문에 상이한 엘리먼트들에서 변화가 심하다. 엔트로피 척도는 다른 문서와의 동일한 길이 정규화 문제점과 마주치거나 단락 검색 방법들과 직면할 수도 있다. 엔트로피 척도는 엘리먼트의 상기 용어의 모든 외관들이 상기 엘리먼트의 각각의 자식 엘리먼트에서 정확하게 동일하다는 가정하에 엔트로피를 생성할 수 있게 해주는데, 이 때 용어의 엔트로피에 대해 이론적으로 최대 값을 갖는다. 이 이론적 최대 값 항은 용어의 분포 척도이다. 상기 수학식이 상이한 레벨들의 엘리먼트들의 다양한 용어 빈도수들의 부작용에 거의 응수한다는 점이 이후의 실험에서 증명되었다.
용어 웨이트들이 상이한 엘리먼트들의 웨이트들을 비교하기 위해 더 정규화된다. 수학식 1 및 수학식 2에 의해 획득된 용어 웨이트들은 동일한 엘리먼트의 모든 용어들의 최대 웨이트로 나누어진다. 따라서, 모든 용어들의 웨이트들은 0과 1 사이의 범위에 속하게 된다.
상술된 바와 같이, 웨이트가 특정 임계값을 초과한 용어 또는 엘리먼트는 보다 일반적인 개념을 나타낼 수도 있기 때문에 상위 레벨에 전달되어야만 한다. 임계값은 특정 엘리먼트의 용어 웨이트의 통계치에 따라 동적으로 조정될 수 있다. 동적 임계값 설정의 상이한 실시예들이 도 13에 도시된 컴퓨터 환경의 사용자 또는 오퍼레이터에 의해 실행되거나, 또는 본 명세서에 기술된 개념들을 근거로 자동으로 실행될 수 있다. 특히, 용어는 웨이트가 엘리먼트의 모든 용어들의 웨이트들의 표준 편차에 평균값을 더한 것을 넘을 때만 엘리먼트에 대한 색인 용어로서 선택된다. 다시 말해서, 자식 엘리먼트들의 색인 용어들은 웨이트들이 임계값 조건을 만족시키는 경우 부모 엘리먼트까지 전달될 수 있다. 따라서, 색인 지정 메카니즘의한 실시예는 다음과 같이 약술될 수 있다:
1. 각각의 단락 엘리먼트(306)에 대해, 수학식 1에 따라 용어 웨이트를 계산한다.
2. 상향식 방식을 따르는 한 상위 레벨(즉, 섹션 엘리먼트들(304) 또는 문서 엘리먼트(들)(302))의 임의의 엘리먼트E j 의 경우, 수학식 2를 사용해서 용어 웨이트를 계산한다.Weight(t i , E j ) ≥ average(E j )+std_dev(E j )이면, 용어t i 는 엘리먼트E j 의 색인 용어로서 선택되고E j 의 모든 서브-엘리먼트들은 색인 용어 리스트로부터t i 를 제거한다.average(E j )는 엘리먼트E j 의 모든 용어 웨이트들의 산술 평균을 나타내고,std_dev(E j )는 웨이트들의 표준 편차이다.
3. 루트 엘리먼트, 즉, 문서 엘리먼트(302)에 도달할 때까지 2를 반복하라.
이 색인 지정 솔루션은 문서들의 내부 구조를 철저하게 사용한다. 모든 용어들이 동일한 레벨의 다른 용어들과 서로 비교되고 정규화 인수로 이론적 최대값이 수학식에 기입되기 때문에, 상이한 엘리먼트들의 텍스트의 상이한 길이의 영향은 최소화된다. 또한, 평균값 + 표준 편차의 임계값은 특정 엘리먼트에 대한 색인 용어들을 결정하기 위한 동적 로컬 최적값을 제공한다. 또한, 엘리먼트의 색인 용어가 엘리먼트의 모든 서브-엘리먼트들에 나타날 필요가 없다. 따라서, 타이틀들의 소수의 용어들 외에 보다 대표적인 색인 용어들이 검출된다.
구조화 문서 검색 프로세스(400)의 한 실시예가 도 7a 및 도 7b에 도시되어있다. 구조화 문서 검색 프로세스는 전체 문서를 검색하는 대신 사용자에게 문서의 가장 적합한 컴포넌트를 검색한다. 트리 또는 계층 구조를 갖는 임의의 컴퓨터 언어는 본 명세서에 기술된 구조화 문서 검색 프로세스를 사용할 수 있다. 도 1에 도시된 구조화 문서 검색 시스템(100)의 한 실시예에서, 각각의 섹션 및 단락은 개별적으로 탐색될 것이다.
구조화 문서 검색 방법은 다수의 구조화 문서들을 탐색하기 위해 구조화 문서 검색 시스템(100)의 초기 탐색 엔진에 색인어들을 사용해서 사용자가 질의를 제시하는 단계(402)로부터 시작된다. 초기 탐색 엔진은 탐색 용어들 중 하나 또는 그 이상을 포함하지 않는 전체 문서들로부터 탐색 용어들 중 하나 또는 그 이상을 포함하는 전체 문서들을 필터링함으로써 고유 질의에 응답한다.
구조화 문서 검색 시스템의 특정 실시예들에서, 단계(402)에서 사용자에 의해 제시된 질의는 리턴 문서들이 디스플레이되기 전 사용자로부터의 최종 입력일 수도 있다. 방법은 단계(404)로 진행해서 탐색 엔진은 색인 용어들에 대해 구조화 문서들 모두에 대해 탐색을 실행한다. 단계(404)에서 사용된 탐색 엔진은 전체 문서를 함께 탐색하거나, 또는 색인 용어들에 대해 개별 엘리먼트 모두를 탐색하도록 구성될 수 있다. 그러나, 단계(404) 중에, 모든 문서들은 소정의 탐색 용어(들)에 대해 전체적으로 탐색된다. 초기 탐색은 다양한 탐색 엔진들 중 임의의 한 탐색 엔진에 의해 실행될 수 있는데, 다수의 탐색 엔진들이 상업적으로 유용하고 흔히 사용된다. 따라서, 사용자에 의한 질의에 포함된 임의의 탐색 용어들을 포함하지 않는 문서들을 필터링함으로써 오늘날 사용되는 대부분의 탐색 엔진들과 유사한 방식으로 단계(402) 및 단계(404)가 실행된다.
구조화 문서 검색 프로세스(400)는 계속해서 결정 단계(406)로 가서, 특정 구조화 문서가 색인 용어(들)를 포함하는지의 여부가 결정된다. 포함하면, 구조화 문서 검색 프로세스(400)는 단계(408)로 진행해서 탐색 용어들 중 어느 것도 포함하지 않는 문서들이 찾아진다(즉, 필터링된다). 단계(408)가 적용된 문서들은 탐색에 사용되는 적합한 색인 용어들 중 어느 것도 포함하지 않기 때문에 구조화 문서 검색 프로세스(400)에 의해 더 고려될 필요가 없으며(즉, 구조화 문서 검색 프로세스(400)가 종료되며), 따라서 상기 문서들은 사용자에게 관심사가 될 수 없다.
결정 단계(406)의 답이 '예'이면, 구조화 문서 검색 프로세스(400)는 단계(410)로 진행해서 사용자 및/또는 구조화 문서 검색 시스템(100)이 더 탐색될 구조화 문서들을 선택한다. 단계(410)는 선택적이며, 프로세스(400)는 대신 단계(412)로 직접 진행할 수 있다. 구조화 문서 검색 시스템(100)은 단계(412)로 진행해서 구조화 문서 검색 시스템(100)은 사상을 사용해서 구조화 문서와 동일한 구조를 갖는 계층적 색인(400)을 자동으로 설정한다. 계층 사상 프로세스의 일례는 도 3 및 도 4와 관련해서 기술된다. 단계들(402, 404, 406, 408 및 410)에서 매치된 문서들 중에서, 문서들의 엘리먼트들은 개별적으로 평가된다. 매치하는 탐색 용어를 포함하는 경로의 끝 엘리먼트가 리턴된다. 매치된 부모의 자식들인 단락들만이 탐색될 것이다.
구조화 문서 검색 프로세스(400)는 단계(414)로 진행해서, 구조화 문서의 각각의 엘리먼트의 색인 용어들이 웨이트된다. 웨이팅은 문서의 각각의 엘리먼트의적합성(relevancy)을 결정한다. 각각의 엘리먼트를 명백하게 고려하는 단계(414)의 웨이팅은 각각의 문서를 완전히 검색하는 단계(404)와 상이하다. 단계(414)에 대해서는 더 상세하게 후술된다. 구조화 문서 검색 프로세스(400)는 XML 구조에서 단계(416)로 진행해서, 최상위 레벨 및 매치에 대해 탐색한 후, 임의의 매치된 용어들에 대한 다음 하위 레벨을 탐색한다.
구조화 문서 검색 프로세스(400)는 단계(418)로 진행해서, 가장 근접하게 매치하는 문서들이 디스플레이된다. 본 발명의 한 실시예에서, 구조화 문서 검색 시스템(100)은 엘리먼트의 문맥뿐만 아니라 엘리먼트를 디스플레이한다. 예를 들어, 후술되는 도 9에 도시된 바와 같이, 컴퓨터 디스플레이 윈도우의 우측에 엘리먼트 또는 엘리먼트들의 적합한 부분들을 디스플레이한다. 사용자는 또한 이웃 엘리먼트들에 액세스할 수 있다. 윈도우 좌측에는 윈도우의 문맥이 디스플레이되는데, 구조화 문서의 상이한 엘리먼트들을 나타내는 구조들이 디스플레이된다. 한 실시예에서, 문서의 상이한 엘리먼트들의 순위가 또한 디스플레이될 수도 있다. 각각의 문서의 경우, 2이상의 경로들이 디스플레이될 수도 있다. 따라서, 사용자는 단일 탐색 용어 발생을 알기 위해 전체 문서를 탐색할 필요가 없고, 경로만 탐색하면 된다.
도 8a 및 도 8b는 단계(412) 및 단계(414)가 포함되지 않는 점만 제외하고 도 7a 및 도 7b에 도시된 실시예와 유사한 구조화 문서 검색 프로세스(400)의 다른 실시예를 도시하고 있다. 단계(412) 및 단계(414)의 웨이팅 및/또는 계층적 색인 지정 프로세스들은 개별적으로 실행될 수 있으며, 결과들은 도 8a 및 도 8b에 도시된 경로 순위화 프로세스 중에 사용될 수 있다. 예를 들어, 구조화 문서 검색 프로세스의 제공자는 또한 색인 지정되고 및/또는 웨이팅된 색인 용어들을 포함하는 버전을 개별적으로 제공할 수 있다고 상상된다. 웨이팅 및/또는 색인 지정 프로세스들이 개별적으로 고려되기에, 구조화 문서 검색 프로세스(400)의 한 실시예는 색인 지정을 하지 않고 웨이팅을 하거나 또는 웨이팅을 하지 않고 색인 지정을 할 수 있다.
용어 웨이팅은 도 3에 도시된 구조화 문서들과 관련해서 이제부터 기술된다. 용어들은 구조화 문서 검색 시스템(100)에 의해 웨이팅된다. 용어 웨이팅은 특정 엘리먼트의 적합성이 양으로 정해질 수 있는 메카니즘을 제공한다. 구조화 문서의 색인 용어들이 웨이팅된 후, 색인 용어들은 또한 본 명세서에 기술된 바와 같이 순위가 매겨질 수 있다.
본 섹션에서, 적합한 문서 엘리먼트들을 선택하는 스케일 가능한 검색 알고리즘의 실시예가 기술되는데, 계층적 색인(400)을 근거로 사용자에게 디스플레이한다. 계층적 색인(400)이 임의의 구성 단위를 갖는 문서 엘리먼트들을 직접 검색하는 효과적인 메카니즘을 제공하기 때문에, 검색 단계의 주요 임무는 후보 엘리먼트들을 온라인 탐색하고 순위를 매기는 것이다. 구조화 문서 검색 시스템(100)의 특정 실시예들은 사용자들이 편리한 방식으로 검색 결과들을 쉽게 브라우즈하도록 구조 문맥으로 각각의 검색 엘리먼트를 디스플레이하는 인터페이스를 제공한다. 다수의 실시예들에서 사용자에 의해 입력된 색인 용어를 근거로 각각의 엘리먼트의 순위(적합성)를 디스플레이하기 때문에, 디스플레이된 사용자 인터페이스는 사용자에게 중요한 역할을 한다.
각각의 문서에 대해, 구조화 문서 검색 시스템(100)은 질의에 대한 모든 후보 엘리먼트들의 적합성 값을 계산하기 위해 경로 순위화 알고리즘을 사용한다. 엘리먼트에 대한 경로가 문서 트리의 루트(문서 엘리먼트) 및 상기 엘리먼트 간의 모든 엘리먼트들(루트 엘리먼트 및 상기 엘리먼트 포함)이 되도록 고려된다. 하나의 엘리먼트가 다른 엘리먼트의 조상이면, 경로는 다른 엘리먼트 경로의 부집합이다. 계층적 색인 지정 메카니즘의 한 실시예에 따라, 엘리먼트는 후손들과 임의의 색인 용어들을 공유하지 않는다. 따라서, 엘리먼트는 경로에 의해 완전히 기술된다. 따라서, 엘리먼트 순위화 문제점이 경로 순위화 문제점으로 변형될 수 있다. 즉, 목적은 질의에 대한 높은 적합성 값들을 갖는 엘리먼트 경로들을 찾는 것이다.
상술된 중국 질의를 고려할 때, 리턴된 문서 "중국(China)"의 경우, 문서 레벨의 색인 용어들은 "중국(China)", "중국의, 중국어, 중국인, 중국제, 중국산 등(Chinese)"을 포함할 수 있고, 섹션 "역사(History)"에 대한 색인 용어들은 "역사(history)", "왕조(dynasty)" 등이 될 수 있다. "중국의 역사(history of China)" 질의에 대해, 섹션 "역사"의 엘리먼트 경로는 모든 질의 용어들을 포함하지만 문서 "중국"의 엘리먼트 경로는 오직 하나의 질의 용어만을 포함한다. 따라서, 섹션 "역사"는 질의에 대해 보다 양호한 답이다.
엘리먼트의 순위는 질의에 대한 엘리먼트의 적합성을 결정할 때 중요하다. 엘리먼트 경로에 대한 용어 웨이트는 색인 용어 리스트가 상기 용어를 포함하는 경로를 따른 엘리먼트의 웨이트로 정의된다. 소정의 질의에 따른 경로의 순위는 다음과 같이 정의된다:
는 질의 용어t i 의 IDF(inverse document frequency) 값을 나타내며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타낸다.
질의가 입력되면, 탐색 공간을 좁히기 위해 먼저 적합한 문서들의 리스트를 획득하는데 전형적인 문서 검색 기술들이 사용될 수 있다. 적합한 문서들 중 하나를 사용자가 선택할 때, 시스템은 상기 문서의 모든 후보 엘리먼트들을 탐색하고 그 후 질의에 따라 경로들의 순위를 매긴다.
엘리먼트의 순위를 매기는 전체 프로세스가 후술된다. 적어도 하나의 질의 용어를 포함하는 모든 엘리먼트들이 찾아진다. 모든 후보 엘리먼트들에 대한 경로들이 획득되고, 질의 용어의 웨이트들이 엘리먼트들에 대해 경로들에게 각각 할당된다. 웨이트 경로들의 순위가 수학식 4에 따라 매겨진다. 순위화 경로들 모두 또는 선택된 소수에 대응하는 엘리먼트들이 하향순으로 리턴된다(또한 통상 디스플레이된다).
구조화 문서 검색에서 오래된 문제점은 사용자의 질의 요구 사항들을 최상으로 만족시킬 수 있는 적합한 엘리먼트들을 어떻게 리턴하는가이다. 구조화 문서 검색 시스템(100)은 동적 임계값으로서 모든 검색 엘리먼트들의 순위의 평균을 사용한다. 임계값을 넘는 순위를 갖는 엘리먼트들이 결과로 리턴된다. 이후의 실험들은 동적 임계값을 근거로 정확한 엘리먼트 검색이 달성될 수 있음을 보여준다.
모든 리턴 엘리먼트들은 구조화 문서 검색 시스템(100)에 의해 구조 문맥으로 디스플레이되는데, 이는 도 9에 도시된 바와 같이 문서 트리의 리턴 엘리먼트의 위치 뿐만 아니라 이웃 엘리먼트들을 나타낼 수 있다.
도 9는 소정의 질의 "청나라 왕조"에 따른 스케일 가능한 검색 시스템의 인터페이스의 스냅숍을 도시한 것이다. 도 9는 문서 검색 시스템의 인터페이스의 일부를 제공할 수 있다. 상당한 수의 엘리먼트들이 "중국"이라고 명명된 문서에 대해 리턴되었다. 리턴 엘리먼트들 중에는 섹션들 및 단락들이 있다. 상위 한 엘리먼트는 중국 역사의 청나라 왕조를 기술하기 위해 제공된 "만주 청나라 왕조"라는 제목의 섹션이다. 본 섹션은 제목이 "역사"인 문서의 섹션 아래에 있다. 좌측 브라우징 구역(pane)은 문서와 관련된 각각의 섹션 또는 단락의 위치를 나타낸다. 각각의 엘리먼트의 문맥과 관련된 정보는 좌측 페인 내에 기술된다. 비교해 보면, 사용자가 "청나라 왕조"를 클릭할 때, 전체 문서가 상기 주제에 집중되기 때문에 전체 문서가 액세스된다. 텍스트 엘리먼트의 상위 레벨이 보다 일반적인 개념 기술을 획득하기 위해 판독된다. 별표(*)들을 갖는 타이틀들은 엘리먼트의 순위가 동적 임계값인 평균 순위를 넘어선 것을 나타낸다.
본 명세서의 본 섹션은 구조화 문서 검색 시스템(100)과 함께 기술된 문서 검색 방법(400)의 성능을 평가한다. 임계값 설정의 효과들이 또한 고려된다. 실험들은 본 명세서를 기록한 날에 40,000 이상의 구조화 XML 문서들을 포함한 엔카르타 멀티미디어 백과사전 전집(Encarta?Multimedia Encyclopedia corpus)에서 실행되었다. 질의 집합은 표 1에 목록되어 있는 10개의 질의들을 포함하는데, 이는 구조화 문서 검색 시스템(100)의 전형적인 사용자에 의해 입력될 수 있는 질의들과 유사한 것으로 보인다. 각각의 질의는 적합한 문서들의 일부분(즉, 엘리먼트)만을 사용자에게 디스플레이함으로써 최상으로 응답될 수 있다.
중요한 실험 결과들은 구조화 문서 검색 시스템(100)이 비교 방법 보다 상당히 양호하게 실행할 뿐만 아니라 또한 구조화 문서 검색 및 구절 검색에서의 오래된 2가지 문제점들인 텍스트 길이 정규화 및 엘리먼트 섹션 임계값의 어려움들을 어느 정도 극복함을 보여준다.
본 문서 검색 시스템의 장점들을 설명하기 위해, 구절 검색 시스템이 TFIDF 파라를 사용해서 구현되는데, 이는 구조화 문서 검색 시스템(100)과 비교된다. TFIDF 파라 시스템에 따른 한 실시예에서, 단락들만이 구절들로 이용되고 다른 구조 정보는 무시된다. 단락의 용어 웨이트는 정규화 없이 종래의 TFIDF 적량에 의해 정의될 수 있는데, 이는 수학식 1과 유사한 결과들을 제공한다.
엘리먼트 검색 평가를 위한 질의들
번호 질의
1 중국 역사
2 청나라 왕조
3 미국 역사의 원자 폭탄
4 2차 세계 대전때의 포드 자동차
5 미적분에 대한 뉴톤의 영향은 무엇인가?
6 WWW에 대한 마이크로소프트의 태도는 무엇인가?
7 미국 역사에서 링컨의 영향력은 무엇인가?
8 런던의 플리트 거리(Fleet Street)
9 사막 폭풍에서 사용되는 군항공기
10 어떤 미사일을 핵잠수함이 운반할 수 있는가?
구절 검색 또는 구조화 문서 검색의 이전 작업은 전체 문서들을 검색하는데 대한 구절 레벨 증거의 영향력에 대한 평가들에 주로 초점이 맞추어져 있었다. 실행된 특별 실험들 중 어느 것도 엘리먼트 검색의 효율성을 평가하는데 공헌되지 못했다. 구조화 문서 검색 시스템(100)의 개발의 일부로서, 상술된 바와 같이, 일련의 실험들이 사용자 질의들에 대해 적합한 구성 단위의 엘리먼트들을 찾도록 스케일 가능한 검색 방법의 능력을 테스트하기 위해 실행되었다.
군사 활동 역사를 연구하는 사용자가 "어떤 군항공기가 사막 폭풍(Desert Storm)에 사용되었는가?"를 찾고자 한다고 가정해 보라. 초기 탐색은 적합한 콘텐츠를 갖는 부분을 포함하는 매우 높은 순위의 결과들로서 2개의 조항들, 군항공기 및 걸프 전쟁을 산출할 수 있다. 사용자가 전체 리턴 문서로부터 적합한 콘텐츠를 찾기 위해 각각의 문서(종종 매우 김)를 스캔해야만 한다.
적합성 판정은 인간 어세서(assessor)에 의해 실행된다. 각각의 질의의 경우, 문서들의 적합한 엘리먼트들이 어세서에 의해 판정되고 선택된다. 본 명세서에서 사용된 척도는 문서 검색에서 사용된 것과 유사하다. 리콜(recall)은 검색된 적합한 엘리먼트들의 소부분(fraction)이고 정밀도(precision)는 적합하다고 판정된 검색 엘리먼트들의 소부분이다. 리턴 엘리먼트들이 비교적 적은 수의 적합한엘리먼트들을 갖는 것으로 고려되어야만 하기 때문에, 다양한 정밀도 값들이 상이한 리콜 레벨들에서 계산되지 않는다. 대신, 수학식 5에 기술된 바와 같이 전체 리콜 및 정밀도 레벨은 계산되어 결합된 F-값들의 주요 부분에 기여하기 위해 사용된다.
검색 엘리먼트들의 어떤 소부분이 사용자들에게 답으로 리턴되어야만 하는지를 판정할 때, 0.1 내지 0.9의 고정 임계값들 및 동적 임계값들이 모두 사용된다. 동적 임계값은 (하나의 선택 문서에 대한) 모든 검색 엘리먼트들의 순위 값들의 평균(Avg) 및 상기 값들의 표준 편차(Std_Dev)에 의해 결정된다. 따라서, "Avg" 및 "Avg+Std_Dev"는 실험에서 동적 임계값들로 사용된다. 다양한 임계값들로 2개의 방법들에 의해 획득된 F-값은 표 2에서 비교되고 도시된다.
다양한 임계값들로 스케일 가능한 검색 및 TFIDF 파라 방법들에 의해 획득된 평균 F-값들
임계값 TFIDF 파라 스케일 가능한 검색 % 향상
0.1 0.4225 0.6596 56.14
0.2 0.4669 0.6638 42.17
0.3 0.5161 0.6668 29.21
0.4 0.5490 0.6668 21.46
0.5 0.5204 0.7139 37.19
0.6 0.4851 0.6995 44.20
0.7 0.4995 0.7641 52.97
0.8 0.4278 0.7258 69.66
0.9 0.2845 0.7351 158.40
Avg 0.4616 0.7910 71.36
Avg+Sdev 0.4694 0.6167 31.39
없음/임계값 0.2137 0.6596 208.74
표 2의 F-값들은 이전 방법들에 비해 구조화 문서 검색 프로세스(400)가 향상됨을 보여준다. F-값은 0 내지 1 범위인 매칭 척도이며, 1은 완전한 매치를 나타내고 0은 전혀 매치하지 않음을 나타낸다. 표 2는 다양한 임계값 설정을 갖는 스케일 가능한 검색 시스템이 TFIDF 적량을 단락 레벨에 직접 적용하는 것을 포함하는 다른 검색 방법에 대해 검색 성능이 상당히 향상됨을 디스플레이하고 있음을 나타낸다.
또한, 일반적으로 사용자들은 (어세서들의 피드백에 따라) 스케일 가능한 검색 방법에 의해 제공된 보다 간단하고 직접적인 결과들로 처리할 때 보다 편안할 수 있다. 사용자가 전체 문서의 편성, 전체 엘리먼트와 관련된 검색 엘리먼트의 문맥 및 특정 엘리먼트(또는 엘리먼트의 일부)의 콘텐츠를 뷰할 수 있는 구조화 문서 검색 시스템(100)의 계층적 문맥 구조 표현으로 인해 또한 사용자가 매우 편안하게 된다.
이전 구조화 문서 또는 구절 검색 방법들이 고정 레벨 구절들만을 리턴하는데 비해 스케일 가능한 검색 방법은 질의들의 명세에 따라 단락들, 섹션들 또는 전체 문서들일 수 있는 다양한 구성 단위의 엘리먼트들을 리턴할 수 있기 때문에 엘리먼트의 문자상의 문맥이 결과들로 보존된다. 예를 들어, 질의 "청나라 왕조"는 문서 "중국"의 "역사" 섹션 아래의 타이틀이 "만주 청나라 왕조"인 섹션에 의해 최상으로 지원될 수 있다. 수십개의 단락들이 본 섹션에 포함된다. 구조화 문서 검색 시스템에서, 본 섹션은 질의에 대한 문서를 위해 제1 장소에 제공된다. 그러나, 단락 레벨 순위들을 갖는 개별적인 단락들이 TFIDF 파라 시스템에서 순서화된다. 사용자들은 질의에 대한 개별적인 증거에 의해서만 순서화된 단락들 간의 상관 관계 또는 문맥을 명백하게 할 수 없다. 따라서, 계층 색인 지정 및 스케일 가능한 검색 방법이 비교적 높은 검색 성능을 달성하고 또한 문서들의 고유 구조 정보를 완전히 사용하기 때문에 사용자에게 친숙한 결과들을 제공한다.
임계값 설정이 바람직한 엘리먼트들을 획득하기 위해 구조 문서 검색에 있어서 중요하다. 특정 이전 문서 검색 시스템들에서, 임계값은 0.2로 고정된다. 구조화 문서 검색 시스템(100)과 관련된 실험들은 질의될 문서들이 구조 및 길이가 매우 다양하기 때문에 단일 임계값을 사용할 때 시스템이 항상 모든 질의들에 대해 최상으로 실행될 수는 없음을 나타낸다. 따라서, 구조화 문서 검색 시스템(100)은 변경되지 않는(즉, 정적) 임계값 대신 동적 임계값을 사용한다.
다양한 임계값들이 어떻게 2개의 방법들의 검색 성능에 영향을 주는지를 고려해 보라. 도 10은 상기 실험들에서 획득된 고정 임계값의 결과들을 그래프(600)로 도시한 것이다. 그래프(600)에서, F-값은 세로 좌표인 임계값에 대한 가로 좌표로서 구상된다. 도 10은 스케일 가능한 검색 방법 곡선(602)(스케일 가능한 검색 방법에 의해 생성됨)이 TFIDF 파라 방법에 의해 획득된 TFIDF 곡선(604) 보다더 평평함을 보여 준다. TFIDF 파라의 성능은 TFIDF 곡선(604)에 도시된 임계값의 변화에 따라 매우 변한다. TFIDF 곡선(604)의 TFIDF 파라에 의해 획득된 최고 F-값은 0.55(임계값 0.4)이며, 이는 최저값 0.28(임계값 0.9; 도시되지 않음) 보다 93% 크다. 비교시, 스케일 가능한 검색 방법 곡선(602)의 최대(임계값 0.7일 때) F-값 및 최소(임계값이 0.1일 때) F-값이 16% 만큼만 변한다. 이는 계층적 색인 지정 및 스케일 가능한 검색 메카니즘들이 검색 프로세스를 임계값 설정에 덜 민감하게 한다는 사실을 나타낸다. 본 명세서에 기술된 값들 및 백분율들은 사실상 실례적인 것이며, 범위를 제한하려는 의미는 아니다.
다음으로 동적 임계값의 영향들을 고려해 보라. 도 11 및 도 12는 임계값에 대해 구상된 F-값들(동적 임계값들에 의해, 임계값 없이, 또한 고정 임계값에 의해 획득됨)을 디스플레이한다. 도 11에서, TFIDF 막대 그래프(700)의 동적 임계값 설정은 평균 값(702), 평균+표준 편차값(704), 임계값 없음(706) 및 최대값(708)을 디스플레이한다. 도 12에서, 스케일 가능한 검색 막대 그래프(800)의 동적 임계값 설정은 평균 값(802), 평균+표준 편차값(804), 임계값 없음(806) 및 최대값(808)을 디스플레이한다. TFIDF 막대 그래프(700)의 동적 임계값 설정 및 스케일 가능한 검색 막대 그래프(800)의 동적 임계값 설정은 각각 TFIDF 파라 방법 및 스케일 가능한 검색 방법의 성능을 나타낸다. 도 11은 동적 임계값을 사용할 때 단락 검색 방법이 최상 성능을 달성하게 할 수 없음을 나타낸다. 그러나, 도 12에 도시된 바와 같이, 스케일 가능한 검색 방법은 평균 순위의 동적 임계값을 사용할 때 보다 높은 성능을 달성할 수 있다. 이는 동적 임계값이 고정 임계값의 양호한 대안이며다양한 문서들 및 질의들에 보다 적응력이 높을 수 있음을 증명한다.
엔카르타 온라인 및 엔카르타 CD 버젼들은 스케일 가능한 검색 기능을 추가하기 위해 스케일 가능한 구조화 문서 검색 시스템(100)을 통합함으로써 변경될 수 있다. 구조화 문서들(예를 들어, XML, SGML, HTML의 특정 애플리케이션들 등을 사용함)을 포함하는 임의의 데이터베이스 제품들의 경우, 상기 기술이 탐색 및 검색 성능을 향상시키기 위해 사용될 수 있다.
도 13은 정확한 소프트웨어 및 하드웨어를 사용해서 구조화 문서 검색 시스템(100)의 한 실시예를 제공할 수 있는 사용자 인터페이스를 포함하는 적합한 컴퓨터 환경 또는 네트워크(500)의 일례를 도시한 것이다. 유사한 리소스들이 예를 들어 도 5a, 도 5b, 도 6, 도 7a, 도 7b, 도 8a 및 도 8b에 도시된 컴퓨터 관련 프로세스들을 실행하기 위해 본 명세서에 기술된 컴퓨터 환경 및 프로세스들을 사용할 수도 있다.
도 13에 도시된 컴퓨터 환경(500)은 일반적인 컴퓨터 환경으로, 본 명세서에 기술된 구조화 문서 검색 시스템(100)의 기술들을 구현하는데 사용될 수 있다. 컴퓨터 환경(500)은 오직 컴퓨터 환경의 일례일 뿐 컴퓨터 및 네트워크 아키텍쳐들의 사용 또는 기능의 범위에 대한 임의의 제한을 제시하려는 의도가 아니다. 또한 컴퓨터 환경은 일례의 컴퓨터 환경(500)에 도시된 컴포넌트들 중 임의의 하나 또는 결합물과 관련된 임의의 종속성 또는 요구 사항을 갖는 것으로 해석되어서는 안된다.
컴퓨터 환경(500)은 컴퓨터(502) 형태로 범용 컴퓨팅 디바이스를 포함한다.컴퓨터(502)는 예를 들어 독립형 컴퓨터, 네트워크 컴퓨터, 메인프레임 컴퓨터, PDA, 전화, 마이크로컴퓨터 또는 마이크로프로세서, 또는 메모리와 결합해서프로세서를 사용하는 임의의 다른 컴퓨터 디바이스 중 하나 또는 그 이상일 수 있다. 컴퓨터(502)의 컴포넌트들은 하나 이상의 프로세서들 또는 프로세싱 유닛들(504)(암호 프로세서 또는 코프로세서를 선택적으로 포함함), 시스템 메모리(506)와, 프로세서(504) 및 시스템 메모리(506)를 포함하는 다양한 시스템 컴포넌트들을 결합하는 시스템 버스(508)를 포함할 수 있는데, 이들로만 제한되는 것은 아니다.
시스템 버스(508)는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 가속 그래픽스 포트, 및 다양한 버스 아키텍처 중 임의의 버스 아키텍처를 사용하는 프로세서 또는 로컬 버스를 포함해서 하나 이상의 임의의 수개 타입들의 버스 구조들을 나타낸다. 예를 들어, 상기 아키텍처들은 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, EISA(Enhanced ISA) 버스, VESA(Video Electronics Standards Association) 로컬 버스, 및 메저닌(Mezzanine) 버스로 공지된 PCI(Periperal Component Interconnects) 버스를 포함할 수 있다.
컴퓨터(502)는 통상 다양한 컴퓨터 판독 가능한 매체들을 포함한다. 상기 매체들은 컴퓨터(502)에 의해 액세스될 수 있는 임의의 유효한 매체들일 수 있으며 휘발성 및 비휘발성 매체들과 제거 가능 및 제거 불가능 매체들을 포함한다.
시스템 메모리(506)는 ROM(read only memory; 512)과 같은 비휘발성 메모리, 및/또는 RAM(random access memory; 510)과 같은 휘발성 메모리 형태의 컴퓨터 판독 가능한 매체들을 포함한다. 컴퓨터(502) 내의 엘리먼트들 간의 정보 전송을 돕는 기본 루틴들을 포함하는 BIOS(basic input/output system; 514)는 시동중에 ROM(512)에 기억된다. RAM(510)은 통상 프로세싱 유닛(504)에 의해 즉시 액세스될 수 있고 곧 작동되는 데이터 및/또는 프로그램 모듈들을 포함한다.
컴퓨터(502)는 또한 다른 제거 가능/제거 불가능, 휘발성/비휘발성 컴퓨터 스토리지 매체들을 포함할 수도 있다. 예를 들어, 도 13은 제거불가능 비휘발성 자기 매체들(도시되지 않음)로부터 판독되거나 상기 매체에 기록되기 위한 하드 디스크 드라이브(515), 제거 가능 비휘발성 자기 디스크(520)(예를 들어, "플로피 디스크")로부터 판독되거나 상기 매체에 기록되기 위한 자기 디스크 드라이브(518), 및 CD-ROM, DVD-ROM 또는 다른 광 매체들과 같은 제거 가능 비휘발성 광 디스크(524)로부터 판독되거나 상기 매체에 기록되기 위한 광 디스크 드라이브(522)를 도시하고 있다. 하드 디스크 드라이브(515), 자기 디스크 드라이브(518) 및 광 디스크 드라이브(522)는 하나 이상의 데이터 매체 인터페이스들(527)에 의해 시스템 버스(508)에 각각 접속된다. 대안으로, 하드 디스크 드라이브(515), 자기 디스크 드라이브(518) 및 광 디스크 드라이브(522)는 하나 이상의 인터페이스들(도시되지 않음)에 의해 시스템 버스(508)에 접속될 수도 있다.
디스크 드라이브들 및 관련 컴퓨터 판독 가능한 매체들은 컴퓨터(502)의 컴퓨터 판독 가능 명령들, 제어 노드 데이터 구조들, 프로그램 모듈들, 및 다른 데이터의 비휘발성 스토리지를 제공한다. 일례가 하드 디스크 드라이브(515) 내의 하드 디스크, 제거 가능 자기 디스크(520) 및 비휘발성 광 디스크(524)를 도시하더라도, 자기 카세트 또는 다른 자기 스토리지 디바이스, 플래시 메모리 카드, CD-ROM, DVD(digital versatile disks) 또는 다른 광 스토리지, RAM, ROM, EEPROM(electrically erasable programmable read-only memory) 등과 같이 컴퓨터에 의해 액세스될 수 있는 데이터를 기억할 수 있는 다른 타입들의 컴퓨터 판독 가능한 매체들이 또한 일례의 컴퓨터 환경(500)을 구현하기 위해 사용될 수 있음을 알게 될 것이다.
임의의 수의 프로그램 모듈들이 하드 디스크 드라이브(515)에 포함된 하드 디스크, 자기 디스크(520), 비휘발성 광 디스크(524), ROM(512), 및/또는 RAM(510)에 기억될 수 있으며, 예를 들어, OS(526), 하나 이상의 애플리케이션 프로그램들(528), 다른 프로그램 모듈들(530) 및 프로그램 데이터(532)를 포함한다. 각각의 OS(526), 하나 이상의 애플리케이션 프로그램들(528), 다른 프로그램 모듈들(530) 및 프로그램 데이터(532)(또는 몇몇 결합물)는 분산 파일 시스템을 지원하는 모든 잔존 컴포넌트들 또는 그 일부를 구현할 수도 있다.
사용자는 키보드(534) 및 포인팅 디바이스(536)(예를 들어, "마우스")와 같은 입력 디바이스들을 통해 컴퓨터(502)에 커맨드 및 정보를 입력할 수 있다. 다른 입력 디바이스들(538)(특별히 도시되지 않음)은 마이크로폰, 조이스틱, 게임 패드, 위성 접시, 직렬 포트, 스캐너 등을 포함할 수도 있다. 여타 입력 디바이스들은 시스템 버스(508)에 결합된 입출력 인터페이스들(540)을 통해 프로세싱 유닛(504)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus)와 같은 다른 인터페이스 및 버스 구조들에 의해 접속될 수도 있다.
모니터, 플랫 패널 디스플레이 또는 다른 타입의 컴퓨터 디스플레이(200)가 또한 비디오 어댑터(544)와 같은 인터페이스를 통해 시스템 버스(508)에 접속될 수 있다. 컴퓨터 디스플레이는 도 9에 도시되고 상술된 구조화 문서 검색 시스템(100)으로부터의 출력을 디스플레이할 수 있다. 컴퓨터 디스플레이(200) 외에, 다른 출력 주변 디바이스들은 입출력 인터페이스들(540)을 통해 컴퓨터(502)에 접속될 수 있는 스피커(도시되지 않음) 및 프린터(546)와 같은 컴포넌트들을 포함할 수 있다.
컴퓨터(502)는 리모트 컴퓨터 디바이스(548)와 같은 하나 이상의 리모트 컴퓨터들과의 논리 접속을 사용해서 네트워크 환경에서 동작할 수 있다. 예를 들어, 리모트 컴퓨터 디바이스(548)는 퍼스널 컴퓨터, 휴대용 컴퓨터, 서버, 루터, 네트워크 컴퓨터, 피어 디바이스 또는 다른 공통 네트워크 노드, 게임 콘솔 등일 수 있다. 리모트 컴퓨터 디바이스(548)는 컴퓨터(502)와 관련해서 본 명세서에 기술된 다수의 또는 모든 엘리먼트들 및 특징들을 포함할 수 있는 휴대용 컴퓨터로서 도시되어 있다.
컴퓨터(502)와 리모트 컴퓨터 디바이스(548) 간의 논리 접속은 LAN(local area network)(550) 및 WAN(wide area network)(552)으로 도시되어 있다. 이러한 네트워킹 환경은 사무실에서 흔히 볼 수 있으며, 기업간 컴퓨터 네트워크, 인트라넷 및 인터넷이다.
LAN 네트워크 환경에서 구현될 때, 컴퓨터(502)는 네트워크 인터페이스 또는 어댑터(554)를 통해 로컬 네트워크(550)에 접속된다. WAN 네트워크 환경에서 구현될 때, 컴퓨터(502)는 통상 WAN(552)을 통한 통신을 설정하기 위해 모뎀(556) 또는 다른 수단을 포함한다. 컴퓨터(502)의 내부 또는 외부에 있을 수 있는 모뎀(556)은 입출력 인터페이스(540) 또는 다른 적합한 메카니즘들을 통해 시스템 버스(508)에 접속될 수 있다. 도시된 네트워크 접속들은 일례의 것이며 컴퓨터(502)와 리모트 컴퓨터 디바이스(548) 간의 통신 링크(들)를 확립하기 위한 다른 수단이 사용될 수 있음을 알 것이다.
네트워크 환경에서, 컴퓨터 환경(500)과 함께 도시된 바와 같이, 컴퓨터(502)와 관련해서 서술된 프로그램 모듈들 또는 그 일부들은 리모트 메모리 스토리지 디바이스에 기억될 수 있다. 예를 들어, 리모트 애플리케이션 프로그램들(558)은 리모트 컴퓨터(548)의 메모리 디바이스에 존재한다. 설명을 위해, 애플리케이션 프로그램들 또는 오퍼레이팅 시스템과 같은 다른 실행 가능 프로그램 컴포넌트들이 다양한 시간에 컴퓨터(502)의 상이한 스토리지 컴포넌트들에 존재한다고 인식되더라도, 상기 프로그램들 및 컴포넌트들은 본 명세서에서 개별 블록들로 설명되며, 컴퓨터(502)의 데이터 프로세서(들)에 의해 실행된다. 도시되고 기술된 네트워크 접속들이 일례적인 것이며 컴퓨터들 간의 통신 링크를 확립하기 위한 다른 수단이 사용될 수 있음을 알 것이다.
다양한 모듈들 및 기술들이 하나 이상의 컴퓨터들 또는 다른 디바이스들에 의해 실행되는 프로그램 모듈들과 같이 컴퓨터 실행 가능한 명령들의 일반적인 문맥으로 본 명세서에 기술될 수 있다. 일반적으로, 프로그램 모듈들은 특정 태스크들을 실행하거나 특정 추상 데이터 타입들을 구현하는 루틴, 프로그램, 제어객체(650), 컴포넌트, 제어 노드 데이터 구조(654) 등을 포함한다. 통상, 프로그램 모듈들의 기능은 다양한 실시예들에서 원하는 대로 결합되거나 분산될 수도 있다.
상기 모듈들 및 기술들의 구현은 컴퓨터 판독 가능한 매체들을 통해 기억 또는 송신될 수도 있다. 컴퓨터 판독 가능한 매체들은 컴퓨터에 의해 액세스될 수 있는 임의의 유용한 매체들일 수 있다. 예를 들어, 컴퓨터 판독 가능한 매체들은 "컴퓨터 스토리지 매체들" 및 "통신 매체들"을 포함할 수도 있는데, 이에 제한되는 것은 아니다.
"컴퓨터 스토리지 매체들"은 컴퓨터 판독 가능 명령들, 제어 노드 데이터 구조들, 프로그램 모듈들 또는 다른 데이터와 같은 정보를 기억하기 위한 임의의 프로세스 또는 기술로 구현된 휘발성 및 비휘발성, 제거 가능 및 제거 불가능 매체들을 포함한다. 컴퓨터 스토리지 매체들은 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD 또는 다른 광 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스, 또는 희망 정보를 기억하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함하는데, 이들로만 제한되지 않는다.
"통신 매체들"은 통상 반송파 또는 다른 전송 메카니즘과 같은 변조된 데이터 신호로 컴퓨터 판독 가능 명령들, 제어 노드 데이터 구조들, 프로그램 모듈들 또는 다른 데이터를 구현한다. 통신 매체들은 또한 임의의 정보 전달 매체들을 포함한다. "변조된 데이터 신호"라는 용어는 하나 이상의 특징들의 집합을 갖거나또는 신호로 정보를 인코드하는 방식으로 변경된 신호를 의미한다. 예를 들어, 통신 매체들은 유선망 또는 다이렉트-와이어드 접속과 같은 유선 매체들 및 음향, RF, 적외선 및 다른 무선 매체들과 같은 무선 매체들을 포함하는데, 이에 제한되는 것은 아니다. 상술된 매체들의 임의의 결합물들이 또한 컴퓨터 판독 가능한 매체들의 범위 내에 포함된다.
상술된 구조화 문서 검색 시스템(100)은 전체 문서 보다 더 작은 구성 단위로 엘리먼트들을 검색하는 효율적인 방법을 제공한다. 구조화 문서 검색 시스템(100)의 매우 중요한 애플리케이션은 임의의 구성 단위로 적합한 엘리먼트들에 의해 사용자의 질의 요구 사항들을 만족시키는 것이다.
본 명세서에는 구조화 문서들을 위한 계층적 색인 지정 메카니즘이 기술되어 있으며, 뿐만 아니라 계층적 색인 지정 메카니즘을 근거로 동작하는 스케일 가능한 구조화 문서 검색 방법이 기술되어 있다. 특정 레벨 엘리먼트의 통계 정보를 다른 피어 용어들의 값들과 비교함으로써 판정된 보다 일반적인 개념을 나타내면 색인 용어는 트리 구조의 상위 레벨 엘리먼트로 전파된다. 따라서 동일한 문서 구조에서, 색인 용어들은 전체 트리에 걸쳐 분산된다. 각각의 엘리먼트는 엘리먼트의 개념을 최상으로 표현할 수 있는 색인 용어 리스트를 갖는다. 스케일 가능한 검색 방법은 임의의 레벨의 가장 만족스러운 엘리먼트들을 사용자들에게 제공하도록 헌정된다.
실험 결과들은 도 7a, 도 7b, 도 8a 및 도 8b에 도시된 구조화 문서 검색 프로세스가 단락 레벨들에 대해서만 TFIDF 적량을 적용시키는 방법을 상당히 능가함을 보여준다. 또한, 구조화 문서 검색 시스템(100)에서 제공된 구조적 문맥에 따른 결과들은 사용자들에게 보다 만족스러우며 편안하다. 또한 실험 결과들은 상기 방법이 임계값 설정에 둔감하였음을 나타낸다. 따라서, 동적 임계값이 문서들의 길이가 매우 다양한 경우 구조화 문서 검색 방법에 양호한 솔루션이 된다.
시스템들 및 방법들이 구조적 특징들 및/또는 프로세스들에게 특정한 언어로 기술되었지만, 첨부된 청구항들에 정의된 본 발명이 기술된 특정 특징들 또는 프로세스들로만 반드시 제한되는 것이 아님을 알 것이다. 오히려, 특정 특징들은 청구된 발명을 구현하기 위한 양호한 형태들로 기술된 것이다.
본 발명에 따라 구조화 문서들을 검색하기 위한 스케일 가능한 방법 및 적합한 시스템이 제공된다.
본 발명의 한 측면에 따라, 다수의 구조화 문서들을 포함하는 데이터베이스의 탐색 용어에 대한 질의 실행을 포함하는 프로세스 및 적합한 시스템이 제공된다. 탐색 용어를 포함하지 않는 구조화 문서들은 초기 탐색 중에 탐색되거나 필터링된다. 탐색 용어를 포함하는 구조화 문서들인 매치 구조화 문서들은 각각의 개별 엘리먼트가 탐색 용어와 얼마나 잘 매치하는지를 근거로 개별 엘리먼트들의 순위를 매김으로서 평가된다. 순위화 평가는 적어도 특정 개별 엘리먼트들이 사용자에 의해 액세스될 수 있는 방식으로 사용자에게 표시된다.
본 발명의 다른 측면에 따라, 탐색 용어에 대한 다수의 엘리먼트들을 갖는 문서의 질의를 포함하는 프로세스가 제공된다. 엘리먼트들 중 상이한 엘리먼트들의 적합성(relevancies)은 탐색 용어을 근거로 웨이팅된다. 엘리먼트들 중 상이한 엘리먼트들은 엘리먼트들 중 웨이팅된 상이한 엘리먼트들에 응답해서 순위가 매겨진다. 추가로, 문서 내의 다수의 엘리먼트들의 경로 구조가 디스플레이되는데, 경로 구조는 문서 내의 엘리먼트들 중 상이한 엘리먼트들의 적합성을 나타낸다. 구조화 문서들의 엘리먼트들은 문서의 구조를 근거로 스케일된다.

Claims (58)

  1. 복수의 구조화 문서(structured document)들을 포함하는 데이터베이스의 탐색 용어에 대한 질의를 실행하는 단계;
    상기 탐색 용어를 포함하지 않는 구조화 문서들을 찾아 내는 단계;
    상기 탐색 용어를 포함하는 구조화 문서들인 매치된 구조화 문서들의 엘리먼트들을,
    각각의 개별 엘리먼트가 상기 탐색 용어와 얼마나 잘 매치하는가에 기초하여 개별 엘리먼트들의 순위를 매기는 단계, 및
    사용자에 의해 액세스될 수 있는 상기 개별 엘리먼트들의 순위를 사용자에게 표시하는 단계
    에 의해 평가하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 사용자에게 표시하는 단계는 사용자에게 매치된 문서의 계층적 구조를 디스플레이하는 단계를 포함하는 방법.
  3. 제2항에 있어서,
    상기 계층적 구조를 디스플레이하는 단계는 구조화 문서의 구조를 디스플레이하는 계층적 트리를 제공하는 단계를 포함하는 방법.
  4. 제1항에 있어서,
    문서의 구성 단위들(granularities)에 기초하여 개별 순위화된 엘리먼트들을 스케일하는 단계를 더 포함하는 방법.
  5. 제1항에 있어서,
    개별 번호의 순위는 복수의 그래픽 표시자들을 사용해서 표시되는 방법.
  6. 제5항에 있어서,
    상기 그래픽 표시자들의 수는 복수의 별표들을 포함하는 방법.
  7. 제1항에 있어서,
    개별 엘리먼트들을 웨이트(weight)하는 단계를 더 포함하고, 상기 개별 엘리먼트들 웨이트 단계는 엔트로피 척도(entropy measure)를 포함하는 방법.
  8. 제1항에 있어서,
    상기 구조화 문서들을 찾아 내는 단계는 적어도 하나의 질의 용어를 포함하는 모든 엘리먼트들을 결정하는 단계를 포함하고;
    상기 개별 엘리먼트들의 순위를 매기는 단계는 수학식을 사용해서 경로들의 순위를 매기는 단계를 포함하되,은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타내고;
    하향순으로 순위화된 경로들에 대응하는 엘리먼트들을 리턴하는 단계
    를 포함하는 방법.
  9. 제8항에 있어서,
    가장 근접하게 매치하는 엘리먼트들을 디스플레이하는 단계를 더 포함하는 방법.
  10. 제8항에 있어서,
    상기 개별 엘리먼트들의 순위를 매기는 단계는 수학식을 사용해서 경로들의 순위를 매기는 단계를 포함하되,은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타내는 방법.
  11. 제8항에 있어서,
    엘리먼트들을 웨이트하는 단계 - 상기 웨이트하는 단계는 각각의 단락 엘리먼트에 대해 수학식에 따라 용어들의 웨이트를 계산하는 단계를 포함하되,Weight(t i , P j )는 단락P j 의 용어t i 의 웨이트를 나타내고, ""는 상기 단락의t i 의 용어 빈도수(frequency)이며,N은 전체 문서들의 수를 나타내고,n i 는 용어t i 를 포함하는 문서들의 수를 나타냄 - ;
    상향식 방식을 따르는 상위 레벨의 임의의 섹션 엘리먼트E j 에 대해, 수학식을 사용해서 용어 웨이트를 계산하는 단계 - "I(t i , E j )"는 엘리먼트E j 의 용어t i 의 엔트로피 척도(measure)이며,Weight(t i , E j ) ≥ average(E j )+std_dev(E j )이면, 용어t i 는 엘리먼트E j 의 색인 용어로서 선택되고E j 의 모든 서브-엘리먼트들은 색인 용어 리스트로부터t i 를 제거하되,average(E j )는 엘리먼트E j 의 모든 용어 웨이트들의 산술 평균을 나타내고,std_dev(E j )는 웨이트들의 표준 편차임 - ; 및
    루트 엘리먼트(즉, 문서 엘리먼트)에 도달할 때까지 수학식을 사용해서 용어 웨이트들을 계산하는 단계를반복하는 단계
    를 더 포함하는 방법.
  12. 구조화 문서 내의 구조화 엘리먼트들의 순위를 매기는 단계 - 상기 구조화 문서는 문서 엘리먼트 또는 루트 엘리먼트, 적어도 하나의 섹션 엘리먼트 및 적어도 하나의 단락 엘리먼트들을 포함하고, 상기 순위화 단계는:
    각각의 단락 엘리먼트에 대해 수학식에 따라 용어들의 웨이트를 계산하는 단계를 포함하되,Weight(t i , P j )는 단락P j 의 용어t i 의 웨이트를 나타내고, ""는 상기 단락의t i 의 용어 빈도수이며,N은 전체 문서들의 수를 나타내고,n i 는 용어t i 를 포함하는 문서들의 수를 나타냄 - ;
    상향식 방식을 따르는 상위 레벨의 임의의 섹션 엘리먼트E j 에 대해, 수학식을 사용해서 용어 웨이트를 계산하는 단계 - "I(t i , E j )"는 엘리먼트E j 의 용어t i 의 엔트로피 척도이며,Weight(t i , E j ) ≥ average(E j )+std_dev(E j )이면, 용어t i 는 엘리먼트E j 의 색인 용어로서 선택되고E j 의 모든 서브-엘리먼트들은 색인 용어 리스트로부터t i 를 제거하되,average(E j )는 엘리먼트E j 의 모든 용어 웨이트들의 산술 평균을 나타내고,std_dev(E j )는 웨이트들의 표준 편차임 - ;
    루트 엘리먼트(즉, 문서 엘리먼트)에 도달할 때까지 수학식을 사용해서 용어 웨이트들을 계산하는 단계를 반복하는 단계;
    모든 평가 후보 엘리먼트들에 대한 경로들을 획득하고 엘리먼트들에 대한 질의 용어 웨이트를 경로들에게 각각 할당하는 단계;
    수학식을 사용해서 경로들의 순위를 매기는 단계 -은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타냄 - ; 및
    하향순으로 순위화된 경로들에 대응하는 엘리먼트들을 리턴하는 단계
    를 포함하는 방법.
  13. 제12항에 있어서,
    개별 엘리먼트들의 순위를 사용자에게 표시하는 단계를 더 포함하고, 상기 개별 엘리먼트들은 사용자에 의해 액세스될 수 있는 방법.
  14. 제13항에 있어서,
    상기 사용자에게 표시하는 단계는 사용자에게 매치된 문서의 계층적 구조를 디스플레이하는 단계를 포함하는 방법.
  15. 제14항에 있어서,
    상기 계층적 구조를 디스플레이하는 단계는 구조화 문서의 구조를 디스플레이하는 계층적 트리를 제공하는 단계를 포함하는 방법.
  16. 제12항에 있어서,
    개별 엘리먼트들의 순위는 수치적으로 표시되는 방법.
  17. 제12항에 있어서,
    개별 번호의 순위는 복수의 그래픽 표시자들을 제공함으로써 표시되는 방법.
  18. 제17항에 있어서,
    상기 복수의 그래픽 표시자들은 복수의 별표들을 포함하는 방법.
  19. 제12항에 있어서,
    개별 엘리먼트들을 웨이트하는 단계를 더 포함하고, 상기 개별 엘리먼트들 웨이트하는 단계는 엔트로피 척도를 포함하는 방법.
  20. 모든 엘리먼트들에 대한 경로들을 획득하고, 경로들에 대해 질의 용어의 웨이트를 할당하는 단계; 및
    수학식을 사용해서 경로들의 순위를 매기는 단계 -은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타냄 -
    을 포함하는 방법.
  21. 제20항에 있어서,
    하향순으로 순위화된 경로들에 대응하는 엘리먼트들을 리턴하는 단계를 더 포함하는 방법.
  22. 제21항에 있어서,
    개별 엘리먼트들의 순위를 사용자에게 표시하는 단계를 더 포함하고, 상기 개별 엘리먼트들은 사용자에 의해 액세스될 수 있는 방법.
  23. 제22항에 있어서,
    상기 사용자에게 표시하는 단계는 사용자에게 매치된 문서의 계층적 구조를디스플레이하는 단계를 포함하는 방법.
  24. 제23항에 있어서,
    상기 계층적 구조를 디스플레이하는 단계는 구조화 문서의 구조를 디스플레이하는 계층적 트리를 제공하는 단계를 포함하는 방법.
  25. 제20항에 있어서,
    상기 개별 엘리먼트들의 순위는 수치적으로 표시되는 방법.
  26. 제20항에 있어서,
    상기 개별 번호의 순위는 복수의 그래픽 표시자들을 제공함으로써 표시되는 방법.
  27. 제26항에 있어서,
    상기 그래픽 표시자들의 수는 복수의 별표들을 포함하는 방법.
  28. 제20항에 있어서,
    상기 후보 엘리먼트들을 웨이트하는 단계는 엔트로피 척도를 포함하는 방법.
  29. 제20항에 있어서,
    상기 구조화 문서는 XML(extensible markup language)로 기재되는 방법.
  30. 일반적인 프로세스 컴퓨터에 의해 실행될 때 방법을 실행할 수 있는 컴퓨터 실행 가능한 명령들을 갖는 컴퓨터 판독 가능한 매체에 있어서, 상기 방법은
    복수의 구조화 문서들을 포함하는 데이터베이스의 탐색 용어에 대한 질의를 실행하는 단계;
    상기 탐색 용어를 포함하지 않는 구조화 문서들을 필터링하는 단계; 및
    각각의 개별 엘리먼트가 상기 탐색 용어와 얼마나 잘 매치하는가에 기초하여 개별 엘리먼트들의 순위를 매김으로써 상기 탐색 용어를 포함하는 구조화 문서들인 매치된 구조화 문서들을 평가하는 단계
    를 포함하는 컴퓨터 판독 가능한 매체.
  31. 제30항에 있어서,
    개별 엘리먼트들의 순위를 사용자에게 표시하는 단계를 포함하고, 상기 개별 엘리먼트들이 사용자에 의해 액세스될 수 있는 컴퓨터 판독 가능한 매체.
  32. 제31항에 있어서,
    상기 사용자에게 표시하는 단계는 사용자에게 매치된 문서의 계층적 구조를 디스플레이하는 단계를 포함하는 컴퓨터 판독 가능한 매체.
  33. 제32항에 있어서,
    계층적 구조를 디스플레이하는 단계는 상기 구조화 문서의 구조를 디스플레이하는 계층적 트리를 제공하는 단계를 포함하는 컴퓨터 판독 가능한 매체.
  34. 제30항에 있어서,
    상기 개별 엘리먼트들의 순위는 수치적으로 표시되는 컴퓨터 판독 가능한 매체.
  35. 제30항에 있어서,
    상기 구조화 문서의 엘리먼트들은 구조화 문서의 구성 단위들에 따라 스케일되는 컴퓨터 판독 가능한 매체.
  36. 제30항에 있어서,
    상기 순위는 복수의 별표들을 사용해서 표시되는 컴퓨터 판독 가능한 매체.
  37. 제30항에 있어서,
    상기 개별 엘리먼트들을 웨이트하는 단계는 엔트로피 척도를 포함하는 컴퓨터 판독 가능한 매체.
  38. 제30항에 있어서,
    상기 구조화 문서들을 필터링하는 단계는 적어도 하나의 질의 용어를 포함하는 모든 엘리먼트들을 결정하는 단계를 포함하고;
    상기 개별 엘리먼트들의 순위를 매기는 단계는 수학식을 사용해서 경로들의 순위를 매기는 단계 -은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타냄 - ; 및
    하향순으로 순위화된 경로들에 대응하는 엘리먼트들을 리턴하는 단계
    를 포함하는 컴퓨터 판독 가능한 매체.
  39. 제30항에 있어서,
    수학식을 사용해서 경로들의 순위를 매기는 단계를 포함하는 개별 엘리먼트들의 순위를 매기는 단계를 더 포함하되,은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타내는 컴퓨터 판독 가능한 매체.
  40. 복수의 문서들로부터 적어도 하나의 문서의 일부를 검색하기 위한 방법에 있어서,
    상기 복수의 문서들에 대해 탐색 용어에 대한 질의를 실행하는 단계;
    검색될 각각의 엘리먼트의 웨이트의 임계값을 설정하는 단계;
    임계값이 설정된 문서들 중 어떤 문서가 임계값을 초과하는지를 결정하는 단계; 및
    임계값을 초과하는 개별 엘리먼트들의 순위를 매기는 단계
    를 포함하는 방법.
  41. 제40항에 있어서,
    임계값을 초과하는 개별 엘리먼트들의 순위를 사용자에게 표시하는 단계를 더 포함하고 상기 개별 엘리먼트들은 사용자에 의해 액세스될 수 있는 방법.
  42. 문서의 엘리먼트의 적합성(relevancy)을 사용자에게 디스플레이하는 방법에 있어서,
    탐색 용어에 대해 문서를 질의하는 단계;
    상기 탐색 용어에 대한 엘리먼트의 적합성의 순위를 매기는 단계;
    문서의 사용자 특정 적합 부분을 리턴하는 단계; 및
    전체 문서에 대한 문서의 리턴 부분의 적합성을 사용자에게 표시하는 단계
    를 포함하는 방법.
  43. 제42항에 있어서,
    상기 문서는 계층적으로 배열된 복수의 엘리먼트들을 포함하는 방법.
  44. 제42항에 있어서,
    엘리먼트들 중 상이한 엘리먼트들의 적합성에 응답해서 문서 내의 복수의 엘리먼트들 중 상이한 엘리먼트들의 적합성의 순위를 매기는 단계를 더 포함하는 방법.
  45. 제44항에 있어서,
    상기 사용자에게 엘리먼트의 적합성을 표시하는 단계는 복수의 엘리먼트들 중 상이한 엘리먼트들의 적합성의 순위를 매기는 단계에 응답해서 실행되는 방법.
  46. 제45항에 있어서,
    상기 표시 단계는 사용자에게 엘리먼트의 적합성을 디스플레이하는 단계를 포함하는 방법.
  47. 제43항에 있어서,
    문서 내의 엘리먼트들 중 다른 엘리먼트들과 관련된 엘리먼트의 문맥을 디스플레이하는 단계를 포함하는 방법.
  48. 제43항에 있어서,
    상기 엘리먼트의 적합성은 문서 내의 엘리먼트의 경로를 사용해서 사용자에게 표시되는 방법.
  49. 문서의 엘리먼트의 적합성을 사용자에게 디스플레이하는 방법에 있어서,
    탐색 용어에 대해 문서를 질의하는 단계;
    상기 탐색 용어에 대한 엘리먼트의 적합성을 웨이트하는 단계; 및
    문서의 경로 구조를 디스플레이하는 단계
    를 포함하고,
    상기 경로 구조는 문서의 다른 엘리먼트들에 대한 엘리먼트의 적합성을 표시하는 방법.
  50. 일반적인 프로세스 컴퓨터에 의해 실행될 때 방법을 실행할 수 있는 컴퓨터 실행 가능한 명령들을 갖는 컴퓨터 판독 가능한 매체에 있어서, 상기 방법은
    복수의 경로들을 포함하는 문서를 질의하는 단계 - 상기 복수의 경로들 중 각각의 경로는 탐색 용어에 대해 질의된 특정 엘리먼트들을 표시함 - ;
    상기 탐색 용어에 대한 경로들 중 상이한 경로들의 적합성을 웨이트하는 단계;
    상기 경로들 중 웨이트된 상이한 경로들에 응답해서 경로들 중 상이한 경로들의 순위를 매기는 단계; 및
    문서 내의 복수의 엘리먼트들의 경로 구조를 디스플레이하는 단계 - 상기 경로 구조는 문서 내의 경로들 중 상이한 경로들의 적합성을 표시함 -
    를 포함하는 컴퓨터 판독 가능한 매체.
  51. 탐색 용어에 대해 복수의 엘리먼트들을 갖는 문서를 질의하는 단계;
    엘리먼트들 중 웨이트된 상이한 엘리먼트들에 응답해서 엘리먼트들 중 상이한 엘리먼트들의 순위를 매기는 단계; 및
    구조화 문서의 엘리먼트들을 스케일하는 단계
    를 포함하는 방법.
  52. 제51항에 있어서,
    문서 내의 복수의 엘리먼트들의 경로 구조를 디스플레이하는 단계를 더 포함하고, 상기 경로 구조는 문서 내의 엘리먼트들 중 상이한 엘리먼트들의 적합성을 표시하는 방법.
  53. 제51항에 있어서,
    상기 엘리먼트들 중 상이한 엘리먼트들의 적합성을 웨이트하는 단계는 적어도 하나의 질의 용어를 포함하는 모든 엘리먼트들을 결정하는 단계를 포함하고;
    상기 엘리먼트들 중 상이한 엘리먼트들의 적합성을 웨이트하는 단계는 모든 평가 후보 엘리먼트들에 대한 경로들을 획득하고 엘리먼트들에 대한 질의 용어의 웨이트를 경로들에게 각각 할당하는 단계를 포함하고;
    상기 엘리먼트들 중 상이한 엘리먼트들의 순위를 매기는 단계는 수학식을 사용해서 경로들의 순위를 매기는 단계를 포함하되,은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타내고;
    순위에 기초하여 순위화 경로들에게 대응하는 엘리먼트들을 순서대로 리턴하는 단계를 포함하는 방법.
  54. 제51항에 있어서,
    상기 엘리먼트들 중 상이한 엘리먼트들의 순위를 매기는 단계는 수학식을 사용해서 경로들의 순위를 매기는 단계를 포함하되,은 질의 용어t i 의 IDF(inverse document frequency) 값이며, 이는 질의 용어의 웨이트를 나타내고,Q는 질의의 질의 용어들의 수를 나타내는 방법.
  55. 계층적 색인에서 상이한 경로들의 순위를 매기기 전에 사용되는 방법에 있어서,
    탐색 용어에 대해 복수의 엘리먼트들을 갖는 문서를 질의하는 단계 - 상기 복수의 엘리먼트들 중 상이한 엘리먼트들은 상이한 경로들로 배열됨 - ; 및
    상기 탐색 용어에 기초한 경로들 중 상이한 경로들의 적합성을 웨이트하는 단계
    를 포함하는 방법.
  56. 제55항에 있어서,
    상기 경로들 중 상이한 경로들의 수를 스케일하는 단계를 더 포함하는 방법.
  57. 제55항에 있어서,
    상기 경로들 중 상이한 경로들과 연관된 텍스트를 사용자들에게 디스플레이하는 단계를 더 포함하는 방법.
  58. 제57항에 있어서,
    상기 문서의 다른 부분들과 관련된 디스플레이된 텍스트의 문맥을 표시하는 단계를 더 포함하는 방법.
KR1020040000739A 2003-01-06 2004-01-06 구조화 문서 검색 KR101120760B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/337,138 2003-01-06
US10/337,138 US7111000B2 (en) 2003-01-06 2003-01-06 Retrieval of structured documents

Publications (2)

Publication Number Publication Date
KR20040063822A true KR20040063822A (ko) 2004-07-14
KR101120760B1 KR101120760B1 (ko) 2012-06-12

Family

ID=32507431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040000739A KR101120760B1 (ko) 2003-01-06 2004-01-06 구조화 문서 검색

Country Status (5)

Country Link
US (4) US7111000B2 (ko)
EP (1) EP1435581B1 (ko)
JP (1) JP4425641B2 (ko)
KR (1) KR101120760B1 (ko)
CN (1) CN100568229C (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101122394B1 (ko) * 2009-05-08 2012-03-23 엔에이치엔(주) 엔트로피 점수를 이용한 검색결과 제공 방법 및 장치
KR101454677B1 (ko) * 2011-10-31 2014-10-27 네이버 주식회사 엔트로피 점수를 이용한 검색결과 제공 방법 및 장치

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111000B2 (en) * 2003-01-06 2006-09-19 Microsoft Corporation Retrieval of structured documents
JP4049317B2 (ja) 2003-05-14 2008-02-20 インターナショナル・ビジネス・マシーンズ・コーポレーション 検索支援装置およびプログラム
PL363397A1 (en) * 2003-11-12 2005-05-16 Advanced Digital Broadcast Ltd. System for data search and definition in tree formats and method for data search and definition in tree formats
US20050198059A1 (en) * 2004-03-04 2005-09-08 Peilin Chou Database and database management system
JP2005309727A (ja) * 2004-04-21 2005-11-04 Hitachi Ltd ファイルシステム
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US7487145B1 (en) * 2004-06-22 2009-02-03 Google Inc. Method and system for autocompletion using ranked results
JP4309818B2 (ja) * 2004-07-15 2009-08-05 株式会社東芝 構造化文書管理装置、検索装置、記憶方法、検索方法及びプログラム
US20060031760A1 (en) * 2004-08-05 2006-02-09 Microsoft Corporation Adaptive document layout server/client system and process
US20060047656A1 (en) * 2004-09-01 2006-03-02 Dehlinger Peter J Code, system, and method for retrieving text material from a library of documents
US20060085401A1 (en) * 2004-10-20 2006-04-20 Microsoft Corporation Analyzing operational and other data from search system or the like
US7499940B1 (en) * 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US20060106769A1 (en) 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US8090736B1 (en) * 2004-12-30 2012-01-03 Google Inc. Enhancing search results using conceptual document relationships
US9189481B2 (en) * 2005-05-06 2015-11-17 John M. Nelson Database and index organization for enhanced document retrieval
US20060259475A1 (en) * 2005-05-10 2006-11-16 Dehlinger Peter J Database system and method for retrieving records from a record library
CN1318974C (zh) * 2005-08-05 2007-05-30 北京九州汇宝软件有限公司<Del/> 数据库备份数据的压缩和查询方法
US8156097B2 (en) 2005-11-14 2012-04-10 Microsoft Corporation Two stage search
US8010523B2 (en) * 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
US7809711B2 (en) * 2006-06-02 2010-10-05 International Business Machines Corporation System and method for semantic analysis of intelligent device discovery
CN101542478B (zh) * 2006-06-26 2012-07-18 尼尔森(美国)有限公司 提高数据仓库性能的方法和装置
CN100573520C (zh) * 2006-08-29 2009-12-23 国际商业机器公司 为检索对多个文档进行预处理的方法和装置
US8401841B2 (en) * 2006-08-31 2013-03-19 Orcatec Llc Retrieval of documents using language models
CN101589360A (zh) * 2006-10-18 2009-11-25 谷歌公司 适合于联合的通用在线排名系统和方法
US7836085B2 (en) * 2007-02-05 2010-11-16 Google Inc. Searching structured geographical data
US7831587B2 (en) * 2007-05-10 2010-11-09 Xerox Corporation Event hierarchies and memory organization for structured data retrieval
US7822752B2 (en) * 2007-05-18 2010-10-26 Microsoft Corporation Efficient retrieval algorithm by query term discrimination
US7853603B2 (en) * 2007-05-23 2010-12-14 Microsoft Corporation User-defined relevance ranking for search
US8160306B1 (en) * 2007-06-06 2012-04-17 Neustel Michael S Patent analyzing system
US9256594B2 (en) 2007-06-06 2016-02-09 Michael S. Neustel Patent analyzing system
US20090119281A1 (en) * 2007-11-03 2009-05-07 Andrew Chien-Chung Wang Granular knowledge based search engine
US8069179B2 (en) * 2008-04-24 2011-11-29 Microsoft Corporation Preference judgements for relevance
US8161036B2 (en) * 2008-06-27 2012-04-17 Microsoft Corporation Index optimization for ranking using a linear model
US8171031B2 (en) * 2008-06-27 2012-05-01 Microsoft Corporation Index optimization for ranking using a linear model
US8312032B2 (en) 2008-07-10 2012-11-13 Google Inc. Dictionary suggestions for partial user entries
US20100125566A1 (en) * 2008-11-18 2010-05-20 Patentcafe.Com, Inc. System and method for conducting a patent search
US10303722B2 (en) 2009-05-05 2019-05-28 Oracle America, Inc. System and method for content selection for web page indexing
US20100287152A1 (en) 2009-05-05 2010-11-11 Paul A. Lipari System, method and computer readable medium for web crawling
CN102483752A (zh) 2009-06-03 2012-05-30 谷歌公司 用于部分输入的查询的自动完成
EP2443574A4 (en) 2009-06-19 2014-05-07 Blekko Inc EVOLVING CLUSTER DATABASE
WO2011000165A1 (en) * 2009-07-03 2011-01-06 Hewlett-Packard Development Company,L.P. Apparatus and method for text extraction
US9507827B1 (en) * 2010-03-25 2016-11-29 Excalibur Ip, Llc Encoding and accessing position data
US8370330B2 (en) * 2010-05-28 2013-02-05 Apple Inc. Predicting content and context performance based on performance history of users
US20120084291A1 (en) * 2010-09-30 2012-04-05 Microsoft Corporation Applying search queries to content sets
US8713024B2 (en) 2010-11-22 2014-04-29 Microsoft Corporation Efficient forward ranking in a search engine
US9424351B2 (en) 2010-11-22 2016-08-23 Microsoft Technology Licensing, Llc Hybrid-distribution model for search engine indexes
US9195745B2 (en) 2010-11-22 2015-11-24 Microsoft Technology Licensing, Llc Dynamic query master agent for query execution
US8478704B2 (en) 2010-11-22 2013-07-02 Microsoft Corporation Decomposable ranking for efficient precomputing that selects preliminary ranking features comprising static ranking features and dynamic atom-isolated components
US9529908B2 (en) 2010-11-22 2016-12-27 Microsoft Technology Licensing, Llc Tiering of posting lists in search engine index
US9342582B2 (en) 2010-11-22 2016-05-17 Microsoft Technology Licensing, Llc Selection of atoms for search engine retrieval
US8620907B2 (en) 2010-11-22 2013-12-31 Microsoft Corporation Matching funnel for large document index
US9098570B2 (en) 2011-03-31 2015-08-04 Lexisnexis, A Division Of Reed Elsevier Inc. Systems and methods for paragraph-based document searching
US20120271844A1 (en) * 2011-04-20 2012-10-25 Microsoft Corporation Providng relevant information for a term in a user message
US8965904B2 (en) * 2011-11-15 2015-02-24 Long Van Dinh Apparatus and method for information access, search, rank and retrieval
US20130297657A1 (en) * 2012-05-01 2013-11-07 Gajanan Chinchwadkar Apparatus and Method for Forming and Using a Tree Structured Database with Top-Down Trees and Bottom-Up Indices
WO2014087597A1 (ja) * 2012-12-07 2014-06-12 キヤノン電子株式会社 ウイルス侵入経路特定装置、ウイルス侵入経路特定方法およびプログラム
US9916284B2 (en) * 2013-12-10 2018-03-13 International Business Machines Corporation Analyzing document content and generating an appendix
WO2016072310A1 (ja) 2014-11-05 2016-05-12 キヤノン電子株式会社 特定装置、その制御方法、及びプログラム
US9875288B2 (en) 2014-12-01 2018-01-23 Sap Se Recursive filter algorithms on hierarchical data models described for the use by the attribute value derivation
US10776376B1 (en) * 2014-12-05 2020-09-15 Veritas Technologies Llc Systems and methods for displaying search results
CN104572620B (zh) * 2014-12-31 2018-11-23 百度在线网络技术(北京)有限公司 一种用于显示章节内容的方法和装置
US10242071B2 (en) 2015-06-23 2019-03-26 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
US10467215B2 (en) 2015-06-23 2019-11-05 Microsoft Technology Licensing, Llc Matching documents using a bit vector search index
US10229143B2 (en) 2015-06-23 2019-03-12 Microsoft Technology Licensing, Llc Storage and retrieval of data from a bit vector search index
US10733164B2 (en) 2015-06-23 2020-08-04 Microsoft Technology Licensing, Llc Updating a bit vector search index
US11281639B2 (en) * 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query
US10565198B2 (en) 2015-06-23 2020-02-18 Microsoft Technology Licensing, Llc Bit vector search index using shards
CN106815266B (zh) * 2015-12-01 2020-06-16 北京国双科技有限公司 裁判文书检索方法和装置
EP3394800A1 (en) * 2015-12-24 2018-10-31 Koninklijke Philips N.V. Device for and method of determining a length of a relevant history
US20180165265A1 (en) * 2016-12-08 2018-06-14 International Business Machines Corporation Indicating property inheritance in object hierarchies
WO2018173042A1 (en) * 2017-03-19 2018-09-27 Ofek - Eshkolot Research And Development Ltd System and method for generating filters for k-mismatch search
CN108959573B (zh) * 2018-07-05 2022-07-15 京东方科技集团股份有限公司 基于桌面云的数据迁移方法、装置、电子设备以及存储介质
US11880396B2 (en) * 2018-10-08 2024-01-23 Arctic Alliance Europe Oy Method and system to perform text-based search among plurality of documents
US11061913B2 (en) * 2018-11-30 2021-07-13 International Business Machines Corporation Automated document filtration and priority scoring for document searching and access
US11074262B2 (en) * 2018-11-30 2021-07-27 International Business Machines Corporation Automated document filtration and prioritization for document searching and access
US11068490B2 (en) * 2019-01-04 2021-07-20 International Business Machines Corporation Automated document filtration with machine learning of annotations for document searching and access
US10977292B2 (en) 2019-01-15 2021-04-13 International Business Machines Corporation Processing documents in content repositories to generate personalized treatment guidelines
US11721441B2 (en) 2019-01-15 2023-08-08 Merative Us L.P. Determining drug effectiveness ranking for a patient using machine learning
US11537581B2 (en) * 2019-03-22 2022-12-27 Hewlett Packard Enterprise Development Lp Co-parent keys for document information trees
CN110990017B (zh) * 2019-09-11 2022-09-09 无锡江南计算技术研究所 一种基于可信树的特征存储与匹配方法
US11531818B2 (en) * 2019-11-15 2022-12-20 42 Maru Inc. Device and method for machine reading comprehension question and answer
US20210349888A1 (en) * 2020-05-11 2021-11-11 Dropbox, Inc. Personalized Spelling Correction
CN112307356A (zh) * 2020-10-30 2021-02-02 北京百度网讯科技有限公司 信息搜索方法、装置、电子设备及存储介质

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020019A (en) * 1989-05-29 1991-05-28 Ricoh Company, Ltd. Document retrieval system
JPH03122770A (ja) * 1989-10-05 1991-05-24 Ricoh Co Ltd キーワード連想文書検索方法
US5404514A (en) * 1989-12-26 1995-04-04 Kageneck; Karl-Erbo G. Method of indexing and retrieval of electronically-stored documents
US5321833A (en) * 1990-08-29 1994-06-14 Gte Laboratories Incorporated Adaptive ranking system for information retrieval
JP2943447B2 (ja) * 1991-01-30 1999-08-30 三菱電機株式会社 テキスト情報抽出装置とテキスト類似照合装置とテキスト検索システムとテキスト情報抽出方法とテキスト類似照合方法、及び、質問解析装置
JPH05101107A (ja) * 1991-10-07 1993-04-23 Hitachi Ltd 適合率を用いた絞り込みデータ検索装置及び方法
GB9220404D0 (en) * 1992-08-20 1992-11-11 Nat Security Agency Method of identifying,retrieving and sorting documents
JP2770715B2 (ja) * 1993-08-25 1998-07-02 富士ゼロックス株式会社 構造化文書検索装置
DE69423838T2 (de) * 1993-09-23 2000-08-03 Xerox Corp Semantische Gleichereignisfilterung für Spracherkennung und Signalübersetzungsanwendungen
US5692176A (en) * 1993-11-22 1997-11-25 Reed Elsevier Inc. Associative text search and retrieval system
US5574840A (en) 1994-08-29 1996-11-12 Microsoft Corporation Method and system for selecting text utilizing a plurality of text using switchable minimum granularity of selection
JP2896634B2 (ja) 1995-03-02 1999-05-31 富士ゼロックス株式会社 全文登録語検索装置および全文登録語検索方法
US5826260A (en) * 1995-12-11 1998-10-20 International Business Machines Corporation Information retrieval system and method for displaying and ordering information based on query element contribution
US5752242A (en) * 1996-04-18 1998-05-12 Electronic Data Systems Corporation System and method for automated retrieval of information
JP3598742B2 (ja) * 1996-11-25 2004-12-08 富士ゼロックス株式会社 文書検索装置及び文書検索方法
US6098065A (en) * 1997-02-13 2000-08-01 Nortel Networks Corporation Associative search engine
US5873081A (en) * 1997-06-27 1999-02-16 Microsoft Corporation Document filtering via directed acyclic graphs
US5933822A (en) * 1997-07-22 1999-08-03 Microsoft Corporation Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision
US6014639A (en) 1997-11-05 2000-01-11 International Business Machines Corporation Electronic catalog system for exploring a multitude of hierarchies, using attribute relevance and forwarding-checking
US5999664A (en) * 1997-11-14 1999-12-07 Xerox Corporation System for searching a corpus of document images by user specified document layout components
US6801916B2 (en) * 1998-04-01 2004-10-05 Cyberpulse, L.L.C. Method and system for generation of medical reports from data in a hierarchically-organized database
US6389425B1 (en) 1998-07-09 2002-05-14 International Business Machines Corporation Embedded storage mechanism for structured data types
JP2000029902A (ja) 1998-07-15 2000-01-28 Nec Corp 構造化文書分類装置およびこの構造化文書分類装置をコンピュータで実現するプログラムを記録した記録媒体、並びに、構造化文書検索システムおよびこの構造化文書検索システムをコンピュータで実現するプログラムを記録した記録媒体
US6446061B1 (en) * 1998-07-31 2002-09-03 International Business Machines Corporation Taxonomy generation for document collections
JP2000090098A (ja) 1998-09-09 2000-03-31 Hitachi Ltd データベース問い合わせ方法及びその実施装置並びにその処理プログラムを記録した媒体
US6363378B1 (en) * 1998-10-13 2002-03-26 Oracle Corporation Ranking of query feedback terms in an information retrieval system
JP2001160066A (ja) 1998-12-25 2001-06-12 Matsushita Electric Ind Co Ltd データ処理装置、データ処理方法および記録媒体、並びに該データ処理方法をコンピュータに実行させるためのプログラム
WO2000068757A2 (en) * 1999-05-07 2000-11-16 Carlos Cardona System and method for database retrieval, indexing and statistical analysis
US7225182B2 (en) * 1999-05-28 2007-05-29 Overture Services, Inc. Recommending search terms using collaborative filtering and web spidering
US6380947B1 (en) * 1999-07-22 2002-04-30 At&T Corp. Method and apparatus for displaying and tree scrolling a hierarchical data structure
US20020052692A1 (en) 1999-09-15 2002-05-02 Eoin D. Fahy Computer systems and methods for hierarchical cluster analysis of large sets of biological data including highly dense gene array data
US7287214B1 (en) * 1999-12-10 2007-10-23 Books24X7.Com, Inc. System and method for providing a searchable library of electronic documents to a user
US6397211B1 (en) * 2000-01-03 2002-05-28 International Business Machines Corporation System and method for identifying useless documents
US7333983B2 (en) * 2000-02-03 2008-02-19 Hitachi, Ltd. Method of and an apparatus for retrieving and delivering documents and a recording media on which a program for retrieving and delivering documents are stored
DE60044423D1 (de) * 2000-02-03 2010-07-01 Hitachi Ltd Verfahren und Gerät zum Wiederauffinden und Ausgeben von Dokumenten und Speichermedium mit entspechendem Program
WO2002008948A2 (en) * 2000-07-24 2002-01-31 Vivcom, Inc. System and method for indexing, searching, identifying, and editing portions of electronic multimedia files
KR100426382B1 (ko) * 2000-08-23 2004-04-08 학교법인 김포대학 엔트로피 정보와 베이지안 에스오엠을 이용한 문서군집기반의 순위조정 방법
KR100434902B1 (ko) * 2000-08-28 2004-06-07 주식회사 에이전트엑스퍼트 지식 기반 맞춤 정보 제공 시스템 및 그 서비스 방법
US6804662B1 (en) * 2000-10-27 2004-10-12 Plumtree Software, Inc. Method and apparatus for query and analysis
US6693651B2 (en) * 2001-02-07 2004-02-17 International Business Machines Corporation Customer self service iconic interface for resource search results display and selection
US7225234B2 (en) * 2001-03-02 2007-05-29 Sedna Patent Services, Llc Method and system for selective advertisement display of a subset of search results
US20020123989A1 (en) * 2001-03-05 2002-09-05 Arik Kopelman Real time filter and a method for calculating the relevancy value of a document
KR100498574B1 (ko) * 2001-03-08 2005-07-01 주식회사 다이퀘스트 단락 단위의 실시간 응답 색인을 이용한 자연어 질의-응답검색시스템
JP3842577B2 (ja) 2001-03-30 2006-11-08 株式会社東芝 構造化文書検索方法および構造化文書検索装置およびプログラム
US20020198962A1 (en) * 2001-06-21 2002-12-26 Horn Frederic A. Method, system, and computer program product for distributing a stored URL and web document set
WO2003005235A1 (en) * 2001-07-04 2003-01-16 Cogisum Intermedia Ag Category based, extensible and interactive system for document retrieval
US7403938B2 (en) * 2001-09-24 2008-07-22 Iac Search & Media, Inc. Natural language query processing
US20030115191A1 (en) * 2001-12-17 2003-06-19 Max Copperman Efficient and cost-effective content provider for customer relationship management (CRM) or other applications
US7080059B1 (en) * 2002-05-13 2006-07-18 Quasm Corporation Search and presentation engine
US20040039734A1 (en) * 2002-05-14 2004-02-26 Judd Douglass Russell Apparatus and method for region sensitive dynamically configurable document relevance ranking
US7231395B2 (en) * 2002-05-24 2007-06-12 Overture Services, Inc. Method and apparatus for categorizing and presenting documents of a distributed database
US7139778B2 (en) * 2002-06-28 2006-11-21 Microsoft Corporation Linear programming approach to assigning benefit to database physical design structures
US20040037734A1 (en) * 2002-08-23 2004-02-26 Toomey Patrick J. Method for removal of mold from a structure
US7111000B2 (en) * 2003-01-06 2006-09-19 Microsoft Corporation Retrieval of structured documents
US20070260627A1 (en) * 2006-05-03 2007-11-08 Lucent Technologies Inc. Method and apparatus for selective content modification within a content complex

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101122394B1 (ko) * 2009-05-08 2012-03-23 엔에이치엔(주) 엔트로피 점수를 이용한 검색결과 제공 방법 및 장치
KR101454677B1 (ko) * 2011-10-31 2014-10-27 네이버 주식회사 엔트로피 점수를 이용한 검색결과 제공 방법 및 장치

Also Published As

Publication number Publication date
JP2004213675A (ja) 2004-07-29
KR101120760B1 (ko) 2012-06-12
US7428538B2 (en) 2008-09-23
EP1435581A2 (en) 2004-07-07
US20060161532A1 (en) 2006-07-20
EP1435581B1 (en) 2013-04-10
EP1435581A3 (en) 2005-09-28
CN1517914A (zh) 2004-08-04
US20090012956A1 (en) 2009-01-08
US7111000B2 (en) 2006-09-19
US8046370B2 (en) 2011-10-25
US20060155690A1 (en) 2006-07-13
CN100568229C (zh) 2009-12-09
JP4425641B2 (ja) 2010-03-03
US20040133557A1 (en) 2004-07-08

Similar Documents

Publication Publication Date Title
KR101120760B1 (ko) 구조화 문서 검색
US7756855B2 (en) Search phrase refinement by search term replacement
US8429184B2 (en) Generation of refinement terms for search queries
US7685112B2 (en) Method and apparatus for retrieving and indexing hidden pages
US8903810B2 (en) Techniques for ranking search results
US8442972B2 (en) Negative associations for search results ranking and refinement
US8108405B2 (en) Refining a search space in response to user input
KR101311050B1 (ko) 문서 사용 통계치를 사용한 랭킹 함수
US6182091B1 (en) Method and apparatus for finding related documents in a collection of linked documents using a bibliographic coupling link analysis
EP2315135B1 (en) Document search system
US20130268526A1 (en) Discovery engine
Wolfram The symbiotic relationship between information retrieval and informetrics
WO2007124430A2 (en) Search techniques using association graphs
Singla et al. A novel approach for document ranking in digital libraries using extractive summarization
Gong et al. Web image indexing by using associated texts
Jain et al. Organizing query completions for web search
Hristidis et al. Relevance-based retrieval on hidden-web text databases without ranking support
Waegel The Development of Text-Mining Tools and Algorithms
Ntoulas et al. Downloading hidden web content
Stefanov et al. An introduction to contemporary search technology
WO2006046195A1 (en) Data processing system and method
Yu et al. Building search context with sliding window for information seeking
Zhang Search term selection and document clustering for query suggestion

Legal Events

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

Payment date: 20150121

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160119

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee