-
stemming의 특징
- 색인전에 용어(term)대신 어간(stem)으로 변환
- 일반적으로 stemming을 하면, 정확도(precision)를 감소시키는 대신 조회율(recall)을 증가시킴.
-
장점
-
색인파일의 크기 감소
- 색인어 수가 감소하므로
- 50% 이상 압축비율.
-
검색속도 향상
- 이미 stemming되어 있을 경우. 검색시 색인어에 대한 stemming이 불필요
-
-
단점
- 용어 정보 상실 또는 추가적인 정보공간 필요
-
stem(어간)
- 활용어가 활용할 때에 변하지 않는 부분)
-
stemming 방법
-
-
접두사, 접미사 제거
-
단어로 부터 접두/접미사 제거 하거나 어간을 변형
-
예: Poter 알고리즘
- 조건(어간, 접미사, 규칙)과 행위 집합으로 구성
-
-
-
후속자 변형(successor variety)
- 본문내의 글자가 연속적으로 나타나는 빈도
- 후속자변형의 값이 크게 감소하는 위치를 기준으로 단어 절단(cutoff)
-
예: 단어집합 able, axle, accident, ape, about, 단어: apple
- 후속자변형: a에 대하여 4(b,x,c,p), ap에 대하여 1(e)
- 따라서 apple에 대한 후속자변형은 1
-
테이블 탐색
- (색인용어-> 어간 목록) 테이블 이용
- 계산비용이 클 때 유용
- 비표준어에 대한 처리 불가
- 테이블 저장에 따르는 저장공간 오버헤드
-
n-gram
-
- 두 단어가 공유하는 글자수로 유사성을 계산
- 어간이 같은 단어들의 군집화(clustering)에 이용
- 어간이 생성되지 않음.
-
Dice 상관계수 S
- S = 2C / (A + B
- A: 첫째 단어의 ‘유일’이중그램 수,
- B: 두째 단어의 ‘유일’이중그램 수,
- C: A와 B가 공유한 유일 이중 그램 수
-
예: 두 단어( statistics, statistical)에 대하여
- A=7, B=8, C=6
- S= (2*6)/(7+8) = 0.80
-
-
-
탐색 과정에서 사용되는 스테머--------------
- CATALOG의 경우 질의어 user에 대하여 user, users, used 등을 빈도순으로 제시
-
stemming의 압축률
- Poter의 경우 26~ 28%의 압축
-
실제 데이터베이스에서는 더 작은 압축률
- 왜냐하면 숫자, 오자(misspelling), 고유명사(proper name)등이 포함되어 있기 때문
'검색 엔진' 카테고리의 다른 글
[박혜웅] 유의어 사전 (thesaurus) (0) | 2010.03.27 |
---|---|
[박혜웅] 불용어 목록 (stoplist) (0) | 2010.03.27 |
[박헤웅] 어휘 분석 (lexical analysis) (0) | 2010.03.27 |
[박혜웅] 검색 연산의 종류 (0) | 2010.03.27 |
[박혜웅] 벡터 공간 모델(vector space model) (0) | 2010.03.27 |