[정보검색] 제2장 색인 및 시소러스 - 시소러스 (Thesaurus)
이 글은 정영미 교수님의 정보검색연구를 바탕으로 연세대학교 문성빈 교수님의 수업을 공부한 기록입니다.
1. 시소러스 개요
시소러스 정의 및 종류
- 개념을 나타내는 단어, 단어구 그리고 이들 간의 관계로 구성되는 일종의 사전
- 수작업 구축 시소러스 (Manual Thesaurus)
- 범용의 일반 시소러스
- 특정 주제분야의 전문 시소러스 : 특정 주제분야의 전문가 필요
- 자동 구축 시소러스 (Automatic Thesaurus)
자동 구축 시소러스 (Automatic Thesaurus)
- 자동 구축 시소러스 = 자동 시소러스
- 주로 실험용 말뭉치나 문헌 집단에 출현한 단어들의 연관성을 측정함으로써 구축
- 자동 시소러스 = 유사도 시소러스
- 용어들 간의 유사도에 기반하여 자동으로 구축
- 이때 유사도 = 동시 출현 빈도 = co-occurrence frequency
- 유사도가 일정한 수준을 넘는 용어들을 묶어 클러스터/군집을 형성
- 동일한 클러스터에 속하는 용어들 간에는 상호연관관계가 있는 것으로 정의
- 유사도 시소러스를 활용하는 경우 초기 검색어와 동일한 클러스터에 속하는 된 용어들을 새로운 검색어로 추가할 수 O
온라인데이터베이스 서비스의 색인 단계 & 검색 단계
- 시소러스는 색인 시 적절한 색인어의 선택을 위해 사용
- 시소러스는 검색 시 효과적인 검색어의 선택을 위해 사용
- 색인 단계에서 시소러스 사용 O & 검색 단계에서 시소러스 사용 O
- 전통적인 시소러스의 활용 방법
- 높은 검색 성능
- 특정한 개념이 동일한 색인어와 검색어로 표현되기 때문
- 정보전문가가 검색할 경우 효과적
- 색인 단계에서 시소러스 사용 O & 검색 단계에서 시소러스 사용 X
- 색인전문가가 색인어 선정을 위해서 시소러스를 사용
- 일반 이용자는 자연어 키워드를 검색어로 사용
- 이용자가 입력한 키워드가 디스크립터와 일치하는 경우
- 해당 디스크립터 아래 색인되어 있는 문헌 검색
- 입력된 검색어를 접근점으로 사용할 수 있는 경우
- 검색어로 입력된 키워드를 동일한 의미의 디스크립터로 자동 매핑
- 해당 디스크립터와 특정한 의미관계에 있는 다른 디스크립터들을 검색어로 추가
- 색인 단계에서 시소러스 사용 X & 검색 단계에서 시소러스 사용 O
- 자동색인에 부여된 키워드를 색인어로 사용
- 검색 시 이용자가 입력한 자연어 키워드 이외에 시소러스에 수록된 유사한 다른 용어나 개념적으로 계층관계에 있는 용어들을 검색어로 사용
- 이용자에게 온라인으로 검색용 시소러스 제공
- 질의 정련 혹은 질의 확장 가능
- 색인 단계에서 시소러스 사용 X & 검색 단계에서 시소러스 사용 X
시소러스의 구성
- 색인어휘(indexing vocabulary)와 도입어휘(entry vocabulary)로 구성되는 통제 어휘 (controlled vocabulary)
- 디스크립터 상호 간의 어의적 관계, 디스크립터와 비디스크립터 간의 관계 표현
- 색인어휘 = 디스크립터 = 우선어
- 도입어휘 = 비디스크립터 = 비우선어
- 식별어
시소러스에서 정의되는 용어들 간의 의미 관계
- 등가관계 (Equivalence Relationship) = 동일관계
- 동일하거나 유사한 개념을 나타내는 용어들이 갖는 관계
- 동의어와 유사동의어의 경우 설정
- 관계 기호 : USE / UF (Used For)
- 동일한 의미의 용어 / 별도의 철자 / 별도의 어순 / 약어와 완전어 / 일반명과 상품명 / 표준명과 속명
- 계층관계 (Hierarchical Relationship)
- 개념적으로 상위에 오는 용어와 이에 종속되는 용어들 간의 관계
- 관계 기호 : BT (Broader Term : 상위어) / NT (Narrower Term : 하위어)
- 속-종 관계 / 계층적 전체-부분 관계 / 사례 관계
- 연관관계 (Associative Relationship)
- 등가 관계 혹은 계층 관계에 있지 않으면서 개념적으로 연관성을 갖는 용어들의 관계
- 관계 기호 : RT (Related Term : 관련어)
- 대개는 시소러스 작성자가 판단하여 관계를 설정
- 용어 클러스터링 기법을 통해 시소러스를 자동 생성할 경우 같은 클러스터 안에 속한 용어들을 대상으로 설정
- 같은 텍스트에서 함께 출현한 빈도가 높은 영어들은 서로 연관되어 있다고 보는 것
- 통계적 연관성이 반드시 어의적 연관성을 의미하지는 않는다는 문제점 존재
2. 시소러스의 자동 구축
자동 시소러스 구축
- 구축 목적 및 활용
- 대개 실험용 정보검색 시스템에서 검색 성능의 향상을 목적으로 구축
- 일차 검색 결과가 만족스럽지 않을 때 원래의 질의(query)에 새로운 질의어(query term)를 자동적으로 추가하여 질의확장을 하고자 할 때 사용
- 대부분의 경우 검색 성능의 정확율보다는 재현율을 향상시키는 수단으로 이용
- 구축 방법
- 주로 실험용 문헌집단에 출현한 용어들의 공기정보(co-occurrence information)을 이용하여 서로 연관된 단어들의 클러스터 / 군집을 형성함으로써 구축
특정한 문맥에서 공기하는 통계적 특성을 반영한 시소러스
- 말뭉치 내 단어들의 출현빈도에 근거하여 시소러스를 구축
- “두 단어가 같은 문맥(context)에 출현하면 이 단어들은 서로 관련되어 있다.”
- “두 단어가 같은 문맥(context)에 함께 출현하는 횟수가 많을수록 더 깊이 관련되어 있다.”
- 일반적으로 문맥은 문헌 전체를 의미 but 두 단어가 함께 출현하는 문맥을 같은 문단, 같은 문장 등과 같이 보다 작은 단위로 제한 가능
언어학적 관계를 반영한 시소러스
- 특정한 언어학적 또는 문법적 관계에서 출현한 경우를 고려하여 단어들 간의 연관성을 정의
- “유사한 문법적 문맥에서 출현한 단어들은 유사하다.”
- 언어학적 관계를 반영하여 단어 간 연관성을 측정할 경우
- 동일한 문헌에서 공기한 단어라고 하더라도 다른 구문관계에서 출현하였다면
- 이 단어들의 연관성은 감소
- 즉 언어학적 관계를 반영하여 단어들 간의 유사도 산출
시소러스를 자동 구축하는 기본 과정
- 단어들의 공기빈도 (Co-Occurrence Frequency : 동시출현빈도) 를 이용
- 자동색인 기법에 의해 문헌 집단으로부터 색인어가 될 수 있는 단어들을 추출한 다음 각 단어의 출현 빈도를 산출
- 출현한 단어 쌍들의 공기 빈도를 계산
- 공기 빈도에 근거하여 단어 간 유사도를 산출
- 단어 간 유사도를 이용하여 단어들을 군집화 / 클러스터링
- 하나의 동일한 클러스터 또는 클래스에 속한 단어들은 연관성이 있는 것으로 정의
3. 유사계수 및 거리계수
- 단어들 간 유사도 산출에는 다양한 유사계수 또는 거리계수 공식 사용
- 내적 계수 (Inner Product)
- $S (t_i, t_j) = \sum_{k=1}^n \left( w_{ik} \times w_{jk} \right)$
- 다이스 계수
- $Dice = \frac{2f_c}{\left( f_a + f_b \right)}$
- $f_a$ : 단어 a가 출현한 문헌 수
- $f_b$ : 단어 b가 출현한 문헌 수
- $f_c$ : 단어 a와 b가 함께 출현한 문헌 수
- 자카드 계수
- $Jaccard = \frac{f_c}{\left( f_a + f_b - f_c \right)}$
- $f_a$ : 단어 a가 출현한 문헌 수
- $f_b$ : 단어 b가 출현한 문헌 수
- $f_c$ : 단어 a와 b가 함께 출현한 문헌 수
- 다이스 계수와 유사한 결과
- 코사인 계수
- 가장 정교한 결과
- 내적 계수 (Inner Product)
예제
문헌-용어 행렬
- | t1 | t2 | t3 | t4 | t5 | t6 |
---|---|---|---|---|---|---|
D1 | 1 | 2 | 3 | 1 | 0 | 3 |
D2 | 2 | 1 | 1 | 0 | 3 | 0 |
D3 | 3 | 0 | 0 | 1 | 2 | 3 |
D4 | 0 | 0 | 2 | 2 | 0 | 2 |
용어 - 용어 유사도 행렬 by. 내적 계수
- | t1 | t2 | t3 | t4 | t5 | t6 |
---|---|---|---|---|---|---|
t1 | ||||||
t2 | 4 | |||||
t3 | 5 | 7 | ||||
t4 | 4 | 2 | 7 | |||
t5 | 12 | 3 | 3 | 2 | ||
t6 | 12 | 6 | 13 | 10 | 6 |
용어 - 용어 이원행렬 : threshold = 10 이상
- | t1 | t2 | t3 | t4 | t5 | t6 |
---|---|---|---|---|---|---|
t1 | ||||||
t2 | 0 | |||||
t3 | 0 | 0 | ||||
t4 | 0 | 0 | 0 | |||
t5 | 1 | 0 | 0 | 0 | ||
t6 | 1 | 0 | 1 | 1 | 0 |
- 용어클래스(1) = {t1, t3, t4, t5, t6}
- 용어클래스(2) = {t2}
용어 - 용어 유사도 행렬 by. 다이스 계수
- | t1 | t2 | t3 | t4 | t5 | t6 |
---|---|---|---|---|---|---|
t1 | ||||||
t2 | 4/5 | |||||
t3 | 4/6 | 4/5 | ||||
t4 | 4/6 | 2/5 | 4/6 | |||
t5 | 4/5 | 2/4 | 2/5 | 2/5 | ||
t6 | 4/6 | 2/5 | 4/6 | 6/6 | 2/5 |
용어 - 용어 이원행렬 : threshold = 4/5 이상
- | t1 | t2 | t3 | t4 | t5 | t6 |
---|---|---|---|---|---|---|
t1 | ||||||
t2 | 1 | |||||
t3 | 0 | 1 | ||||
t4 | 0 | 0 | 0 | |||
t5 | 1 | 0 | 0 | 0 | ||
t6 | 0 | 0 | 0 | 1 | 0 |
- 용어클래스(1) = {t1, t2, t3, t5}
- 용어클래스(2) = {t4, t6}
댓글남기기