KR101029403B1 - 자동 질의 클러스터링 - Google Patents

자동 질의 클러스터링 Download PDF

Info

Publication number
KR101029403B1
KR101029403B1 KR1020050007142A KR20050007142A KR101029403B1 KR 101029403 B1 KR101029403 B1 KR 101029403B1 KR 1020050007142 A KR1020050007142 A KR 1020050007142A KR 20050007142 A KR20050007142 A KR 20050007142A KR 101029403 B1 KR101029403 B1 KR 101029403B1
Authority
KR
South Korea
Prior art keywords
items
item
computer
characteristic
cluster
Prior art date
Application number
KR1020050007142A
Other languages
English (en)
Other versions
KR20050077036A (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 KR20050077036A publication Critical patent/KR20050077036A/ko
Application granted granted Critical
Publication of KR101029403B1 publication Critical patent/KR101029403B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62BHAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
    • B62B5/00Accessories or details specially adapted for hand carts
    • B62B5/04Braking mechanisms; Locking devices against movement
    • B62B5/0485Braking mechanisms; Locking devices against movement by braking on the running surface, e.g. the tyre
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60BVEHICLE WHEELS; CASTORS; AXLES FOR WHEELS OR CASTORS; INCREASING WHEEL ADHESION
    • B60B33/00Castors in general; Anti-clogging castors
    • B60B33/04Castors in general; Anti-clogging castors adjustable, e.g. in height; linearly shifting castors
    • 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
    • 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/99934Query formulation, input preparation, or translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Library & Information Science (AREA)
  • Transportation (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 근거리 또는 원격 데이커베이스 시스템에 있는 데이터 아이템의 자동적인 클러스터화 및 디스플레이를 위한 시스템 및 방법론에 관한 것이다. 그러한 클러스터화는, 유형, 위치, 사람, 날짜, 시간, 사용자-정의 등과 같은 데이터 아이템과 관계된 특성을 기초로 할 수 있으며, 여기에서 초기 특성을 사용하여 제1 레벨의 클러스터화의 제1 레벨을 형성하고 후속의 특성은 자동적으로 결정되어 원하는 정보를 찾고 검색하는 것으로부터 최적의 클러스터화를 형성한다. 데이터를 구성하고 검색하기 위한 컴퓨터 인터페이스가 제공된다. 인터페이스는 적어도 두개의 클러스터 특성에 대한 아이템 분포를 결정하기 위한 특성 분석기 및 상기 아이템 분포에 부분적으로 기초하여 새로운 클러스터를 형성하는 오거나이저를 포함한다.성
Figure R1020050007142
질의, 클러스터, 오거나이저, 인터페이스, 아이템, 특성

Description

자동 질의 클러스터링{AUTOMATIC QUERY CLUSTERING}
도 1은 본 발명의 일 양상에 따른 클러스터링 시스템의 개략적인 블록도.
도 2는 본 발명의 일 양상에 따른 자동 질의 클러스터링 프로세스를 설명하는 순서도.
도 3-10은 본 발명의 일 양상에 따른 자동 질의 클러스터링을 위한 예시적인 사용자 인터페이스를 나타내는 도면.
도 11은 본 발명의 일 양상에 따른 적절한 오퍼레이팅 환경을 설명하는 개략적인 블록도.
도 12는 본 발명과 상호작용할 수 있는 샘플-컴퓨팅 환경의 개략적인 블록도.
<도면의 주요 부분에 대한 부호의 설명>
1114: 프로세싱 유닛
1116: 시스템 메모리
1126: 인터페이스
1124: 디스크 저장 장치
1142: 출력 어댑터
1138: 인터페이스 포트
1150: 통신 접속부
본 발명은 일반적으로 컴퓨터 시스템에 관한 것으로, 보다 상세하게는, 다양한 특성 클러스터와 관련된 아이템 분포를 분석하여, 정보 아이템을 더 작은 서브세트의 아이템으로 자동적으로 구성하는 시스템 및 방법에 관한 것이다.
데이터베이스 기반의 오퍼레이팅 시스템의 중요한 양상은, 수많은 아이템 특성을 포함할 수도 있는 질의(query)를 실행함으로써, 소정의 아이템을 신속하게 찾을 수 있는 능력이 있다는 것이다. 이것은, 예를 들어 소정의 정보를 검색하기 위하여 폴더 계층 내 파일 위치를 알아야 하는 이전 시스템과 비교된다. 질의 접근법이 매우 효과적인 반면, 새로운 시스템의 성공 여부는, 질의가 평균 사용자에게 단순하면서도 직관적이 되게 하는 사용자 인터페이스(UI)를 생성하는 능력에 일반적으로 좌우된다. 원시적인 폼에 있어서, 데이터베이스 질의(예를 들어, T-SQL 언어로 표현됨)는 전문 프로그래머가 처리하기도 어렵고, 최종 사용자가 처리하기는 일반적으로 부적절하다.
질의 문제점에 대한 한 가지 접근법은, 일부 사전정의된 질의에 직접적인 액세스를 제공하는 사용자 인터페이스 커맨드를 노출시키는 것이다. 예를 들어, 사전정의된 질의를 제공하여 디스크상의 모든 그림 파일(그림 라이브러리), 또는 모든 읽지않은 이메일을 발견할 수 있다. 더욱이, 시스템은 임의의 방식으로 그룹핑 을 제안할 수 있는데, 예를 들어, 그림은 그 날짜에 의해 자동적으로 그룹으로 될 수도 있다. 그러한 사전정의된 질의 패턴은 수많은 공통 시나리오에 유용하지만, 데이터베이스의 풀 파워를 언로크(unlock)할 정도로 충분히 일반적이지는 않다. 그림 예에 있어서, 모든 그림이 동일한 날짜에 획득되는 경우가 발생할 수도 있는데(아마도, 카메라 시계가 세팅되지 않았을 수도 있음), 이 경우 날짜에 의한 그룹핑은 소용이 없다. 그러한 상황은, 제3자 특성(애플리케이션 정의, 관리자 정의, 또는 사용자 정의)을 다루는 경우에 더욱 나빠진다. 이러한 특성은 오퍼레이팅 시스템의 크리에이터에게 알려지지 않기 때문에, 그러한 특성에 대한 사전정의된 질의를 설계하는 것은 거의 불가능할 수도 있다.
또다른 접근법은, 자연 언어처럼 보이는 문자 질의를 사용하여 데이터베이스에 질의하기 위한 능력을 사용자에게 제공하는 것이다. 그러한 질의는 데이터베이스의 관점에서는 일반적으로 충분하며, 사용자가 쉽게 이해할 수 있다. 그러나, 전체적으로 자유 형식을 취할 수 있는 자연 언어 질의가 허용되면, 각각의 경우에 대한 사용자의 의도를 정확하게 이해할 파서(parser)를 생성하는 것이 어렵다. 문법적인 제한이 일부 부과되는 경우, 사용자가, 때때로 청크(chunk) 표현으로 작동될 수 있는 구문상 정확한 질의를 형성하는 것은 더욱 어렵게 된다. 양쪽의 경우에 있어서, 질의 텍스트가 타이핑될 필요가 있다는 생각은, 수많은 사용자에게 호소될 수 없다. 어린아이, 비영어권 사용자, 및 키보드없는 디바이스(예를 들어, Tablet PC)의 사용자 모두는, 문자 타이핑이 갖는 문제점 모두를 가질 수 있다. 따라서, 정보를 찾고 검색하기 위하여 포인트 및 클릭 간소화를 구비하는 질의 인 터페이스에 대한 필요가 존재한다.
본 발명의 개요는, 본 발명의 하나 이상의 특징에 대한 기본적인 이해를 제공한다. 이 개요가 본 발명의 전반적인 개요인 것은 아니다. 본 발명의 핵심 또는 중요한 구성요소를 식별하거나, 본 발명의 사상을 설명하려는 것은 아니다. 이 개요의 유일한 목적은, 이후에 제공되는 상세한 설명에 대한 도입부로서, 간략화된 형태의 본 발명의 일부 개념을 제공하는 것이다.
본 발명은, 원하는 정보를, 쉽게 관리할 수 있는 정보 클러스터의 서브세트로 자동으로 검색하고 디스플레이하는 것에 관한 것이다. 파일 시스템 사용자 인터페이스에 있어서, 예를 들어 아이템을 리스트로서 디스플레이함으로써 대규모 세트의 아이템을 네비게시션하는 것은, 그러한 리스트로부터 원하는 정보를 찾고 검색하는 경우에 문제가 된다. 본 발명은, 아이템의 관련 특성에 의해 분류되는 대규모 세트의 아이템을 용이하게 네비게이션하는 개선된 포인트 및 클릭 인터페이스를 제공한다. 이러한 특성에 의해 클러스터된 아이템은, 폴더와 같은 방식(또는 다른 디스플레이 타입)으로 제공될 수 있으며, 상이하거나 후속하는 특성에 의해 자동 클러스터화를 수행하여, 쉽게 관리할 수 있는 클러스터의 서브세트로 질의 결과를 분리하거나 구성할 수도 있다. 다음으로, 이러한 서브세트를 선택하여, 원하는 정보를 검색하거나, 상이한 클러스터링 절차(예를 들면, 네스티드(nested) 클러스터화)를 수행할 수도 있다. 클러스터 온에 대한 가장 좋은 특성은, 다양한 특성 클러스터 내 아이템 분포를 분석함으로써 결정될 수 있다.
본 발명의 일 면은, 클러스터화 특성의 자동적인 선택을 제공할 수 있다. 그러한 특성을 결정하기 위하여, 다음과 같은 문제점이 설명될 수 있다: 아이템의 시작 세트, 및 그룹핑을 위해 사용될 수 있는 아이템 특성의 세트가 주어진 경우, 아이템 세트와 관련된 어떤 특성이 최적으로 클러스터된 결과를 제공하는가? 최적으로 클러스터된 결과에 의해, 본 발명은, 결과를 적당한 수의 클러스터로 균일하게 그룹핑한다. 따라서, 많은 수의 아이템을 갖는 많은 클러스터가 존재하거나, 많은 아이템을 갖는 많은 클러스터가 각각의 클러스터 내에 존재하는 경우는, 소정의 정보를 효과적으로 발견하여 검색하기 위해서는 전형적으로 바람직하지 않다.
상술한 문제점은, 클러스터화 스코어를 각각의 아이템 특성에 할당하고, 가장 높은 스코어를 갖는 특성을 선택함으로써 해결될 수 있다. 클러스터화 스코어는, 각각의 클러스터 내 아이템의 수를 함께 승산함으로써 계산될 수 있다. N개의 아이템인 경우, 클러스터화 스코어를 클러스터 사이즈의 곱으로서 계산하는 함수는, 그 아이템이 √N 클러스터로 분리되는 경우에 최대이며, 각각의 클러스트는 √N 아이템을 구비한다. 다른 분포인 경우, 스코어는, 그 분포가 이상적인 분포로부터 얼마나 떨어져 있는지를 측정하여 비교하기 위해 사용된다. 대안적인 스코어 함수의 예는, 예를 들어 이항 분포에 기초할 수 있다. 이러한 타입의 분포인 경우, 스코어 값은, N_total 아이템이 주어진 사이즈의 클러스터로 분리될 수 있는 수많은 방식을 제공하는 통계적인 해석을 갖는다. 사용자를 위한 최대 값을 갖는 클러스터화는, 대안적인 분포의 가장 큰 수를 완화시키는 것이다. 후속 클러스터화를 위해 사용될 수 있는 상이한 특성을 비교하기 위하여, 클러스터화 스코어는 모든 특성에 대해서 계산될 수 있는데, 그러한 계산은, 아이템의 리스트를 통한 단일 패스를 사용하여 쉽게 수행될 수 있다.
전술한 관련 목적을 수행하기 위하여, 본 발명의 특징이, 다음의 설명 및 첨부 도면을 참조하여 본 명세서에서 기술된다. 이러한 특징은 본 발명이 실현될 수도 있으며, 본 발명에 의해 커버되는 다양한 방식에서 나타난다. 본 발명의 다른 장점 및 새로운 특징은, 도면을 참조하여 기술하는 본 발명의 상세한 설명으로부터 명백해질 수도 있다.
본 발명은, 로컬 또는 원격 데이터베이스 시스템 내 데이터 아이템의 자동적인 클러스터화 및 디스플레이를 위한 시스템 및 방법에 관한 것이다. 그러한 클러스터화는, 타입, 위치, 사람, 날짜, 시간, 사용자 정의 등과 같은 데이터 아이템과 관련되는 특성에 기초할 수 있는데, 최초의 특성은 클러스터화의 제1 레벨을 형성하기 위해 채용될 수도 있으며, 후속 특성은, 소정의 정보를 발견 및 검색하는 것으로부터 최적의 클러스터화를 형성하기 위하여, 자동적으로 결정될 수도 있다. 일 면에 있어서, 데이터를 구성하고 검색하기 위한 컴퓨터화된 인터페이스가 제공된다. 그 인터페이스는, 적어도 두 개의 클러스터 특성을 위한 아이템 분포를 결정하는 특성 분석기와, 그 아이템 분석에 일부 기초하여 새로운 클러스터를 형성하는 오거나이저(organizer)를 포함한다.
본 출원에 사용된 용어, "컴포넌트", "분석기", "클러스터", "시스템" 등은, 컴퓨터 관련 엔티티, 하드웨어, 하드웨어와 소프트웨어의 조합, 또는 실행에서의 소프트웨어를 의미하기 위한 것이다. 예를 들어, 컴포넌트는, 프로세서에서 작동하는 프로세스, 프로세서, 오브젝트, 실행 가능, 실행 스레드(thread), 프로그램, 및/또는 컴퓨터가 될 수도 있지만, 이에 한정되는 것은 아니다. 예로서, 서버에서 작동하는 애플리케이션과 서버는 컴포넌트가 될 수 있다. 하나 이상의 컴포넌트가 프로세스 및/또는 실행 스레드에 존재할 수도 있으며, 컴포넌트는, 하나의 컴퓨터에 포함되거나, 두 개의 컴퓨터 사이에 분포될 수도 있다. 또한, 이러한 컴포넌트는, 다양한 데이터 구조가 저장된 컴퓨터 판독가능한 미디어에서 실행될 수 있다. 컴포넌트는, 하나 이상의 데이터 패킷(예를 들어, 로컬 시스템, 분산 시스템, 및/또는 싱글을 경유하는 다른 시스템을 구비하는 인터넷과 같은 네트워크를 가로지르는 또다른 컴포넌트와 상호작용하는 컴포넌트로부터의 데이터)을 구비하는 싱글에 따라 로컬 및/또는 원격 프로세스를 경유하여 통신할 수도 있다.
먼저, 도 1을 참조하여, 본 발명의 일 면에 따른 질의 클러스터링 시스템(100)을 설명한다. 시스템(100)은, 사용자 인터페이스(도시하지 않음)에서 디스플레이될 복수의 데이터 아이템(120)을 저장하는 데이터 저장부(110)를 포함한다. 그러한 아이템(120)은, 문서, 폴더, 이미지, 오디오 파일, 소스 코드, 및 이하에서 상세하게 설명되는 사용자 인터페이스에서 다양한 시각적 상태로 보일 수 있는 것 등을 포함할 수 있다. 또한, 아이템(120)은, 아이템의 타입(예를 들어, 이미지, 문서, 스프레드시트, 이진 등), 생성된 날짜, 아이템과 관련된 사람, 위치, 카테고리, 사용자 정의 특성 등과 같은 면을 설명하는 다양한 특성(예를 들어, 메타 데이터)과 관련된다. 집선기(aggregator)(130)는 아이템(120) 및 관련 특성을 모집하 고, 그 아이템을, 각각의 아이템 및 특성을 분석하는 특성 분석기(140)에 제공한다. 예를 들어, 그러한 분석은, 다양한 가능성이 있는 클러스터링 시나리오에 대한 스코어, 또는 아이템에 대한 잠재적인 그룹핑을 자동적으로 결정할 수 있다.
분석기(140)에 의한 분석에 기초하여, 클러스터 오거나이저(150)는, 사용자에게 새로운 클러스터(160)의 최적의 그룹핑을 제공한다. 클러스터(160)의 최적의 그룹핑은, 로컬 저장 매체, 원격 저장 매체, 또는 로컬과 저장의 조합을 포함할 수 있는 데이터 저장부(110)로부터 소정의 정보를 용이하게 발견 및 검색하게 한다.
자동 클러스터링의 일 예에서, 디폴트 탑 레벨 클러스터화는 아이템 유형에 의해 아이템을 그룹화한다. 사용자 연구에서, 아이템 유형에 따른 제1 레벨 그룹화는 유용하며, 사용자에 의해 용이하게 이해된다는 것을 알 수 있다. 그러나, 다른 특성에 의한 제2 레벨 클러스터화는 명백하지 않고, 알아내기 어렵다는 것을 알 수 있다. 따라서, 본 발명의 일 양상은 클러스터화 특성의 자동 선택에 관한 것이다. 논의될 수 있는 문제점은 다음과 같다: 아이템의 시작 세트로서, 그룹화를 위해 사용될 수 있는 아이템 특성들의 세트가 주어지면, 어느 특성이 최고의 클러스터화된 결과를 제공하는가? 최고의 또는 최적의 클러스터화된 결과에 따라서, 아이템을 적절한 수의 클러스터로 균일하게 그룹화하는 것을 목적으로 한다.
상기 목적은, 각 아이템 특성에 클러스터화 스코어를 할당하고, 최고의 스코어를 갖는 특성을 선택함으로써 달성될 수 있다. 클러스터화 스코어는, 다음 식에서와 같이, 각 클러스터에서 복수의 아이템들을 함께 승산함으로써 계산될 수 있다:
스코어=n_itemscluster1*n_itemscluster2*...
N 아이템에 있어서, 클러스터화 스코어를 클러스터 사이즈의 곱으로서 계산하는 함수는, 아이템이
Figure 112005004645255-pat00001
클러스터로 나누어질 때 최고값을 가지며, 각 클러스터는
Figure 112005004645255-pat00002
아이템을 갖는다. 다른 분포에 있어서, 스코어는 이 분포가 이상적인 또는 최적의 분포로부터 얼마나 떨어져 있는지를 측정하고 비교하기 위해 사용된다. 상기 스코어 함수는 테스트시에 적절한 결과를 생성하는 것임을 알 수 있다. 그러나, 활용된 스코어 함수는 일 예라는 것을 주지해야 한다. 예를 들어, 다른 함수들도 사용될 수 있고, 이 함수들은 이상적인 분포 외의 분포들에 대해 서로 다른 상대적 가중치를 제공한다.
상대적 스코어 함수의 예는 다음과 같은 이항 분포에 기초한다:
스코어 = (N_total)!/((n_itemscluster1)! * (n_itemscluster2)! * ...)
이 예에서, 스코어값은 통계적으로 해석되고, 이는 N_total 아이템이 주어진 사이즈의 클러스터들로 나뉠 수 있는 다수의 방법들을 제공한다. 사용자에 대해 최대값을 갖는 클러스터화는 가장 큰 수의 교체적 분포들을 감소시킨다. 후속 클러스터화에 대해 사용될 수 있는 서로 다른 특성들을 비교하기 위해서, 모든 특성들에 대한 클러스터화 스코어가 계산된다. 이는, 도 2에서 개략된 프로세스에서 보다 상세하게 기술된 바와 같이, 모든 아이템들의 리스트를 통과하는 하나의 것으로서 쉽게 달성될 수 있다.
도 2는 본 발명의 일 양상에 따른 자동 클러스터화 프로세스(200)를 도시하 는 흐름도이다. 설명의 명료성을 위해서, 이 방법론은 일련의 동작들로 도시 및 기술되지만, 본 발명은 이러한 동작의 순서로서 제한되는 것은 아니며, 본 발명에 따라서 일부 동작들은 서로 다른 순서로 발생할 수 있고, 및/또는 본 명세서에서 도시 및 설명된 것과는 다른 동작들과 동시에 발생할 수도 있다는 것이 이해되고 인식되어야 한다. 예를 들어, 당업자는, 방법론이 상태 도면에서와 같이 상호관련된 일련의 상태 또는 이벤트들로서 택일적으로 표현될 수 있다는 것을 이해 및 인식할 것이다. 또한, 모든 도시된 동작들이 본 발명에 따른 방법론을 구현하는데 요구되는 것은 아니다.
비교할 N 아이템 및 M 특성이 있다고 가정하면, 프로세스(200)는 다음과 같이 적용된다: 210에서는 M 해시 테이블을 초기화한다. 220에서는 N 아이템에 걸쳐 반복한다. 230에서는 각 아이템에 대해 M 특성에 걸쳐 반복한다. 240에서는 각 아이템 특성에 대해 해시값을 계산한다. 해시 함수는 이러한 방식으로 선택되고, 동일한 클러스터로 들어가는 2개의 특성값은 동일한 해시값을 반환한다. 예를 들어, 날짜/시간 특성을 클러스터화하는 경우, 해시 함수는 시간 부분을 무시하고 날짜 부분에만 기초할 것이다. 250에서, 해시 테이블은 복수의 클러스터 및 각 클러스터의 복수의 아이템을 추적하는데 사용된다. 260에서, 클러스터화 스코어는 이와 연관된 해시 테이블로부터의 데이터를 이용해서 각 특성에 대해 계산된다.
270에서, 리스트상의 특성들은 이들이 발생시키는 클러스터의 품질에 의해 주문된다. 복수의 아이템이 소정 임계값(예를 들어, 10 아이템 이상)을 초과한다면, 그 결과는 280의 리스트의 상부 특성을 이용해서 자동적으로 클러스터화될 것 이다. 또한, 다른 클러스터들은 택일적으로 다음 순서에 제공될 것이다. 예를 들어, 이메일 메시지 유형의 모든 아이템을 선택할 때, 상술한 프로세스는, 이메일 메시지에 대해 테스트하는 경우에, 메시지 송신기에 의해 자동적으로 그 결과들을 클러스터화한다. 그러나, 워드 문서 유형의 아이템을 선택하는 것은, 예를 들어, 클러스터는 최종 변경 날짜에 기초하여 생성되지만, C# 소스 파일 유형의 아이템은 이들의 (프로그래밍 프로젝트에 의한 그룹화에 상응하는) 폴더 봉쇄에 의해 그룹화된다. 상술한 접근법의 일반적인 특성은, 종래 및 제3당의 특성들의 평가 또한 포함하면서, 주어진 아이템 세트에 대해 가장 적절한 그룹화 알고리즘을 결정가능하게 한다.
도 3 내지 10은, 하나 이상의 자동 클러스터링 시스템 및 상술된 프로세스를 나타내는 사용자 인터페이스의 다양한 예를 도시한다. 이들 인터페이스는, 시스템(100)의 동작들을 활용하도록 다수의 구성가능한 크기, 형태, 컬러, 텍스트, 데이터 및 사운드를 포함하는 구성가능한 아이콘, 버튼, 슬라이더, 입력 박스, 선택 옵션, 메뉴, 탭, 등을 포함하는 하나 이상의 디스플레이 대상을 포함하는 디스플레이를 포함한다. 또한, 인터페이스는, 본 발명의 하나 이상의 양상을 조정하고 구성하기 위해 복수의 다른 입력들 또는 제어들을 포함할 수 있으며, 이는 아래에서 보다 상세하게 기술될 것이다. 이 인터페이스는 마우스, 키보드, 음성 입력, 웹 사이트, 원격 웹 서비스, 및/또는 인터페이스의 동작들 및 시스템(100)의 다른 양상들을 변화 또는 변경하도록 카메라 또는 비디오 입력과 같은 기타 장치로부터의 사용자 명령을 수신할 수 있다.
다음 설명은 본 발명의 다양한 양상을 기술하고, 도 3 내지 10에 도시된 양호한 인터페이스에 관련된다. 폴더 또는 다른 유형의 구조를 설계하는 경우, 설계자(애플리케이션 프로그래머 또는 말단 사용자)는 높은 자유도를 가지며, 이는 중요하지 않거나 거의 사용되지 않는 아이템들을 히든 폴더로 놓음으로써 상부 레벨 뷰로부터 숨길 수 있도록 한다. 유사하게, 특성 기반의 브라우저를 생성하는 경우, 클러스터링 알고리즘이 높은 스코어를 결정하였더라도, 가치가 없거나, 또는 아주 유용하지는 않은 특성들을 숨기기 위한 다양한 메카니즘이 제공될 수 있다.
특성 업그레이딩/다운그레이딩은 서로 다른 레벨에서 고려될 수 있다. 애플리케이션 레벨에서, 애플리케이션 설계자는 어느 특성이 사용자 인터페이스에서 나타날 주요 특성인지, 부수적 또는 보조적인 특성인지를 지시할 수 있다. 이는 통상적으로 각 아이템 유형에 대해 개별적으로 정의된다. 상술된 자동 질문 클러스터링은 일반적으로 주요 특성들을 고려한 것이다. 또한, 각 아이템 유형은, 모든 아이템에 대해 공통적인 특성들에 대한 특성 매핑을 정의해야 한다. 예를 들어, 일반적인 날짜 특성은 사진에 대해서 찍은 날짜로 매핑될 수 있지만, 문서에 대해서는 최종 변경 날짜로서 매핑될 수 있다. 유사하게, 피플 영역은 문서에 대해 저자일 수 있지만, 이메일에서는 발신자 등이 될 수 있다.
일반적으로, 사용자는 어느 특성이 이들 각각의 데이터를 보는데 최고로 적합한지를 결정할 수 있어야 한다. 명확한 UI는 소정의 특정 특성을 진척 및 강등시킬 수 있지만, 본 발명은 또한 사용자 행동으로부터 (예를 들어, 학습 알고리즘을 통해) 함축적으로 연구될 수도 있다. 각 특성은, 사용자가 다른 특성 클러스터 화로부터 또 다른 특성 클러스터화로 전환하는 경우 증가하게 되는 가중치를 가지며, 이는 스위치 아웃될 때 감소한다. (어느 특성이 클러스터 온 될지 결정하는데 사용되는) 각 특성의 최종 레이팅은 특성 가중치와 (상술한 식에 따라 계산된) 클러스터화 스코어의 곱이다.
상술한 바와 같이, 사용자는 일반적으로 플랫 리스트를 통한 아이템 유형 클러스터들의 계층적 조직화를 선호한다. 이 계층은 일부 유형의 주문에 따르고, 요청된 아이템 유형 값을 더 쉽게 찾을 수 있게 한다. 일부 서로 다른 특성값을 더 갖는 소정의 특성에 대해서도 이와 동일해야 한다. 특성값을 계층적 뷰로 조직화하기 위한 특정한 양호한 기술들을 다음에서 설명한다. 정규 파일의 경우에, 아이템 유형은 파일 확장자에 의해 정의된다. 현재의 뷰어 프로그램에 의해 정의될 수 있는 바와 같이, 파일 유형에 대해 사용자에게 친숙한 이름이 사용될 수 있다. 동일한 친숙한 이름으로 나타나는 서로 다른 파일 확장자는 일반적으로 이미 함께 그룹화되어 있다(예를 들어, .h 및 .hxx 둘 다는 C/C++ 헤더 파일로 지칭된다). 또한, 계층의 하나 이상의 레벨은 유사한 유형의 모든 파일들을 그룹화함으로써 도입된다. 포토유형에서는, 문서 파일, 사진 파일, 음악 및 비디오 파일, 프로그래밍 파일, 및 기타 파일들의 메타그룹이 고려되고 처리되었다. 또한, 피플 메타그룹은 클래스 대상으로서 처리될 수 있다.
예를 들어, 아이템 유형=피플의 리스트는, 주어진 사람에게 도달하는데 사용될 수 있는 통신 채널의 유형으로써 더 작은 섹션들로 나뉠 수 있다. 이는, 예를 들어, 우편, 전화, 즉석 메시지, 또는 이메일로서 도달될 수 있는 피플 그룹들을 포함한다. 이들 각 그룹은 원한다면 더 나뉠 수 있다. 예를 들어, 회사 환경에서, 이메일 어드레스는 (회사 어드레스 북에서 나온) 내부 및 (보통 사용자의 개인적 접속 리스트로부터의) 외부 주소로 나뉠 수 있다. 일부 사람들은 다중 통신 방법을 가질 수 있으며, 이 경우, 사람들은 다중 클러스터에서 마치게 된다. 종래의 폴더와는 다르게, 특성 클러스터는 아이템이 하나의 위치에만 있다는 제한을 갖지 않는다.
폴더는 아이템의 사용자가 생성 그룹화를 나타낸다. 시간이 지나면, 아이템의 특성 기반 클러스터링이 폴더에 대한 필요성 및 중요성을 감소시킬 것이 기대되지만, 폴더는 여전히 지원될 수 있다. 폴더는 일반적으로 계층적으로 조직화되고, 폴더 클러스터는 이 계층과 유사해야 한다. 폴더 계층의 일 단점은, 폴더가 프로그램 파일 또는 윈도우 디렉토리와 같은 사용자에게 관심이 적은 다수의 디렉토리를 갖는다는 것이다. 기존의 폴더를 이용하여 아이템을 클러스터로 조직화할 때, 명백한 개선점은 일부 아이템이 보여지는 폴더 계층만을 디스플레이한다는 것이다.
도 3은 (볼륨 C:)에 프로그래밍 파일을 포함하는 샘플 인터페이스(300)를 도시한다. 윈도우 익스플로어에서, 예를 들어, 뷰는 전체 폴더 구조를 포함한다. 포토유형에서, "카테고리"에 의한 클러스터링 파일은 실제로 선택된 아이템 세트(전체 폴더 트리의 서브셋)에 관련된 폴더만을 포함한다.
도 4는 폴더에 의한 클러스터링을 나타내는 인터페이스(400)를 도시한다. 폴더 계층의 또 다른 양상은 물리적 위치(디스크, 또는 외부 공유) 와 논리적 위치(폴더 계층에서의 배치)의 개념을 결합시킨 것이다. 논리적 그룹이 여러개의 물리 적 위치에 걸치도록 생성되기 때문에, 물리적 위치는 폴더 특성으로부터 분리될 수 있고, 따라서, 현재 폴더는 물리적 위치에 관계없이 동일한 이름을 갖는다. 상기에서 이해되는 것과 같이, 위치에 의한 그룹화도 제공될 수 있다.
도 5는 2개의 드라이브(볼륨C: 및 볼륨D:)에 존재하는 폴더(VSS)의 인터페이스(500)의 예를 도시한다. "카테고리" VSS에서 검색하는 경우, 인터페이스(500)는 510에서 물리적 위치로부터의 폴더 콘텐츠를 결합한다. 이 기능성은, 2 이상의 폴더들이 동일한 이름을 갖는 경우, 이는 고의적으로 발생한 것이라는 가정에 기초한다.
그 경우가 아니라면, 파일은 도 6에 도시한 사용자 인터페이스(600)에서의 위치 특성(610)에 의해 쉽게 분리될 수 있다.
도 7은 날짜 특성에 의한 클러스터링을 도시하는 인터페이스(700)이다. 날짜 및 시간에 의한 클러스터링은 자연적 연/월/일/시/분 계층을 갖는다. 그러나, 현재(now)에 상대적인 상대 시간이라는 개념도 있다. 양 측의 개념 모두가 중요하다고 여겨진다. 날짜 클러스터는, 오늘, 어제 등으로부터의 아이템을 포함하는 다수의 소정의 질의(동적 그룹)를 포함한다.
한 가지 흥미로운 아이템 분류는 아이템들을 사람들과 연관짓는 것이다. 이러한 연관, 예를 들어, 이메일 메시지 또는 첨부물의 송신인 또는 수신인(sender or recipent), 다큐먼트의 저자(author), 사진에 묘사된 개인(person pictured) 등을 생성하는데 이용될 수 있는 많은 아이템 특성이 존재한다. 사람들에 의한 클러스터링 아이템은, 사람들 계층의 임의의 프리젠테이션에 의해 전달되는 사회적 의 미때문에 특정한 챌린지(challenge)를 내포할 수 있다. 예를 들어, 사람들은 Internal or External Contacts와 같은 일부 외형적 속성에 의해 그룹화될 수 있지만, 이러한 그룹들중 일부는 여전히 너무 커서 효율적으로 처리되지 못할 수 있다. 예를 들어, 샘플 이메일 메시지에 의해 참조되는 인터널 컨택트의 리스트는 약 5,000개의 이름을 갖고 있다.
이 리스트는 알파벳 순서로 순서화되거나 (사전처럼) 첫 글자에 의해 그룹화될 수 있지만, 긴 임의의 리스트는 일반적으로 이해하기 어렵다. 사용자에게 중요한 사람들의 이름은, 그 리스트에 우연히 존재하는 잘 알려져 있지 않은 사람들의 이름에 의해 잘 보이지 않게 된다. 대부분의 중요한 컨택트는, 가장 흔하게 그리고 가장 최근에 사용자에 의해 이메일된 것이거나, 사용자의 디스크 등 상의 다큐먼트의 공동 저자 또는 저자이라고 가정할 수 있다. 일부 가중 분석을 이용함으로써, 사용자에게 상대적인 중요도에 의해 순서화된 모든 사람들의 리스트를 구성할 수 있다.
그러나, 사람들의 계산된 중요도에 의해 순서화된 사람들의 긴 리스트는 만족할만한 해결책이 아닐 수도 있다. 계산된 순서는, 리스트의 중간 또는 밑부분 근처에서 이름을 찾는 것이 여전히 어려운 한편, 우연한 것일 수도 있으며 중요도의 느낌을 정확하게 반영하지 못할 수도 있다. 중요 정보를 이용하여 어느 이름이 탑 레벨 상에 먼저 표시되어야 하는지를 선택해야 하지만, 특정 이름을 보다 쉽게 검색하고 사람들의 상대적 중요도에 대한 가능성있는 제시를 경감하도록 이름을 알파벳 순서로 순서화해야한다.
도 8은 관련된 사람들을 보기 위한 반 축약(semi-collapsed) 리스트를 나타내는 인터페이스(800)의 일예이다. 이것은, 장의 완전히 알파벳 순서로 순서화된 단일 리스트로서 사용자에게 표시되는 사람들 리스트의 계층 확장을 포함할 수 있다. 그 리스트가 먼저 표시되면, 이것은 알파벳으로 순서화된 최상위 일부(10 내지 20)인 가장 중요한 이름들 만을 포함하고 있다. 이것은 간편한 원 클릭으로 가장 관련된 사람들에 대한 정보를 액세스하는 것을 가능하게 해준다. 동시에, 최상위 이름들은 사전 북마크로서 기능하여 각 이름을 확장하여 제2 레벨 또는 다른 제3의 레벨의 이름들을 보여줄 수 있다.
이것은, 모든 확장된 이름들이 제1 레벨 이름들에 대한 피어(peer)로서 최상위 레벨상에 보이는 점을 제외하고 계층 확장과 다소 유사하다. 후자는 한 사람이 다른 사람 위에 있다는 내포를 경감하도록 제공되며, 이것은 예를 들어 계측 확장이 조직 계층을 따르지 않는다면 부정적으로 인식될 수 있다. 리스트 확장은 중요 리스트의 밑부분에서의 이름이 보일 때까지 계속될 수 있다. 그러나, 그 확장은 리스트의 선택된 영역 상에서 실행되기 때문에, 가시적 이름들의 전체 수는 제한될 수 있으며, 전형적으로 단지 수십개로 제한된다. 임의의 주어진 시간에, 가시적 이름들은 알파벳 순서로 정렬되어 단일 리스트로서 제시된다. 이것은 요청된 이름을 검색하는 것을 쉽게 한다. 반 축약 리스트가 단지 사람들이 아니라 많은 상이한 분류에 적용될 수 있다는 점에 주목하길 바란다. 일부 명백한 분류는 키워드 리스트 (카테고리), 및 사전 (백과사전) 엔트리 리스트를 포함한다.
기존의 엔트리를 카타로그 인덱스로서 이용하는 사상은 일반적이다. 실제 로, 이것은 인쇄된 사전을 구성하는 표준 방식이다. 그러나, 표준 사전 방식에서, 인덱스는 매 페이지의 시작 및 끝에 위치하여 그 페이지의 콘텐츠를 가리킨다. 이것은 연속하는 인덱스 간의 "constant space"라 설명될 수 있다. 인덱스용으로 선택된 단어는 결코 특정한 것이 아니며, 단지 페이지의 시작 또는 끝에 있는 것이다.
본 발명에서, 인덱스용으로 선택된 이름은 중요도 리스트의 최상위에 있는 이름이다. 게다가, 이 이름은, 그 자체로 엔트리로서, 클릭함으로써 선택되는 이름이다. 이것은, 그 엔트리를 포함하는 페이지를 스크롤하기 보다는 가장 흔한 엔트리에 대한 원클릭 액세스를 제공한다. 반면에, 인덱스 간의 제2 순서 엔트리의 변수가 존재할 수 있다. 제2 순서 엔트리의 수가 충분히 크면, 제3 순서 인덱스를 생성할 수 있으며, 계속 이러한 방식으로 진행될 수 있다.
도 9는 반 축약 그룹(900)을 도시하는 한편, 그룹(1000)은 그룹(900)으로부터 선택될 때 확장된 상태로 도 10에 도시된다. 또한, 도 10은 1010에서 반 축약 상태에 있는 그룹(1000)을 도시한다. 클러스터(또는 아이템을 함께 그룹화하기 위한 다른 방식)를 제시할 때, 또다른 의문점은 클러스터들이 스크린 상에 시각화되는 방식이다. 그룹을 시각화하는 전형적인 방식은 그룹의 일부 리프리젠테이션을 전체(축약된 뷰)로서 또는 그 그룹에서의 모든 아이템들의 컬렉션(확장된 뷰)으로서 보여주는 것이다. 표준 윈도우 리프리젠테이션에서, 폴더 리스트가 왼쪽에 그리고 아이템 리스트가 오른쪽에 있으면, 현재 가시적인 폴더를 위한 확장된 뷰 및 다른 모든 폴더를 위한 축약 뷰라고 생각할 수 있다. 현재 폴더의 서브폴더는, 이 서브폴더의 섬네일이 그 내부의 일부 아이템들의 콜라주를 포함하더라도, 전형적으로 축약된 뷰로서 도시된다. 때때로, 하나 초과의 확장된 그룹은, 동시에 보일 수 있거나 아이템들이 스택으로 그룹화되어 도시될 때 보일 수 있다.
그룹화를 허용하며 다중 그룹을 동시에 표시할 수 있는 파일 뷰어에서, 전형적으로 그룹은 "축약가능"(collapsible)하며, 여기서 그룹의 콘텐츠가 개별적으로 도시되거나 숨겨질 수 있다. 그럼에도 불구하고, 그 그룹은 여전히 2개의 상태로 존재할 수 있으며, 확장된 상태에 의해 그룹에서의 개별 아이템들과 상호작용이 가능하다. 큰 그룹의 경우, 하나의 그룹을 확장하는 것은 다른 모든 것들의 가시성을 모호하게 하며, 이것은 다중 그룹 뷰를 유용하지 못하게 한다.
본 발명에서는, 제3 상태가 도입되어 그룹의 일부 제1 아이템을 도시하며 이것은 900에서 그룹의 "스퀴즈"(squeezed) 또는 반축약 상태라 칭한다. 단일 버튼을 반복적으로 클릭하여 1000에서 확장된 상태 간에, 1010에서 스퀴즈 상태 간에, 그리고 900에서 축약된 상태 간에 사이클링할 수 있다. 인터페이스(900)는 2개의 반 축약 그룹 및 910에서 완전히 오픈되기에 충분히 작은 제3 그룹을 도시하는 파일 뷰어(File Viewer)이다.
스퀴즈된 상태의 한 가지 이점은, 그룹이 스크린 상에서 차지하는 영역이 오픈 상태보다 적지만 클로즈 상태보다 그 그룹에 관한 더 많은 정보를 사용자에게 제공한다는 것이다. 이에 의해 더 많은 그룹이 보일 수 있는 한편 그룹의 콘텐츠에 관한 상세 정보를 여전히 제공하게 된다. 사용자는 아이템의 큰 세트에서 그룹들을 보다 빠르게 평가할 수 있으며, 이것은 아이템의 큰 그룹의 조작 및 보다 효 율적인 평가를 제공하게 된다.
두번째 이점은, 축약된 상태가 일부 가시적 아이템에 대하여 여전히 직접적인 원클릭 액세스를 제공한다는 것이다. 가시적 아이템이 사용자에 대한 중요도에 의해 선택된다고 가정하면(예를 들어, 가장 최근, 또는 과거에 액세스한 가장 빈번한 정도), 가시적 아이템은 사용자가 찾을 가능성이 가장 높은 아이템이다. 예를 들어, 누군가에게 최근에 전송된 사진을 인쇄하려면, 사용자는 사진(Picture) 그룹으로 스크롤할 수 있으며 파일은 리스트의 최상위 상에 바로 위치해야 한다. 이것은 현재의 뷰어와 비교될 수 있으며, 사진 섬네일이 폴더 아이콘에 표시되어 있으면, 사용자는 그 폴더를 오픈하여 파일에 액세스할 필요가 있다. 최종적으로, 스퀴즈된 뷰는 축약된 뷰와 확장된 뷰 간의 대략 중간 상태에 있으며, 이것은 개별적인 아이템에 대한 액세스와 함께 전체적으로 그룹 조작 및 뷰를 균형맞추려 한다.
반 축약 뷰는 (그룹 내의 모든 아이템을 다룰 필요 없이) 그룹으로부터 선택된 아이템을 액세스하는 편리한 방식을 제공하기 때문에, 사용자에게는 어느 아이템이 반 축약 뷰에 도이도록 하고 얼마나 많은 아이템들들 보이게 할 것인지에 대한 제어가 주어질 수 있다. 한 방안에 있어서, 아이테들은 소정의 기준에 의해 정렬될 수 있으며 이러한 아이템들은 정렬된 리스트의 최상위로부터 도시된다. 사용자는 정렬을 위한 기준 및 도시된 요소들의 수를 변경할 수 있다. 예를 들어, 다큐먼트를 정렬하는 편리하고도 유용한 방식은 최종 수정 날짜에 의한 것이다. 반 축약 뷰는 디폴트에 의해 리스트로부터 최상위 n개의 가장 최근의 다큐먼트를 나타낼 수 있으며, 그 다음 n개를 나타낼 버튼을 가질 수 있다. 다른 방안은 나머지 다큐먼트를 오늘, 어제, 지난주, 지난달 등으로 나타내는 버튼을 갖는 것이다. 전형적으로, 이러한 모든 경우에 있어서, 나타낸 아이템들의 순서는 가시적 아이템들을 제한하는데 사용되는 순서와 동일한 것이다. 그러나, 또다른 방안은, 사용자에게 가장 편리한 방식이지만 아이템을 선택하기 위한 기준과 동일할 필요는 없는 방식으로 아이템들을 순서화하는 것이다. 예를 들어, 사람들은, 선택 순서가 중요도라 하더라도, 일반적으로 알파벳 순서로 정렬된다.
스퀴즈된 그룹에서의 아이템들은 반 축약 리스트로서 표시될 수 있다. 반 축약 리스트는 선택적으로 확장되어 더 많은 아이템을 나타낼 수 있다 (다른 방법으로, 전체 그룹을 확장하여 모든 아이템을 확장할 수도 있다). 반 축약 리스트 뷰는, 아이템들의 임의의 타입에 대하여 이용될 수 있으며 정렬 순서가 선택 순서와 다를 때 이용될 수 있다(정렬 및 선택 순서가 동일하다면 반 확장 리스트를 이용할 수도 있다). 일 예로는 알파벳 순서로 정렬된 선호하는 노래 리스트가 있다. 사용자는 그 리스트의 일부를 확장하여 덜 유명한 노래들을 나타낼 수 있지만, 보이게 되는 그 다음 노래는 자신의 유명도에 의해 선택될 것이다.
특성 계층을 생성할 때, 보다 높은 레벨의 클러스터는 전형적으로 모든 네스트형 계층의 콘텐츠를 포함한다. 예를 들어, 다큐먼트(Document) 클러스터는 워드 다큐먼트(Word Document) 엑셀 워크시트(Excel Worksheets) 등을 모두 포함한다. 유사하게, 2003년도 아이템은 매 달의 아이템을 포함하며, 이것은 매 일을 포함한다. 임의의 컨테이너(클러스터 또는 폴더)는 단일 엔티티로서 조작되는 독립형 아이템, 또는 단지 뷰를 구성하는데 사용되는 아이템 그룹으로서 고려될 수 있다.
아이템 브라우저의 주 기능은 요청된 (복수의) 아이템을 쉽게 찾을 수 있도록 하는 것이다. 그러나, 특성 클러스터를 아래로 가로지르는 것은 그 방식중 하나이다. 특성 계층을 빠르게 직진하기 보다는 일부 관련된 아이템으로 이동하는 수평 탐색을 허용함으로써 브라우징 기능성이 크게 향상될 수 있다. 게다가, 브라우저는 임의의 사용자 규정 방식으로 아이템을 구성하는 것을 허용해야 한다. 아이템을 탐색할 때, 사용자는 흔히 아이템들을 함께 관련어 작업한다. 예를 들어, 다큐먼트가 최종 편집된 정확한 날짜를 알 수 없지만, 사용자는 그 날짜가 중요한 회의 바로 전이었음을 기억할 수 있다. 회의 자체는 찾기 쉬울 수 있으며, 여기서 가장 관련성있는 질의는 동일 날짜로부터 모든 다큐먼트를 나타내는 것이다.
도 11을 참조하면, 본 발명의 다양한 양태를 구현하기 위한 예시적인 환경(1110)은 컴퓨터(1112)를 포함한다. 컴퓨터(1112)는 처리 유닛(1114), 시스템 메모리(1116), 및 시스템 버스(1118)를 포함한다. 시스템 버스(1118)는, 한정되는 것은 아니지만, 시스템 메모리(1116)를 포함하는 시스템 컴포넌트를 프로세싱 유닛(1114)에 연결한다. 프로세싱 유닛(1114)은 임의의 다양한 가용의 프로세서일 수 있다. 듀얼 마이크로프로세서 및 기타 멀티프로세서 아키텍쳐 또한 프로세싱 유닛(1114)으로서 사용될 수 있다.
시스템 버스(1118)는, 16-비트 버스, ISA(Industrial Standard Architectur), MSA(Micro-Channel Architecture), EISA(Extended ISA), IDE(Intelligent Drive Electronics), VLB(VESA Local Bus), PCI(Peripheral Component Interconnect), USB(Univeral Serial Bus), AGP(Advanced Graphics Port), PCMCIA(Personal Computer Memory Card International Association) bus, 및 SCSI(Small Computer Systems Interface)를 포함하는 임의의 다양한 가용의 버스 아키텍처를 사용하는 로컬 버스 및/또는 주변 버스 또는 외부 버스, 메모리 버스 또는 메모리 컨트롤러를 포함하는 임의의 몇가지 유형의 버스 아키텍쳐(들)일 수 있지만, 이에 한정되는 것은 아니다.
시스템 메모리(1116)는 휘발성 메모리(1120) 및 비휘발성 메모리(1122)를 포함한다. 예를 들면, 시동동안, 컴퓨터 내의 구성요소들 간에 정보를 전송송하기 위한 기본 루틴을 포함하는 기본 입력/출력 시스템(BIOS)은 비휘발성 메모리(1122)에 저장된다. 예를 들면, 비휘발성 메모리(1122)는 ROM(read only memory), PROM(programmable ROM), EPROM(electrically programmable ROM), EEPROM(electrically erasable ROM), 또는 플래시 메모리를 포함할 수 있지만, 이에 한정되는 것은 아니다. 비휘발성 메모리(1120)는 외부 캐시 메모리로서 역할을 하는 RAM(random access memory)을 포함한다. 예를 들면, RAM은 SRAM(synchronous RAM), DRAM(dynamic RAM), SDRAM(synchronous DRAM), DDR SDRAM(double data rate SDRAM), ESDRAM(enhanced SDRAM), SLDRAM(Synchlink DRAM), 및 DRRAM(direct Rambus RAM) 등의 많은 형태로 이용가능하지만, 이에 한정되는 것은 아니다.
컴퓨터(1112)는 또한 분리형/비분리형, 휘발성/비휘발성 컴퓨터 저장 매체를 포함한다. 도 11은, 예를 들면, 디스크 저장장치(1124)를 도시한다. 디스크 저장장치(1124)는 자기 디스크 드라이브, 플로피 디스크 드라이브, 테이프 드라이브, 째즈 드라이브, 짚(Zip) 드라이브, LS-100 드라이브, 플래시 메모리 카드, 또는 메 모리 스틱을 포함하지만, 이에 한정되는 것은 아니다. 또한, 디스크 저장장치(1124)는 개별적으로, 또는 컴팩트 디스크 ROM 디바이스(CD-ROM), CD-R 드라이브(CD recordable drive), CD-RW 드라이브(CD rewirtable drive) 또는 DVD-ROM 드라이브(digital versatile disk ROM drive) 등과 같은 광학 디스크 드라이브를 포함하는 다른 저장 매체와 결합하여 포함할 수 있지만, 이에 한정되는 것은 아니다. 시스템 버스(1118)에 디스크 저장 디바이스(1124)를 용이하게 접속하기 위해, 인터페이스(1126)과 같은 분리형 또는 비분리형 인터페이스가 전형적으로 사용될 수 있다.
도 11은 적당한 오퍼레이팅 환경(1110)에서 설명되는 기본 컴퓨터 리소스 및 사용자들 간의 중간자로서 역할을 하는 소프트웨어를 설명한다는 것이 이해될 것이다. 그러한 소프트웨어는 오프레이팅 시스템(1128)을 포함한다. 디스크 저장장치(1124) 상에 저장될 수 있는 오퍼레이팅 시스템(1128)은 컴퓨터 시스템(1112)의 리소스를 제어하고 할당하는 역할을 한다. 시스템 애플리케이션(1130)은 시스템 메모리(1116)에 또는 디스크 저장장치(1124) 상에 저장된 프로그램 데이터(1134) 및 프로그램 모듈(1132)를 통하여 오퍼레이팅 시스템(1128)에 의해 리소스의 관리를 이용한다. 본 발명은 다양한 오퍼레이팅 시스템 또는 오퍼레이팅 시스템들의 조합으로 구현될 수 있다는 것이 이해될 것이다.
사용자는 입력 디바이스(들)(1136)를 통해 컴퓨터(1112)에 커맨드 또는 정보를 입력한다. 입력 디바이스(1136)는, 마우스, 크랙볼, 스타일러스, 터치 패드, 키보드, 마이크로폰, 조이스틱, 게임 패드, 위성 안테나, 스캐너, TV 튜너 카드, 디지털 카메라, 디지털 비디오 카메라, 웹 카메라 등과 같은 포인팅 디바이스를 포함하지만, 이에 한정되는 것은 아니다. 이들 입력 디바이스 및 다른 입력 디바이스는 인터페이스 포트(들)(1138)를 경유하여 시스템 버스(1118)를 통해 프로세싱 유닛(1114)에 접속한다. 인터페이스 포트(들)(1138)는, 예를 들면, 시리얼 포트, 병렬 포트, 게임 포트, 및 USB(univeral serial bus)를 포함한다. 출력 디바이스(들)(1140)는 입력 디바이스(들)(1136)로서 몇몇 동일 타입의 포트를 사용한다. 따라서, 예를 들면, USB 포트를 사용하여 컴퓨터(1112)에 입력할 수 있고 컴퓨터(1112)로부터 출력 디바이스(1140)으로 정보를 출력할 수 있다. 출력 어댑터(1142)는, 특정 어댑터를 요구하는 다른 출력 디바이스(1140) 중에서 모니터, 스피커, 및 프린터 같은 몇몇 출력 디바이스(1140)가 존재한다는 것을 설명하기 위해 제공된다. 출력 어댑터(1142)는, 예를 들면, 출력 디바이스(1140)과 시스템 버스(1118) 간의 접속 수단을 제공하는 비디오 및 사운드 카드를 포함하지만, 이에 한정되는 것은 아니다. 원격 컴퓨터(들)(1144)와 같은 다른 디바이스들 및/또는 디바이스의 시스템은 입력 및 출력 능력 모두를 제공한다.
컴퓨터(1112)는 원격 컴퓨터(들)(1144)와 같은 하나 이상의 원격 컴퓨터와의 논리적 접속을 이용하여 네트워킹 환경에서 동작할 수 있다. 원격 컴퓨터(들)(1144)는 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 워크스테이션, 마이크로프로세서 기반 어플라이언스, 피어(peer) 디바이스 또는 기타 공통 네트워크 노드 등일 수 있고, 전형적으로 컴퓨터(1112)와 관련하여 설명되는 많은 또는 모든 구성요소를 포함한다. 설명을 간략히 하기 위해, 원격 컴퓨터(들)(1144)로 단지 하나의 메모리 저장 장치(1146)가 도시되어 있다. 원격 컴퓨터(들)(1144)는 네트워크 인터페이스(1148)를 통하여 컴퓨터(1112)에 논리적으로 접속된 다음 통신 접속부(1150)를 경유하여 물리적으로 접속된다. 네트워크 인터페이스(1148)는 근거리 네트워크(LAN) 및 원거리 네트워크(WAN)와 같은 통신 네트워크를 포함한다. LAN 기술은 FDDI(Fiber Distributed Data Interface), CDDI(Copper Distributed Data Interface), Ethernet/IEEE 1102.3, Token Ring/IEEE 1102.5 등을 포함한다. WAN 기술은 지점간(point-to-point) 링크, 회로 스위칭 네트워크형 ISDN(Integrated Services Digital Networks) 및 그 변형, 패킷 스위칭 네트워크, 및 DSL(Digital Subscriber Lines)을 포함하지만, 이에 한정되는 것은 아니다.
통신 접속부(들)(1150)는 네트워크 인터페이스(1148)를 버스(1118)에 접속하기 위해 사용되는 하드웨어/소프트웨어를 말한다. 통신 접속부(1150)를 컴퓨터(1112) 내부에 예시적으로 도시하였지만, 컴퓨터(1112) 외부에 또한 있을 수 있다. 네트워크 인터페이스(1148)에 접속하기 위해 필요한 하드웨어/소프트웨어는, 단지 예시적 목적으로, 레귤러 전화 그레이드 모뎀, 케이블 모뎀 및 DSL 모뎀, ISDN 어댑터, 및 이더넷 카드를 포함하는 모뎀과 같은 내부 및 외부 기술을 포함한다.
도 12는 본 발명과 상호 작용할 수 있는 샘플의 컴퓨팅 환경(1200)의 개략도이다. 시스템(1200)은 하나 이상의 클라이언트(들)(1210)를 포함한다. 클라이언트(1210)는 하드웨어 및/또는 소프트웨어(예를 들면, 스레드(threads), 프로세스, 컴퓨팅 디바이스)일 수 있다. 시스템(1200)은 또한 하나 이상의 서버(1230)를 포함한다. 서버(들)(1230)는 또한 하드웨어 및/또는 소프트웨어(예를 들면, 스레드, 프로세스, 컴퓨팅 디바이스)일 수 있다. 서버(1230)는, 예를 들면, 본 발명을 사용함으로써 스레드를 하우징하여 변환을 수행할 수 있다. 클라이언트(1210)와 서버(1230) 간의 하나의 가능한 통신은 두개 이상의 컴퓨터 프로세스들 간에 송신되도록 적응되는 데이터 패킷의 형태일 수 있다. 시스템(1200)은 클라이언트(들)(1210)과 서버(들)(1230) 간의 통신을 용이하게 하도록 사용될 수 있는 통신 프레임워크(1250)를 포함한다. 클라이언트(1210)는 클라이언트(들)(1210)에 국부적으로 정보를 저장하도록 사용될 수 있는 하나 이상의 클라이어트 데이터 저장장치(들)(1260)에 동작적으로 접속된다. 유사하게, 서버(들)(1230)은 서버(1230)에 국부적으로 정보를 저장하도록 사용될 수 있는 하나 이상의 서버 데이터 저장장치(들)(1240)에 동작적으로 접속된다.
전술한 것은 본 발명의 예를 포함한다. 물론, 본 발명을 설명하기 위한 목적용의 방법론 또는 컴포넌트의 모든 인식가능한 조합을 설명하는 것을 가능하지 않지만, 당업자라면 본 발명의 많은 추가의 조합 및 치환이 가능하다는 것을 인식할 수 있을 것이다. 따라서, 본 발명은 첨부된 청구범위의 사상 및 범위 내에 있는 그러한 모든 대체, 수정 및 변형예를 포함하는 것을 의도로 한다. 또한, 용어 "구비한다(include)"가 상세한 설명 및 청구범위에서 사용되는 한도내에서, 청구범위에서 과도(transitional) 단어로서 사용될 때 "포함한다(comprising)"가 해석되는 바와 같이 용어 "포함한다"와 유사한 방식으로 포괄되도록 하는 것을 의도한다.
본 발명에 따라, 원하는 정보를, 쉽게 관리할 수 있는 정보 클러스터의 서브 세트로 자동으로 검색하고 디스플레이할 수 있다.

Claims (28)

  1. 데이터 프레젠테이션(presentation)용 컴퓨터화 인터페이스를 구현하기 위한 컴퓨터 구현 가능 명령어들을 저장한 컴퓨터 판독 가능 기록 매체로서,
    상기 컴퓨터화 인터페이스는,
    복수의 특성(property) 중 제1 특성에 부분적으로 기초하여 아이템 분포를 결정하고 복수의 제1 레벨 클러스터를 형성하며, 상기 복수의 특성 중 각각의 다른 특성에 대하여 각각의 아이템 분포를 자동적으로 결정하며, 상기 각각의 아이템 분포에 기초하여 각각의 다른 특성에 대하여 클러스터화 스코어를 계산하며, 최고의 클러스터화 스코어를 갖는 하나의 다른 특성을 선택하는 특성 분석기; 및
    상기 하나의 다른 특성에 부분적으로 기초하여 복수의 새로운 클러스터를 자동적으로 형성하고, 상기 복수의 새로운 클러스터를 제시하는 오거나이저(organizer)
    를 포함하는 컴퓨터 판독 가능 기록 매체.
  2. 제1항에 있어서,
    상기 복수의 특성은 복수의 아이템과 관련되어 있으며,
    상기 복수의 아이템은 로컬 또는 원격 저장 위치 중 적어도 하나, 또는 이들의 조합에 저장되는 컴퓨터 판독 가능 기록 매체.
  3. 제2항에 있어서,
    상기 복수의 아이템은 문서, 파일, 폴더, 이미지, 오디오 파일, 비디오 파일, 코드, 메시지, 또는 사람이나 위치를 포함하는 외부 오브젝트들의 컴퓨터 표현 중 적어도 하나, 또는 이들의 조합을 포함하는 컴퓨터 판독 가능 기록 매체.
  4. 제1항에 있어서,
    상기 복수의 특성은, 아이템의 유형, 아이템이 생성된 날짜 또는 시간, 상기 아이템과 관련된 사람, 상기 아이템의 위치, 상기 아이템의 카테고리, 또는 시스템, 애플리케이션, 관리자 또는 상기 아이템의 사용자 정의 특성, 또는 이들의 조합을 포함하는 컴퓨터 판독 가능 기록 매체.
  5. 제1항에 있어서,
    상기 제1 특성은 아이템의 유형인 컴퓨터 판독 가능 기록 매체.
  6. 제1항에 있어서,
    상기 클러스터화 스코어는, 상기 복수의 특성 중 특정 특성과 관련된 모든 클러스터에 대하여,
    클러스터화 스코어 = n_itemscluster1 * n_itemscluster2 * …,
    의 관계식에 의해 계산되며,
    여기서, n_items는 각각의 클러스터와 관련된 아이템들의 개수(number)인 컴퓨터 판독 가능 기록 매체.
  7. 제1항에 있어서,
    상기 클러스터화 스코어는, 상기 복수의 특성 중 특정 특성과 관련된 모든 클러스터에 대하여,
    클러스터화 스코어 = (N_total)!/((n_itemscluster1)!*(n_itemscluster2)!* …),
    의 관계식에 의해 계산되며,
    여기서, N_total은 모든 클러스터의 아이템들의 총 개수이며, n_items은 각각의 클러스터와 관련된 아이템들의 개수인 컴퓨터 판독 가능 기록 매체.
  8. 제1항에 있어서,
    클러스터 결과의 표시, 질의(query) 선택의 수신, 특성 정보의 수신, 또는 클러스터 내의 아이템과 관련된 정보의 표시 중 적어도 하나, 또는 이들의 조합을 행하기 위한 사용자 인터페이스를 더 포함하는 컴퓨터 판독 가능 기록 매체.
  9. 그래픽 사용자 인터페이스를 구현하기 위한 컴퓨터 구현 가능 명령어들을 저장한 컴퓨터 판독 가능 기록 매체로서,
    상기 그래픽 사용자 인터페이스는,
    데이터베이스 내에 저장된 하나 이상의 데이터 아이템들 및 관련 특성들;
    상기 데이터 아이템들의 각각에 대해 생성된 하나 이상의 디스플레이 오브젝트들;
    상기 데이터 아이템들 및 상기 관련 특성들을 선택하기 위한 입력 컴포넌트;
    복수의 특성 중 제1 특성에 기초하여 복수의 클러스터를 형성하며, 상기 복수의 특성 중 각각의 다른 특성에 대하여 클러스터화 스코어를 자동적으로 계산하며, 최고의 클러스터화 스코어를 갖는 상기 복수의 특성 중 하나의 다른 특성을 선택하며, 상기 하나의 다른 특성에 부분적으로 기초하여 데이터 아이템 분포를 결정하는 특성 분석기;
    상기 하나의 다른 특성에 기초하여 새로운 클러스터들을 생성하고 상기 데이터 아이템들과 관련된 상기 디스플레이 오브젝트들을 각각의 새로운 클러스터에 저장하는 오거나이저 컴포넌트; 및
    상기 특성들의 자동화 분석에 부분적으로 기초하여 상기 디스플레이 오브젝트들 및 상기 새로운 클러스터들을 제시하는 디스플레이 컴포넌트
    를 포함하는 컴퓨터 판독 가능 기록 매체.
  10. 제9항에 있어서,
    상기 특성들과 상호작용하는 제어부(control)들을 더 포함하는 컴퓨터 판독 가능 기록 매체.
  11. 제10항에 있어서,
    상기 특성들은 결과들의 네스트된(nested) 질의를 위해 이용되는 컴퓨터 판독 가능 기록 매체.
  12. 제10항에 있어서,
    상기 특성들은 유형, 위치, 카테고리, 사람, 날짜, 시간, 또는 사용자 정의 파라미터 중 적어도 하나, 또는 이들의 조합을 포함하는 컴퓨터 판독 가능 기록 매체.
  13. 제10항에 있어서,
    사용자 액션(action)들로부터 암묵적으로(implicitly) 학습하기 위한 컴포넌트를 더 포함하는 컴퓨터 판독 가능 기록 매체.
  14. 제10항에 있어서,
    적어도 하나의 반축약(semi-collapsed) 리스트 또는 그룹을 더 포함하는 컴퓨터 판독 가능 기록 매체.
  15. 제14항에 있어서,
    상기 리스트 또는 그룹을 확장하기 위한 제어부들을 더 포함하는 컴퓨터 판독 가능 기록 매체.
  16. 제15항에 있어서,
    적어도 하나의 대규모 특성 클러스터가 반축약 리스트를 이용하여 스퀴즈(squeezed) 뷰에 제시되는 컴퓨터 판독 가능 기록 매체.
  17. 정보의 검색 및 표시를 최적화하기 위한 컴퓨터화 인터페이스를 구현하기 위한 컴퓨터 구현 가능 명령어들을 저장한 컴퓨터 판독 가능 기록 매체로서,
    상기 컴퓨터화 인터페이스는,
    복수의 특성 중 제1 특성에 기초하여 아이템 분포를 결정하고 복수의 클러스터를 형성하며, 상기 복수의 특성 중 각각의 다른 특성에 대하여 클러스터화 스코어를 자동적으로 계산하며, 적어도 하나의 다른 특성과 관련된 상기 클러스터화 스코어에 기초하여 상기 복수의 특성 중 적어도 하나의 다른 특성을 선택하며, 상기 적어도 하나의 다른 특성에 부분적으로 기초하여 복수의 아이템의 분포를 결정하는 특성 분석기; 및
    상기 적어도 하나의 다른 특성에 부분적으로 기초하여 복수의 최적화된 클러스터를 자동적으로 형성하고, 상기 복수의 아이템을 상기 복수의 최적화된 클러스터에 분배하며, 상기 복수의 최적화된 클러스터를 제시하는 오거나이저
    를 포함하는 컴퓨터 판독 가능 기록 매체.
  18. 제17항에 있어서,
    상기 복수의 아이템은 로컬 또는 원격 저장 위치 중 적어도 하나, 또는 이들의 조합에 저장되는 컴퓨터 판독 가능 기록 매체.
  19. 제18항에 있어서,
    상기 복수의 아이템은 문서, 파일, 폴더, 이미지, 오디오 파일, 비디오 파일, 코드, 메시지, 또는 사람이나 위치를 포함하는 외부 오브젝트들의 컴퓨터 표현 중 적어도 하나, 또는 이들의 조합을 포함하는 컴퓨터 판독 가능 기록 매체.
  20. 제17항에 있어서,
    상기 복수의 특성은, 아이템의 유형, 아이템이 생성된 날짜 또는 시간, 상기 아이템과 관련된 사람, 상기 아이템의 위치, 상기 아이템의 카테고리, 또는 시스템, 애플리케이션, 관리자 또는 상기 아이템의 사용자 정의 특성, 또는 이들의 조합을 포함하는 컴퓨터 판독 가능 기록 매체.
  21. 제20항에 있어서,
    상기 복수의 특성은 메타데이터를 더 포함하는 컴퓨터 판독 가능 기록 매체.
  22. 제17항에 있어서,
    상기 특성 분석기는 최고의 클러스터화 스코어에 기초하여 상기 적어도 하나의 다른 특성을 선택하며,
    상기 클러스터화 스코어는 각각의 클러스터 내의 아이템의 수와 서로 다른 각각의 클러스터 내의 클러스터당 아이템의 수의 곱과 같거나, 또는 아이템의 전체 수를, 각각의 클러스터 내의 아이템의 수의 계승(factorial)과 서로 다른 각각의 클러스터 내의 클러스터당 아이템의 수의 계승의 곱으로 나눈 값과 같은 컴퓨터 판독 가능 기록 매체.
  23. 제17항에 있어서,
    상기 복수의 최적화 클러스터 또는 상기 복수의 아이템 중 적어도 하나, 또는 이들의 조합은 중요도의 기준에 기초하여 반축약 형태로 제시되는 컴퓨터 판독 가능 기록 매체.
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR1020050007142A 2004-01-26 2005-01-26 자동 질의 클러스터링 KR101029403B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/764,738 US7257571B2 (en) 2004-01-26 2004-01-26 Automatic query clustering
US10/764,738 2004-01-26

Publications (2)

Publication Number Publication Date
KR20050077036A KR20050077036A (ko) 2005-07-29
KR101029403B1 true KR101029403B1 (ko) 2011-04-14

Family

ID=34634626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050007142A KR101029403B1 (ko) 2004-01-26 2005-01-26 자동 질의 클러스터링

Country Status (14)

Country Link
US (2) US7257571B2 (ko)
EP (1) EP1557774A3 (ko)
JP (1) JP4101239B2 (ko)
KR (1) KR101029403B1 (ko)
CN (1) CN1648903A (ko)
AU (1) AU2005200286A1 (ko)
BR (1) BRPI0500784A (ko)
CA (1) CA2494410A1 (ko)
HK (1) HK1080164A1 (ko)
MX (1) MXPA05001072A (ko)
MY (1) MY145961A (ko)
RU (1) RU2368948C2 (ko)
TW (1) TW200529063A (ko)
ZA (1) ZA200500736B (ko)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8448069B2 (en) * 2004-04-23 2013-05-21 International Business Machines Corporation Object set property viewer
US8090698B2 (en) 2004-05-07 2012-01-03 Ebay Inc. Method and system to facilitate a search of an information resource
JP4533007B2 (ja) * 2004-06-09 2010-08-25 キヤノン株式会社 画像管理装置、画像管理方法、及びプログラム
US9552141B2 (en) 2004-06-21 2017-01-24 Apple Inc. Methods and apparatuses for operating a data processing system
US7693860B2 (en) * 2005-03-18 2010-04-06 Microsoft Corporation Method and system to associate cell and item metadata
CN101208667B (zh) * 2005-06-22 2012-01-11 日本电气株式会社 调试系统及方法
US7739314B2 (en) * 2005-08-15 2010-06-15 Google Inc. Scalable user clustering based on set similarity
US8234293B2 (en) * 2005-09-08 2012-07-31 Microsoft Corporation Autocompleting with queries to a database
KR100713534B1 (ko) * 2005-09-08 2007-04-30 삼성전자주식회사 이동 통신 단말의 사용자 데이터 검색 방법
US7792847B2 (en) * 2005-09-09 2010-09-07 Microsoft Corporation Converting structured reports to formulas
US8843481B1 (en) * 2005-09-30 2014-09-23 Yongyong Xu System and method of forming action based virtual communities and related search mechanisms
US7805433B2 (en) * 2005-10-14 2010-09-28 Microsoft Corporation Multidimensional cube functions
US20070168323A1 (en) * 2006-01-03 2007-07-19 Microsoft Corporation Query aggregation
WO2007088893A1 (ja) * 2006-02-01 2007-08-09 Matsushita Electric Industrial Co., Ltd. 情報分類装置および情報検索装置
KR100725411B1 (ko) * 2006-02-06 2007-06-07 삼성전자주식회사 컨텐츠 검색을 위한 사용자 인터페이스, 사용자 인터페이스제공 방법, 및 컨텐츠 검색 장치
US20070239682A1 (en) * 2006-04-06 2007-10-11 Arellanes Paul T System and method for browser context based search disambiguation using a viewed content history
US8214360B2 (en) * 2006-04-06 2012-07-03 International Business Machines Corporation Browser context based search disambiguation using existing category taxonomy
KR100806115B1 (ko) 2006-05-02 2008-02-21 인하대학교 산학협력단 다중레벨 dbms에서 질의 분류 컴포넌트의 설계 방법
US20070260600A1 (en) * 2006-05-08 2007-11-08 Mita Group Information discovery and group association
CN101122910A (zh) * 2006-08-07 2008-02-13 鸿富锦精密工业(深圳)有限公司 存储装置及打开其所存储文件的方法
WO2008034213A1 (en) * 2006-09-18 2008-03-27 Infobright Inc. A method and system for data compression in a relational database
US8266147B2 (en) * 2006-09-18 2012-09-11 Infobright, Inc. Methods and systems for database organization
US9817436B2 (en) * 2007-01-07 2017-11-14 Apple Inc. Portable multifunction device, method, and graphical user interface for displaying user interface objects adaptively
JP4412342B2 (ja) * 2007-03-30 2010-02-10 ソニー株式会社 コンテンツ管理装置、画像表示装置、撮像装置、および、これらにおける処理方法ならびに当該方法をコンピュータに実行させるプログラム
US20090228826A1 (en) * 2008-03-04 2009-09-10 Microsoft Corporation Group filtering of items in a view
US7860866B2 (en) * 2008-03-26 2010-12-28 Microsoft Corporation Heuristic event clustering of media using metadata
WO2010060179A1 (en) * 2008-11-28 2010-06-03 Infobright Inc. Methods for organizing a relational database by using clustering operations
US20100299603A1 (en) * 2009-05-22 2010-11-25 Bernard Farkas User-Customized Subject-Categorized Website Entertainment Database
US20110116416A1 (en) * 2009-11-18 2011-05-19 Dobson Eric L System and method for geographically optimized wireless mesh networks
US8839128B2 (en) 2009-11-25 2014-09-16 Cooliris, Inc. Gallery application for content viewing
US9367564B2 (en) 2010-03-12 2016-06-14 Exxonmobil Upstream Research Company Dynamic grouping of domain objects via smart groups
US8521748B2 (en) 2010-06-14 2013-08-27 Infobright Inc. System and method for managing metadata in a relational database
US8417727B2 (en) 2010-06-14 2013-04-09 Infobright Inc. System and method for storing data in a relational database
US9608941B2 (en) * 2011-02-07 2017-03-28 Google Inc. Methods and systems for clustering emails using email addresses
CN102253967B (zh) * 2011-06-03 2013-03-27 用友软件股份有限公司 数据查找系统和数据查找方法
US10078819B2 (en) * 2011-06-21 2018-09-18 Oath Inc. Presenting favorite contacts information to a user of a computing device
CN103049444B (zh) * 2011-10-12 2016-09-28 阿里巴巴集团控股有限公司 一种数据信息分类结构的存储方法和系统
US9558278B2 (en) 2012-09-11 2017-01-31 Apple Inc. Integrated content recommendation
US9218118B2 (en) 2012-09-11 2015-12-22 Apple Inc. Media player playlist management
US10140372B2 (en) 2012-09-12 2018-11-27 Gracenote, Inc. User profile based on clustering tiered descriptors
US9047368B1 (en) * 2013-02-19 2015-06-02 Symantec Corporation Self-organizing user-centric document vault
US9792289B2 (en) * 2014-11-07 2017-10-17 Semandex Networks Inc. Systems and methods for file clustering, multi-drive forensic analysis and data protection
RU2611960C2 (ru) * 2015-03-31 2017-03-01 Общество С Ограниченной Ответственностью "Яндекс" Способ организации в кластеры точек интереса и сервер для его осуществления
CN108460049B (zh) * 2017-02-21 2021-10-19 阿里巴巴集团控股有限公司 一种确定信息类别的方法和系统
RU2666331C1 (ru) * 2017-04-04 2018-09-06 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для создания оффлайн страницы результатов поиска
US20190228378A1 (en) * 2018-01-24 2019-07-25 Microsoft Technology Licensing, Llc Intelligent targeting of files needing attention
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040093321A1 (en) * 2002-11-13 2004-05-13 Xerox Corporation Search engine with structured contextual clustering

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6122405A (en) * 1993-08-27 2000-09-19 Martin Marietta Corporation Adaptive filter selection for optimal feature extraction
US5801699A (en) * 1996-01-26 1998-09-01 International Business Machines Corporation Icon aggregation on a graphical user interface
US5899992A (en) * 1997-02-14 1999-05-04 International Business Machines Corporation Scalable set oriented classifier
US6415282B1 (en) * 1998-04-22 2002-07-02 Nec Usa, Inc. Method and apparatus for query refinement
US6742003B2 (en) * 2001-04-30 2004-05-25 Microsoft Corporation Apparatus and accompanying methods for visualizing clusters of data and hierarchical cluster classifications
US6732149B1 (en) * 1999-04-09 2004-05-04 International Business Machines Corporation System and method for hindering undesired transmission or receipt of electronic messages
US6564197B2 (en) * 1999-05-03 2003-05-13 E.Piphany, Inc. Method and apparatus for scalable probabilistic clustering using decision trees
US6606613B1 (en) * 1999-06-03 2003-08-12 Microsoft Corporation Methods and apparatus for using task models to help computer users complete tasks
US6539374B2 (en) * 1999-06-03 2003-03-25 Microsoft Corporation Methods, apparatus and data structures for providing a uniform representation of various types of information
RU2177174C1 (ru) * 2000-05-12 2001-12-20 Серебренников Олег Александрович Способ поиска в базах данных с разметкой данных
US6578032B1 (en) * 2000-06-28 2003-06-10 Microsoft Corporation Method and system for performing phrase/word clustering and cluster merging
US7519605B2 (en) * 2001-05-09 2009-04-14 Agilent Technologies, Inc. Systems, methods and computer readable media for performing a domain-specific metasearch, and visualizing search results therefrom
US6920448B2 (en) * 2001-05-09 2005-07-19 Agilent Technologies, Inc. Domain specific knowledge-based metasearch system and methods of using
US6910026B2 (en) * 2001-08-27 2005-06-21 Verity, Inc. Method and apparatus for determining classifier features with minimal supervision

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040093321A1 (en) * 2002-11-13 2004-05-13 Xerox Corporation Search engine with structured contextual clustering

Also Published As

Publication number Publication date
CN1648903A (zh) 2005-08-03
RU2368948C2 (ru) 2009-09-27
RU2005101735A (ru) 2006-07-10
US7257571B2 (en) 2007-08-14
US20080021896A1 (en) 2008-01-24
CA2494410A1 (en) 2005-07-26
ZA200500736B (en) 2006-10-25
EP1557774A3 (en) 2007-07-04
MXPA05001072A (es) 2005-10-05
HK1080164A1 (zh) 2006-04-21
US20050165825A1 (en) 2005-07-28
BRPI0500784A (pt) 2005-08-30
TW200529063A (en) 2005-09-01
EP1557774A2 (en) 2005-07-27
KR20050077036A (ko) 2005-07-29
JP2005235196A (ja) 2005-09-02
AU2005200286A1 (en) 2005-08-11
MY145961A (en) 2012-05-31
JP4101239B2 (ja) 2008-06-18

Similar Documents

Publication Publication Date Title
KR101029403B1 (ko) 자동 질의 클러스터링
US11200252B2 (en) Process and apparatus for selecting an item from a database
Dinneen et al. The ubiquitous digital file: A review of file management research
US7383503B2 (en) Filtering a collection of items
US7634471B2 (en) Adaptive grouping in a file network
US7502785B2 (en) Extracting semantic attributes
US8108430B2 (en) Carousel control for metadata navigation and assignment
KR100984400B1 (ko) 공통 요소에 기초하여 아이템들을 필터링하고 편성하기위한 시스템 및 방법
US7624130B2 (en) System and method for exploring a semantic file network
JP5456322B2 (ja) オペレーティングシステムユーザインターフェースを使用して文書および文書オブジェクトにメタデータを付加する方法
US10552467B2 (en) System and method for language sensitive contextual searching
KR20060013511A (ko) 관계 뷰
WO2015175548A1 (en) Entity-centric knowledge discovery
JP2005025728A (ja) 理想的な情報抽象化、隠蔽および順序付けによって、視覚的複雑さおよび検索労力を低減するためのモデルおよび方法
WO2003098477A1 (en) Search and presentation engine
KR20050075718A (ko) 컴퓨터 인터페이스 및 컴퓨터 판독가능 매체
WO2017078958A1 (en) Mobile user interface
KR20130029045A (ko) 상관된 정보의 온라인 분석 및 디스플레이
KR101441219B1 (ko) 정보 엔터티들의 자동 연관
US8612882B1 (en) Method and apparatus for creating collections using automatic suggestions
WO2002069186A1 (en) A method and system for archiving and retrieving data in an electronic document management system
CN117591481A (zh) 一种实现常用文件统一单入口访问的方法
CN112860940A (zh) 基于描述逻辑知识库上有序概念空间的音乐资源检索方法
AU2013209311A1 (en) Process and apparatus for selecting an item from a database
KR20080029052A (ko) 온톨로지 기반의 정보 검색 방법

Legal Events

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

Payment date: 20160318

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170317

Year of fee payment: 7