KR20060050484A - 지식 교환 질의를 수신하고 그에 응답하기 위한 방법,시스템 및 장치 - Google Patents

지식 교환 질의를 수신하고 그에 응답하기 위한 방법,시스템 및 장치 Download PDF

Info

Publication number
KR20060050484A
KR20060050484A KR1020050074807A KR20050074807A KR20060050484A KR 20060050484 A KR20060050484 A KR 20060050484A KR 1020050074807 A KR1020050074807 A KR 1020050074807A KR 20050074807 A KR20050074807 A KR 20050074807A KR 20060050484 A KR20060050484 A KR 20060050484A
Authority
KR
South Korea
Prior art keywords
profile database
user
request
profile
query
Prior art date
Application number
KR1020050074807A
Other languages
English (en)
Other versions
KR101201067B1 (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 KR20060050484A publication Critical patent/KR20060050484A/ko
Application granted granted Critical
Publication of KR101201067B1 publication Critical patent/KR101201067B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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/335Filtering based on additional data, e.g. user or group profiles
    • 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/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/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure

Abstract

지식 교환(knowledge interchange; "KI") 질의를 수신하고 그에 응답하기 위한 방법, 시스템 및 장치를 제공한다. KI 질의는 KI 프로파일의 데이터베이스에 전달되는 검색 질의이다. KI 프로파일은 사용자의 관심, 사용자가 통신한 개인, 사용자와의 통신이 이루어진 토픽을 식별한다. KI 프로파일은 복수의 클라이언트 컴퓨터로부터 수신되고 프로파일 데이터베이스에 저장된다. 프로파일 데이터베이스의 컨텐츠에 대한 아웃-오브-프로세스 처리가 수행될 수 있다. 프로파일 데이터베이스에 질의하고자 하는 요구가 수신될 수 있다. 그러한 요구를 수신하는 것에 응답하여, 수신된 질의는 프로파일 데이터베이스에 대해 실행되어, 검색 결과를 식별할 수 있다. 그 후, 검색 결과는 질의에 대한 응답으로서 리턴될 수 있다.
지식 교환 프로파일, 사회적 네트워크 분석, 관심 분석, 명사구 분석

Description

지식 교환 질의를 수신하고 그에 응답하기 위한 방법, 시스템 및 장치{METHOD, SYSTEM, AND APPARATUS FOR RECEIVING AND RESPONDING TO KNOWLEDGE INTERCHANGE QUERIES}
도 1은 본 발명의 다양한 실시예를 위한 예시적인 오퍼레이팅 환경의 양태를 설명하는 컴퓨터 네트워크 도면.
도 2는 본 발명의 다양한 실시예에서 사용되고 그에 의해 제공된 컴퓨터 시스템의 양태를 설명하는 컴퓨터 시스템 아키텍처 도면.
도 3은 본 발명의 다양한 실시예에서 사용된 몇몇 소프트웨어 컴포넌트의 양태를 설명하는 컴퓨터 소프트웨어 아키텍처 도면.
도 4는 본 발명의 일 실시예에 따른 클라이언트 컴퓨터 및 서버 컴퓨터의 동작의 양태를 설명하는 흐름도.
도 5 내지 도 11은 본 발명의 다양한 실시예에 따른 클라이언트 컴퓨터의 동작의 추가적인 양태를 설명하는 흐름도.
도 12 내지 도 13은 본 발명의 다양한 실시예에 따른 클라이언트 컴퓨터의 동작의 추가적인 양태를 설명하는 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
24 : 오퍼레이팅 시스템
27 : 어플리케이션 스위트
28 : PIM 어플리케이션
30 : 워드 프로세서
32 : 스프레드시트
34 : 프리젠테이션
36 : 웹 브라우저
38 : KI 플러그-인
40 : KI 데스크탑 어플리케이션
42 : 프라이버시 프리퍼런스
44 : 클라이언트 데이터베이스
46 : 프로파일
48 : KI 인덱싱 엔진
50 : 역 인덱스
52 : KI 분석 엔진
60 : KI 서버 컴포넌트
62 : SMTP 서버
64 : 프로파일 데이터베이스
66 : 분석 엔진
[특허문헌 1] 미국 특허 출원 "지식 교환 프로파일을 생성하기 위한 방법, 시스템 및 장치"(대리인 문서번호 60001 0385US01)
[특허문헌 2] 미국 특허 출원 "지식 교환 시스템에서 사용자 프라이버시를 유지하기 위한 방법, 시스템 및 장치"(대리인 문서번호 60001 0387US01)
큰 기업체는 대량의 데이터를 생성한다. 데이터는 모든 종류의 문서, 전자 메일 메시지, 인스턴트 메시지 및 다른 유형의 통신에서 생성된다. 생성된 대량의 데이터, 및 이 데이터가 종종 다수의 상이한 위치에 저장된다는 사실로 인해, 데이터를 찾고 있는 사람("탐색자")이 관심있는 정보의 위치를 알아내는 것은 매우 난해할 수 있다. 이것은 부분적으로, 데이터가 예를 들어, 월드 와이드 웹("웹")에서 입수할 수 있는 문서와 자주 링크되지 않는다는 사실 때문이다.
큰 기업체에서 일하는 직원들은 또한 일반적으로, 그 기업체의 사업에 관한 무수한 토픽 및 그에 관련되지 않은 무수한 토픽 둘 다에 전문가이다. 전문가는 탐색자가 토픽에 관한 정보의 위치를 찾는 것을 돕거나, 토픽에 관한 정보를 가지고 있을지도 모르는 다른 사람의 위치를 알아내는 개인이다. 정보 탐색 외에, 탐색자는 관심있는 토픽에 대한 전문가를 식별하고 그 전문가와 연락하는 것에도 관심있을 수 있다. 그러나, 수천 수만의 직원들을 포함할 수 있는 큰 기업체 내에서 특정 토픽에 대한 전문가가 누구인지를 결정하는 것은 매우 어렵다.
큰 기업체 내에서 전문가의 위치를 알아내는 프로세스를 돕기 위한 시스템이 존재한다. 그러나, 현재의 시스템은 그 유용성을 제한하는 다수의 심각한 결점을 가지고 있다. 특히, 현재의 시스템은 많은 사람들 내에서 너무 소수의 전문가들의 위치를 알아내는 경향이 있다. 결과적으로, 제한된 수의 전문가는 도와달라는 매우 많은 요구에 압도될 수 있다. 매우 많은 요구의 결과로서, 전문가는 종종, 전문가 프로그램을 철회한다. 이것에 의해 시스템은 훨씬 더 적은 전문가들을 갖게 되고, 문제는 악화된다.
본 발명은 이러한 고려사항, 및 본 발명의 다양한 실시예가 만들어진 그 외의 고려사항에 관한 것이다.
본 발명에 따르면, 상술된 문제 및 그 외의 문제는 지식 교환(knowledge interchange; "KI") 질의를 수신하고 그에 응답하기 위한 방법, 시스템 및 장치에 의해 해결된다. KI 질의는 KI 프로파일의 데이터베이스에 전달되는 검색 질의이다. KI 프로파일은 사용자의 관심, 사용자가 통신한 개인, 사용자와의 통신이 이루어진 토픽을 식별한다. KI 프로파일은 기업체 내의 사용자들 일부 또는 전부에 대해 생성될 수 있고, 기업체 내의 전문가와 접속할 수 있는 개인("접속자"), 전문가 자체, 및 탐색자가 관심있어 할 수 있는 정보의 위치를 알아내는 데 사용될 수 있다.
본 발명의 일 양태에 따르면, KI 질의를 수신하고 그에 대응하기 위한 방법이 제공된다. 이 방법에 따라, KI 프로파일은 복수의 클라이언트 컴퓨터로부터 수 신되어 프로파일 데이터베이스 내에 저장된다. 각각의 KI 프로파일은 사용자의 관심, 사용자의 관심도 식별하는 하나 이상의 명사구, 사용자가 통신한 하나 이상의 연락처를 식별하는 하나 이상의 키워드를 포함한다. 키워드 및 명사구는 또한, 각각의 연락처에 관련되어, 각각의 연락처와 통신이 이루어진 토픽을 식별할 수 있다.
이 방법에 따르면, 노이즈 단어를 제거하기 위해 프로파일 데이터베이스의 컨텐츠에 대해 아웃-오브-프로세스 처리가 수행될 수 있다. 노이즈 단어는 무질서한 큰 모집단에서 사용자들 간의 매우 흔한 단어이다. 노이즈 단어가 제거되면, 프로파일 데이터베이스에 질의하고자 하는 요구가 수신될 수 있다. 그러한 요구의 수신에 응답하여, 수신된 질의는 프로파일 데이터베이스에 대해 실행되어, 검색 결과를 식별할 수 있다. 그 후, 검색 결과는 질의에 대한 응답으로서 리턴될 수 있다.
본 발명의 일 양태에 따르면, 프로파일 데이터베이스에 질의하고자 하는 요구는 특정 토픽에 도움을 줄 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있다. 이러한 경우에, 프로파일 데이터베이스는 그 특정 토픽에 전문가이고, 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있는 개인들을 식별하기 위해 검색될 수 있다. 사회적 거리는 접속된 개인들 그룹 중에 임의의 2명의 개인을 접속시키는 데 필요한 개인의 수를 나타낸다. 예를 들어, 존 스미스라는 이름의 사용자가 그의 개인 정보 관리 프로그램 내에 연락처 리스트에 빌 존스라는 이름의 사용자를 갖는다면, 존 스미스와 빌 존스 간의 사회적 거리는 1이 될 것이다. 빌 존스가 그의 연락처 리스트에 수 화이트라는 이름의 연락처를 갖는다면, 존 스미스와 수 화이트 간의 사회적 거리는 2가 될 것이다.
본 발명의 다른 양태에 따르면, 프로파일 데이터베이스에 질의하고자 하는 요구는 프로파일 데이터베이스 내의 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있다. 이 유형의 질의를 실행하기 위해, 프로파일 데이터베이스가 검색되어, 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있고 개인이 자신들의 KI 프로파일 내에 연락처로서 나열하는 개인들을 식별할 수 있다. 그 후, 검색 결과는 질의에 대한 응답으로서 리턴될 수 있다.
본 발명의 또 다른 양태에 따르면, 프로파일 데이터베이스에 질의하고자 하는 요구는 기업체 외부에 위치한 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있다. 이러한 유형의 질의를 수행하기 위해, 프로파일 데이터베이스가 검색되어, 개인을 자신들의 KI 프로파일 내에 연락처로서 나열하는 개인들을 식별할 수 있다. 그 후, 검색 결과는 질의에 대한 응답으로서 리턴된다.
본 발명의 또 다른 양태에 따르면, 공통의 관심을 가지고 있는 개인의 위치를 알아내고, 이 개인이 어떤 자료를 판독하고 있었는지를 결정하기 위해 검색이 수행될 수 있다. 이러한 경우에, 검색 요구는 유사한 관심을 가지고 있는 다른 개인들에 의해 소모된 정보의 위치를 알아내기 위해 프로파일 데이터베이스에 질의하고자 하는 요구의 형태를 취한다. 이 질의를 수행하기 위해, 프로파일 데이터베이스가 검색되어, 요구를 생성한 사용자와 유사한 관심을 갖는 개인들을 식별할 수 있다. 이후에, 프로파일 데이터베이스는 그 KI 프로파일의 컨텐츠로부터 유사한 관심을 갖는 개인들에 의해 소모된 정보를 식별하기 위해 검색된다.
본 발명은 컴퓨터 프로세스, 컴퓨팅 장치, 또는 컴퓨터 프로그램 제품 또는 컴퓨터 판독가능 매체와 같은 제조품으로서 구현될 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능하고 컴퓨터 프로세스를 실행하기 위한 명령어의 컴퓨터 프로그램을 인코딩하는 컴퓨터 저장 매체일 수 있다. 컴퓨터 프로그램 제품은 또한, 컴퓨팅 시스템에 의해 판독가능하고 컴퓨터 프로세스를 실행하기 위한 명령어의 컴퓨터 프로그램을 인코딩하는 반송파 상의 전파된 신호일 수 있다.
이러한 특징 및 그 외의 다양한 특징뿐만 아니라 본 발명을 특징짓는 장점은 다음의 상세한 설명 및 관련된 도면의 개관을 읽음으로써 명백해질 것이다.
이제, 유사 번호가 유사 구성요소를 나타내는 도면을 참조하여, 본 발명의 다양한 양태가 설명될 것이다. 특히, 도 1 및 그에 대응하는 설명은 본 발명의 실시예가 구현될 수 있는 적합한 컴퓨팅 환경의 간단하고 일반적인 설명을 제공하는 것으로 의도된다. 본 발명은 개인용 컴퓨터 상의 오퍼레이팅 시스템에서 실행되는 프로그램 모듈과 함께 실행되는 프로그램 모듈의 일반적 문맥에서 설명될 것이지만, 본 기술분야에 숙련된 기술자들은 본 발명이 다른 유형의 컴퓨터 시스템 및 프로그램 모듈과의 조합으로도 구현될 수 있음을 인식할 것이다.
일반적으로, 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 특정 태스크를 수행하거나 특정 추상 데이터 타입을 구현하는 다른 유형의 구조를 포함한다. 또한, 본 기술분야에서 숙련된 기술자는 본 발명이 핸드-헬드 장치, 멀 티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램가능한 가전 기기, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함한 다른 컴퓨터 시스템 구성으로 실시될 수 있음을 알 것이다. 본 발명은 또한, 태스크가 통신 네트워크를 통해 링크되어 있는 원격 처리 장치에 의해 수행되는 분산 컴퓨팅 환경에서도 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 둘 다에 위치될 수 있다.
이제 도 1을 참조하면, 본 발명의 몇몇 실시예에 대한 예시적인 오퍼레이팅 환경이 설명될 것이다. 특히, 도 1은 본 발명의 여러 실시예에 따라 제공된 지식 교환("KI") 시스템의 양태를 도시한다. KI 시스템은 사용자("탐색자")가 정보 또는 다른 사람들과 접속하는 것을 도울 수 있는 사람("접속자" 또는 "전문가")을 찾는 프로세스를 용이하게 하는 클라이언트-서버 시스템이다. 여기에서 설명되는 바와 같이, 접속자는 KI 시스템에의 참여의 결과로서 추가적인 부담이 부가된다. 특히, 그들은 다른 사람들을 돕기 때문에 시스템의 가장 중요한 휴먼(human) 요소이다. 이로 인해, 여기에 제공된 KI 시스템은 KI 시스템의 동작의 다수의 양태에 대한 접속자 제어를 제공한다. 예를 들어, 접속자는 그들이 돕기로 결정할 때까지 익명으로 남아있도록 선택할 수 있다. 또한, 접속자가 돕지 않기로 결정하면, 그의 아이덴티티는 탐색자들에게 전혀 보이지 않을 것이다. 여기에서 설명되는 바와 같이, KI 시스템은 또한, 접속자가 그들 자신의 데이터를 더 빨리 찾게 돕고, 이에 의해, 어떤 경우에는 다른 사람들을 돕는 부담을 줄이고, 어떤 경우에는 스스로를 돕는다.
도 1은 본 발명의 다양한 실시예에 의해 제공된 KI 시스템에 대한 예시적인 오퍼레이팅 환경을 도시한다. 도 1에 도시되어 있는 바와 같이, 네트워크(4)는 다수의 클라이언트 컴퓨터(2A 내지 2C)와 서버 컴퓨터(6)를 상호접속시킨다. 네트워크(4)는 근거리 네트워크("LAN"), 또는 인터넷과 같은 광역 네트워크("WAN")를 포함한 임의의 유형의 컴퓨팅 네트워크를 포함할 수 있음을 인식해야 한다. 네트워크(4)는 임의의 개수의 클라이언트 컴퓨터(2A 내지 2C)와 서버 컴퓨터(6) 간의 통신을 가능하게 하기 위한 매체를 제공한다. 3개의 클라이언트 컴퓨터(2A 내지 2C)가 도 1에 도시되어 있지만, 본 발명은 임의의 개수의 클라이언트 컴퓨터와 함께 사용되는 것으로 예상됨을 이해해야 한다.
도 2에 관하여 이하에 더 상세히 설명되는 바와 같이, 클라이언트 컴퓨터(2A 내지 2C) 각각은 범용 데스크탑, 랩탑, 태블릿, 또는 하나 이상의 어플리케이션 프로그램을 실행할 수 있는 다른 유형의 컴퓨터를 포함한다. 특히, 본 발명의 다양한 실시예에 따르면, 컴퓨터(2)는 오퍼레이팅 시스템 및 하나 이상의 데스크탑 어플리케이션 프로그램을 실행하도록 동작가능하다. 예를 들어, 클라이언트 컴퓨터(2A 내지 2C)는 워드 프로세싱 프로그램, 스프레드시트 프로그램, 프리젠테이션 프로그램, 웹 브라우저 프로그램, 인스턴트 메시징 클라이언트 프로그램, 개인 정보 관리 프로그램 및 다른 유형의 어플리케이션 프로그램을 실행하도록 동작가능하다.
이하에 더 상세히 설명되는 바와 같이, 클라이언트 컴퓨터(2A 내지 2C)는 또한, 사용자와 클라이언트 컴퓨터(2A 내지 2C) 상에서 실행하는 다양한 프로그램과의 상호작용을 모니터링하는 KI 클라이언트 프로그램을 실행하도록 동작가능하다. 프로세스를 모니터링하는 것을 통해, KI 클라이언트 프로그램은 전자 메일("이메일") 메시지, 문서, 웹 페이지 및 인스턴트 메시지와 같은 사용자가 관심있어 하는 아이템을 식별할 수 있다. 관심있는 아이템에 기초하여, KI 클라이언트 프로그램은 사용자의 관심 및 연락처를 모델링하는 KI 프로파일을 생성할 수 있다. 관심은 키워드 및 명사구의 형태로 끈다. 명사구는 명사들로 이루어진 구절이다. 각각의 키워드 및 연락처를 이용하여, KI 클라이언트 프로그램은 관계 측정의 강도를 추정한다. KI 클라이언트 프로그램은 사용자가 새로운 토픽 또는 연락처에 관심이 있다는 것을 발견할 때, 또는 연락처 또는 토픽에 대한 사용자의 호감이 현저하게 변경되는 경우, KI 프로파일을 서버 컴퓨터(6)에 송신한다. KI 클라이언트 프로그램은 또한, 사용자가 이 모델을 편집하고 키워드 또는 연락처를 삭제 또는 추가하게 한다. 이하에 더 상세히 설명되는 바와 같이, 클라이언트 컴퓨터(2A 내지 2C) 각각으로부터의 KI 프로파일이 집적되고 서버 컴퓨터(6)에 의해 처리된다. 그 후, 집적된 프로파일 데이터는 서버 컴퓨터(6)에 의해 사람들 또는 정보에 대한 다양한 유형의 질의에 응답하는 데 사용될 수 있다.
이제 도 2를 참조하면, 본 발명의 다양한 실시예에서 사용되는 클라이언트 컴퓨터(2)를 위한 예시적인 컴퓨터 아키텍처가 설명될 것이다. 도 2에 도시된 컴퓨터 아키텍처는 중앙 처리 장치(8)("CPU"), 랜덤 액세스 메모리(18)("RAM") 및 판독전용 메모리("ROM")(20)를 포함한 시스템 메모리(12), 및 메모리를 CPU(8)에 연결하는 시스템 버스를 포함하는 통상적인 데스크탑, 랩탑 또는 태블릿 컴퓨터를 도시한다. 시작동안 등에 컴퓨터 내의 구성요소들 간의 정보 전송을 돕는 기본 루틴 을 포함하는 기본 입/출력 시스템은 ROM(20)에 저장된다. 컴퓨터(2)는 또한, 도 3에 관해 이하에서 더 상세히 설명되는 오퍼레이팅 시스템(24), 어플리케이션 프로그램(26) 및 다른 프로그램 모듈을 저장하기 위한 대용량 저장 장치(14)도 포함한다.
대용량 저장 장치(14)는 버스(10)에 접속된 대용량 저장 제어기(도시되지 않음)를 통해 CPU(8)에 접속된다. 대용량 저장 장치(14) 및 그에 관련된 컴퓨터-판독가능 매체는 컴퓨터(2)에 비휘발성 저장장치를 제공한다. 여기에 포함된 컴퓨터-판독가능 매체에 대한 설명은 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 장치를 언급하지만, 본 분야에 숙련된 기술자들은 컴퓨터-판독가능 매체는 컴퓨터(2)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있음을 이해해야 한다.
예를 들어, 컴퓨터-판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있으며, 이것으로 제한되지 않는다. 컴퓨터 저장 매체는 컴퓨터-판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 포함한다. 컴퓨터 저장 매체로는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 다른 고체 상태 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 다른 광 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 다른 자기 저장 장치, 또는 요구된 정보를 저장하는 데 사용될 수 있고 컴퓨터(2)에 의해 액세스될 수 있는 임의의 다른 매체가 있지만, 이것으로 제한되지 않는다.
본 발명의 다양한 실시예에 따르면, 컴퓨터(2)는 인터넷과 같은 TCP/IP 네트워크(4)를 통해 원격 컴퓨터로의 논리적 접속을 사용하는 네트워크 환경에서 동작할 수 있다. 컴퓨터(2)는 버스(10)에 접속된 네트워크 인터페이스 유닛(16)을 통해 네트워크(4)에 접속할 수 있다. 네트워크 인터페이스 유닛(16)은 또한, 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 접속하는 데 사용될 수 있음을 이해해야 한다. 컴퓨터(2)는 또한, 키보드, 마우스 또는 전자 스타일러스(도 2에 도시되지 않음)를 포함한 다수의 다른 장치로부터 입력을 수신 및 처리하기 위한 입/출력 제어기(22)도 포함할 수 있다. 마찬가지로, 입/출력 제어기(22)는 디스플레이 스크린, 프린터 또는 다른 유형의 출력 장치로의 출력을 제공할 수 있다.
서버 컴퓨터(6)는 도 2에 도시된 통상적인 컴퓨팅 컴포넌트 다수 또는 전부를 포함할 수 있음을 이해해야 한다. 서버 컴퓨터(6)는 또한, 서버 컴퓨터의 동작에 필요하거나 요구된 추가적인 하드웨어 및 소프트웨어 컴포넌트도 포함할 수 있다. 예를 들어, 서버 컴퓨터는 오퍼레이팅 시스템, 및 웹 서버 프로그램, 이메일 서버 프로그램 및 다른 유형의 프로그램과 같은 서버 컴퓨터의 동작에 사용하는 다른 프로그램을 포함할 수 있다. 서버 컴퓨터(6)는 또한, 서버 컴퓨터(6)의 수행을 개선하기 위해 추가적 메모리, 예비 대용량 저장 장치, 및 본 기술분야에 숙련된 기술자들에게 알려진 다른 유형의 서버 하드웨어와 같은 다른 하드웨어 장치도 포함할 수 있다.
이제 도 3으로 돌아와서, 클라이언트 컴퓨터(2) 및 서버 컴퓨터(6)에 의해 사용된 다양한 소프트웨어 컴포넌트에 관한 추가적인 상세사항이 설명될 것이다. 간단히 상술된 바와 같이, 워싱턴 레드몬드 소재의 마이크로소프트사의 WINDOWS XP 오퍼레이팅 시스템과 같은 네트워크화된 개인용 컴퓨터의 동작을 제어하는 데 적합한 오퍼레이팅 시스템(24)을 포함한 다수의 프로그램 모듈 및 데이터 파일은 클라이언트 컴퓨터(2)의 대용량 저장 장치(14) 및 RAM(18)에 저장될 수 있다.
클라이언트 컴퓨터(2)의 대용량 저장 장치(14) 및 RAM(18)은 하나 이상의 프로그램 모듈도 저장할 수 있다. 특히, 대용량 저장 장치(14) 및 RAM(18)은 하나 이상의 어플리케이션 프로그램을 포함하는 어플리케이션 스위트(suite)(27)를 저장할 수 있다. 예를 들어, 어플리케이션 스위트(27)는 이메일 메시지를 송신 및 수신하고, 미팅, 연락처 및 태스크를 조직하고, 그 외의 기능을 수행하기 위한 개인 정보 관리자("PIM") 어플리케이션 프로그램(28)을 포함할 수 있다. 본 발명의 일 실시예에 따르면, PIM 어플리케이션 프로그램(28)은 위싱턴 레드몬드 소재의 마이크로소프트사의 OUTLOOK PIM 프로그램을 포함하지만, 다른 제조사의 다른 PIM 프로그램이 사용될 수도 있다.
어플리케이션 스위트(27)는 전자 문서를 작성, 편집 및 보기 위한 워드 프로세서 어플리케이션(30)도 포함할 수 있다. 본 발명의 일 실시예에 따르면, 워드 프로세서 어플리케이션 프로그램(30)은 워싱턴 레드몬드 소재의 마이크로소프트사의 WORD 워드 프로세싱 어플리케이션 프로그램을 포함하지만, 다른 제조사의 다른 워드 프로세싱 프로그램이 사용될 수도 있다. 어플리케이션 스위트(27)는 또한, 전자 프리젠테이션을 작성, 편집 및 보기 위한 프리젠테이션 어플리케이션(34)도 포함할 수 있다. 본 발명의 일 실시예에 따라, 프리젠테이션 어플리케이션 프로그 램(34)은 워싱턴 레드몬드의 마이크로소프트사의 파워포인트 프리젠테이션 어플리케이션 프로그램을 포함하지만, 다른 제조사의 다른 프리젠테이션 프로그램이 사용될 수도 있다.
어플리케이션 스위트(27)는 또한, 전자 스프레드시트를 작성, 편집 및 보기 위한 스프레드시트 어플리케이션(32)도 포함할 수 있다. 본 발명의 일 실시예에 따르면, 스프레드시트 어플리케이션 프로그램(32)은 워싱턴 레드몬드 소재의 마이크로소프트사의 엑셀 스프레드시트 어플리케이션 프로그램을 포함하지만, 다른 제조사의 다른 스프레드시트 프로그램이 사용될 수도 있다.
클라이언트 컴퓨터(2)는 어플리케이션 스위트(27) 외의 다른 유형의 프로그램을 실행할 수 있음을 이해해야 한다. 예를 들어, 클라이언트 컴퓨터(2)는 다른 컴퓨터와의 인스턴트 메시징을 위한 인스턴트 메시징 클라이언트 어플리케이션 프로그램을 실행할 수 있다. 클라이언트 컴퓨터(2)는 또한, 웹 페이지를 보고 그것과 상호작용하기 위한 웹 브라우저 어플리케이션 프로그램(36)도 실행할 수 있다. 본 발명의 일 실시예에 따르면, 웹 브라우저 프로그램(36)은 마이크로소프트사의 인터넷 익스플로러 어플리케이션 프로그램을 포함한다. 그러나, 다른 제조사의 다른 웹 브라우저 프로그램이 사용될 수 있음을 이해해야 한다.
도 3에 도시되어 있는 바와 같이, KI 시스템에 관련된 다수의 소프트웨어 컴포넌트도 클라이언트(2) 상에서 저장되고 실행된다. 특히, 오퍼레이팅 시스템(24), 및 클라이언트 컴퓨터 상에서 실행중인 어플리케이션 프로그램(27 및 36)과 인터페이스하는 KI 플러그-인(38)이 실행된다. KI 플러그-인(38)은 오퍼레이팅 시 스템 및 어플리케이션 프로그램과의 사용자 상호작용을 모니터링하여, 사용자의 관심 또는 연락처를 설명할 수 있는 관심있는 아이템을 식별한다. 예를 들어, KI 플러그-인(38)은 사용자에 의해 작성 또는 판독된 문서, 사용자에 의해 송신 및 수신된 이메일 메시지, 사용자에 의해 송신 및 수신된 인스턴트 메시지, 사용자에 의해 방문된 웹 페이지, 사용자에 의해 수행된 컷-앤-페이스트 동작, 사용자에 의해 생성된 파일 및 폴더의 이름, 및 가상적으로는 사용자와 오퍼레이팅 시스템 또는 클라이언트 컴퓨터(2) 상에서 실행중인 어플리케이션 프로그램 사이의 임의의 다른 상호작용을 식별할 수 있다. KI 플러그-인은 특정 문서 및 웹 페이지 상에서의 일시 정지 시간(dwell time)도 식별하여, 특정 문서 또는 웹 페이지에 대한 사용자의 관심의 강도를 결정할 수 있다. KI 플러그-인은 모니터링 동안 식별된 관심있는 아이템을 클라이언트 데이터베이스(44)에 저장한다.
KI 인덱싱 엔진(48)도 오퍼레이팅 시스템(24), 및 클라이언트 컴퓨터 상에서 실행중인 어플리케이션 프로그램(27 및 36)과 인터페이스한다. KI 인덱싱 엔진(48)도 오퍼레이팅 시스템 및 어플리케이션 프로그램과의 사용자 상호작용을 모니터링하여, 사용자의 관심 또는 연락처를 설명할 수 있는 관심있는 아이템을 식별한다. KI 인덱싱 엔진(48)은 또한, 역 인덱스(inverted index)(50)를 생성하기 위해 관심있는 아이템에 대한 처리를 수행한다. 역 인덱스(50)는 관심있는 수집된 아이템 전부 중에서 단어가 나타나는 빈도수를 설명하는 데이터를 포함한다. 역 인덱스(50)는 또한, 관심있는 각각의 아이템 내의 각각의 단어의 위치를 유지한다. 따라서, 역 인덱스(50)는 단어를 이용하여 검색되어, 그 단어가 관심있는 아이템에서 출현하는 횟수를 식별하고 그 단어가 관심있는 아이템 내의 어디에서 나타나는지를 결정할 수 있다.
KI 분석 엔진(52)은 또한, 클라이언트 컴퓨터(2) 상에서 주기적으로 실행된다. KI 분석 엔진(52)은 KI 클라이언트 데이터베이스(44)의 컨텐츠 및 역 인덱스(50)를 사용하고, 클라이언트 컴퓨터(2)의 사용자에 대한 KI 프로파일(46)을 생성하는 처리를 수행한다. KI 프로파일(46)은 사용자의 관심, 사용자가 통신한 개인, 및 그 개인과의 통신이 이루어진 토픽을 식별한다. 더 상세하게, KI 프로파일(46)은 클라이언트 컴퓨터의 사용자의 관심을 식별하는 하나 이상의 키워드 및 명사구를 포함한다. KI 프로파일(46)은 또한, 클라이언트 컴퓨터의 사용자가 통신한 하나 이상의 개인의 아이덴티티도 포함한다. 각각의 연락처에 대해, 연락처와의 통신이 이루어진 토픽을 설명하는 키워드 집합이 제공된다. 키워드, 명사구 및 연락처는 또한, 그들의 중요도 또는 강도를 설명한 가중치도 포함한다. KI 프로파일(46)을 생성할 때 KI 분석 엔진(52)에 의해 수행된 다양한 동작에 관한 추가적인 상세사항은 이하에 제공될 것이다.
본 발명의 실시예들에 따르면, KI 클라이언트 프로그램의 동작의 다양한 양태를 제어하기 위한 KI 데스크탑 어플리케이션(40)이 제공된다. 예를 들어, KI 데스크탑 어플리케이션(40)을 통해, 사용자는 어느 데이터가 클라이언트 컴퓨터에 수집될 수 있는지, 그 데이터가 어떻게 사용될 수 있는지, 및 익명성에 관한 다른 프리퍼런스(preference)를 설명하는 다수의 프라이버시 프리퍼런스(42)를 제공할 수 있다. 사용자 및 그 용도에 의해 지정될 수 있는 프라이버시 프리퍼런스(42)에 관 한 추가적인 상세사항은 이하에 제공될 것이다. KI 데스크탑 어플리케이션(40)은 또한, 클라이언트 컴퓨터(2) 및 서버 컴퓨터(6)에 정보 및 사람들에 대해 질의하기 위한 인터페이스를 제공한다. 검색 프로세스에 관한 추가적인 상세사항도 이하에 제공될 것이다.
본 발명의 실시예들에 따르면, KI 데스크탑 어플리케이션(40)은 네트워크(4)를 통해 사용자에 대한 KI 프로파일(46)을 서버 컴퓨터(6) 상에서 실행중인 KI 서버 컴포넌트(60)에 주기적으로 전송하도록 동작가능하다. KI 프로파일(46)에 대한 업데이트는 일반적으로 프로파일에 현저한 변화가 나타날 때 전송된다. 사용자에 대한 프라이버시 프리퍼런스(42)도 서버 컴퓨터(6)에 전송된다. KI 프로파일(46)이 서버 컴퓨터(6)에서 수신될 때, 프로파일은 프로파일 데이터베이스(64)에 저장된다. KI 시스템에 참여한 클라이언트 컴퓨터 전부로부터의 프로파일들은 프로파일 데이터베이스(64)에 집적된다. 예를 들어, 키워드들 전체에 걸쳐 노이즈 단어를 제거하기 위해 KI 프로파일의 코퍼스(corpus)에 대한 추가적인 처리가 수행될 수 있다. 이 처리는 분석 엔진(66)에 의해 수행될 수 있다.
KI 서버 컴포넌트(60)는 또한, KI 데스크탑 어플리케이션(40)으로부터 질의 요구를 수신하고 그것에 응답하도록 동작가능하다. 그러한 요구에 응답하여, KI 서버 컴포넌트(60)는 프로파일 데이터베이스(60)에 원하는 정보에 대해 질의하고, 그 검색 결과를 요구하는 클라이언트 컴퓨터에 리턴한다. 이하에 더 상세히 설명되는 바와 같이, KI 시스템 내의 몇몇 참여자들은 그들이 또 다른 참여자를 돕기를 원할 때까지 익명으로 남아있기를 원할 수 있다. 그러한 경우, 서버 컴퓨터(6)는 탐색자와 익명의 접속자 간에 중개된 통신 프로세스를 제공하는 것이 필요할 수 있다. SMTP 서버(62)는 중개된 통신 프로세스 동안 이메일 메시지를 송신 및 수신하는 데 사용된다. 검색 질의를 수신하고 그에 응답할 때 서버 컴퓨터(6)에 의해 수행되고, 중개된 통신 프로세스를 수행하기 위한 프로세스에 관한 추가적인 상세사항은 이하에 제공될 것이다.
이제 도 4를 참조하면, 각각 KI 시스템을 제공하기 위한 클라이언트 컴퓨터(2) 및 서버 컴퓨터(6)에 의해 수행되는 프로세스를 나타내는 몇몇 루틴(400A 내지 400B)이 설명될 것이다. 여기에 제공된 루틴에 대한 설명을 읽을 때, 본 발명의 다양한 실시예에 대한 논리적 동작은 (1) 컴퓨터 시스템 상에서 실행중인 컴퓨터 구현된 행위 또는 프로그램 모듈의 시퀀스로서 및/또는 (2) 컴퓨팅 시스템 내의 상호접속된 기계 논리 회로 또는 회로 모듈로서 구현된다는 것을 이해해야 한다. 이 구현은 본 발명을 구현하는 컴퓨팅 시스템의 수행 요구조건에 따른 선택 문제이다. 이에 따라, 여기에 설명된 상태도에서 나타나고 여기에 설명된 본 발명의 실시예를 구성하는 논리적 동작은 다양하게 동작, 구조적 장치, 행위 또는 모듈이라고 불린다. 본 기술분야에 숙련된 기술자는 이러한 동작, 구조적 장치, 행위 및 모듈은 여기에 개시된 청구범위 내에서 인용된 본 발명의 취지 및 범주를 벗어나지 않고서 소프트웨어, 펌웨어, 특수목적 디지털 논리 및 임의의 그 조합으로 구현될 수 있다는 것을 인식할 것이다.
루틴(400A)은 KI 시스템에 참여하는 클라이언트 컴퓨터(2A 내지 2C)에 의해 수행되는 다양한 동작을 나타낸다. 루틴(400B)은 서버 컴퓨터(6)에 의해 수행되는 다양한 동작을 나타낸다. 루틴(400A)은 KI 데스크탑 어플리케이션(40)에 의해 사용자로부터 프라이버시 프리퍼런스(42)가 수신되는 동작(402)에서 시작한다. 프라이버시 프리퍼런스(42)는 KI 시스템에 의해 수집될 수 있는 데이터의 타입, 그 데이터가 어떻게 사용될 수 있는지, 및 다른 타입의 프라이버시-관련 프리퍼런스를 지정한다. 프라이버시 프리퍼런스(42)는 클라이언트 컴퓨터(2)에서 서버 컴퓨터(6)로 전송된다. 루틴(400B)의 동작(450)에서, 서버 컴퓨터(6)는 프라이버시 프리퍼런스(42)를 수신 및 저장한다. 사용자 및 그 용도에 의해 지정될 수 있는 프라이버시 프리퍼런스의 타입에 관한 추가적인 상세사항은 도 5를 참조하여 이하에서 제공된다.
동작(402)으로부터, 루틴(400)은 KI 클라이언트 프로그램이 데이터 수집을 수행하고, KI 프로파일(46)을 구축하고, KI 프로파일(46)을 서버 컴퓨터(6)에 업로드하는 동작(404)으로 진행된다. 서버 컴퓨터(6)는 루틴(400B)의 동작(452)에서 KI 프로파일(46)을 수신 및 저장한다. 데이터의 수집 및 KI 프로파일(46)의 생성에 관한 추가적인 상세사항은 도 6과 관련하여 이하에 제공될 것이다. 동작(452)으로부터, 루틴(400B)은 서버 컴퓨터(6)가 프로파일 데이터베이스에 대해 아웃-오브-프로세스(out-of-process) 처리를 수행하는 동작(454)으로 진행된다. 예를 들어, 서버 컴퓨터(6)는 프로파일 데이터베이스로부터 노이즈 단어를 제거할 수 있다. 이 프로세스에 관한 추가적인 상세사항은 도 12와 관련하여 이하에 제공된다.
동작(404)으로부터, 루틴(400A)은 KI 데스크탑 어플리케이션(40)에서 사용자로부터 검색 질의(70)가 수신되는 동작(406)으로 진행된다. 검색 질의(70)는 우 선, 로컬로 저장된 임의의 관련 정보의 위치를 알아내기 위해 클라이언트 컴퓨터(2) 상에서 수행될 수 있다. 그 후, 질의(70)는 서버 컴퓨터(6)로 전송될 수 있는데, 여기서, 질의는 루틴(400B)의 동작(456)에서 서버 컴퓨터(6)에 의해 수신되고 처리된다. 클라이언트 컴퓨터에서 검색 요구를 수신하고 처리하는 것에 관한 추가적인 상세사항은 도 11과 관련하여 이하에 제공될 것이다. 서버 컴퓨터(6)에서 검색 요구를 수신하고 처리하는 것에 관한 추가적인 상세사항은 도 13과 관련하여 이하에서 더 상세히 설명될 것이다.
동작(458)에서, 서버 컴퓨터(6)는 검색 결과(72)를 클라이언트 컴퓨터(2)에 전송한다. 그 후, 클라이언트 컴퓨터(2)는 동작(408)에서 검색 결과를 디스플레이한다. 검색 결과는 사용자가 관심있어 하는 문서, 웹 페이지 등과 같은 정보를 식별할 수 있다. 검색 결과는 또한, 사용자에게 도움이 되는 정보를 가질 수 있는 연락처도 식별할 수 있다. 본 발명의 일 실시예에 따르면, 도움이 되는 것으로서 식별된 연락처는 그들이 특정 키워드 또는 연락처에 대해 익명으로 남아있기를 원한다는 것을 지정했을 수 있다. 검색 결과(72) 내에서 그러한 연락처가 식별되면, 그 연락처는 검색 결과에서 익명으로 식별될 것이다. 그 후, 클라이언트 컴퓨터(2)의 사용자는 동작(410)에서 익명의 연락처에 접속하기를 요구할 수 있다. 그러한 요구가 수신되면, 서버 컴퓨터(6)는 동작(460)에서 익명의 연락처와 중개된 통신 프로세스를 수행한다.
중개된 통신 프로세스에 따라, KI 서버(6)는 검색 질의를 제출하는 사용자를 대신하여 익명의 연락처에 도와 달라는 요구를 전송할 것이다. 그 요구는 검색 질 의를 제출하는 사용자를 명확하게 식별할 수도 있고 식별하지 못할 수도 있다. 그 후, 전문가는 그들이 검색 질의를 제출하는 사용자에게 도움을 제공할지에 관한 표시로 그 요구에 응답할 수 있다. 전문가가 도움을 제공할 경우, 전문가의 아이덴티티가 검색 질의를 생성한 사용자에게 전송된다. 그렇지 않은 경우, 도움이 제공되지 않을 것이라는 표시가 검색 질의를 생성한 사용자에게 전송된다. 그 후, 검색 질의를 생성한 사용자는 제공된 검색 결과로부터 또 다른 개인과 연락처하기로 선택할 수 있다. 중개된 통신 프로세스에 관한 추가적인 상세사항은 이하에 제공될 것이다.
동작(410)으로부터, 루틴(400A)은 데이터 수집이 계속되고, 프라이버시 프리퍼런스가 변경될 수 있고, 검색 요구가 다시 처리 및 수신될 수 있는 동작(402)으로 되돌아간다. 동작(460)으로부터, 루틴(400B)은 프라이버시 프리퍼런스 및 업데이트된 KI 프로파일이 수신 및 저장되고, 검색 요구가 수신 및 처리되고, 중개된 통신이 수행될 수 있는 동작(450)으로 되돌아간다. 이 개별 프로세스 각각에 관한 추가적인 상세사항은 도 5 내지 도 13과 관련하여 이하에 더 상세히 설명된다.
이제 도 5를 참조하면, KI 시스템 내의 참여자로부터 프라이버시 프리퍼런스를 수신하고 사용하는 것에 관한 추가적인 상세사항이 설명될 것이다. 상술한 바와 같이, KI 데스크탑 어플리케이션(40)은 참여한 사용자의 관심 영역 및 그의 관심 강도를 추정하는 키워드 및 명사구의 리스트를 생성한다. KI 데스크탑 어플리케이션(40)은 또한, 사용자의 사회적 네트워크, 및 그에 관련된 관계의 강도를 추정하는 사업적/사회적 연락처의 리스트도 생성한다. 이 정보는 KI 프로파일(46) 형태로 KI 서버(6)에 송신된다. 서버 컴퓨터(6)는 이 정보를 사용하여, 돕기 원하는 접속자와 탐색자를 매치한다. 탐색자를 접속자와 접속시키는 프로세스는 접속자가 그 프로세스에 편하고 계속 그 프로세스의 일부분이 되는 경우에만 실행될 수 있다. 수집된 정보가 개인적으로 유지될 KI 시스템 내의 각각의 참여자 부분에 대한 컴포트(comfort) 레벨을 생성하기 위하여, KI 시스템은 접속자에게 다수의 제어부를 제공하여, 접속자가 그 개인 정보의 수집 및 용도에 관한 프라이버시 프리퍼런스를 설정할 수 있도록 한다. 이러한 특징은 도 5에서 설명된다.
루틴(500)은 클라이언트 컴퓨터(2)의 사용자로부터 익명성에 관한 프리퍼런스가 수신되는 동작(502)에서 시작한다. 이에 관하여, 참여자는 탐색자에게 자신의 아이덴티티를 알리지 않고서 돕기로 결정할 때까지 익명으로 남아있기로 선택할 수 있다. KI 서버(6)는 중재된 통신 프로세스를 수행하여, 탐색자가 목표대상의 아이덴티티를 알게하지 않고서 탐색자와 목표대상 간의 접속을 제공한다. 목표대상은 그 요구를 거절할 것을 선택할 수 있다. 그러한 경우에, 탐색자는 다음의 개연성있는 접속자로 진행할 수 있다. 이 프로세스는 접속자가 문서와 같은 지식을 가진 탐색자 또는 다른 사람들에 접속할 때 둘 다를 취급한다.
동작(502)으로부터, 루틴(500)은 클라이언트 컴퓨터(2)에서 수집될 정보에 관한 프리퍼런스가 참여자로부터 수신될 수 있는 동작(504)으로 진행된다. 이에 관하여, 참여자는 클라이언트 컴퓨터(2)에서 수행되는 수집 프로세스로부터 임의의 유형의 아이템 또는 임의의 카테고리의 아이템을 배제할 것을 선택할 수 있다. 예를 들어, 사용자는 기밀의 또는 대리/클라이언트 특권의 이메일이 수집으로부터 배 제되어야 한다는 것을 나타낼 수 있다. 마찬가지로, 참여자는 개인적인 연락처로부터 수신되기 쉬운 이메일과 같은 특정 이메일 주소 또는 도메인으로부터의 이메일이 수집으로부터 배제되어야 한다는 것을 나타낼 수 있다. 마찬가지로, 사용자는 특정 인스턴트 메시징 연락처로부터의 인스턴트 메시지를 수집으로부터 배제할 수 있다. 이러한 방식으로, 사용자는 명시적으로, 클라이언트 컴퓨터(2)에서 모니터링될 수 있는 정보의 유형에 대한 한계를 설정할 수 있다.
동작(504)으로부터, 루틴(500)은 사용자가 하나 이상의 금지된 키워드 및 연락처를 지정할 수 있는 동작(506)으로 진행된다. 키워드 및 연락처를 금지함으로써, 컴퓨터(2)의 사용자는 그 키워드 또는 연락처가 서버 컴퓨터(6)에 전송되지 않고 프로파일 데이터 내에 저장되지 않는 것을 보장할 수 있다. 동작(506)으로부터, 루틴(500)은 연락의 빈도수에 관한 프리퍼런스가 사용자로부터 수신되는 동작(508)으로 진행된다. 이러한 방식으로, 사용자는 매주 특정 횟수만큼만, 또는 다른 기간만큼만 연락처되는 것으로 선택할 수 있다. 이 프라이버시 설정의 사용을 통해, 서버 컴퓨터(6)는 그 지정된 기간동안 지정된 횟수만큼만 사용자에 연락처할 것이다. 동작(508)으로부터, 루틴(500)은 동작(510)으로 진행된다.
동작(510)에서, 사용자는 공중 및 개인 키워드 및 연락처에 관한 프라이버시 프리퍼런스를 지정하는 것이 허용된다. 공중 키워드 및 연락처는 모든 사용자에 대해 발행되어야 하는 연락처가다. 다르게는, 특정 키워드 또는 연락처는 참여자의 친구 또는 참여자의 친구의 친구에 대해서만 발행될 수 있다. 다르게는, 참여자는 키워드 또는 연락처를, 참여자를 식별하는 데 사용될 때 참여자의 이름을 익 명으로서 처리하게 될 개인 단어로서 식별할 수 있다. 개인으로서 식별되었던 키워드 또는 연락처를 통해 참여자와 접속하기 위하여, 통신은 익명으로 KI 서버(6)를 통해 수행되어야 한다. 여기에서 설명된 중개된 통신 프로세스는 익명의 참여자와 통신하기 위한 수단을 제공한다. 중개된 통신 프로세스에 관한 추가적인 상세사항은 이하에 제공될 것이다. 동작(510)으로부터, 루틴(500)은 도 4와 관련하여 상술된 동작(404)으로 되돌아가는 동작(512)으로 진행된다.
이제 도 6을 참조하면, 클라이언트 컴퓨터(2)에서 데이터를 수집하고, KI 프로파일(46)을 구축하고, 그 프로파일을 서버 컴퓨터(6)에 업로드하기 위한 예시적인 루틴(600)이 설명될 것이다. 루틴(600)은 클라이언트 컴퓨터(2)에서 데이터가 수집되는 동작(602)에서 시작한다. 상술된 바와 같이, 데이터는 사용자가 관심있어 하는 아이템을 식별하기 위해 클라이언트 컴퓨터에서 실행중인 프로그램과의 사용자 상호작용을 모니터링함으로써 수집된다. 상술된 바와 같이, 관심있는 아이템은 워드 프로세싱 문서, 스프레드시트 문서, 프리젠테이션 문서, 이메일 메시지, 인스턴트 메시지, 웹 사이트 및 여기에 설명된 다른 유형의 정보를 포함할 수 있다. 간단히 상술된 바와 같이, KI 분석 엔진(52)은 관심있는 아이템 전부를 인덱싱하여 인덱스(50)를 생성한다. 인덱스(50)는 이메일 내의 To, From, CC 및 그 외의 필드 상에 나열된 사람들과 같은 관심있는 아이템에 관련된 컨텐츠 및 메타데이터를 포함한다. 이 데이터는 전문지식 및 사회적 네트워크의 분석의 기반을 형성한다. 본 발명의 실시예에 따라, KI 클라이언트 소프트웨어는 또한, LDAP(lightweight directory assistance protocol) 서버로부터 사용자 이름, 타이 틀, 관리자 및 다른 공용으로 사용가능한 정보와 같은 사용자에 관한 공용으로 사용가능한 정보를 획득할 수 있다. 이 데이터를 사용하여, KI 분석 엔진(52)은 동작(604)에서 인덱스(50)를 생성한다.
동작(604)으로부터, 루틴(600)은 KI 프로파일(46)을 구축하기 위해 인덱스의 컨텐츠에 대한 분석이 수행되는 동작(606)으로 진행된다. 도 7과 관련하여 이하에서 더 상세히 설명되는 바와 같이, 서버 컴퓨터(6)에 전송되는 KI 프로파일(46)을 생성하기 위해 인덱스 내의 컨텐츠에 대한 사회적 분석, 관심 분석 및 명사구 분석이 수행된다. 이러한 프로세스에 관한 추가적인 상세사항은 도 7과 관련하여 이하에 설명될 것이다.
동작(606)으로부터, 루틴(600)은 프로파일이 서버 컴퓨터(6)로 최종 전송된 이후에 새로운 정보가 KI 프로파일(46) 내에 존재하는지에 관한 결정이 이루어지는 동작(608)으로 진행된다. 프로파일 내에 새로운 정보가 존재하지 않으면, 루틴(600)은 데이터 수집 및 분석 프로세스가 진행되는 602로 되돌아간다. 그러나, KI 프로파일(46) 내에 새로운 정보가 존재하면, 루틴(600)은 사용자가 그 새로운 정보가 서버 컴퓨터(6)에 업로드되어야 하는지를 질문받을 수 있는 동작(610)으로 진행된다. 그 후, 루틴(600)은 동작(614)으로 진행된다.
동작(614)에서, 사용자가 KI 프로파일(46)에 대한 새로운 정보를 서버 컴퓨터(6)에 업로드하는 것을 인증하였는지에 관한 결정이 이루어진다. 사용자가 새로운 정보의 전송을 인증하지 않았다면, 루틴(600)은 데이터 수집 및 분석 프로세스가 진행되는 동작(602)으로 되돌아간다. 사용자가 KI 프로파일(46) 내의 새로운 데이터의 전송을 인증하였다면, 루틴(600)은 새로운 정보가 서버 컴퓨터(6)에 업로드되고 프로파일 데이터베이스(64)에 저장되는 동작(616)으로 진행된다. 동작(616)으로부터, 루틴(600)은 데이터 수집 및 분석 프로세스가 진행되는 동작(602)으로 되돌아 간다.
이제 도 7로 돌아와서, KI 프로파일(46)을 구축하기 위해 클라이언트 컴퓨터(2)에서 데이터 분석을 수행하는 프로세스에 관한 추가적인 상세사항이 제공될 것이다. 루틴(700)은 KI 프로파일(46)이 마지막으로 구축된 이후에 생성된 관심있는 새로운 아이템 각각이 식별되는 702에서 시작한다. 그 후, 루틴(700)은 현재 아이템을 가리키는 임시 변수가 그 식별된 아이템들 중 첫번째 관심있는 아이템으로 설정되는 동작(704)으로 진행된다. 이러한 방식으로, 관심있는 아이템 각각은 이하에 설명된 방식으로 개별적으로 처리될 수 있다.
동작(704)으로부터, 루틴(700)은 사회적 분석이 현재 아이템에 대해 수행되는 동작(706)으로 진행된다. 사회적 네트워크 분석은 전자 메일 메시지, 캘린더 미팅 및 인스턴트 메시지를 통해 사용자와 다른 사람들 간의 통신 패턴을 식별한다. 도 8에 관하여 이하에 더 상세히 설명되는 바와 같이, 분석은 각각의 전자 메일 메시지, 미팅 요구 및 인스턴트 메시지를 검사하고, 다양한 헤더 필드 내에 나열된 연락처를 식별한다. 모든 폴더로부터의 모든 전자 메일 메시지 및 미팅이 고려된다. 이 프로세스에 관한 추가적인 상세사항은 도 8과 관련하여 이하에 제공될 것이다.
동작(706)으로부터, 루틴(700)은 현재의 아이템에 대해 관심 분석을 수행하 는 동작(708)으로 진행된다. 관심 분석은 관심있는 각각의 아이템의 컨텐츠 및 그 주제를 검사한다. 관심 분석에 관한 추가적인 상세사항은 도 9에 관하여 이하에 제공된다.
동작(708)으로부터, 루틴은 사회적 분석 및 관심 분석의 결과가 저장되는 동작(710)으로 진행된다. 그 후, 루틴(700)은 처리될 관심있는 추가 아이템이 남아있는지에 관한 결정이 이루어지는 동작(712)으로 진행된다. 처리될 관심있는 추가 아이템이 남아있으면, 루틴(700)은 현재 아이템을 가리키는 임시 변수가 다음의 처리될 관심있는 아이템으로 증가되는 동작(714)으로 진행된다. 그 후, 루틴(700)은 현재의 아이템에 대해 사회적 분석 및 관심 분석이 수행되는 동작(706)으로 되돌아 간다.
동작(712)에서, 처리될 관심있는 추가적인 새로운 아이템이 남아있지 않다고 결정되면, 루틴(700)은 동작(712)에서 동작(716)으로 분기한다. 동작(716)에서, 관심 분석에 의해 식별된 키워드는 시간적 가치 감소(time decay)에 따라 노화된다. 이 분석은 과거에 출현한 단어는 더 최근에 출현한 다른 단어보다 현재 시간에서 덜 관련이 있다는 생각을 고려한 것이다. 그 후, 루틴은 사회적 네트워크 분석에 의해 식별된 연락처가 비대칭 관계의 존재에 기초하여 불필요한 부분이 제거되는 동작(718)으로 진행된다. 이것은 예를 들어, 송신자와 수신자 간의 왕복 통신(round trip communication)을 포함하지 않은 전자 메일 메시지와 함께 발생할 수 있다. 이것은 예를 들어, 스팸 메시지의 송신자 및 배포 리스트 송신자를 제거한다. 유사한 맥에서, 비대칭 관계를 갖는 관심있는 아이템 내에만 포함된 키워드 도 제거될 수 있다.
동작(718)으로부터, 루틴(700)은 관심 분석을 통해 식별된 키워드도 하나 이상의 프로그래밍된 요인을 이용하여 불필요한 부분이 제거될 수 있는 동작(720)으로 진행된다. 프로그래밍된 요인은 KI 클라이언트 소프트웨어와 함께 포함될 수 있고, 추가적인 프로그램 요인은 주문형 소프트웨어 개발자에 의해 나중에 추가될 수 있다. 본 발명의 일 실시예에 따르면, 프로그래밍된 요인은 확장된 기간동안 키워드의 관련도를 판단하는 일관성 요인을 포함할 수 있다. 일관성 요인을 적용하기 위하여, 각각의 전자 메일 메시지 내의 키워드의 관련도가 합산되어, 시간이 지남에 따른 사용자의 전문지식을 형성할 수 있다. 이것은 특정 키워드가 확장된 기간동안 한 사람에 관련된 것으로 나타난다면 그 키워드는 더 높은 관심 영역 내에 있다는 생각을 반영한 것이다.
사용될 수 있는 다른 프로그래밍된 요인은 확산 인덱스(diffusion index)이다. 확산 인덱스는 한 사람이 특정 토픽에 관해 통신하는 사람들의 수로서 정의된다. 확산 인덱스는 한 사람이 다수의 사람들과 한 토픽에 관해 이야기하는 경우 그 사용자가 KI 시스템 내에서 접속자가 될 가능성이 높다는 생각을 반영한 것이다. 이것은 검색 질의에 응답하여 가능성 있는 헬퍼(helper)를 찾을 때 서버 컴퓨터(6)의 처리에 관련된다.
동작(702)에서 사용될 수 있는 또 다른 프로그래밍된 요인은 폴더 요인이다. 폴더 요인은 KI 시스템에 대한 잠재적인 키워드로서 표준이 아닌 폴더 이름 내에 나타나는 모든 단어를 플래그(flag)한다. 문서 및 전자 메일 메시지 내에 동일한 단어가 나타날 때, 이 단어의 관련도는 증가할 수 있다. 폴더 요인은 사용자가 컴퓨터(2) 상에 파일 폴더를 생성할 때 관심있는 키워드를 사용할 가능성이 높다는 생각을 반영한 것이다.
사용될 수 있는 또 다른 프로그래밍된 요인은 배포 리스트를 개인으로서 취급한다. 본 기술분야에 숙련된 기술자들이 알고 있는 바와 같이, 배포 리스트는 2명 이상의 개인이 정보를 동시에 메일링받을 수 있는 메일링 리스트를 포함한다. 배포 리스트를 개인으로서 취급함으로써, 배포 리스트가 나타내는 이메일 전부에 대해 여기에서 설명되는 것과 유사한 분석이 수행된다. 이것은 배포 리스트 상에서 명명된 개인에 의해 공유된 관심을 캡쳐하는 키워드가 식별되게 한다. 다른 프로그래밍된 요인도 동작(720)에서 사용될 수 있다는 것을 인식해야 한다.
동작(720)으로부터, 루틴(700)은 사용자에 관련된 것으로서 식별된 키워드의 리스트에 대해 명사구 분석이 수행되는 동작(722)으로 진행된다. 명사구 분석은 사용자의 관심을 끄는 명사구를 식별하려고 시도한다. 그 생각은 단지 키워드 보다 더 높은 레벨의 개념을 잡는 것이다. 명사구 분석을 수행하기 위한 프로세스에 관한 추가적인 상세사항은 도 10과 관련하여 이하에 제공될 것이다. 동작(722)으로부터, 루틴(700)은 도 6과 관련하여 상술된 동작(608)으로 되돌아가는 동작(724)으로 진행된다.
이제 도 8로 돌아가면, 본 발명의 실시예에 의해 수행된 사회적 네트워크 분석에 관한 추가적인 상세사항이 제공될 것이다. 루틴(800)은 관심있는 아이템에 관련된 개인 모두가 식별되는 동작(802)에서 시작한다. 예를 들어, From, To, CC 및 BCC 필드와 같은 전자 메일 메시지의 헤더 필드 내에 나열된 개인들 각각이 식별된다. 다르게, 미팅 요구에 관하여는, 미팅에 참여한 것으로서 나열된 개인들 각각이 식별된다. 관심있는 아이템에 관련된 각각의 개인이 식별되면, 루틴(800)은 동작(802)에서 동작(804)으로 진행된다.
동작(804)에서, 개인과 아이템과의 관계에 따라 아이템에 관련된 각각의 개인에 가중치가 할당된다. 예를 들어, 전자 메일 메시지의 상이한 필드들 내에 나열되어 있는 사용자들에게 상이한 가중치들이 제공될 수 있다. 예를 들어, From 필드 내에 나열된 사용자는 To 필드 내에 나열된 사용자보다 더 높은 가중치를 부여받을 수 있다. cc 필드 내에 나열된 사용자는 BCC 필드 내에 나열된 사용자보다 더 높은 가중치를 부여받을 수 있다. 이것은 전자 메일 메시지 내에 나열된 사람들 간에 사업적 또는 사회적 관계가 존재한다는 것을 고려하고, 그 강도는 사람이 전자 메일 메시지의 다양한 필드 내의 어디에 존재하는지에 비례한다는 사실을 고려한 것이다. 가중치가 할당되고, 리스트 상에 나타나는 각각의 사람은 사용자와 그 식별된 사람 간의 사회적 또는 사업적 관계에 관련된 가중치를 얻는다.
동작(804)으로부터, 루틴(800)은 아이템에 관련하여 각각의 개인에 할당된 가중치가 그 아이템에 할당된 모든 가중치의 총 가중치에 대해 표준화되는 동작(806)으로 진행된다. 이것은 전자 메일 메시지 상에 나열된 사람들의 수가 증가함에 따라 참여자의 친밀도에 대한 메시지의 관련도가 내려갈 수 있다는 사실을 고려한 것이다. 이메일 메시지 상에 나열되는 사람이 많을수록, 그 사람들이 특정 아이템의 결과로서 사회적 네트워크에 기여할 수 있는 가중치는 더 적어진다.
본 발명의 실시예들에 따르면, 특정 아이템에 관련된 가중치는 또한 시간에 따라 감소될 수 있다. 이것은 먼 과거로부터의 전자 메일 메시지는 더 최근의 이메일보다도 사람들 간의 친밀도 표시가 더 적다는 생각을 고려한 것이다. 상술된 사회적 네트워크 분석의 결과로서, KI 프로파일은 사용자와 사용자의 연락처 각각 사이의 관계의 강도를 추정한다. 이 프로세스가 완료되면, 루틴(800)은 동작(806)으로부터, 도 7과 관련하여 상술된 동작(708)으로 되돌아가는 동작(808)으로 진행된다.
이제 도 9로 돌아와서, KI 프로파일(46)을 생성하기 위해 클라이언트 컴퓨터(2)에 의해 수행된 관심 분석에 관한 추가적인 상세사항이 설명될 것이다. 관심 분석은 관심있는 아이템 각각의 컨텐츠를 검사한다. 분석은 관심있는 아이템 각각을 열거하고, 그 컨텐츠 및 주제를 검사한다. 관심 분석의 결과는 사용자가 관심있어 하는 레벨에 대응하는 각각의 키워드에 대한 키워드 및 가중치의 리스트이다.
루틴(900)은 관심있는 현재의 아이템 내의 키워드가 식별되는 동작(902)에서 시작한다. 동작(904)에서, 현재의 아이템 내의 다양한 스피치(speech) 부분을 식별하기 위해 텍스트의 실행 내의 스피치 부분을 태그(tag)하기 위한 소프트웨어 프로그램이 사용될 수 있다. 그 후, 루틴(900)은 다양한 유형의 단어가 현재의 아이템으로부터 제거될 수 있는 동작(906)으로 진행된다. 예를 들어, "add" 및 "added"와 같은 동의어가 제거될 수 있고, 매우 흔한 다른 단어가 무시될 수 있다.
동작(906)으로부터, 루틴(900)은 관심있는 아이템에 관한 위치에 기초하여 추가적 가중치가 특정 키워드에 할당될 수 있는 동작(908)으로 진행된다. 예를 들 어, 주제 라인, 헤딩, 타이틀 또는 현재 아이템의 폴더 이름 내의 단어에 추가적 가중치가 할당될 수 있다.
동작(908)으로부터, 루틴(900)은 단어의 출현 빈도수에 기초하여 각각의 키워드의 가중치가 할당되는 동작(910)으로 진행된다. 이것은 관심있는 아이템 내에서 자주 출현하는 단어가 중요한 것으로 간주되어야 한다는 생각을 고려한 것이다. 이것은 또한, 너무 자주 출현하는 단어는 출현마다 더 적은 가중치를 가질 수 있다는 생각도 고려한 것이다. 이 프로세스를 수행하기 위해, 관심있는 아아템에 출현하는 단어의 가중치는 사용자의 인덱싱된 데이터에 출현하는 단어들의 코퍼스에 걸쳐 표준화된다.
동작(901)으로부터, 루틴(900)은 각각의 단어의 가중치가 현재의 아이템 내의 그 위치에 기초하는 동작(912)으로 진행된다. 예를 들어, 이메일 메시지의 제목에 출현한 단어는, 주제 또는 본문 내의 그 위치에 따라 가중치가 낮아지지 않는다. 그러나, 전자 메일 메시지의 본문 내에만 출현하는 단어는 본문 내의 위치에 따라 가중치가 낮아진다. 단어가 본문의 시작부로부터 더 떨어져서 출현할수록, 그 단어의 가중치는 더 낮아진다. 이것은 사람들이 더 중요한 단어 및 생각을 제목 및 이메일 메시지의 초기 부분에 놓는다는 생각을 고려한 것이다.
동작(914)에서, 현재의 아이템 내의 키워드는 소정 수치보다 더 큰 가중치를 갖는 단어로서 식별된다. 이 함수를 수행하기 위하여, 현재 아이템 내의 단어 모두의 가중치가 합산된다. 소정 수치 이상의 가중치를 갖는 단어만이 현재의 아이템에 대한 키워드로서 선택된다. 일반적으로, 이것은 관심있는 아이템마다 소수의 키워드만이 있다는 생각을 반영한 것이다.
동작(914)으로부터, 루틴(900)은 명사구 분석에 사용되기 위해 그 식별된 키워드 바로 이전 및 바로 이후에 출현하는 단어가 저장되는 동작(916)으로 진행된다. 명사구 분석에 관한 추가적인 상세사항은 도 10을 참조하여 이하에 설명된다. 동작(916)으로부터, 루틴(900)은 도 7과 관련하여 상술된 동작(710)으로 되돌아가는 동작(918)으로 진행된다.
이제 도 10을 참조하여, KI 프로파일(46)을 생성할 때 클라이언트 컴퓨터(2)에 의해 수행되는 명사구 분석 처리에 관한 추가적인 상세사항이 설명될 것이다. 사용자에 관련된 키워드 리스트가 추정되었으면 명사구 분석이 수행된다. 명사구 분석은 사용자의 관심을 끄는 2 또는 3 길이의 명사구를 찾으려고 시도한다. 이것은 명사구 분석이 단지 개별의 키워드보다 더 높은 레벨의 개념을 잡게 한다.
루틴(1000)은 명사구가 그 출현의 빈도수에 의해 식별되는 동작(1002)에서 시작한다. 이 프로세스를 수행하기 위하여, 관심있는 각각의 아이템이 분석되고 이전에 식별된 키워드가 검사된다. 각각의 키워드 이전 및 이후에 출현하는 단어는 서로 옆에 출현하는 단어의 세트를 찾기 위해 식별 및 분석된다. 그 후, 단어의 세트는 구절 내에서 출현하는 단어의 총 관련도에 기초하여 재정렬된다. 인덱싱된 문서의 타이틀 또는 헤딩 내에서 그 단어가 나타나는지에 관한 테스트도 수행된다. 나타난다면, 명사구는 KI 프로파일(46)에서 사용자에 관련된다. 이것은 단어 및 관련 명사구가 이메일 및 다른 대화에서 여러번 로우(row) 형태로 출현하는 것을 고려한 것이다. 이러한 동일한 단어는 또한, 문서의 타이틀, 및 다양한 문서 의 청취에서도 출현할 가능성이 높다.
동작(1002)으로부터, 루틴(1000)은 명사구를 식별하기 위해 관심있는 아이템의 헤딩 및 타이틀이 사용되는 동작(1004)으로 진행된다. 이 프로세스를 수행하기 위하여, 사용자에 의해 작성되고 판독된 문서가 검사되고, 그 문서로부터 타이틀 및 헤딩이 추출된다. 그 후, 타이틀 및 헤딩 내에 포함된 이러한 명사구는 KI 프로파일(46) 내에 포함된 명사구 리스트에 추가된다. 동작(1004)으로부터, 루틴(1000)은 도 7과 관련하여 상술된 동작(724)으로 되돌아가는 동작(1006)으로 진행된다.
이제 도 11을 참조하여, 클라이언트 컴퓨터(2)에서 검색 요구를 수신하고 처리하기 위한 예시적인 루틴(1100)이 설명될 것이다. 간단히 상술된 바와 같이, KI 데스크탑 어플리케이션(40)은 사용자 클라이언트 컴퓨터(2)의 검색 질의를 수신할 수 있다. 이것은 동작(1102)에서 발생한다. 검색 요구의 수신에 응답하여, 루틴(1100)은 클라이언트 컴퓨터(2) 상에 포함된 데이터의 로컬 검색이 요구된 질의에 대해 수행되는 동작(1104)으로 진행된다. 이것은 클라이언트 컴퓨터(2)에 로컬인 요구된 검색 질의에 관련된 임의의 데이터가 사용자에 대해 식별되게 한다.
루틴(1100)은 동작(1104)으로부터, 질의 요구가 서버 컴퓨터(6) 상에서 실행중인 KI 서버 컴포넌트(60)에 전송되는 동작(1160)으로 진행된다. 도 12 및 13과 관련하여 이하에 더 상세히 설명되는 바와 같이, 검색 질의는 클라이언트 컴퓨터(2)에 의해 처리되어, 검색 질의를 만족하는 프로파일 데이터베이스(64) 내의 정보 또는 개인을 식별한다. 그 후, 결과는 서버 컴퓨터(6)에서, 그 결과가 사용자에게 디스플레이되는 클라이언트 컴퓨터(2)로 리턴된다. 동작(1106)으로부터, 루틴(1100)은 도 4를 참조하여 상술된 동작(408)으로 되돌아가는 동작(1108)으로 진행된다.
이제 도 12를 참조하여, 프로파일 데이터베이스의 컨텐츠에 대하여 서버 컴퓨터(6)에서 아웃-오브-프로세스(out-of-process) 분석을 수행하기 위한 예시적인 루틴(1200)이 설명될 것이다. 아웃-오브-프로세스 분석은 검색 질의의 문맥으로부터 분석이 발생한다는 사실을 나타낸다. 이 처리는 그 분석의 정상 과정 동안에 서버 컴퓨터(6)에 의해 수행된다.
루틴(1200)은 프로파일 데이터베이스(64)의 코퍼스 내의 노이즈 단어가 제거되는 동작(1202)에서 시작한다. 노이즈 단어는 무질서한 큰 모집단 내의 사용자들 중에서 매우 흔한 단어이다. 다른 유형의 아웃-오브-프로세스 분석이 서버 컴퓨터(6)에 의해 수행될 수 있다는 것을 이해해야 한다. 동작(1202)으로부터, 루틴은 도 4와 관련하여 상술된 동작(456)으로 되돌아가는 동작(1204)으로 진행된다.
이제 도 13을 참조하여, 검색 질의를 수신하고 그에 응답하기 위한 서버 컴퓨터(6)에 의해 수행되는 프로세스를 나타내는 예시적인 루틴(1300)이 제공될 것이다. 본 발명의 일 양태에 따라, 프로파일 데이터베이스(64)에 질의하고자 하는 요구는 특정 토픽을 도울 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있음을 이해해야 한다. 이러한 경우에, 특정 토픽에 전문가이고, 검색 질의를 작성한 사용자로부터 소정의 사회적 거리 내에 있는 개인을 식별하기 위해 프로파일 데이터베이스(64)가 검색될 수 있다. 사회적 거리는 접속된 개인들 그룹 중 에 임의의 2명의 개인을 접속시키는 데 필요한 개인 수를 나타낸다.
본 발명의 다른 양태에 따르면, 프로파일 데이터베이스(64)에 질의하고자 하는 요구는 프로파일 데이터베이스 내의 다른 개인과 접속할 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있다. 이러한 유형의 질의를 실행하기 위하여, 프로파일 데이터베이스(64)는 검색 질의를 작성한 사용자로부터 소정의 사회적 거리 내에 있고, 또한 개인이 그들의 KI 프로파일 내의 연락처로서 나열되게 하는 개인을 식별하기 위해 검색될 수 있다.
또 다른 시나리오에서, 프로파일 데이터베이스에 질의하고자 하는 요구는 기업 외부에 위치하고 있어 프로파일 데이터베이스(64) 내에서 직접 식별되지 않는 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구의 형태를 취할 수 있다. 이러한 유형의 질의를 수행하기 위하여, 프로파일 데이터베이스는 질의받은 개인이 그들의 KI 프로파일 내의 연락처로서 나열되게 하는 개인을 식별하기 위해 검색될 수 있다. 대안적으로, 개인은 그들에 대해 프로젝팅되었던 키워드에 기초하여 식별될 수 있다. 이것은 예를 들어, 사용자가 KI 시스템 내의 참여자가 아니고 KI 시스템 내의 참여자인 다른 사람들의 연락처일 때 발생한다. 본 발명의 이러한 양태에 따라, 사용자가 다른 사람들에 의해 사용자에게 프로젝팅된 키워드에 기초한 참여자가 아니더라도, KI 시스템은 사용자에 대한 프로파일을 구축한다. 그 후, KI 시스템 내의 참여자가 아닌 개인은 단지 KI 시스템 내의 임의의 다른 참여자로서 식별 및 위치될 수 있다.
본 발명의 또 다른 양태에 따르면, 검색 질의는 검색자에게 공통적인 관심을 가지고 있는 개인의 위치를 알아내고, 개인이 판독 또는 사용하고 있었던 자료를 결정하기 위해 수행될 수 있다. 이러한 경우에, 검색 요구는 유사한 관심을 가지고 있는 다른 개인에 의해 소모된 정보의 위치를 알아내기 위해 프로파일 데이터베이스에 질의하고자 하는 요구의 형태를 취한다. 이 질의를 수행하기 위해, 프로파일 데이터베이스는 요구를 생성한 사용자로서 유사한 관심을 가지고 있는 개인을 식별하기 위해 검색된다. 이후에, 프로파일 데이터베이스는 그들의 KI 프로파일의 컨텐츠로부터 유사한 관심을 갖는 개인에 의해 소모된 정보를 식별하기 위해 검색된다. 도 13은 이러한 유형의 질의 각각을 수행하기 위한 추상적인 방법을 설명한다.
루틴(1300)은 클라이언트 컴퓨터(2)로부터 서버 컴퓨터(6)에서 질의 용어가 수신되는 동작(1302)에서 시작한다. 그 후, 루틴(1300)은 현재의 사회적 거리에 대응하는 변수가 1로 설정되는 동작(1304)으로 진행된다. 그 후, 루틴은 프로파일 데이터베이스(64)에 대해 현재의 사회적 거리 내의 질의 용어에 대한 검색이 수행되는 동작(1306)으로 진행된다. 질의 용어에 대응하는 프로파일 데이터베이스(64) 내에서 키워드가 식별되면, 이러한 키워드는 관련도 순서에 의해 순위화된다.
동작(1306)으로부터, 루틴(1300)은 사회적 거리가 소정 수치보다 더 큰지에 관한 결정이 이루어지는 동작(1308)으로 진행된다. 일 실시예에서, 이 수치는 2이다. 현재의 사회적 거리가 소정 수치보다 크지 않은 경우, 루틴(1300)은 현재의 사회적 거리가 증가하는 동작(1310)으로 분기한다. 그 후, 루틴은 동작(1310)으로부터, 현재의 사회적 거리에서 추가적인 검색이 수행되는 동작(1306)으로 다시 분 기한다.
동작(1308)에서, 현재의 사회적 거리가 소정의 수치보다 더 크다고 결정되면, 루틴(1300)은 검색 결과가 클라이언트 컴퓨터(2)의 사용자에게 리턴되는 동작(1312)으로 진행된다. 그 후, 루틴(1300)은 도 4와 관련하여 상술된 동작(458)으로 되돌아가는 동작(1314)으로 진행된다. 간단히 상술된 바와 같이, 검색 질의동안 개인 키워드가 연락처에 관련된 것으로서 식별되는 경우, 사용자의 아이덴티티는 검색 결과와 공중으로 이용가능해 지지 않는다. 오히려, KI 서버 컴퓨터(6)는 사용자를 식별한 검색 질의를 제출하는 사용자와 목표대상 간의 중개된 통신 프로세스를 수행한다. 중개된 통신 프로세스에 따라, 검색 결과는 오직 익명으로 전문가를 식별한다.
익명의 전문가에 연락처하기 위해, 검색하는 사용자는 전문가에 연락처하기 위해 KI 서버 컴퓨터에 요구를 제출할 수 있다. 요구에 기초하여, KI 서버는 사용자가 검색 질의를 제출하는 도중에 도와 달라는 요구를 전문가에게 전송할 것이다. 요구는 검색 질의를 제출하는 사용자를 명시적으로 식별할 수도 있고 식별하지 못할 수도 있다.
그 후, 전문가는 검색 질의를 제출하는 사용자에게 도움을 제공할지에 관한 표시를 이용하여 요구에 응답할 수 있다. 전문가가 도움을 제공하면, 전문가의 아이덴티티가 검색 질의를 생성한 사용자에게 전송된다. 제공하지 않으면, 도움이 제공되지 않을 것이라는 표시가 검색 질의를 생성한 사용자에게 전송된다. 그 후, 검색 질의를 생성한 사용자는 제공된 검색 결과로부터 또 다른 개인에 연락처하는 것으로 선택할 수 있다.
상술한 것에 기초하여, 본 발명의 다양한 실시예는 KI 프로파일을 생성하기 위한 방법, 시스템, 장치 및 컴퓨터-판독가능 매체를 포함한다는 것을 인식해야 한다. 상술된 사항, 예 및 정보는 본 발명의 구성의 제조 및 사용에 대한 완전한 설명을 제공한다. 본 발명의 다수의 실시예는 본 발명의 취지 및 범주를 벗어나지 않고서 이루어질 수 있기 때문에, 본 발명은 이후의 청구범위 내에 속한다.
본 발명은 사용자의 관심, 사용자가 통신한 개인, 및 사용자와의 통신이 이루어진 토픽을 식별하는 사용자에 대한 지식 교환(knowledge interchange "KI") 프로파일을 생성하기 위한 방법, 시스템 및 장치를 제공한다.

Claims (21)

  1. 지식 교환(knowledge interchange) 질의에 응답하기 위한 방법으로서,
    복수의 클라이언트 컴퓨터로부터 지식 교환 프로파일을 수신하여 프로파일 데이터베이스에 저장하는 단계 - 상기 지식 교환 프로파일 각각은 하나 이상의 키워드, 하나 이상의 명사구 및 하나 이상의 연락처(contact)를 포함함 - ;
    상기 프로파일 데이터베이스로부터 노이즈 단어들을 제거하기 위해, 상기 프로파일 데이터베이스의 컨텐츠에 대해 아웃-오브-프로세스(out-od-process) 처리를 수행하는 단계;
    상기 프로파일 데이터베이스에 질의하고자 하는 요구를 수신하는 단계;
    검색 결과를 식별하기 위해 상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하는 단계; 및
    상기 질의에 대한 응답으로서 상기 검색 결과를 리턴하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 특정 토픽에 도움을 줄 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하는 단계는,
    상기 특정 토픽에 전문가이고 상기 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 단계를 포함하는 방법.
  3. 제1항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 상기 프로파일 데이터베이스 내의 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하는 단계는,
    상기 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있고 상기 개인을 자신들 지식 교환 프로파일 내에 연락처로서 나열하는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 단계를 포함하는 방법.
  4. 제1항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 기업체 외부에 위치한 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하는 단계는,
    상기 개인을 잔신의 지식 교환 프로파일 내에 연락처로서 나열하는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 단계를 포함하는 방법.
  5. 제1항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 유사한 관심을 가지고 있는 다른 개인들에 의해 소모된 정보의 위치를 알아내고자 하는 사용자에 의한 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하는 단계는,
    상기 요구를 생성한 사용자와 유사한 관심을 갖는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하고, 상기 유사한 관심을 갖는 개인들의 지식 교환 프로파일의 컨텐츠로부터 유사한 관심을 갖는 상기 개인들에 의해 소모된 정보를 식별하는 단계를 포함하는 방법.
  6. 제5항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 특정 토픽에 도움을 줄 수 있는 개인의 위치를 알아내고자 하는 사용자에 의한 요구를 포함하고, 상기 개인은 상기 요구를 생성한 사용자로부터 소정의 사회적 거리 내에 위치하는 방법.
  7. 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 제1항의 방법을 수행하게 하는 컴퓨터-실행가능 명령어들이 저장되어 있는 컴퓨터-판독가능 매체.
  8. 제1항의 방법을 수행할 수 있는 컴퓨터-제어된 장치.
  9. 지식 교환 질의를 처리하기 위한 시스템으로서,
    클라이언트 컴퓨터 상에서 실행중인 하나 이상의 프로그램과의 사용자 상호작용을 모니터링함으로써 상기 클라이언트 컴퓨터의 사용자에 대응하는 지식 교환 프로파일을 생성하도록 동작가능한 클라이언트 컴퓨터 - 상기 지식 교환 프로파일은 상기 사용자의 관심, 상기 사용자가 통신한 개인, 상기 개인과의 통신이 이루어진 토픽을 식별함 - ; 및
    복수의 클라이언트 컴퓨터로부터 지식 교환 프로파일을 수신하여 프로파일 데이터베이스에 저장하고, 상기 프로파일 데이터베이스에 질의하고자 하는 요구를 수신하고, 상기 프로파일 데이터베이스에 대해 상기 수신된 질의를 실행하여 검색 결과를 식별하고, 상기 질의에 대한 응답으로서 상기 검색 결과를 리턴하도록 동작가능한 서버 컴퓨터
    를 포함하는 시스템.
  10. 제9항에 있어서,
    상기 하나 이상의 프로그램은 워드 프로세싱 어플리케이션 프로그램, 스프레드시트 어플리케이션 프로그램, 프리젠테이션 어플리케이션 프로그램, 개인 정보 관리자 프로그램, 인스턴트 메시징 어플리케이션 프로그램, 웹 브라우저 프로그램 및 오퍼레이팅 시스템 프로그램 중 하나 이상을 포함하는 시스템.
  11. 제10항에 있어서,
    상기 클라이언트 컴퓨터 상에서 실행중인 하나 이상의 프로그램과의 사용자 상호작용을 모니터링하는 것은 하나 이상의 관심있는 아이템을 식별하고,
    상기 지식 교환 프로파일을 생성하는 것은 상기 관심있는 아이템 각각에 대하여,
    사회적 네트워크 분석(social network analysis)을 수행하는 것;
    관심 분석(interest analysis)을 수행하는 것; 및
    명사구 분석(noun phrase analysis)을 수행하는 것
    을 포함하는 시스템.
  12. 제11항에 있어서,
    상기 사회적 네트워크 분석을 수행하는 것은
    상기 관심있는 아이템에 관련된 연락처를 식별하는 것;
    상기 관심있는 아이템에 관련된 연락처 각각에 대한 가중치를 생성하는 것 - 상기 가중치는 각각의 개인과 상기 아이템과의 관계에 부분적으로 기초함 - ; 및
    상기 각각의 연락처에 대한 가중치를 표준화하는 것
    을 포함하는 시스템.
  13. 제12항에 있어서,
    상기 관심 분석을 수행하는 것은
    상기 관심있는 아이템 내의 하나 이상의 키워드를 식별하는 것;
    상기 키워드 각각에 가중치를 할당하는 것;
    상기 관심있는 아이템 내의 상기 키워드의 위치에 기초하여 상기 키워드 각각에 대한 상기 가중치를 조정하는 것;
    상기 관심있는 아이템 내의 상기 키워드의 출현 빈도수에 기초하여 상기 키워드 각각에 대한 상기 가중치를 조정하는 것; 및
    소정의 수치 이하의 가중치를 갖는 키워드를 삭제하는 것
    을 포함하는 시스템.
  14. 제13항에 있어서,
    상기 관심 분석을 수행하는 것은 상기 명사구 분석에 사용하기 위해, 각각의 키워드 이전 및 이후의 단어를 저장하는 것을 더 포함하는 시스템.
  15. 제14항에 있어서,
    상기 명사구 분석은
    상기 관심있는 아이템 내에서 하나 이상의 다른 단어와 함께 반복되는 하나 이상의 키워드를 식별함으로써 명사구를 식별하는 것; 및
    상기 관심있는 아이템 내에서 다른 단어와 함께 사용된 키워드의 위치에 기초하여 명사구를 식별하는 것
    을 포함하는 시스템.
  16. 제15항에 있어서,
    상기 사용자와의 비대칭 관계(asymmetric relationship)에 기초하여 연락처를 삭제하는 것을 더 포함하는 시스템.
  17. 제16항에 있어서,
    프로그래밍된 요인에 기초하여 키워드를 삭제하는 것을 더 포함하는 시스템.
  18. 제16항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 특정 토픽에 도움을 줄 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 수신된 질의를 실행하는 것은
    특정 토픽에서 전문가이고, 상기 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있는 개인을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 것을 포함하는 시스템.
  19. 제18항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 상기 프로파일 데이터베이스 내의 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 수신된 질의를 실행하는 것은
    상기 검색 질의를 생성한 사용자로부터 소정의 사회적 거리 내에 있고 상기 개인을 자신들의 지식 교환 프로파일 내에 연락처로서 나열하는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 것을 포함하는 시스템.
  20. 제18항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 기업체 외부에 위치하는 또 다른 개인에 접속할 수 있는 개인의 위치를 알아내고자 하는 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 수신된 질의를 실행하는 것은
    상기 개인을 자신의 지식 교환 프로파일 내에 연락처로서 나열하는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하는 것을 포함하는 시스템.
  21. 제18항에 있어서,
    상기 프로파일 데이터베이스에 질의하고자 하는 요구는 유사한 관심을 가지고 있는 다른 개인들에 의해 소모된 정보의 위치를 알아내고자 하는 사용자에 의한 요구를 포함하고,
    상기 프로파일 데이터베이스에 대해 수신된 질의를 실행하는 것은
    상기 요구를 생성한 사용자와 유사한 관심을 갖는 개인들을 식별하기 위해 상기 프로파일 데이터베이스를 검색하고, 상기 유사한 관심을 갖는 개인들의 지식 교환 프로파일의 컨텐츠로부터 유사한 관심을 갖는 상기 개인들에 의해 소모된 정 보를 식별하는 것을 포함하는 시스템.
KR1020050074807A 2004-09-20 2005-08-16 지식 교환 질의를 수신하고 그에 응답하기 위한 방법, 시스템, 장치 및 컴퓨터-판독가능 저장 매체 KR101201067B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/945,149 2004-09-20
US10/945,149 US7593924B2 (en) 2004-09-20 2004-09-20 Method, system, and apparatus for receiving and responding to knowledge interchange queries

Publications (2)

Publication Number Publication Date
KR20060050484A true KR20060050484A (ko) 2006-05-19
KR101201067B1 KR101201067B1 (ko) 2012-11-14

Family

ID=35457608

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050074807A KR101201067B1 (ko) 2004-09-20 2005-08-16 지식 교환 질의를 수신하고 그에 응답하기 위한 방법, 시스템, 장치 및 컴퓨터-판독가능 저장 매체

Country Status (5)

Country Link
US (1) US7593924B2 (ko)
EP (1) EP1638023A3 (ko)
JP (1) JP5147174B2 (ko)
KR (1) KR101201067B1 (ko)
CN (1) CN100530177C (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008115692A1 (en) * 2007-03-19 2008-09-25 Microsoft Corporation Using scenario-related information to customize user experiences
WO2008124695A3 (en) * 2007-04-10 2008-12-04 Utbk Inc Systems and methods to facilitate searches via social network
US7797311B2 (en) 2007-03-19 2010-09-14 Microsoft Corporation Organizing scenario-related information and controlling access thereto
US8078604B2 (en) 2007-03-19 2011-12-13 Microsoft Corporation Identifying executable scenarios in response to search queries
US9094506B2 (en) 2007-09-25 2015-07-28 Yellowpages.Com Llc Systems and methods to connect members of a social network for real time communication
US9100359B2 (en) 2007-04-10 2015-08-04 Yellowpages.Com Llc Systems and methods to facilitate real time communications between members of a social network
KR20160010652A (ko) * 2007-04-03 2016-01-27 구글 인코포레이티드 불충분한 탐색 콘텐츠 식별
US9424581B2 (en) 2007-04-10 2016-08-23 Yellowpages.Com Llc Systems and methods to facilitate real time communications and commerce via answers to questions

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7707167B2 (en) * 2004-09-20 2010-04-27 Microsoft Corporation Method, system, and apparatus for creating a knowledge interchange profile
US7730010B2 (en) * 2004-09-20 2010-06-01 Microsoft Corporation Method, system, and apparatus for maintaining user privacy in a knowledge interchange system
US7792967B2 (en) * 2006-07-14 2010-09-07 Chacha Search, Inc. Method and system for sharing and accessing resources
US8280921B2 (en) * 2006-07-18 2012-10-02 Chacha Search, Inc. Anonymous search system using human searchers
US7801879B2 (en) * 2006-08-07 2010-09-21 Chacha Search, Inc. Method, system, and computer readable storage for affiliate group searching
US8108501B2 (en) 2006-11-01 2012-01-31 Yahoo! Inc. Searching and route mapping based on a social network, location, and time
US7917154B2 (en) 2006-11-01 2011-03-29 Yahoo! Inc. Determining mobile content for a social network based on location and time
US20080168033A1 (en) * 2007-01-05 2008-07-10 Yahoo! Inc. Employing mobile location to refine searches
US8320368B2 (en) 2007-06-18 2012-11-27 Utbk, Inc. Systems and methods to provide communication references based on recommendations to connect people for real time communications
US8532276B2 (en) 2007-06-26 2013-09-10 Ingenio Llc Systems and methods to provide telephonic connections via concurrent calls
US20090210403A1 (en) * 2008-02-20 2009-08-20 Menachem Reinshmidt System and method for extended structured searching architecture
US8676854B2 (en) * 2008-03-18 2014-03-18 International Business Machines Corporation Computer method and apparatus for using social information to guide display of search results and other information
US8589392B2 (en) 2009-01-15 2013-11-19 Microsoft Corporation Indexing and searching dynamically changing search corpora
EP2438571A4 (en) * 2009-06-02 2014-04-30 Yahoo Inc AUTOMATICALLY ADDRESSED ADDRESS BOOK
US20110010243A1 (en) * 2009-07-10 2011-01-13 Microsoft Corporation User control of advertising content
US20110225170A1 (en) * 2010-03-11 2011-09-15 Microsoft Corporation Adaptable relevance techniques for social activity streams
US20120197906A1 (en) * 2011-01-28 2012-08-02 Michael Landau Systems and methods for capturing profession recommendations, create a profession ranking
KR20130044888A (ko) * 2011-10-25 2013-05-03 주식회사 케이티 복수의 단말을 이용한 교육 콘텐츠 제공 방법 및 시스템
US9483550B1 (en) * 2012-05-31 2016-11-01 Veritas Technologies Llc Method and system to enhance e-discovery by custodian ranking
US9087130B2 (en) * 2012-10-04 2015-07-21 Google Inc. Generating snippets for prominent users for information retrieval queries
US20150020154A1 (en) * 2013-07-10 2015-01-15 Daniel Setton Anonymous coupling platform method and system
US10789316B2 (en) * 2016-04-08 2020-09-29 Pearson Education, Inc. Personalized automatic content aggregation generation
US10642848B2 (en) * 2016-04-08 2020-05-05 Pearson Education, Inc. Personalized automatic content aggregation generation
US10325215B2 (en) 2016-04-08 2019-06-18 Pearson Education, Inc. System and method for automatic content aggregation generation
CN108965566B (zh) * 2017-05-17 2021-04-09 北京博瑞彤芸文化传播股份有限公司 一种留言信息的处理方法
CN107241429A (zh) * 2017-06-30 2017-10-10 江西博瑞彤芸科技有限公司 信息交互处理方法和系统

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8824591D0 (en) * 1988-10-20 1988-11-23 Royal Free Hosp School Med Fractionation process
US6856986B1 (en) * 1993-05-21 2005-02-15 Michael T. Rossides Answer collection and retrieval system governed by a pay-off meter
US5717923A (en) * 1994-11-03 1998-02-10 Intel Corporation Method and apparatus for dynamically customizing electronic information to individual end users
US6092049A (en) * 1995-06-30 2000-07-18 Microsoft Corporation Method and apparatus for efficiently recommending items using automated collaborative filtering and feature-guided automated collaborative filtering
US6041311A (en) * 1995-06-30 2000-03-21 Microsoft Corporation Method and apparatus for item recommendation using automated collaborative filtering
US6049777A (en) * 1995-06-30 2000-04-11 Microsoft Corporation Computer-implemented collaborative filtering based method for recommending an item to a user
US6021403A (en) * 1996-07-19 2000-02-01 Microsoft Corporation Intelligent user assistance facility
CA2184518A1 (en) * 1996-08-30 1998-03-01 Jim Reed Real time structured summary search engine
US5941944A (en) * 1997-03-03 1999-08-24 Microsoft Corporation Method for providing a substitute for a requested inaccessible object by identifying substantially similar objects using weights corresponding to object features
US6374275B2 (en) * 1997-06-11 2002-04-16 Scientific-Atlanta, Inc. System, method, and media for intelligent selection of searching terms in a keyboardless entry environment
US6078928A (en) * 1997-12-12 2000-06-20 Missouri Botanical Garden Site-specific interest profiling system
AU5465099A (en) * 1998-08-04 2000-02-28 Rulespace, Inc. Method and system for deriving computer users' personal interests
US6317722B1 (en) * 1998-09-18 2001-11-13 Amazon.Com, Inc. Use of electronic shopping carts to generate personal recommendations
US6115709A (en) * 1998-09-18 2000-09-05 Tacit Knowledge Systems, Inc. Method and system for constructing a knowledge profile of a user having unrestricted and restricted access portions according to respective levels of confidence of content of the portions
US6421655B1 (en) * 1999-06-04 2002-07-16 Microsoft Corporation Computer-based representations and reasoning methods for engaging users in goal-oriented conversations
US6415257B1 (en) * 1999-08-26 2002-07-02 Matsushita Electric Industrial Co., Ltd. System for identifying and adapting a TV-user profile by means of speech technology
US6701362B1 (en) * 2000-02-23 2004-03-02 Purpleyogi.Com Inc. Method for creating user profiles
WO2001076120A2 (en) * 2000-04-04 2001-10-11 Stick Networks, Inc. Personal communication device for scheduling presentation of digital content
US6687696B2 (en) * 2000-07-26 2004-02-03 Recommind Inc. System and method for personalized search, information filtering, and for generating recommendations utilizing statistical latent class models
US20030046401A1 (en) * 2000-10-16 2003-03-06 Abbott Kenneth H. Dynamically determing appropriate computer user interfaces
US6746120B2 (en) * 2000-10-30 2004-06-08 Novartis Ag Method and system for ordering customized cosmetic contact lenses
US7013308B1 (en) * 2000-11-28 2006-03-14 Semscript Ltd. Knowledge storage and retrieval system and method
US7526434B2 (en) * 2001-01-30 2009-04-28 Linda Sharp Network based system and method for marketing management
US20020124253A1 (en) * 2001-03-02 2002-09-05 Eyer Mark Kenneth Personal information database with privacy for targeted advertising
MXPA03011976A (es) * 2001-06-22 2005-07-01 Nervana Inc Sistema y metodo para la recuperacion, manejo, entrega y presentacion de conocimientos.
US6778979B2 (en) * 2001-08-13 2004-08-17 Xerox Corporation System for automatically generating queries
US7120695B2 (en) * 2001-08-23 2006-10-10 Telefonaktiebolaget Lm Ericsson (Publ) Method for limiting conveyance information of user profile within mobile Internet transactions
DE10247928A1 (de) * 2001-10-31 2003-05-28 Ibm Auslegen von Empfehlungssystemen, so dass sie allgemeine Eigenschaften im Empfehlungsprozess behandeln
US20040078216A1 (en) * 2002-02-01 2004-04-22 Gregory Toto Clinical trial process improvement method and system
EP1481346B1 (en) * 2002-02-04 2012-10-10 Cataphora, Inc. A method and apparatus to visually present discussions for data mining purposes
WO2003069442A2 (en) * 2002-02-12 2003-08-21 Sandpiper Software, Inc. Ontology frame-based knowledge representation in the unified modeling language (uml)
US7167910B2 (en) * 2002-02-20 2007-01-23 Microsoft Corporation Social mapping of contacts from computer communication information
US7249117B2 (en) * 2002-05-22 2007-07-24 Estes Timothy W Knowledge discovery agent system and method
US7523394B2 (en) 2002-06-28 2009-04-21 Microsoft Corporation Word-processing document stored in a single XML file that may be manipulated by applications that understand XML
US7657907B2 (en) * 2002-09-30 2010-02-02 Sharp Laboratories Of America, Inc. Automatic user profiling
US20060041505A1 (en) * 2002-10-11 2006-02-23 900Email Inc. Fee-based message delivery system
WO2004038564A2 (en) 2002-10-25 2004-05-06 Pandesa Corporation Owner-brokered knowledge sharing machine
US7249123B2 (en) * 2002-10-31 2007-07-24 International Business Machines Corporation System and method for building social networks based on activity around shared virtual objects
US7177880B2 (en) * 2002-12-19 2007-02-13 International Business Machines Corporation Method of creating and displaying relationship chains between users of a computerized network
US7472110B2 (en) * 2003-01-29 2008-12-30 Microsoft Corporation System and method for employing social networks for information discovery
US7305389B2 (en) 2004-04-15 2007-12-04 Microsoft Corporation Content propagation for enhanced document retrieval
US7359894B1 (en) * 2004-06-30 2008-04-15 Google Inc. Methods and systems for requesting and providing information in a social network
US7580363B2 (en) * 2004-08-16 2009-08-25 Nokia Corporation Apparatus and method for facilitating contact selection in communication devices
US7707167B2 (en) * 2004-09-20 2010-04-27 Microsoft Corporation Method, system, and apparatus for creating a knowledge interchange profile
US7730010B2 (en) * 2004-09-20 2010-06-01 Microsoft Corporation Method, system, and apparatus for maintaining user privacy in a knowledge interchange system

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008115692A1 (en) * 2007-03-19 2008-09-25 Microsoft Corporation Using scenario-related information to customize user experiences
US7797311B2 (en) 2007-03-19 2010-09-14 Microsoft Corporation Organizing scenario-related information and controlling access thereto
US7818341B2 (en) 2007-03-19 2010-10-19 Microsoft Corporation Using scenario-related information to customize user experiences
US8078604B2 (en) 2007-03-19 2011-12-13 Microsoft Corporation Identifying executable scenarios in response to search queries
KR20160010652A (ko) * 2007-04-03 2016-01-27 구글 인코포레이티드 불충분한 탐색 콘텐츠 식별
WO2008124695A3 (en) * 2007-04-10 2008-12-04 Utbk Inc Systems and methods to facilitate searches via social network
US9100359B2 (en) 2007-04-10 2015-08-04 Yellowpages.Com Llc Systems and methods to facilitate real time communications between members of a social network
US9407594B2 (en) 2007-04-10 2016-08-02 Yellowpages.Com Llc Systems and methods to facilitate real time communications and commerce via a social network
US9424581B2 (en) 2007-04-10 2016-08-23 Yellowpages.Com Llc Systems and methods to facilitate real time communications and commerce via answers to questions
US9836767B2 (en) 2007-04-10 2017-12-05 Yellowpages.Com Llc Systems and methods to facilitate real time communications and commerce via answers to questions
US9094506B2 (en) 2007-09-25 2015-07-28 Yellowpages.Com Llc Systems and methods to connect members of a social network for real time communication
US9787728B2 (en) 2007-09-25 2017-10-10 Yellowpages.Com Llc Systems and methods to connect members of a social network for real time communication

Also Published As

Publication number Publication date
EP1638023A3 (en) 2007-01-03
JP5147174B2 (ja) 2013-02-20
CN1752974A (zh) 2006-03-29
US20060064404A1 (en) 2006-03-23
JP2006092539A (ja) 2006-04-06
KR101201067B1 (ko) 2012-11-14
CN100530177C (zh) 2009-08-19
US7593924B2 (en) 2009-09-22
EP1638023A2 (en) 2006-03-22

Similar Documents

Publication Publication Date Title
KR101201067B1 (ko) 지식 교환 질의를 수신하고 그에 응답하기 위한 방법, 시스템, 장치 및 컴퓨터-판독가능 저장 매체
KR101150095B1 (ko) 지식 교환 시스템에서 사용자 프라이버시를 유지하기 위한 방법, 시스템, 장치 및 컴퓨터-판독가능 저장 매체
KR101150068B1 (ko) 지식 교환 프로파일을 생성하기 위한 방법, 시스템 및 컴퓨터-판독가능 저장 매체
Ehrlich et al. Searching for experts in the enterprise: combining text and social network analysis
RU2343537C2 (ru) Компьютерный поиск с помощью ассоциативных связей
US8499041B2 (en) Collaborative browsing and related methods and systems
US20060122974A1 (en) System and method for a dynamic content driven rendering of social networks
US20070179945A1 (en) Determining relevance of electronic content
US20050222890A1 (en) Instant meeting preparation architecture
US20150095319A1 (en) Query Expansion, Filtering and Ranking for Improved Semantic Search Results Utilizing Knowledge Graphs
AU2006279982A1 (en) Annotating shared contacts with public descriptors
GB2352542A (en) Information retrieval augmented by the use of communication relationship data
US10380121B2 (en) System and method for query temporality analysis
US11258744B2 (en) Digital conversation management
US20030158747A1 (en) Knowledge management system
Metze et al. The" spree" expert finding system
Adar et al. Shock: Aggregating information while preserving privacy
Metze et al. A community based expert finding system
WO2002093418A1 (en) Personal document system and method
Löschner et al. A Better Practice of Knowledge-based Collaboration with VKC

Legal Events

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

Payment date: 20151016

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 7