(19) 대한민국특허청(KR) (12) 등록특허공보(B1) (51) 국제특허분류(Int. Cl.) G06F 17/30 (2006.01) G06F 17/00 (2006.01) (21) 출원번호 10-2009-0081089 (22) 출원일자 2009년08월31일 심사청구일자 2009년08월31일 (65) 공개번호 10-2011-0023308 (43) 공개일자 2011년03월08일 (56) 선행기술조사문헌 KR1020090061436 A* *는 심사관에 의하여 인용된 문헌 (45) 공고일자 2012년04월03일 (11) 등록번호 10-1132393 (24) 등록일자 2012년03월26일 (73) 특허권자 서울시립대학교 산학협력단 서울특별시 동대문구 서울시립대로 163 (전농동, 서울시립대학교) (72) 발명자 이병정 서울특별시 영등포구 여의나루로 7, 광장아파트 10동 409호 (여의도동) 장도 서울특별시 동대문구 서울시립대로 163, 정보기술 관 325호 (전농동, 서울시립대학교) 김한준 서울특별시 동대문구 서울시립대로 163, 정보기술 관 408호 (전농동, 서울시립대학교) (74) 대리인 박영우, 김민태 전체 청구항 수 : 총 9 항 심사관 : 엄인권 (54) 발명의 명칭 폭소노미와 링크 기반 랭킹 기법을 이용한 집단지성 기반 웹 페이지 검색 방법 및 이를 수행 하기 위한 시스템 (57) 요 약 폭소노미와 링크 기반 랭킹 기법을 조합한 집단지성 기반의 웹 문서 검색 방법 및 이를 수행하기 위한 시스템이 제안된다. 웹 문서 검색 시스템은, 사용자로부터 제공되는 검색 키워드에 상응하는 웹 페이지들을 수집하여, 분 석하고, 사용자에게 검색 결과를 표시하는 트랜잭션 분석부와, 웹 문서 검색 프로세스에 대한 정보를 저장하고 관리하는 자원 관리부와, 폭소노미와 링크 기반 랭킹 기법을 조합하여 사용자들의 요청을 분석하고, 분석된 결과 에 따라 사용자들의 행동 및 관심을 분류하여 자원 관리부에 제공하는 트랜잭션 처리부를 포함한다. 이에 따라, 집단지성 기반하에 폭소노미와 링크 기반 랭킹 기법을 조합함으로써 인터넷에서 대량의 웹 페이지 중 사용자에게 적응하도록 검색에서 사용자 행위와 선호도를 함께 반영하여 더 나은 웹 문서 검색 결과를 제공할 수 있다. 대 표 도 - 도3-1 -
이 발명을 지원한 국가연구개발사업 과제고유번호 NT080624 부처명 서울시정개발연구원 연구사업명 2008년도 서울형산업 기술개발 지원사업 연구과제명 집단지성 기반 사용자 인지 웹 검색시스템 개발 (Collective Intelligence-based User-Aware Web Search System) 주관기관 서울시립대학교 산학협력단 연구기간 2008. 10. 1. ~ 2010. 9. 30. (24개월) - 2 -
특허청구의 범위 청구항 1 사용자에 의해 웹 페이지들의 태그를 포함하는 검색 키워드가 입력됨에 따라, 자원 관리 계층의 스토리지 서버 는 상기 검색 키워드를 저장하고, 사용자 태그에 관한 정보를 트랜잭션 처리 계층으로 전송하는 단계; 상기 트랜잭션 처리 계층의 폭소노미 매니저는 상기 태그를 편집하고, 상기 태그들 사이의 관계를 추론하여 사 용자에 의한 웹 페이지의 클릭 여부를 분석하는 단계; 상기 트랜잭션 처리 계층의 인덱서 모듈은 상기 태그를 기반으로 웹 페이지를 분류하는 단계; 트랜잭션 분석 계층의 랭킹 모듈은 사용자들의 기록되어 있는 행동을 반영하기 위해 페이지랭크 스코어를 연산 하는 개인화된 링크 기반 랭킹 알고리즘을 이용하여 동일 카테고리에 속하는 웹 페이지들을 정렬하는 단계; 및 상기 트랜잭션 분석 계층의 웹 검색 인터페이스는 순서화된 웹 문서 검색 결과를 사용자에게 표시하는 단계를 포함하고, 상기 폭소노미 매니저는, 사용자가 클릭한 모든 웹 페이지에 고유의 ID를 부여한 후 태그 트리를 생성하고, 동일한 태그를 사용한 사용자의 수를 계산하며, 반복적인 프로그램에 의해 계산된 가장 높은 빈도의 태그를 웹 페이지의 마지막 카테고리로 태그 데이터베이스 에 삽입하는 것을 특징으로 하는 웹 문서 검색 방법. 청구항 2 삭제 청구항 3 제1항에 있어서, 상기 태그 트리에서, 상기 태그는 부모 노드로 정의되고, 상기 태그에 대응하는 웹 페이지는 자식 노드로 정의되는 것을 특징으로 하는 웹 문서 검색 방법. 청구항 4 제1항에 있어서, 상기 페이지랭크 스코어는 하기하는 수학식 2에 의해 정의되는 것을 특징으로 하는 웹 문서 검 색 방법: [수학식 2] (여기서, α는 댐핑 팩터(damping factor)로서, 0.85이다. V i 는 사용자 맞춤값으로서, 아래의 수학식 3에 의해 정의된다. 사용자의 맞춤값은 페이지 i에 연결된 모든 페이지에서 사용자가 클릭한 수와 모든 페이지에 연결되 어있는 웹 페이지에서 사용자가 클릭한 수를 계산하여 결정되어 웹 페이지에 대한 사용자의 선호 정도를 반영한 다.) [수학식 3] (여기서, C ji (u)는 사용자 u가 페이지 j에서 페이지 i로 클릭한 횟수로서, 아래의 수학식 4에 의해 정의되고, U 는 전체 사용자의 집합이다.) - 3 -
[수학식 4] (수학식 1에서, S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수로서, 아래의 수학식 5에 의해 정의된다. n은 페이지의 총 수이다.) [수학식 5] 청구항 5 사용자로부터 제공되는 검색 키워드에 상응하는 웹 페이지들을 수집하여, 분석하고, 사용자에게 검색 결과를 표 시하는 트랜잭션 분석부; 웹 문서 검색 프로세스에 대한 정보를 저장하고 관리하는 자원 관리부; 및 폭소노미와 링크 기반 랭킹 기법을 조합하여 사용자들의 요청을 분석하고, 분석된 결과에 따라 사용자들의 행동 및 관심을 분류하여 상기 자원 관리부에 제공하는 트랜잭션 처리부를 포함하고, 상기 트랜잭션 처리부는, 웹 페이지에 상응하는 태그를 편집하고, 상기 태그들 사이의 관계를 추론하고, 사용자의 행동을 분석하는 폭소 노미 매니저; 및 상기 태그를 기반으로 웹 페이지를 카테고리별로 분류하는 인덱서 모듈을 포함하는 것을 특징으로 하는 웹 문서 검색 시스템. 청구항 6 제5항에 있어서, 상기 트랜잭션 분석부는, 사용자에 의한 검색 키워드를 수신하고, 상기 검색 키워드에 상응하는 웹 페이지를 사용자에게 제공하는 웹 검 색 인터페이스; 웹 페이지들을 수집하는 웹 크롤러(crawler); 및 사용자에게 상기 검색 키워드에 상응하는 웹 페이지들이 제공되도록 동일한 카테고리에 속하는 웹 페이지들을 정렬시켜 상기 웹 검색 인터페이스에 제공하는 랭킹 모듈을 포함하는 것을 특징으로 하는 웹 문서 검색 시스템. 청구항 7 제5항에 있어서, 상기 자원 관리부는, 폭소노미 저장소 및 링크 정보 저장소를 포함하는 스토리지 서버를 포함하는 것을 특징으로 하는 웹 문서 검색 시스템. 청구항 8 삭제 청구항 9 제5항에 있어서, 상기 폭소노미 매니저는 특정 웹 페이지에 대응하여 사용자에 의해 입력되는 태그를 해당 웹 페이지에 기입하는 폭소노미 에디터; 태그가 기입된 웹 페이지의 사용자에 의한 클릭 여부를 체크하는 유저 검색 분석기; 및 사용자에 의해 특정 웹 페이지가 클릭됨에 따라, 해당 페이지에 아이디를 부여하여 태그와 페이지간의 태그 트 - 4 -
리를 생성하는 태그 연계 추출기를 포함하는 것을 특징으로 하는 웹 문서 검색 시스템. 청구항 10 제9항에 있어서, 상기 인덱서 모듈은 폭소노미 처리된 웹 페이지에 기입된 언어를 분석하는 언어분석기(syntactic analyzer); 상기 언어분석기에 의해 분석된 언어의 특징을 선택하는 특징 선택기; 상기 특징 선택기에 의해 선택된 언어에 대응하는 웹 페이지의 태그를 인식하는 태그 인식기; 및 상기 태그 인식기에 의해 인식된 태그의 의미를 분류하여 상기 자원 관리부에 저장하는 의미분류기(semantic classifier)를 포함하는 것을 특징으로 하는 웹 문서 검색 시스템. 청구항 11 제6항에 있어서, 상기 랭킹 모듈에 의해 계산되는 페이지랭크 스코어는, 하기하는 수학식 2에 의해 정의되는 것을 특징으로 하는 웹 문서 검색 시스템: [수학식 2] (여기서, α는 댐핑 팩터(damping factor)로서, 0.85이다. V i 는 사용자 맞춤값으로서, 아래의 수학식 3에 의해 정의된다. 사용자의 맞춤값은 페이지 i에 연결된 모든 페이지에서 사용자가 클릭한 수와 모든 페이지에 연결되 어있는 웹 페이지에서 사용자가 클릭한 수를 계산하여 결정되어 웹 페이지에 대한 사용자의 선호 정도를 반영한 다.) [수학식 3] (여기서, C ji (u)는 사용자 u가 페이지 j에서 페이지 i로 클릭한 횟수로서, 아래의 수학식 4에 의해 정의되고, U 는 전체 사용자의 집합이다.) [수학식 4] (수학식 2에서, S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수로서, 아래의 수학식 5에 의해 정의된다. n은 페이지의 총 수이다.) [수학식 5] 명 세 서 발명의 상세한 설명 [0001] 기 술 분 야 본 발명은 웹 문서 검색 방법 및 이를 수행하기 위한 시스템에 관한 것으로, 보다 상세하게는 폭소노미와 링크 - 5 -
기반 랭킹 기법을 조합한 집단지성 기반의 웹 문서 검색 방법 및 이를 수행하기 위한 시스템에 관한 것이다. [0002] [0003] [0004] [0005] [0006] 배 경 기 술 일반적으로 정보 검색 시스템은 정보 수요자가 필요하다고 예측되는 정보나 데이터를 미리 수집, 가공, 처리하 여 찾기 쉬운 형태로 축적해놓은 데이터베이스로부터 요구에 적합한 정보를 신속하게 찾아내어 정보 요구자에게 제공되는 시스템을 말한다. 종래에는 이러한 정보 검색 시스템을 활용하여 웹 포탈 사이트를 구축하였다. 상기 웹 포탈 사이트에서는 정보 검색시스템을 활용하여 인터넷 등을 통해 웹 사이트 등에서 정보를 수집하고 가공하여 처리하며 사용자 단말, 예를들어 컴퓨터나 무선 단말기 등에게 검색된 정보를 제공하게 된다. 한편, 정보통신 및 기술의 발달로 새로운 분야 및 용어가 급격히 증가하는 추세에서 종래의 정보 검색 방법을 적용하는 경우, 새로운 분야나 용어가 증가함에 따라 관련된 정보 검색 시스템을 수시로 경신하는 작업이 필요 하다. 특히, 방대한 문서에 대한 정보가 저장된 문서 DB를 수정하는 일은 많은 시간과 비용이 소요되기 때문에 수시로 실시하기 어려운 단점이 있다. 다른 한편으로, 인터넷에서 이용 가능한 정보가 기하급수적으로 증가함으로써, 인터넷 사용자들은 엄청난 양의 인터넷 문서 중 필요한 웹 페이지를 찾기 위해 매일 많은 시간을 보내야 한다. 엄청난 양의 웹 페이지를 처리하 기 위해 수많은 웹 문서 검색 기술이 개발되고 있고 웹 문서 검색 엔진은 더욱 복잡해지고 있다. 그러나 검색의 질적인 측면을 보면, 검색된 전체 웹 페이지 중 절반 정도는 불필요한 것으로 보고되고 있다. 비록 이런 검색 시스템이 사용자의 선호가 반영된 적절한 웹 페이지를 찾기 위해 개발됐을 지라도, 아직 해결되 지 않은 몇 가지 문제가 있다. 가장 큰 문제는 검색 시스템이 인터넷에서 사용자의 선호를 반영한 수많은 웹 페 이지를 얻을 수 있을 지라도, 웹 페이지의 엄청난 양 때문에 그것을 수집하고 분석한 것은 여전히 만족스럽지 못하다는 점이다. 발명의 내용 [0007] [0008] 해결 하고자하는 과제 이에 본 발명의 기술적 과제는 이러한 점에 착안한 것으로, 본 발명의 목적은 인터넷에서 대량의 웹 페이지 중 사용자에게 적응하도록 검색에서 사용자 행위와 선호도를 함께 반영하여 더 나은 검색 결과를 얻기 위해서 집단 지성을 기반으로 하는 웹 문서 검색 방법을 제공하는 것이다. 본 발명의 다른 목적은 상기한 웹 문서 검색 방법을 수행하기 위한 웹 문서 검색 시스템을 제공하는 것이다. [0009] [0010] 과제 해결수단 상기한 본 발명의 목적을 실현하기 위하여 일실시예에 따른 웹 문서 검색 방법은, 사용자에 의해 웹 페이지들의 태그를 포함하는 검색 키워드가 입력됨에 따라, 자원 관리 계층의 스토리지 서버는 상기 검색 키워드를 저장하 고, 사용자 태그에 관한 정보를 트랜잭션 처리 계층으로 전송하는 단계와, 상기 트랜잭션 처리 계층의 폭소노미 매니저는 상기 태그를 편집하고, 상기 태그들 사이의 관계를 추론하여 사용자에 의한 웹 페이지의 클릭 여부를 분석하는 단계와, 상기 트랜잭션 처리 계층의 인덱서 모듈은 상기 태그를 기반으로 웹 페이지를 분류하는 단계 와, 트랜잭션 분석 계층의 랭킹 모듈은 사용자들의 기록되어 있는 행동을 반영하기 위해 페이지랭크 스코어를 연산하는 개인화된 링크 기반 랭킹 알고리즘을 이용하여 동일 카테고리에 속하는 웹 페이지들을 정렬하는 단계 와, 상기 트랜잭션 분석 계층의 웹 검색 인터페이스는 순서화된 웹 문서 검색 결과를 사용자에게 표시하는 단계 를 포함하고, 하고, 상기 폭소노미 매니저는, 사용자가 클릭한 모든 웹 페이지에 고유의 ID를 부여한 후 태그 트리를 생성하고, 동일한 태그를 사용한 사용자의 수를 계산하며, 반복적인 프로그램에 의해 계산된 가장 높은 빈도의 태그를 웹 페이지의 마지막 카테고리로 태그 데이터베이스에 삽입하는 것을 특징으로 한다. 삭제 [0011] 본 발명의 실시예에서, 상기 페이지랭크 스코어는 하기하는 수학식 2에 의해 정의되는 것을 특징으로 하는 웹 문서 검색 방법: - 6 -
[0012] [수학식 2] [0013] [0014] (여기서, α는 댐핑 팩터(damping factor)로서, 0.85이다. V i 는 사용자 맞춤값으로서, 아래의 수학식 3에 의해 정의된다. 사용자의 맞춤값은 페이지 i에 연결된 모든 페이지에서 사용자가 클릭한 수와 모든 페이지에 연결되 어있는 웹 페이지에서 사용자가 클릭한 수를 계산하여 결정되어 웹 페이지에 대한 사용자의 선호 정도를 반영한 다.) [0015] [수학식 3] [0016] [0017] (여기서, C ji (u)는 사용자 u가 페이지 j에서 페이지 i로 클릭한 횟수로서, 아래의 수학식 4에 의해 정의되고, U 는 전체 사용자의 집합이다.) [0018] [수학식 4] [0019] [0020] (수학식 2에서, S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수로서, 아래의 수학식 5에 의해 정의된다. n은 페이지의 총 수이다.) [0021] [수학식 5] [0022] [0023] [0024] [0025] [0026] [0027] 상기한 본 발명의 다른 목적을 실현하기 위하여 일실시예에 따른 웹 문서 검색 시스템은, 사용자로부터 제공되 는 검색 키워드에 상응하는 웹 페이지들을 수집하여, 분석하고, 사용자에게 검색 결과를 표시하는 트랜잭션 분 석부와, 웹 문서 검색 프로세스에 대한 정보를 저장하고 관리하는 자원 관리부와, 폭소노미와 링크 기반 랭킹 기법을 조합하여 사용자들의 요청을 분석하고, 분석된 결과에 따라 사용자들의 행동 및 관심을 분류하여 상기 자원 관리부에 제공하는 트랜잭션 처리부를 포함하고, 상기 트랜잭션 처리부는, 웹 페이지에 상응하는 태그를 편집하고, 상기 태그들 사이의 관계를 추론하고, 사용자의 행동을 분석하는 폭소노미 매니저와, 상기 태그를 기 반으로 웹 페이지를 카테고리별로 분류하는 인덱서 모듈을 포함하는 것을 특징으로 한다. 본 발명의 실시예에서, 상기 트랜잭션 분석부는, 사용자에 의한 검색 키워드를 수신하고, 상기 검색 키워드에 상응하는 웹 페이지를 사용자에게 제공하는 웹 검색 인터페이스와, 웹 페이지들을 수집하는 웹 크롤러(crawle r)와, 사용자에게 상기 검색 키워드에 상응하는 웹 페이지들이 제공되도록 동일한 카테고리에 속하는 웹 페이지 들을 정렬시켜 상기 웹 검색 인터페이스에 제공하는 랭킹 모듈을 포함할 수 있다. 본 발명의 실시예에서, 상기 자원 관리부는, 폭소노미 저장소 및 링크 정보 저장소를 포함하는 스토리지 서버를 포함할 수 있다. 본 발명의 실시예에서, 상기 폭소노미 매니저는 특정 웹 페이지에 대응하여 사용자에 의해 입력되는 태그를 해 당 웹 페이지에 기입하는 폭소노미 에디터와, 태그가 기입된 웹 페이지의 사용자에 의한 클릭 여부를 체크하는 유저 검색 분석기와, 사용자에 의해 특정 웹 페이지가 클릭됨에 따라, 해당 페이지에 아이디를 부여하여 태그와 페이지간의 태그 트리를 생성하는 태그 연계 추출기를 포함할 수 있다. 삭제 - 7 -
[0028] [0029] [0030] 본 발명의 실시예에서, 상기 인덱서 모듈은, 폭소노미 처리된 웹 페이지에 기입된 언어를 분석하는 언어분석기 (syntactic analyzer)와, 상기 언어분석기에 의해 분석된 언어의 특징을 선택하는 특징 선택기와, 상기 특징 선 택기에 의해 선택된 언어에 대응하는 웹 페이지의 태그를 인식하는 태그 인식기와, 상기 태그 인식기에 의해 인 식된 태그의 의미를 분류하여 상기 자원 관리부에 저장하는 의미분류기(semantic classifier)를 포함할 수 있다. 본 발명의 실시예에서, 상기 랭킹 모듈에 의해 계산되는 페이지랭크 스코어는, 하기하는 수학식 2에 의해 정의 될 수 있다. [수학식 2] [0031] [0032] (여기서, α는 댐핑 팩터(damping factor)로서, 0.85이다. V i 는 사용자 맞춤값으로서, 아래의 수학식 3에 의해 정의된다. 사용자의 맞춤값은 페이지 i에 연결된 모든 페이지에서 사용자가 클릭한 수와 모든 페이지에 연결되 어있는 웹 페이지에서 사용자가 클릭한 수를 계산하여 결정되어 웹 페이지에 대한 사용자의 선호 정도를 반영한 다.) [0033] [수학식 3] [0034] [0035] (여기서, C ji (u)는 사용자 u가 페이지 j에서 페이지 i로 클릭한 횟수로서, 아래의 수학식 4에 의해 정의되고, U 는 전체 사용자의 집합이다.) [0036] [수학식 4] [0037] [0038] (수학식 2에서, S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수로서, 아래의 수학식 5에 의해 정의된다. n은 페이지의 총 수이다.) [0039] [수학식 5] [0040] [0041] 효 과 이러한 웹 문서 검색 방법 및 이를 수행하기 위한 시스템에 의하면, 집단지성 기반하에 폭소노미와 링크 기반 랭킹 기법을 조합함으로써 인터넷에서 대량의 웹 페이지 중 사용자에게 적응하도록 검색에서 사용자 행위와 선 호도를 함께 반영하여 더 나은 웹 문서 검색 결과를 제공할 수 있다. [0042] [0043] 발명의 실시를 위한 구체적인 내용 이하, 첨부한 도면들을 참조하여, 본 발명을 보다 상세하게 설명하고자 한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포 함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 첨부된 도면에 있어서, 구조물들 의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하여 도시한 것이다. - 8 -
[0044] [0045] [0046] [0047] [0048] [0049] [0050] [0051] [0052] [0053] [0054] [0055] 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의 해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된 다. 예를들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사 하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단 계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 또한, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발 명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있 다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하 는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형 식적인 의미로 해석되지 않는다. 본 발명에 따른 웹 문서 검색 시스템은 집단지성을 기반으로 한다. 여기서, 집단지성은 새로운 통신 기술의 도 래로 인해 점점 더 많은 관심을 받고 있다. 상기 집단지성은 한 그룹의 사람들이 행동이나 환경, 아이디어를 결 합하여 만들어진 새로운 식견을 의미한다. 집단지성을 기반으로 하는 웹 문서 검색 시스템은 폭소노미(Folksonomy)와 링크(Link)의 결합을 통해 사용자의 선호에 따라 웹 페이지의 순위를 정한다. 여기서, 폭소노미(folksonomy)는 협력적으로 콘텐츠를 설명하고 분류 하기 위한 태그(tag)를 생성하고 관리하는 새로운 분류 기법이다. 이것은 콘텐츠를 설명하고 분류하기 위하여 각 웹 페이지에 첨부된 태그나 라벨을 의미한다. 사용자들은 각 페이지의 의미에 맞게 자유롭고 주관적으로 태 그라 불리는 키워드들을 단다. 누구든 태그로 어떤 단어든지 선택할 수 있고, 한 페이지에 여러 개의 태그를 달 수 있다. 웹 2.0은 아무도 데이터를 소유하지 않고 어떤 프로그래밍 또는 인터넷 환경에서도 모든 사람이 데이터를 사용 할 수 있는 플랫폼을 의미한다. 그동안 웹 사이트는 일방적으로 TV나 라디오처럼 정보와 서비스를 제공하기만 해왔는데 이를 미디어라고 표현하기도 했다. 지금까지는 웹 사이트에 올린 데이터 또는 서비스되는 데이터를 이 동시키거나 활용할 수 없었다. 그러나 웹 2.0 환경이 구축되면 자유롭게 데이터를 이동시킬 수 있게 된다. 웹 1.0을 가리키는 대표적인 서비스가 웹 포털 서비스라면 웹 2.0은 플랫폼을 의미한다. 웹 포털 사이트의 서비스 는 사용자가 마음대로 할 수 없지만 플랫폼인 웹 2.0에서는 사용자가 원하는 대로 데이터를 활용할 수 있다. 이 러한 웹 2.0에서는 태그를 사용하여 웹 문서를 작성하는 예가 증가하고 있다. 도 1은 본 발명에 따른 웹 문서 검색 시스템을 설명하기 위한 블록도이다. 도 1을 참조하면, 본 발명에 따른 웹 문서 검색 시스템의 구조는 버스 라인 프레임워크(Bus line Framework)에 기반을 두고 있다. 상기 버스 라인 프레임워크(11)의 양측에는 관리(Management) 계층과 자원(Resource) 계층이 존재한다. 본 실시예에서, 계층이라는 용어는 논리적으로 구분한 용어일 뿐 하드웨어적으로 구분한 용어는 아니 다. 한편, 버스 라인 프레임워크는 웹 페이지 저장부로 정의될 수 있고, 관리 계층은 관리부로 정의될 수 있으 며, 자원 계층은 자원저장부로 정의될 수 있다. 하지만, 이하에서는 계층이라는 용어를 그대로 사용하기로 한다. 상기 데이터 버스(Data Bus) 계층에는 대량의 웹 페이지 데이터가 저장된다. 상기 관리 계층에는 폭소노미 매니저(12), 검색 엔진(13) 및 QA 엔진(14)이 구비된다. 폭소노미 매니저(12)는 대량의 데이터를 분석하고 분류하는 역할을 수행한다. 즉, 폭소노미 매니저(12)는 데이터 버스(11)에 저장된 문 서 중 태그를 가진 웹 문서로부터 태그를 추출하여 추출된 태그를 주제로 할당하고, 폭소노미를 사용하여 분야 를 할당한다. 상기 검색 엔진(13)과 QA 엔진(14)은 사용자의 요청을 처리하고 검색 결과를 사용자에게 반환하는 역할을 수행한다. 상기 자원 계층에는 폭소노미 저장소(15) 및 링크 정보 저장소(16)가 구비되고, 상기 관리 계층의 구성요소의 해당 정보를 저장하는 역할을 수행한다. 도 2는 사용자들이 웹 페이지에 태그를 단 예를 설명하기 위한 개념도이다. - 9 -
[0056] [0057] [0058] [0059] 도 2를 참조하면, 사용자들을 각각 10명으로 구성된 그룹 A 와 그룹 B 로 무작위로 나눴다. 그룹 A에 포함된 3명은 페이지 B의 태그로 "portal"을 사용하고 동일한 페이지에 대해 나머지 7명은 news 란 태그를 사용했다. 본 실시예에서는 동일한 페이지에 동일한 태그를 사용한 사용자들의 수로 한 페이지 당 한 태 그의 빈도를 정의하고, 그 페이지에 할당된 각 태그의 빈도를 사용해 페이지의 분류를 결정한다. 즉, 가장 큰 빈도를 가진 태그가 그 페이지의 카테고리가 된다. 도 2에 따르면, "news" 태그의 빈도가 portal 태그의 빈도보다 많았기 때문에 검색 시스템은 페이지 B의 카 테고리로 "news"를 선택한다. 이와 마찬가지로 "news"와 "music" 태그가 각각 페이지 A와 페이지 C의 카테고리 가 된다. 표 1은 도 2에 대한 페이지 분류의 결과를 보여준다. 표 1 [0060] [0061] 본 실시예에서, 페이지 A와 페이지 B의 카테고리가 동일한 카테고리인 news"임을 알 수 있다. [0062] [0063] [0064] [0065] [0066] [0067] [0068] 폭소노미의 가장 중요한 이점은 사용자들이 빠르게 검색할 수 있고 연관된 웹 페이지를 쉽게 분류할 수 있다는 것이다. 폭소노미는 평평하고, 비계층적이고, 공유된 용어를 제공하는 것으로 알려져 있다. 이것이 많은 유용한 특징을 가졌더라도 검색에 사용될 때는 결정적인 문제가 있다. 즉, 검색된 페이지들의 순서가 각 페이지에 할당 된 태그의 인기에 크게 의존하기 때문이다. 결과적으로, 폭소노미가 사용자들의 행동은 잘 반영하는 반면, 그들 의 선호를 충분히 반영하진 못한다. 따라서 고품질 검색 엔진들은 일제히 사용자의 선호를 수용하는 추가적인 기법을 고려할 필요가 있다. 이에 따라, 본 발명에서는 가능한 기법들 중 하나인 링크 기반 랭킹 기법을 활용한 다. 한편, 지금까지 사용자들은 사용자들의 요청에 맞는 페이지를 얻어왔지만 사용자들이 얻은 페이지의 순서는 단 순히 크롤링(crawling)되는 순서였다. 페이지의 집합이 크다면, 사용자들이 불필요한 많은 콘텐츠로부터 각 검 색어를 참조하여 실제로 그들이 관심 있는 페이지들을 선별해야한다. 이 문제를 해결하기 위해서 웹 검색 시스 템에서 랭킹된 결과를 얻을 필요가 있다. 일반적으로, 현재 존재하는 페이지 추천 시스템에서 사용되는 랭킹 기 법들은 콘텐츠 기반 랭킹과 링크 기반 랭킹중 어느 하나의 카테고리를 통해 얻는다. 콘텐츠 기반 랭킹 결정 방식은, 사용자의 선호와 관련된 정보를 분석하고 주어진 검색어에 대한 스코어 순서로 페이지를 돌려준다. 이 스코어의 통계는 모든 페이지의 콘텐츠에 기반하고 있다. 대부분의 검색 엔진이 계속 이 런 방식으로 동작한다 하더라도, 다른 사람들이 그 페이지에 대해 제공하는 정보, 명확히 말해서 누가 그 페이 지를 연결했었는지, 그들이 그 페이지에 대해 뭐라고 말했는지에 대한 정보를 고려함으로써 약간은 향상될 수 있다. 이렇게 향상된 방법을 링크 기반 랭킹이라고 부른다. 도 3은 본 발명의 실시예에 따른 웹 문서 검색 시스템을 설명하기 위한 블록도이다. 도 3을 참조하면, 본 발명의 실시예에 따른 웹 문서 검색 시스템(100)은 트랜잭션 분석 계층(Transaction analysis layer), 자원 관리 계층(Resources management layer) 및 트랜잭션 처리 계층(Transaction process layer)으로 이루어진다. 본 실시예에서, 계층이라는 용어는 논리적으로 구분한 용어일 뿐 하드웨어적으로 구분 한 용어는 아니다. 한편, 트랜잭션 분석 계층은 트랜잭션 처리부로 정의될 수 있고, 자원 관리 계층은 자원 관 리부로 정의될 수 있으며, 트랜잭션 처리 계층은 트랜잭션 처리부로 정의될 수 있다. 하지만, 이하에서는 계층 이라는 용어를 그대로 사용하기로 한다. 상기 트랜잭션 분석 계층에는 웹 검색 인터페이스(112), 웹 크로럴러(114), 랭킹 모듈(116)이 구비되어, 사용자 로부터 제공되는 검색 키워드에 상응하는 웹 페이지들을 수집하여, 분석하고, 사용자에게 검색 결과를 표시한다. 상기 웹 검색 인터페이스(112)는 사용자에 의한 검색 키워드를 수신하고, 상기 검색 키워드에 상응하는 웹 페이 지를 사용자에게 제공한다. - 10 -
[0069] [0070] [0071] [0072] [0073] [0074] [0075] [0076] [0077] [0078] [0079] [0080] [0081] [0082] [0083] [0084] [0085] [0086] [0087] [0088] [0089] [0090] 상기 웹 크로럴러(114)는 웹 상에 존재하는 웹 페이지들을 수집한다. 상기 랭킹 모듈(116)은 사용자에게 상기 검색 키워드에 상응하는 웹 페이지들이 제공되도록 동일한 카테고리에 속하는 웹 페이지들을 정렬시켜 상기 웹 검색 인터페이스에 제공한다. 상기 트랜잭션 분석 계층에는 도 1에서 설명된 시스템 구조의 검색엔진 컴포넌트와 QA 엔진 컴포넌트가 구비된 다. 즉, 트랜잭션 분석 계층에서, 사용자로부터 정보가 수집 및 분석되고, 자원 관리 계층에서, 정보의 분석결 과가 전송된다. 또한, 트랜잭션 분석 계층에서 사용자에게 검색 결과를 표시하는 동작이 이루어진다. 상기 자원 관리 계층에는 스토리지 서버(120)가 구비되어, 검색 프로세스에 대한 정보가 관리되고 저장된다. 상기 스토리지 서버(120)는 도 1에서 설명된 폭소노미 저장소와 링크 정보 저장소가 구비된다. 상기 트랜잭션 처리 계층에는 폭소노미 매니저(130) 및 인덱서 모듈(140)이 구비되어, 폭소노미와 링크 기반 랭 킹 기법을 조합하여 사용자들의 요청을 분석하고, 분석된 결과에 따라 사용자들의 행동 및 관심을 분류하여 상 기 자원 관리부에 제공한다. 상기 폭소노미 매니저(130)는 폭소노미 에디터(132), 태그 연계 추출기(134), 유저 검색 분석기(136)를 포함하 여, 웹 페이지에 상응하는 태그를 편집하고, 상기 태그들 사이의 관계를 추론하고, 사용자의 행동을 분석한다. 상기 폭소노미 에디터(132)는 특정 웹 페이지에 대응하여 사용자에 의해 입력되는 태그를 해당 웹 페이지에 기 입한다. 상기 태그 연계 추출기(134)는 사용자에 의해 특정 웹 페이지가 클릭됨에 따라, 해당 페이지에 아이디를 부여하 여 태그와 페이지간의 태그 트리를 생성한다. 유저 검색 분석기(136)는 태그가 기입된 웹 페이지의 사용자에 의한 클릭 여부를 체크한다. 상기 인덱서 모듈(140)은 언어분석기(142), 특징선택기(144), 태그인식기(146), 의미분류기(148)를 포함하여, 상기 태그를 기반으로 웹 페이지를 카테고리별로 분류한다. 상기 언어분석기(142)는 폭소노미 처리된 웹 페이지에 기입된 언어를 분석한다. 상기 특징선택기(144)는 상기 언어분석기에 의해 분석된 언어의 특징을 선택한다. 상기 태그인식기(146)는 상기 특징 선택기에 의해 선택된 언어에 대응하는 웹 페이지의 태그를 인식한다. 상기 의미분류기(148)는 상기 태그 인식기에 의해 인식된 태그의 의미를 분류하여 상기 자원 관리부에 저장한다. 상기 트랜잭션 처리 계층에는 폭소노미 관리 컴포넌트가 구비된다. 즉, 상기 트랜잭션 처리 계층에서 사용자들 의 요청이 분석되고, 분석된 결과를 근거로 사용자들의 행동이나, 관심에 대한 정보가 분류된다. 이러한 본 발명에 따르면, 대상 웹 페이지에 연결된 다른 웹 페이지를 고려하는 개인화된 링크 기반 랭킹 기법 을 도입함으로써, 검색의 정확도를 높여 웹 페이지의 중요성을 측정할 수 있는 한계를 높였다. 또한, 본 발명에 따르면, 북마크 같은 특정 데이터 소스에 의존하지 않으며 개인화된 링크 기반 랭킹 기법을 도 입함으로써, 웹 문서 검색 시스템의 정확도를 향상시킬 수 있다. 또한, 본 발명에 따르면, 폭소노미와 개인화된 링크 기반 랭킹 기법을 결합한 집단지성에 기반을 두어 웹 문서 검색 시스템을 설계하였으므로, 사용자의 행동과 선호를 고려해서 사용자가 관련된 웹 페이지들을 빠르게 찾을 수 있다. 또한, 본 발명에 따르면, 인터넷의 전체 웹 페이지 중에서 사용자의 선호를 수용하는 연관된 웹 페이지들을 찾 을 수 있다. 도 4는 본 발명에 따른 폭소노미와 링크 기반 랭킹 기법의 결합을 이용한 웹 페이지 랭킹의 전반적인 처리를 설 명하기 위한 개념도이다. 도 3 및 도 4를 참조하면, 사용자가 웹 페이지들의 태그와 같은 검색 키워드를 입력함에 따라, 상기 검색 키워 드는 자원 관리 계층의 스토리지 서버(120)에 저장된다. 사용자 태그에 관한 정보는 트랜잭션 처리 계층으로 전 송된다. - 11 -
[0091] [0092] [0093] [0094] [0095] [0096] [0097] [0098] [0099] [0100] [0101] [0102] [0103] [0104] [0105] [0106] [0107] [0108] [0109] [0110] [0111] [0112] 트랜잭션 처리 계층의 폭소노미 매니저(130)는 태그를 편집하고, 태그들 사이의 관계를 추론하고, 사용자의 행 동을 분석하는데 이용된다. 또한, 트랜잭션 처리 계층의 인덱서 모듈(140)은 태그를 기반으로 웹 페이지를 분류 한다. 동일한 태그들로 분류된 웹 페이지들은 동일한 카테고리에 속한다. 이어, 동일한 카테고리에 속해있는 웹 페이지들은 랭킹 모듈(116)에 의해 정렬된다. 상기 랭킹 모듈(116)은 링 크 기반의 랭킹 알고리즘을 이용하여 동일 카테고리에 속해있는 웹 페이지들을 정렬한다. 마지막으로, 순서화된 웹 페이지들의 결과가 웹 검색 인터페이스(112)에 의해 사용자들에게 표시된다. 도 5는 본 발명에 따른 폭소노미와 링크 기반 랭킹 기법의 결합을 이용한 웹 페이지 랭킹 기법을 이용한 웹 문 서 검색 방법을 설명하기 위한 흐름도이다. 도 3 및 도 5를 참조하면, 웹 크로럴러(114)는 웹 페이지들을 수집하고, 수집된 웹 페이지들을 저장한다(단계 S110). 이어, 인덱서 모듈(140)은 구문을 분석하고(단계 S120), 태그 기반 의미를 분류한다(단계 S130). 즉, 인덱서 모 듈(140)은 태그를 기반으로 웹 페이지를 분류하는데, 예를들어, 동일한 태그들로 분류된 웹 페이지들은 동일한 카테고리에 속한다. 이어, 웹 크로럴러(114)에 의한 웹 페이지들의 수집이 종료되었는지의 여부를 체크하여(단계 S140), 종료된 것 으로 체크되면 종료하고, 종료되지 않은 것으로 체크되면 단계 S110으로 피드백한다. 한편, 사용자에 의한 웹 페이지들의 태그와 같은 검색 키워드가 입력되었는지의 여부를 체크한다(단계 S210), 단계 S210에서, 검색 키워드가 입력됨에 따라, 입력된 검색 키워드를 자원 관리 계층의 스토리지 서버(120)에 저장된다. 사용자 태그에 관한 정보는 트랜잭션 처리 계층(Transaction Process Layer)으로 전송된다. 이어, 트랙잭션 처리 계층의 폭소노미 매니저(132)는 사용자 태그를 편집하고, 태그들 사이의 관계를 추론하여 사용자의 행동을 분석하는 태그 관계를 분석한다(단계 S220). 이어, 랭킹 모듈(116)은 개인화된 링크 기반의 랭킹 알고리즘을 이용하여 동일한 카테고리에 속해있는 웹 페이 지들이 정렬된다(단계 S230). 이어, 상기 개인화된 링크 기반의 랭킹 알고리즘에 의해 순서화된 웹 페이지들의 결과를 사용자들에게 표시한다 (단계 S240). 도 5에서, 단계 S110 내지 단계 S140으로 이루어지는 일련의 동작과 단계 S210 내지 단계 S240으로 이루어지는 일련의 동작은 서로 병렬적으로 이루어진다. 이상에서 설명된 바와 같이, 본 실시예에서는 폭소노미와 개인화된 링크 기반의 페이지 랭킹 구조를 결합한 집 단지성의 웹 문서 검색 시스템을 제안한다. 즉, 본 발명에 따른 웹 문서 검색 시스템은 폭소노미와 개인화된 링 크 기반 랭킹 기법을 결합한 집단지성에 기반을 두어 설계되었다. 상기한 방법은 사용자 개인의 행동과 선호를 고려해서 사용자가 관련된 웹 페이지들을 빠르게 찾을 수 있게 한다. 그러면, 이하에서, 폭소노미 알고리즘과 링크 기반 랭킹 알고리즘에 대해 설명한다. <폭소노미 알고리즘> 본 발명에 따른 웹 문서 검색 시스템에서, 폭소노미 알고리즘은 검색 시스템에서의 태그와 사용자의 행동을 분 석하여 검색된 페이지를 분류하는데 사용된다. 본 발명에 따른 폭소노미 처리 과정을 설명하기 위한 의사코드 (pseudo-code)의 일례는 아래와 같다. ======================================== input: tag Ti, page Pj make edge e(ti, Pj) between Ti and Pj if Pj has Ti. for each page Pj fmax= f(ti, Pj) //frequency of tag Ti assigned to Pj for each tag Tk of Pj - 12 -
[0113] [0114] delete edge e(tk, Pj) if (f(tk, Pj) > fmax ) T = Tk [0115] [0116] end make edge e(t, Pj) [0117] [0118] [0119] [0120] [0121] [0122] [0123] [0124] [0125] [0126] end ======================================== 상기한 폭소노미 처리 과정에 따르면, 사용자가 웹 문서 검색 시스템의 사용자 인터페이스에 태그를 입력하면 웹 문서 검색 시스템은 태그를 기록하고 사용자 행동, 예를들어, 웹 페이지(또는 웹 문서)를 클릭하는 것을 포 착한다. 이어, 사용자가 클릭한 모든 웹 페이지에 고유의 ID를 부여한 후 태그 트리를 만든다. 태그 트리에서 태그(Ti) 와 페이지(Pj)는 각각 부모 노드와 자식 노드가 된다. 이어, 웹 문서 검색 시스템은 동일한 태그를 사용한 사용자의 수를 계산한다. 마지막으로, 반복적인 프로그램에 의해 계산된 가장 높은 빈도의 태그는 웹 페이지의 마지막 카테고리로 태그 데이터베이스에 삽입된다. 웹 페이지들의 카테고리가 같다면 이 웹 페이지들은 동일한 카테고리에 속하는 것이 다. 이러한 폭소노미 알고리즘에서, 만약 전체 웹 페이지의 수가 m으로 결정되고 웹 페이지에 할당된 전체 태그의 수가 n으로 결정 결정됐다면, 폭소노미 알고리즘의 시간복잡도(Time Complexity)는 O(mn)이다. 여기서, 시간복 잡도는 처리해야하는 데이터의 양(N이나 n으로 표기)에 따라 소요되는 시간으로 절대적인 시간이 아닌 비례적인 시간을 나타내고, O(f(n))와 같이 표기된다. < 개인화된 링크 기반 랭킹 알고리즘> 본 발명에 따른 개인화된 링크 기반 랭킹 알고리즘은 도 3에 도시된 랭킹 모듈(116)에 포함된다. 고품질의 검색 결과를 생성하기 위해서, 일반적으로, 링크 기반 랭킹 알고리즘은 모든 페이지에 각 페이지가 얼마나 연관성이 있는가를 나타내는 스코어를 할당한다. 각 페이지의 연관성은 그 페이지에 연결된 다른 관련 있는 페이지의 수 와 다른 페이지들의 링크의 수로 계산된다. 한 페이지의 연관성을 페이지랭크(PageRank) 스코어라 하자. 페이지랭크 알고리즘은 구글(Google)의 설립자에 의해 개발되었고 이런 개념의 변화는 현재 매우 큰 검색 엔진에서 사용되고 있다. 이론적으로 페이지랭크는 누 군가가 무작위로 링크를 클릭하여 어떤 페이지에 도달할 확률로 계산된다. 그 페이지가 다른 유명한 페이지로부 터 링크를 포함하고 있으면(inbound), 누군가가 우연히 그 페이지를 방문할 가능성이 더욱 높아진다. 이를 포착 하기 위해서 페이지 랭크는 사용자가 지속적으로 각 페이지의 링크를 클릭하면 기회를 주는 댐핑 팩터(damping factor) α를 사용한다. α의 값은 사용자가 연결된 다른 페이지에서 그 웹 페이지를 클릭하는 행동을 분석하여 결정한다. 일반적으로, α는 0.85가 할당된다. 일반적으로 웹 페이지 i의 페이지랭크 스코어(PRi)는 하기하는 수학식 1에 의해 계산된다. 수학식 1 [0127] [0128] 여기서, α는 댐핑 팩터(damping factor)로서, 0.85이다. S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페 이지 j로부터의 상호 아웃링크(outlink)의 수이다. 만약 j에서 i로의 링크가 없다면, S ji 는 0이 된다. n은 페이 지의 총 수이다. [0129] [0130] 한편, 본 발명에서는 사용자들의 기록되어 있는 행동을 반영하기 위해 링크 기반 랭킹 알고리즘에서 페이지랭크 스코어를 계산하는 수학식 1을 하기하는 수학식 2와 같이 수정하여 링크 기반 랭킹 알고리즘에 활용 함으로써 사용자들의 기록되어 있는 사용자 개인의 행동을 반영하였다. 명확하게 수정된 페이지 랭크 알고리즘 의 시간복잡도는 O(n2 + nq)이다. - 13 -
수학식 2 [0131] [0132] 수학식 2에서, PR i 은 개인화된 페이지랭크 스코어다. α는 댐핑 팩터(damping factor)로서, 0.85이다. V i 는 맞 춤형 검색을 위한 사용자 맞춤값으로서, 아래의 수학식 3에 의해 정의된다. 사용자의 맞춤값은 웹 페이지에 대 한 사용자의 선호 정도를 반영한다. 사용자의 맞춤값은 페이지 i에 연결된 모든 페이지에서 사용자가 클릭한 수 와 모든 페이지에 연결되어있는 웹 페이지에서 사용자가 클릭한 수를 계산하여 결정된다. 수학식 3 [0133] [0134] 여기서, C ji (u)는 사용자 u가 페이지 j에서 페이지 i로 클릭한 횟수로서, 아래의 수학식 4에 의해 정의되고, U는 전체 사용자의 집합이다. 수학식 4 [0135] [0136] 수학식 2에서, S ji 는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수 로서, 아래의 수학식 5에 의해 정의된다. 만약 j에서 i로의 링크가 없다면, Sji는 0이 된다. n은 페이지의 총 수이다. 수학식 5 [0137] [0138] [0139] [0140] [0141] [0142] [0143] [0144] 본 발명에 따른 검색 시스템의 실질적 타당성을 입증하기 위해서, 웹 페이지를 검색하는 일련의 실험을 실시하 였다. 이하에서, 본 발명에 따른 웹 페이지의 검색 실험에 대해 설명한다. 도 6은 본 발명에 따라 프로토 타입으로 구현된 시스템에서 뉴스(news)란 검색어로 페이지를 검색한 결과를 보 여준다. 도 6을 참조하면, 본 실시예에서는 링크 기반 랭킹 기법으로 페이지랭크 스코어가 계산되어 순서대로 나열하였 다. 나열된 검색어와 일치하는 다섯 페이지가 있음을 볼 수 있었다. 각 웹 페이지의 스코어는 페이지 제목의 끝 에 표시된다. 즉, <rihanna-search results for rihanna-cnn.com>와 관련하는 웹 페이지의 페이지랭크 스코어는 0.15218로 표시되었고, <Commentaries: News & Videos about Commentaries>와 관련하는 웹 페이지의 페이지랭크 스코어는 0.12945로 표시되었다. 또한, <moos-search results for moos - CNN.com>와 관련하는 웹 페이지의 페이지랭크 스코어는 0.11017로 표시되었고, <china-search results for china-cnn.com>와 관련하는 웹 페이지의 페이지랭 크 스코어는 0.10100으로 표시되었으며, <Benazir Bhutto : News & Videos about Benazir Bhutt>와 관련하는 웹 페이지의 페이지랭크 스코어는 0.09598로 표시되었다. 사용자들은 자신에게 보여지는 도 6과 같은 검색 결과화면에서 관련성이 없는 페이지를 확인하고 지울 수 있다. 각각의 웹 페이지와 관련하는 정보의 다음 컬럼에는 해당 웹 페이지로 연결되는 링크 정보가 함께 표시됨을 확 인할 수 있었다. 본 발명에 따른 검색 실험에서 웹 페이지들은 웹 문서 검색 시스템에 추가되었고, 표 2는 추가된 결과를 보여준 - 14 -
다. [0145] 표 2는 시스템에 폭소노미 알고리즘에 의해 추가된 웹 페이지들의 결과이다. 표 2 [0146] [0147] [0148] [0149] [0150] [0151] [0152] [0153] 표 2를 참조하면, 예를들어, 웹 페이지(P1)에는 태그 <뉴스>가 56개, 태그 <city>가 11개, 그리고, 태그 <tri p>이 3개가 매칭되어 있고, 웹 페이지(P1)의 카테고리는 뉴스 카테고리로 분류되었다. 도 7은 링크 구조와 페이지랭크의 계산 결과를 보여준다. 도 7을 참조하면, 추가적인 세 페이지들, 즉, 이전 다섯 페이지들(P1, P2, P3, P4, P5)과 연결 관계에 있는 P6, P7, P8은 계산에 추가되었다. 본 실험에서 추가된 세 페이지들인 P6, P7, P8은 페이지 P5에 연결 되어있고, 페이지 P6, P7, P8의 페이지랭크 스코어를 모두 0.1의 값으로 설정하였다. 본 실시예에서, 페이지 P6, P7, P8의 스코어를 이용하고 개인화된 페 이지랭크 알고리즘을 사용하여 페이지 P5의 개인화된 페이지랭크 스코어로서, 0.09598을 얻을 수 있었다. 다른 페이지들(P1, P2, P3, P4)의 개인화된 페이지랭크 스코어도 도 7에 나타냈다. 즉, 개인화된 페이지랭크 알고리즘을 사용하여 페이지 P1, P2, P3, P4의 개인화된 페이지랭크 스코어로서 각각 0.15218, 0.12945, 0.11017, 0.10100을 얻었다. 표 3 및 표 4는 본 실험에서 페이지랭크 계산의 세부내용이 도시된다. 표 3은 상호 아웃링크(outlink)의 수(S ji )를 계산하는 방법을 보인다. 표 3 [0154] [0155] [0156] 표 3을 참조하면, 첫 번째 열은 도 6의 검색 결과 목록의 페이지들에 연결되는 웹 페이지들을 보여준다. 예를 들면 페이지 P2, P3, P4, P5 모두 페이지 P1에 연결된다. 본 실시예에서는 상호 아웃링크(outlink)의 수(S ji )의 값을 계산하기 위해서 사용자들이 각 링크페이지를 클릭하 는 수를 계산해야 한다. 여기서, 상호 아웃링크(outlink)의 수(S ji )는, 페이지 j가 페이지 i에 연결되어 있을 때, 페이지 j로부터의 상호 아웃링크(outlink)의 수이다. 만약 j에서 i로의 링크가 없다면, S ji 는 0이다. [0157] [0158] [0159] 표 3 에서 보면 사용자들이 네 개의 페이지들(P2, P3, P4, P5)에서 페이지 P1 로 클릭한 전체 횟수는 288이다. 사용자들이 P2, P3, P4, P5에서 클릭한 전체 횟수는 각각 126, 57, 60, 45이다. 사용자들은 P6, P7, P8에 대해 서는 클릭하지 않았다. 본 실시예에서는 이 값들을 이용하여 S21, S31, S41 및 S51을 계산할 수 있다. 표 4는 본 발명에 따라 계산된 최종 페이지랭크 스코어(PR i )를 나타낸다. - 15 -
표 4 [0160] [0161] 표 4를 참조하면, 페이지 P1의 경우, 댐핑 팩터 α가 0.85이고, 사용자 맞춤값이 15/41이므로 개인화된 페이지 랭크 스코어(PR i )로서 0.15218이 계산되었다. 또한, 페이지 P2의 경우, 댐핑 팩터 α가 0.85이고, 사용자 맞춤 값이 11/41이므로 개인화된 페이지랭크 스코어(PR i )로서 0.12945가 계산되었다. 또한, 페이지 P3의 경우, 댐핑 팩터 α가 0.85이고, 사용자 맞춤값이 7/41이므로 개인화된 페이지랭크 스코어(PR i )로서 0.11017이 계산되었다. 또한, 페이지 P4의 경우, 댐핑 팩터 α가 0.85이고, 사용자 맞춤값이 5/41이므로 개인화된 페이지랭크 스코어 (PR i )로서 0.10100이 계산되었다. 또한, 페이지 P5의 경우, 댐핑 팩터 α가 0.85이고, 사용자 맞춤값이 3/41이 므로 개인화된 페이지랭크 스코어(PR i )로서 0.09598이 계산되었다. [0162] 이상에서는 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기 재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있 음을 이해할 수 있을 것이다. [0163] 산업이용 가능성 이상에서 설명한 바와 같이, 본 발명에 따르면, 집단지성에 기반을 둔 검색 시스템을 구현함으로써, 검색의 고 품질을 달성할 수 있다. 즉, 폭소노미와 링크 기반 랭크 구조를 결합함으로써, 검색에서 사용자 행위와 사용자 의 선호도를 함께 반영한 집단지성에 기반을 둔 검색 시스템을 구현할 수 있다. 특히, 웹 2.0과 함께 사용자들 의 선호도, 생각을 조합하는 새로운 분류방법인 폭소노미를 사용하고, 사용자 행위와 더불어 개인화를 지원하는 링크 기반 랭킹 기법을 사용함으로써, 검색 효과를 개선할 수 있다. [0164] [0165] [0166] [0167] [0168] [0169] [0170] [0171] [0172] [0173] [0174] [0175] [0176] 도면의 간단한 설명 도 1은 본 발명에 따른 웹 문서 검색 시스템을 설명하기 위한 블록도이다. 도 2는 사용자들이 웹 페이지에 태그를 단 예를 설명하기 위한 개념도이다. 도 3은 본 발명의 실시예에 따른 웹 문서 검색 시스템을 설명하기 위한 블록도이다. 도 4는 본 발명에 따른 폭소노미와 링크 기반 랭킹 기법의 결합을 이용한 웹 페이지 랭킹의 전반적인 처리를 설 명하기 위한 개념도이다. 도 5는 본 발명에 따른 폭소노미와 링크 기반 랭킹 기법의 결합을 이용한 웹 페이지 랭킹 기법을 이용한 웹 문 서 검색 방법을 설명하기 위한 흐름도이다. 도 6은 프로토타입 시스템에서 뉴스(news)란 검색어로 페이지를 검색한 결과를 보여준다. 도 7은 링크 구조와 페이지랭크의 계산 결과를 보여준다. <도면의 주요부분에 대한 부호의 설명> 112 : 웹 검색 인터페이스 114 : 웹 크로럴러 116 : 랭킹 모듈 120 : 스토리지 서버 130 : 폭소노미 매니저 132 : 폭소노미 에디터 134 : 태그 연계 추출기 136 : 유저 검색 분석기 140 : 인덱서 모듈 142 : 언어분석기 - 16 -
[0177] [0178] 144 : 특징선택기 146 : 태그인식기 148 : 의미분류기 도면 도면1 도면2-17 -
도면3 도면4-18 -
도면5-19 -
도면6-20 -
도면7-21 -