[정보검색] 제2장 색인 및 시소러스 - 시소러스 (Thesaurus)

이 글은 정영미 교수님의 정보검색연구를 바탕으로 연세대학교 문성빈 교수님의 수업을 공부한 기록입니다.

1. 시소러스 개요

시소러스 정의 및 종류

  • 개념을 나타내는 단어, 단어구 그리고 이들 간의 관계로 구성되는 일종의 사전
  • 수작업 구축 시소러스 (Manual Thesaurus)
    • 범용의 일반 시소러스
    • 특정 주제분야의 전문 시소러스 : 특정 주제분야의 전문가 필요
  • 자동 구축 시소러스 (Automatic Thesaurus)

자동 구축 시소러스 (Automatic Thesaurus)

  • 자동 구축 시소러스 = 자동 시소러스
    • 주로 실험용 말뭉치나 문헌 집단에 출현한 단어들의 연관성을 측정함으로써 구축
  • 자동 시소러스 = 유사도 시소러스
    • 용어들 간의 유사도에 기반하여 자동으로 구축
    • 이때 유사도 = 동시 출현 빈도 = co-occurrence frequency
    • 유사도가 일정한 수준을 넘는 용어들을 묶어 클러스터/군집을 형성
    • 동일한 클러스터에 속하는 용어들 간에는 상호연관관계가 있는 것으로 정의
    • 유사도 시소러스를 활용하는 경우 초기 검색어와 동일한 클러스터에 속하는 된 용어들을 새로운 검색어로 추가할 수 O

온라인데이터베이스 서비스의 색인 단계 & 검색 단계

  • 시소러스는 색인 시 적절한 색인어의 선택을 위해 사용
  • 시소러스는 검색 시 효과적인 검색어의 선택을 위해 사용
  1. 색인 단계에서 시소러스 사용 O & 검색 단계에서 시소러스 사용 O
    • 전통적인 시소러스의 활용 방법
    • 높은 검색 성능
      • 특정한 개념이 동일한 색인어와 검색어로 표현되기 때문
    • 정보전문가가 검색할 경우 효과적
  2. 색인 단계에서 시소러스 사용 O & 검색 단계에서 시소러스 사용 X
    • 색인전문가가 색인어 선정을 위해서 시소러스를 사용
    • 일반 이용자는 자연어 키워드를 검색어로 사용
    • 이용자가 입력한 키워드가 디스크립터와 일치하는 경우
      • 해당 디스크립터 아래 색인되어 있는 문헌 검색
    • 입력된 검색어를 접근점으로 사용할 수 있는 경우
      • 검색어로 입력된 키워드를 동일한 의미의 디스크립터로 자동 매핑
      • 해당 디스크립터와 특정한 의미관계에 있는 다른 디스크립터들을 검색어로 추가
  3. 색인 단계에서 시소러스 사용 X & 검색 단계에서 시소러스 사용 O
    • 자동색인에 부여된 키워드를 색인어로 사용
    • 검색 시 이용자가 입력한 자연어 키워드 이외에 시소러스에 수록된 유사한 다른 용어나 개념적으로 계층관계에 있는 용어들을 검색어로 사용
    • 이용자에게 온라인으로 검색용 시소러스 제공
      • 질의 정련 혹은 질의 확장 가능
  4. 색인 단계에서 시소러스 사용 X & 검색 단계에서 시소러스 사용 X

시소러스의 구성

  • 색인어휘(indexing vocabulary)와 도입어휘(entry vocabulary)로 구성되는 통제 어휘 (controlled vocabulary)
  • 디스크립터 상호 간의 어의적 관계, 디스크립터와 비디스크립터 간의 관계 표현
    1. 색인어휘 = 디스크립터 = 우선어
    2. 도입어휘 = 비디스크립터 = 비우선어
    3. 식별어

시소러스에서 정의되는 용어들 간의 의미 관계

  1. 등가관계 (Equivalence Relationship) = 동일관계
    • 동일하거나 유사한 개념을 나타내는 용어들이 갖는 관계
    • 동의어와 유사동의어의 경우 설정
    • 관계 기호 : USE / UF (Used For)
    • 동일한 의미의 용어 / 별도의 철자 / 별도의 어순 / 약어와 완전어 / 일반명과 상품명 / 표준명과 속명
  2. 계층관계 (Hierarchical Relationship)
    • 개념적으로 상위에 오는 용어와 이에 종속되는 용어들 간의 관계
    • 관계 기호 : BT (Broader Term : 상위어) / NT (Narrower Term : 하위어)
    • 속-종 관계 / 계층적 전체-부분 관계 / 사례 관계
  3. 연관관계 (Associative Relationship)
    • 등가 관계 혹은 계층 관계에 있지 않으면서 개념적으로 연관성을 갖는 용어들의 관계
    • 관계 기호 : RT (Related Term : 관련어)
    • 대개는 시소러스 작성자가 판단하여 관계를 설정
    • 용어 클러스터링 기법을 통해 시소러스를 자동 생성할 경우 같은 클러스터 안에 속한 용어들을 대상으로 설정
    • 같은 텍스트에서 함께 출현한 빈도가 높은 영어들은 서로 연관되어 있다고 보는 것
    • 통계적 연관성이 반드시 어의적 연관성을 의미하지는 않는다는 문제점 존재

2. 시소러스의 자동 구축

자동 시소러스 구축

  • 구축 목적 및 활용
    • 대개 실험용 정보검색 시스템에서 검색 성능의 향상을 목적으로 구축
    • 일차 검색 결과가 만족스럽지 않을 때 원래의 질의(query)에 새로운 질의어(query term)를 자동적으로 추가하여 질의확장을 하고자 할 때 사용
    • 대부분의 경우 검색 성능의 정확율보다는 재현율을 향상시키는 수단으로 이용
  • 구축 방법
    • 주로 실험용 문헌집단에 출현한 용어들의 공기정보(co-occurrence information)을 이용하여 서로 연관된 단어들의 클러스터 / 군집을 형성함으로써 구축

특정한 문맥에서 공기하는 통계적 특성을 반영한 시소러스

  • 말뭉치 내 단어들의 출현빈도에 근거하여 시소러스를 구축
  • “두 단어가 같은 문맥(context)에 출현하면 이 단어들은 서로 관련되어 있다.”
  • “두 단어가 같은 문맥(context)에 함께 출현하는 횟수가 많을수록 더 깊이 관련되어 있다.”
  • 일반적으로 문맥은 문헌 전체를 의미 but 두 단어가 함께 출현하는 문맥을 같은 문단, 같은 문장 등과 같이 보다 작은 단위로 제한 가능

언어학적 관계를 반영한 시소러스

  • 특정한 언어학적 또는 문법적 관계에서 출현한 경우를 고려하여 단어들 간의 연관성을 정의
  • “유사한 문법적 문맥에서 출현한 단어들은 유사하다.”
  • 언어학적 관계를 반영하여 단어 간 연관성을 측정할 경우
  • 동일한 문헌에서 공기한 단어라고 하더라도 다른 구문관계에서 출현하였다면
  • 이 단어들의 연관성은 감소
  • 즉 언어학적 관계를 반영하여 단어들 간의 유사도 산출

시소러스를 자동 구축하는 기본 과정

  • 단어들의 공기빈도 (Co-Occurrence Frequency : 동시출현빈도) 를 이용
    1. 자동색인 기법에 의해 문헌 집단으로부터 색인어가 될 수 있는 단어들을 추출한 다음 각 단어의 출현 빈도를 산출
    2. 출현한 단어 쌍들의 공기 빈도를 계산
    3. 공기 빈도에 근거하여 단어 간 유사도를 산출
    4. 단어 간 유사도를 이용하여 단어들을 군집화 / 클러스터링
    5. 하나의 동일한 클러스터 또는 클래스에 속한 단어들은 연관성이 있는 것으로 정의

3. 유사계수 및 거리계수

  • 단어들 간 유사도 산출에는 다양한 유사계수 또는 거리계수 공식 사용
    1. 내적 계수 (Inner Product)
      • $S (t_i, t_j) = \sum_{k=1}^n \left( w_{ik} \times w_{jk} \right)$
    2. 다이스 계수
      • $Dice = \frac{2f_c}{\left( f_a + f_b \right)}$
      • $f_a$ : 단어 a가 출현한 문헌 수
      • $f_b$ : 단어 b가 출현한 문헌 수
      • $f_c$ : 단어 a와 b가 함께 출현한 문헌 수
    3. 자카드 계수
      • $Jaccard = \frac{f_c}{\left( f_a + f_b - f_c \right)}$
      • $f_a$ : 단어 a가 출현한 문헌 수
      • $f_b$ : 단어 b가 출현한 문헌 수
      • $f_c$ : 단어 a와 b가 함께 출현한 문헌 수
      • 다이스 계수와 유사한 결과
    4. 코사인 계수
      • 가장 정교한 결과

예제

문헌-용어 행렬

- 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}

댓글남기기