[정보검색] 제1장 텍스트 정보 검색
이 글은 정영미 교수님의 정보검색연구를 바탕으로 연세대학교 문성빈 교수님의 수업을 공부한 기록입니다.
1. 정보검색 개요
정보검색 (Information Retrieval)
- 다양한 정보원 = 정보자원 = 정보자료로부터 이용자의 정보요구에 적합한 정보 및 지식을 찾아내기까지의 모든 과정
- 정보검색 모형
검색엔진 = 질의엔진
- 질의와 메타데이터를 비교하여 주어진 검색 기준을 만족하는 정보자료를 검색하는 소프트웨어
- 검색 기준 = 검색 기법 = 정보검색 모형
- 단순 키워드 검색 기법
- 불리언 검색 = 불리언 모형 = Boolean Model
- 불리언 연산자 : AND / OR / NOT
- 대부분의 검색엔진에서 사용
- 벡터공간 검색 = 벡터 스페이스 모형 = Vector Space Model
- 유사도 기준
- 확률 검색 = 확률 모형 = Probability Model
- 각 질의어에 가중치를 부여
- 퍼지 검색 모형 = Fuzzy Model
정보검색 과정
- 정보자료로부터 색인어를 비롯한 여러 유형의 메타데이터가 추출되어 색인데이터베이스를 구성
- 이용자의 정보요구는 다양한 형태의 질의 즉 쿼리로 표현
- 검색엔진이 질의와 메타데이터를 비교하여 주어진 검색 기준을 만족하는 정보자료를 검색하여 이용자에게 적합성을 기준으로 검색결과 제시
- 검색 결과 이용자 피드백이나 시스템 피드백을 통한 질의확장 또는 질의수정에 의해 검색엔진은 재검색을 수행
- 관련성 피드백 (Relevance Feedback)
- 이용자 피드백 : 이용자가 피드백
- 시스템 피드백 : 시스템이 피드백 : 시스템이 검색결과로부터 새롭게 색인어를 추출하여 질의어에 추가하는 것 - Relevance Judgement
- 질의 확장 : 새로운 질의어를 추가하는 것
- 질의 수정 : 기존의 질의어의 가중치를 수정하는 것
웹 검색엔진
- 웹 검색엔진 구조
- 처음 방문할 초기URL 집합을 제공받은 크롤러는 검색엔진을 대신하여 웹 페이지를 수집
- 크롤러는 수집한 페이지로부터 새로운 URL을 추출하여 크롤 제어 모듈에게 제공
- 크롤러가 검색한 페이지는 페이지 저장소(Page Repository)로 전달
- 크롤 제어 모듈은 크롤러가 다음에 방문할 주소를 결정하여 다시 크롤러에게 제공
크롤러 (Crawler)
- 웹 크롤러 = 웹 로봇 = 웹 스파이더
- 검섹엔진을 대신하여 웹 페이지를 수집해오는 프로그램
- 텍스트 정보와 링크 정보 모두 수집
크롤 제어 (Crawl Control) 모듈
- 크롤러가 다음에 방문할 주소를 결정하여 다시 크롤러에게 보내는 역할
색인기 (Indexer)
- 여러 유형의 색인을 생성 가능
- 텍스트 색인 (Text Index) : 각 웹 페이지로부터 추출한 단어들과 각 단어가 출현한 페이지의 URL 수록
- 구조 색인 (Structure Index) : 크롤러가 방문한 페이지들 간의 링크 정보 수록
질의엔진
- 이용자가 입력한 질의에 적합한 웹 페이지를 검색하여 제공
- 웹의 경우 검색 결과를 적합성 순서로 정렬하는 순위화 알고리즘 (Ranking Algorithm) 사용
- 전통적인 정보검색 시스템에서는 대개 질의와 문헌 텍스트의 유사도 순으로 검색 결과를 순위화
텍스트마이닝
- 구조화되지 않은 대규모의 텍스트 집단으로부터 아직 알려지지 않은 새로운 지식 및 패턴을 발견하는 과정
- 텍스트마이닝 vs. 데이터마이닝
- 텍스트마이닝은 구조화되지 않은 텍스트 대상
- 데이터마이닝은 구조화된 데이터베이스 대상
- 텍스트마이닝 vs. 정보검색
- 텍스트마이닝은 텍스트로부터 새로운 정보를 찾아내는 기법
- 정보검색은 텍스트로부터 기존의 정보를 찾아내는 기법
검색과 마이닝 기법의 구분
목적 / 정보유형 | 데이터 | 텍스트 | 웹 데이터 및 웹 문서 |
---|---|---|---|
알려진 데이터 및 문헌 검색 | 데이터 검색 | 정보 검색 | 웹 검색 |
알려지지 않은 지식 및 패턴 발견 | 데이터 마이닝 | 텍스트 마이닝 | 웹 마이닝 |
2. 텍스트 처리 개요
텍스트 처리 = 자연언어 처리
- 자연언어 형태의 구조화되지 않은 텍스트를 분석하여 색인어를 비롯한 여러 유형의 정보를 추출하거나 텍스트의 내용을 축약하는 작업
- 자연 언어 = Natural Language = Free Text
- 초기에는 주제전문가가 색인어를 부여
- 최근에는 자동색인
- 텍스트로부터 단순히 키워드를 추출하여 색인어로 사용 => 어휘 분석, 형태소 분석
- 정보추출, 자동요약, 질의응답, 단어의 중의성 해소 => 구문/통사 분석, 의미 분석
- 자연언어처리 시스템
말뭉치 (Corpus)
- 검색 실험을 위해 쓰이는 집단
- 대표적인 말뭉치 : TREC, HANTEC(한글), Brown Corpus
자연언어처리 (NLP ; Natural Language Process)
- 언어학적 분석 (Linguistic Analysis) 에 기반을 두는 방법
- 문법 규칙과 같이 기호의 조작에 필요한 규칙들에 의존하므로
- 기호적 (symbolic)
- 통계적 분석 (Statistical Analysis) 에 기반을 두는 방법
- 대규모 말뭉치로부터 언어 관련 데이터를 추출해내므로
- 경험적 (empirical)
- 일반적인 텍스트 처리 과정
- 문장과 단어의 식별 작업
- 문장 분리기 (Sentence Delimiter) : 문단을 문장으로 분리
- 어휘 분석기 (Lexical Analyzer) : 문장을 단어로 분리
- 형태소 분석과 구문 분석
- 형태소 분석기 : 단어를 형태소로 분리
- 각 형태소에 품사 정보, 의미자질, 기타 자질 부여
- 문장과 단어의 식별 작업
품사 태깅 = POS 태깅 (Part Of Speech Tagging)
- 단어에 품사 정보 부여
- 하나의 단어 혹은 형태소에 둘 이상의 품사가 부여될 수 O
- 정확한 품사 태깅을 위한 접근방법 (2가지)
- 규칙 기반 방법
- 언어 정보를 생성 규칙(production rule) 형태로 표현하고 이를 이용하여 태깅을 수행
- 통계적 방법
- 품사 태그가 부착된 말뭉치에서 추출한 출현 정보나 확률을 이용하여 품사를 부여
- 예 : 학습용 말뭉치로부터 하나의 단어가 특정한 품사를 부여받은 확률을 산출하여 이를 적용
- 규칙 기반 방법
3. 자연언어 처리 과정
자연언어 텍스트의 처리 단계
- 형태소 분석
- 구문/통사 분석
- 의미 분석
- 화용 분석
형태소 분석
- 단어 단위의 어휘 분석을 포함
- 형태소 : 의미를 갖는 최소의 단위
- 자립성 여부에 따라 : 자립형태소 vs. 의존형태소 = 문법형태소
- 의미의 허실에 따라 : 실질형태소 = 어휘형태소 vs. 형식형태소
- 형태소 기반 자동색인 기법에서는 형식형태소를 제거한 후 실질형태소에 해당되는 어간(root)이나 어근(stem)으로부터 색인어를 선정
구문/통사 분석 (Syntactic Analysis)
- 형태소 분석 다음 단계에서 문법을 이용하여 문장의 구조를 분석하는 것
- 파싱 (Parsing)
- 구문 분석 결과 문장의 문법적 구조를 파악
- 문장이 통사적으로 옳은가를 판정
- 파서 (Parser) = 파싱 프로그램 = 구문분석기
- 분석 결과는 흔히 구문 트리 (Syntax Tree) 구조
의미 분석 (Semantic Analysis)
- 구문 분석 결과 생성된 통사 구조에 의해 문장의 의미를 밝혀내는 작업
- 의미해석 규칙, 의미자질 사전 등을 이용하여 각 형태소에 의미표지를 부여함으로써 의미적으로 맞는 문장인지 여부를 판단
- 구문 분석 결과가 갖는 모호성을 해소하기 위해 필요
- 동형이의어, 동음이의어, 다의어와 같이 중의성을 갖는 단어의 의미를 정확히 파악하기 위해 필요 : 단어 의미 중의성 해소
화용 분석 (Pragmatic Analysis)
- 언어의 사용에 관련된 지식에 의해 문장을 해석함으로써 화자의 의도를 파악하는 작업
4. 텍스트의 유형 및 구조
마이크로 수준 (Micro Level) vs. 메크로 수준 (Macro Level)
- 마이크로 수준의 기술
- 언어학적 분석 방법에 의해 텍스트를 문장 - 단어 - 형태소 수준으로 분석하는 것
- 메크로 수준의 기술
- 텍스트 전체의 구조를 보는 것
- 특히 텍스트 구조를 이용한 텍스트 요약 기법에서 고려되어야 O
메크로 수준의 텍스트 구조 (3가지)
- 스키마 구조 (Schematic Structure)
- 텍스트의 전체적인 구조
- 텍스트를 구성하는 부분들의 순서에 의해 정의
- 대개 장, 절, 문단 등과 같이 텍스트의 논리적 구조와 일치하는 경우가 다수
- 수사 구조 (Rhetorical Structure)
- 응집력 있고 연속적인 텍스트의 구조
- 텍스트를 구성하는 문장들이나 절들 간의 관계에 기초
- 수사구조이론에서 정의하는 텍스트 구조
- 구조적 응집성 기반 텍스트 요약 기법의 기초
- 주제 구조 (Thematic Structure)
- 주제적인 측면에서 본 텍스트 전반적인 구조
- 텍스트의 하위주제들은 대개 계층적으로 조직되며 텍스트를 구성하는 단락들의 순서에 의해 계층적인 관계가 표현
텍스트 마이닝 & 텍스트 구조
- 텍스트 마이닝의 대상이 되는 디지털 문헌은 구조화 또는 형식화를 통해 본문 텍스트 이외에 다양한 다른 정보를 포함할 수 O
- 따라서 우선 구조화되어 있는 문헌으로부터 구조적 정보 유형을 표현하는 태그와 기타 불필요한 정보를 제거한 후 마이닝 대상이 되는 자연언어 텍스트를 식별
- <그림 1.6> & <그림1.7>
그림1.7>
- 마크업 언어로 구조화되어 있는 텍스트를 구조화되지 않은 자연언어 텍스트로 변환
- 단어들을 분리하여 분류 자질로 사용할 단어들을 선정
- 선정된 분류 자질들의 가중치로 구성되는 문헌벡터를 생성
댓글남기기