Transcript ART ADJ N

Introduction
to
Computational
Linguistics
Jeesun Nam
Dept. Linguistics HUFS
http://dicora.hufs.ac.kr
[email protected]
한국외국어대학교 언어인지과학과
[email protected]
CONTENTS
PART I
I. Introduction
II. History of NLP
III. Problem Complexity
IV. Preprocessing of Text:
Recognition of Token &
Sentence
V. Morphological Analyzer
VI. POS Tag Set & Dictionary
VII. Corpus & Frequency List
VIII. Exercise: Text Analysis
한국외국어대학교 언어인지과학과 [email protected]
CONTENTS
PART II
IX. Ambiguity and POS Tagging
X. Formal Grammar & Language
Hierarchy
XI. PS-Rules & Transition
Network Model
XII. Syntactic Analysis: Parsing
XIII. Semantic Representation
and Ontologies
XIV. Information Retrieval &
Classification
XV. Information Extraction
XVI. Exercise: Opinion
Classification
한국외국어대학교 언어인지과학과 [email protected]
 참고문헌
 <Natural Language Understanding>
James Allen, 1995 The Benjamin/
Cummings Publishing Company.
 <Foundations of Computational
Linguistics> Roland Hausser, 1999, 2001,
Springer-Verlag Berlin-Heidelberg
Germany.
 < The Oxford Handbook of
Computational Linguistics> ed. by
Ruslan Mitkov 2003, Oxford University
Press.
 <Introduction to Natural Language
Processing> Mary Dee Harris, 1985.
Reston Publishing Company, Virginia.
 <UNITEX 2.1> User Manual, 2002,
Sebastien Paumier, http://wwwigm.univ-mlv.fr/~unitex
 <자연언어처리> 김영택외 공저, 2001. 생능
출판사
 <오토마타와 계산이론> 김대수, 1996, 생능
출판사
 <글잡이 프로그램> 매뉴얼, 21세기세종계획
한국외국어대학교 언어인지과학과 [email protected]
5
 NOTE
한국외국어대학교 언어인지과학과 [email protected]
6
PART I
1. Introduction
 Introduction
 개념 정리
 Computational Linguistics (CL)
 Natural Language Processing (NLP)
 [언어]의 정의
 Human Language, Natural
Language
 Vs. Artificial Language
 [프로세싱(처리)]의 정의
 분석(Analysis)
 생성(Generation)
 [자동(컴퓨터에 의한]의 정의
 자동(Automatic, by computer) vs.
반자동(Semi-automatic)
 전산언어학/컴퓨터언어학
 자연언어처리
한국외국어대학교 언어인지과학과 [email protected]
11
 응용 분야
 기계 번역(Machine Translation)
 정보 검색(Information Retrieval)
 정보 추출(Information Extraction)
 질의 응답 시스템(Question Answering)
 문서 요약(Text Summarization)
 용어 추출과 자동 색인(Term Extraction
& Automatic Indexing)
 데이터마이닝(Text Data Mining)
 자연언어 인터페이스(Natural Language
Interaction)
 멀티미디어 시스템과 자연언어(Natural
Language in Multimodal and
Multimedia Systems)
 컴퓨터 보조 언어 학습과 자연언어처리
(NLP in Computer-Assisted Language
Learning)
 다국어 온라인 자연언어처리(Multilingual
On-line NLP)
한국외국어대학교 언어인지과학과 [email protected]
12
 Applications of Natural Language
Understanding
 [1] 문자기반 응용 (Text-based
applications)
 글로 쓰여진 문서(written text) 대상
 Books, newspapers, manuals, email messages 등
한국외국어대학교 언어인지과학과 [email protected]
13
 Written Text 처리에 대한 응용 영역
 {1} 텍스트 DB에서 일정 주제에 관련된
문서(documents)를 검색하기(예: 도서
관에서 원하는 책 찾기)
한국외국어대학교 언어인지과학과 [email protected]
14
 Written Text 처리에 대한 응용 영역
 {2} 일정 주제(topic)에 대한 메시지나
논문 등에서 원하는 정보를 추출하기
(예: 어느 특정일 일간지에 실린 주식거
래 내용으로부터 일정 데이터베이스를
구성하는 것)
한국외국어대학교 언어인지과학과 [email protected]
15
 Written Text 처리에 대한 응용 영역
 {3} 한 언어로 되어 있는 문서를 다른
언어로 번역하기(예: 자동차 수리 매뉴
얼을 여러 언어로 발행하기)
한국외국어대학교 언어인지과학과 [email protected]
16
 Written Text 처리에 대한 응용 영역
 {4} 일정 목적을 위해 텍스트를 요약하
기(예: 1000쪽의 정부 문건을 3쪽 요약
문으로 만들기)
한국외국어대학교 언어인지과학과 [email protected]
17
 [2] 음성기반 응용 (Dialogue-based
applications)
 말로 수행된 언어 (Spoken language)
대상
 Question-answer, Human-machine
communication, Spoken language,
Interaction using keyboards
한국외국어대학교 언어인지과학과 [email protected]
18
 Spoken Text 처리에 대한 응용 영역
 {1} 데이터베이스에 대한 질의가 자연
언어로 이루어지는 질의-응답 시스템
(Q&A system) (예: 인사자료에 대한
질의 시스템)
 {2} 전화로 자동 응답하는 고객서비스
(예: 은행 송금이나 상품 주문 등과 같
은 자동 응답 시스템)
한국외국어대학교 언어인지과학과 [email protected]
19
 Spoken Text 처리에 대한 응용 영역
 {3} 학습자를 위한 자동 튜토링 시스템
(예: 자동 수학 튜토링 시스템)
 {4} 공동의 일반적 문제 해결 시스템
(예: 개인 스케줄이나 일정 등을 도와
주는 시스템)
한국외국어대학교 언어인지과학과 [email protected]
20
 Human Machine Interaction
- Robot & Voice Recognition
 ASIMO: Stairs
 http://www.youtube.com/watch?v=AS
oCJTYgYB0&feature=related
 Humanoid Robot: REEM-B
 http://www.youtube.com/watch?v=YSf
aRcmsrtw&feature=related
한국외국어대학교 언어인지과학과 [email protected]
21
 Human Machine Interaction
- Robot & Voice Recognition
 Human Robot Interaction: Cleaning
 http://www.youtube.com/watch?v=b9
mHuLekw9M
 Speech Recognition: Nuvi
 http://www.youtube.com/watch?v=sA
HaDiwPPzk
한국외국어대학교 언어인지과학과 [email protected]
22
 Evaluating Language
Understanding Systems
 시스템의 성능 평가의 어려움
 사람은 일반적으로 실제 프로그램에
존재하는 것보다 더 많은 지적 능력을
가정하는 경향이 있음
 예: <ELIZA> 시스템
한국외국어대학교 언어인지과학과 [email protected]
23
 예: <ELIZA> 시스템
 인공지능(Artificial Intelligence: AI)의
대표적인 예
 1960년대 중반 MIT에서 개발됨
 이 시스템은 <language
understanding & production>을 전제
하지 않음  그럼에도 그 언어적 대응
양식이 매우 인상적인 효과를 줌
 이 프로그램은 심리치료사나 심리상담
사의 역할을 수행할 수 있으며, 이 프로
그램이 잘 작동하려면 사용자가 환자와
같은 입장 역할을하는 것이 필요
 다음은 이 프로그램이 작동하는 사례를
보임
한국외국어대학교 언어인지과학과 [email protected]
24
 ELIZA와의 대화
User Men are all alike.
Eliza In what way?
User They’re always bugging us about something or
other.
Eliza Can you think of a specific example?
User Well, my boyfriend made me come here.
Eliza Your boyfriend made you come here.
User He says I’m depressed much of the time.
Eliza I am sorry to hear you are depressed.
User It’s true. I am unhappy.
Eliza Do you think coming here will help you not to be
unhappy?
User I need some help; that much seems certain.
Eliza What would it mean to you if you got some help?
User Perhaps I could learn to get along with my mother.
Eliza Tell me more about your family.
User My mother takes care of me.
Eliza Who else in your family takes care of you?
User My father.
Eliza Your father.
User You are like my father in some way.
Eliza What resemblance do you see?
한국외국어대학교 언어인지과학과 [email protected]
25
 ELIZA 시스템의 연습
 http://nlp-addiction.com/eliza/
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 Cf. <심심이> 프로그램
 http://www.tmtmi.com/
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 Exercise
 Eliza vs. 심심이/틈틈이
 이 두 프로그램의 작동 원리는 무엇일
까? 이들의 공통점과 차이점은?
 사용자는 주로 어떤 부류의 사람들을
대상으로 하고 있는가? 또 어떤 사람
들에게 더 적절하고 유용할까?
 우수한 점은 무엇이며 부족한 점은 무
엇인가?
 어떤 유형의 대화에 뛰어나고 어떤 유
형의 대화에 취약할까?
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 ELIZA의 작동 원리
 <Keyword>로 정의된 일련의 단어들
에 대한 데이터베이스가 존재함
 각 키워드에 대해 {<변수값> <입력문
인식을 위한 패턴> <출력문 형태>}의
3가지 값이 저장되어 있음
 작동 알고리즘
1. Given a sentence S,
2. Find a keyword in S whose pattern
matches S
3. If there is more than 1 keyword, pick the
one with the highest integer value.
4. Use the output specification that is
associated with this keyword to generate
the next sentence.
5. If there are no keywords, generate an
innocuous continuation statement, such as
“Tell me more” or “Go on”.
한국외국어대학교 언어인지과학과 [email protected]
29
 <Keyword>의 데이터베이스(일부)
Word Rank Pattern
Outputs
In what way?
alike
10 ?X
What resemblance do
you see?
?X are
Would you prefer it if
are
3
you ?Y
I weren’t ?Y ?
What if they were
3 ?X are ?Y
not ?Y ?
Can you think of a
specific example? /
always 5 ?X
When? / Really,
always?
Why do you ask?
what
2 ?X
Does that interest
you?
한국외국어대학교 언어인지과학과 [email protected]
30
 이 프로그램이 언어를 이해하지 못하고 있
는 것을 확인하는 테스트
 관용구를 삽입할 때
 예: “Necessity is the mother of
invention”
 ELIZA 대응: “Tell me more about
your family” (pattern <mother>)
 통사구조/단어가 틀린 비문을 삽입할때
 예: “Green the adzabak are the a
ran four”
 ELIZA 대응: “What if they were not
the a ran four?”
 대화를 계속 할수록 실제적인 대화 내
용을 전혀 고려하지 않고 있다는 것을
보게 됨  그러나 사용자는 전혀 어떠
한 메커니즘에 의해 작동하고 있는지를
알아내기 어려움
한국외국어대학교 언어인지과학과 [email protected]
31
 그러나 자연언어의 이해는,
 실제로 매우 복잡한 components들로
구성되므로,
 이러한 작업이 충분한 수준으로 진전
되지 않는 한
 근본적으로 위와 차별될 수 있는 어떤
시스템의 구현을 기대하기는 어려움
 Cf. 심심이 대화 프로그램
한국외국어대학교 언어인지과학과 [email protected]
32
 Different Levels of Language Analysis
 요구되는 지식 형태
 [1] Phonetic & phonological
knowledge
 단어(word)가 어떻게 그것을 표현하
는 소리(sound)와 연결되어 있는가에
대한 지식  음성기반 응용에서 필
수적
 [2] Morphological knowledge
 단어가 최소 의미 단위인 형태소
(morpheme)으로부터 어떻게 구성되
는가에 대한 지식(예: friend-ly)
 [3] Syntactic knowledge
 단어들이 모여서 어떻게 올바른 문장
을 구성하는가, 각 단어는 문장안에
서 어떠한 구조적 역할을 하는가, 어
느 구(phrase)가 어느 구의 부분이 되
는가 등에 대한 지식
한국외국어대학교 언어인지과학과 [email protected]
33
 [4] Semantic knowledge
 단어가 의미하는 것이 무엇인지, 이
들이 문장안에서 어떻게 결합하여서
하나의 문장 의미를 구성하는가 등
의 지식 (문맥과 무관한 의미 연구)
 [5] Pragmatic knowledge
 문장이 각각 다른 상황(situation)에
서 어떻게 사용되는가, 이러한 사용
이 문장의 해석에 어떻게 관여하는
가에 대한 지식 (문맥 의존적 의미)
 deictic meaning (지시적 의미)
한국외국어대학교 언어인지과학과 [email protected]
34
 [6] Discourse knowledge
 하나의 문장이 뒤에 오는 문장의 해
석에 어떠한 영향을 미치는가에 대
한 지식, 대명사(pronoun)나 시간표
현의 해석 등에 중요함  anaphoric
meaning (선행적 의미)
 [7] World knowledge
 언어 사용자가 대화를 지속해가기
위해서 갖추어야 하는 일반적인 모
든 지식 유형. 또한 다른 사람들의
믿음이나 목적 등에 대한 지식도 포
함됨.
한국외국어대학교 언어인지과학과 [email protected]
35
 자연언어 처리를 위해 다음 3가지 영역이
요구됨
 [1] Theory of Language:
 수학적으로 명료하고 전산적으로 효
율적이며 일관된 방식으로 <자연언
어 정보 전달 방식을 설명하는 이론>
 [2] Description of Language data:
 경험적으로 <언어 이론의 모든 실제
구성 요소들을 연구> – 즉 사전, 형태
론, 통사론, 의미론, 화용론 및 문맥
표상 이론 등
 [3] Precision in the Description of
these Components for Computation:
 <실제 컴퓨팅을 위해 위의 기술을 명
시적으로 정의하는 연구>
한국외국어대학교 언어인지과학과 [email protected]
36
 Why is NLU difficult?
 문제의 핵심 (Particular subproblems)
 단어의미의 중의성 해소의 문제 (word
sense disambiguation)
 문법범주의 올바른 태깅 문제 (part-ofspeech tagging)
 구문 분석의 문제 (Parsing)
 의미구조 표상의 문제 (semantic
representations)
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 Why is NLU difficult?
 분석의 층위 (Levels of analysis)
 형태론적 층위 (Morphology)
 통사론적 층위 (Syntax)
 의미론적 층위 (Semantics)
 화용론(담화론)적 층위 (discourse)
 모든 층위에서 중의성(ambiguity)이 발생
 문제에 따라서는 각 층위별로 분리하여
해결할 수 없음
 상위 차원의 정보가 요구됨
 어휘 중의성의 예: 배, 차, 나는, 자라
는
 구문 중의성의 예: 예쁜 영희의 가방
/ 노란 영희의 가방
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 예: 실제 분석이 복잡한 경우의 예
 NYT headline 17/05/2000
Fed raises interest rates 0.5%
in effort to control inflation.
 기대되는 올바른 트리구조
한국외국어대학교 언어인지과학과 [email protected]
39
 품사 중의성(Part of Speech ambiguities)
 통사구조 중의성(Syntactic attachment
ambiguities)
 Cf. 단어의미 중의성(Word sense
ambiguities)
 ≠ “Fed” : Federal agent
 ≠ “interest”: a feeling wanting to
know or learn more
한국외국어대학교 언어인지과학과 [email protected]
40
 잘못 분석된 경우
한국외국어대학교 언어인지과학과 [email protected]
41
 잘못 분석된 경우(계속)
한국외국어대학교 언어인지과학과 [email protected]
42
 언어학의 각 분야와 컴퓨터언어학의 단계
 [1] 단어 차원 연구
 <형태론> : 사전, 어휘론
 <형태소분석기> : 전자사전
 [2] 문장 차원 연구
 <통사론> : 문법
 <구문분석기(parser)> : 형식문법
 [3] 문장의 의미(진리가, 지식) 연구
 <의미론> : (화용론)
 <의미해석> : 형식논리, 세계지식
 [4] 단어의 소리 연구
 <음운론> : (음성학)
 <음성인식/합성> : 음성처리
 <언어학>⇔<컴퓨터언어학>⇔<실제응용>
 컴퓨터언어학은 이론적으로 언어학(공학)
분야와 닿아 있으면서 실제적으로 적용
가능한 시스템을 구현하는 것을 목표로
하는 연구/구현 분야
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 NOTE
 IBM Watson: A system designed for
answers
 http://www.youtube.com/watch?v=cU
-AhmQ363I&feature=relmfu
 IBM Watson after Jeopardy
 http://www.youtube.com/watch?v=dQ
muETLeQcg&feature=related
 Artificial Intelligence : Overview
 http://www.youtube.com/watch?v=eq
-AHmD8xz0
한국외국어대학교 언어인지과학과 [email protected]
44
2. History of NLP
 1. 언어학 이론과 자연언어처리
 언어학 이론의 역사
 소쉬르(Saussure)
 과학(Science)으로서의 언어연구
 구조주의(Structuralism)
 유럽 구조주의
 소리, 의미, 문자를 갖춘 언어를 사용
 언어의 연구가 문자 연구를 중심
 역사-비교 언어학에 치중
 미국 분포주의
 아메리카인디언들의 언어 연구 필요
 문자 기록이 없음
 선교사들이나 개척자들의 요구
 미지의 언어 : 코퍼스(Corpus) 개념
 Harris의 구조주의 연구 방법론
 행동주의, 실증주의 정신
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 촘스키(Noam Chomsky)
 생성문법(Generative Grammar)
 언어능력(Linguistic Competence)
 인간이 생득적으로 지니고 있음
 Cf. 언어수행(Performance)
 문법의 기술(description)  문법의 설
명(explication)
 유럽 : 테니에르(Tesniere)
 의존문법(Dependency Grammar)
 논항 사이의 의존 관계
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 컴퓨터언어학의 시작
 1950년대
 컴퓨터의 등장
 촘스키의 형식문법 모델
 초기의 경험부족
 자연언어가 인공언어와 크게 다르지
않을 것으로 상상
 기계의 하드웨어와 인간 머리 사이의
차이 무시
 1960년대
 인공지능(Artificial Intelligence) 연구
 1970년대
 언어학적 연구 모델 등의 활성화
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 1980년대~1990년대




코퍼스(구조주의 원리)의 활용
대용량 코퍼스의 개발
컴퓨터의 저장과 처리 능력의 발전
통사분석이나 의미분석 보다는 통계적
연구
 2000년대
 인터넷을 통한 정보 획득의 요구 확대
 인터넷을 위한 자연언어처리 기술 개발
 정보검색, 다국어 기계번역 기술 등
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 2. 초기의 연구
 1947년 Warren Weaver
 컴퓨터에 의한 기계번역의 가능성을 제안
 최초의 기계번역 컨퍼런스 개최됨
 초기 기계번역 – 단순한 아이디어
 번역: 사전 탐색, 대치, 문법의 재구성의
과정
 예: 영어 원문
 “I must go home.”
 대역어 찾기
 I Ich,
 must muss
 go gehen
 home  nach Hause
 독일어 어순 특성
 독일어 생성문
 “Ich muss nach Hause gehen.”
한국외국어대학교 언어인지과학과 [email protected]
51
 그 이후
 기계번역이 언어 이해 없이는 불가능
하다는 것이 인식됨
 영어문장 “The spirit is willing, but
the flesh is week”  러시아문장 
영어문장 “The vodka is strong but
the meat is rotten”
 많은 양의 지식이 요구됨이 확인됨
 Cf. The pen is in the box, The box
is in the pen
 기계번역 연구는 구문 이론 연구에 박차
를 가하는 계기가 됨
한국외국어대학교 언어인지과학과 [email protected]
52
 3. 1960년대의 자연언어처리
 제한된 영역을 대상으로 함
 주로 키워드 기법 사용
 [1] BASEBALL
 1963년
 미국 프로야구 자료를 자연언어로 검색하
는 데이터베이스 질의 응답 시스템
 자연언어로 질의하면 이를 DB 검색 질의
어로 변환하여 답변 주는 시스템
 상당히 제한된 단문 중심
 Question: Who did the Yankees play on
July 7 ?
Winner/
Day Game
Score
Month
Place
July
Cleveland
6
95
July
July
Boston
Detroit
7
7
96
97
Loser/
Score
White
Indians/0
Sox/2
Red Sox/5 Yankees/3
Tigers/10 Athletics/2
 After Query Generator:
(OR
(July 7 – Yankees/- ?ANSWER/-)
(July 7 - ?ANSWER/ - Yankees/-)
 Answer: Red Sox
한국외국어대학교 언어인지과학과 [email protected]
53
 [2] ELIZA 시스템
 1966년
 키워드에 의한 패턴 매칭 기법을 이용한
인간과 컴퓨터의 대화 시스템
 실제 문장을 분석하는 방법 : 단순한 패턴
비교 시스템
 패턴의 예:
Pattern
Response
(*computer*)
Do Computers frighten you?
(*mother*)
Tell me more about your family.
How long have you believed that
(*I believe that X*)
X?
<nothing matched>
Please go on.
한국외국어대학교 언어인지과학과 [email protected]
54
 [3] STUDENT 시스템
 1968년
 영어 문장으로 표현된 대수학 문제를 산
술 수식으로 변환하는 시스템
 비교적 단순한 패턴 매칭과 소수의 휴리
스틱을 이용하여 문장을 분석
 예:
 John’s age now is two times Mary’s
age  JA=2*MA
 In 3 years John will be 6 years older
than Mary  JA+3=MA+6
한국외국어대학교 언어인지과학과 [email protected]
55
 [4] 격문법(Case Grammar)
 Fillmore 1968
 문장의 각 주요 명사구가 술어 동사에
대해 어떤 격(agent, object, instrument)
으로 역할을 하는가에 주목
 이러한 격관계를 의미적으로 해석하도
록 제안
 기계적으로 처리하기가 힘들다는 단점
한국외국어대학교 언어인지과학과 [email protected]
56
 4. 1970년대의 자연언어처리
 높은 수준의 통사 및 의미 분석
 잘 정의된 어휘 지식과 실세계 지식을 기
반으로 하는 자연언어처리 시스템들이 연
구되고 개발되기 시작
 자연언어의 통사의미 처리가 꽃피운 시기
 Cf. 1960년대
 언어 이해보다는 키워드 및 소수의 휴
리스틱에 기반한 시스템
한국외국어대학교 언어인지과학과 [email protected]
57
 [1] SHRDLU
 Winograd 1972년
 블럭 세계 영역에서 자연언어 문장을
이해하여 프로그램으로 변환하는 대화
형 시스템
 블록을 테이블위로 옮긴다든지 하는
등 다양한 작업 수행
 자연스러운 대화 문장을 생성
 이전 대화 내용에 대한 질의에 응답
User
Find a block which is
taller than the one you
are holding and put it
into the box
SHRDLU By “it”, I assume you
mean the block which is
taller than the one I am
holding. O.K.
한국외국어대학교 언어인지과학과 [email protected]
58
 [2] LUNAR
 Woods 1972년
 아폴로 11호가 가져온 달의 돌과 흙에
대한 정보를 자연언어로 검색하는 시
험용 정보 검색 시스템
 3,500 여개의 어휘 사전
 ATN에 의해 문장을 파싱(parsing)함
 서술논리(predicate calculus)에 의해
양 정보를 일반적으로 다룸
 질문을 DB 질의어로 변환하는데 복잡
한 기술을 이용
 SHRDLU, LUNAR: 제한된 영역에서의
대상영역에 대한 거의 완벽한 지식을
가진 포괄적인 시스템
한국외국어대학교 언어인지과학과 [email protected]
59
 [3] MARGIE
 Shank 1973년
 사람의 행위와 관련된, 훨씬 제약이 없는
언어를 다룬 시스템
 개념종속이론(conceptual dependency
theory)에 기반한 시스템
 언어 의미를 표현하기 위해 설계됨
 입력문장을 곧바로 의미 구조로 분석하
는 방법론을 이용
 개념종속 의미소(primitives)를 기초로
표현
 의미소의 예: ATRANS, MTRANS, PTRANS,
SPEAK, MOVE..
 ATRANS는 “소유의 이전”을 의미
 MTRANS는 “정신적인 정보의 이동”
 PTRANS는 “물건이 한 위치에서 다른
위치로 물리적 이동함”을 의미
 각 의미소는 동사에 의해 결정/ 각 의미소
마다 필요 슬롯(slots)이 정의됨
한국외국어대학교 언어인지과학과 [email protected]
60
 예: “John gave Mary a book”
 소유권의 이전: ATRANS의 의미소 적용
 ATRANS는 ACTOR, OBJECT, TO and
FROM (DIRECTION) 슬롯을 가짐
(ATRANS
(ACTOR John)
(OBJECT Book)
(TO John)
(FROM Mary) )
 문장의 의미 표현은 문장의 다른 단어들
과 결합하여 일종의 의미망(semantic
network) 형태로 구성
 개념종속 의미소
 의미를 표현하는 데 사용
 예측을 하는 데에도 사용
 예: “John gave Mary an aspirin.”
 추론 프로그램의 추론 – “Mary felt
sick”, “Mary wanted to feel better”,
John wanted Mary to feel better”,
“Mary asked John for an aspirin” 등의
문장 생성
한국외국어대학교 언어인지과학과 [email protected]
61
 [4] FRAMES & SCRIPTS





Minsky 1975년, Shank 1977년
지식 표현에 중점을 둔 시스템
각 상황에 대한 지식을 표현
이러한 지식을 바탕으로 추론을 함
예: 레스토랑에 대한 담화
 웨이터, 메뉴, 테이블, 음식, 계산서
등을 떠올릴 수 있음
 SCRIPTS는 그러한 정보에 대해 미
리 만들어 놓은 형식틀을 제공함
 “철수가 식당에 가서 불고기를 주문
했다”  철수는 불고기를 먹었으며,
음식값을 지불했을 것이라는 것 등
의 정보를 추론할 수 있음
한국외국어대학교 언어인지과학과 [email protected]
62
 5. 1980년대 이후의 자연언어 처리
 [1] 통합(unification)에 기반한 자연언어
처리 문법 이론의 등장
 LFG (Lexical Functional Grammar)
– Bresnan 1982
 GPSG (Generalized Phrase
Structure Grammar) – Gazdar 1985
 HPSG (Head-driven Phrase
Structure Grammar) – Pollard 1985
 DCG (Definite Clause Grammar)
1980
 FUG (Functional Unification
Grammar) 1983
 PATR-II – Shieber 1983
한국외국어대학교 언어인지과학과 [email protected]
63
 통합기반문법(unification-based grammar
formalism)들의 특징
 자질-값 쌍에 기반한 자질 구조를 이용
 자질구조의 정보 결합 연산으로 통합을
이용
 문맥자유문법 규칙을 이용
 문맥의존적인 요소를 자질구조를 이용하
여 해결
 자연언어처리의 자동화를 문법 이론 측
면에서 제공
 1980년대 초반
 비교적 적은 양의 문장을 대상으로 언
어적 가정을 시험하는 경향
 광범위 언어 현상 부재  실용적인
측면에서의 한계
한국외국어대학교 언어인지과학과 [email protected]
64
 [2] 코퍼스기반 언어처리
 실용적 시스템의 개발
 광범위한 언어 현상의 규명이 요구됨
 1990년대 들어서면서
 말뭉치(corpus)의 구축이 본격화됨
 각종 전자사전 등 언어 자원의 구축
이 활성화됨
 대용량 말뭉치 개발
 언어 분석 방법이 바뀌게 됨
 통계기반 언어 처리 연구
 Cf. 현실적 배경
 고성능 컴퓨터의 대중화
 온라인 정보
 인터넷 및 World-Wide Web 시대  엄청
난 양의 정보를 효과적으로 처리할 필요
 자연언어처리의 필요성은 갈수록 증가
 핵심 요구 분야
 언어장벽 해소의 문제
 정보의 효과적인 검색을 위한 검색 기
법, 정보 분류, 요약 등
 미래의 컴퓨터-인간 인터페이스
한국외국어대학교 언어인지과학과 [email protected]
65
 7. 기계번역의 역사
 1947년 W. Weaver & A. Booth
 기계번역 가능성의 제안
 1966년 미국의 ALPAC 보고서
 기계번역이 인간의 도움없이 번역하는
시스템을 의미한다면 그와 같은 시스템
은 개발된 적도 없으며, 개발될 가능성
도 없다는 결론에 이름
 1973년에는 미국내에 3개의 프로젝트
만 남음
 1975년에는 미국에는 더이상 기계번역
관련 프로젝트가 남지 않음
 1984년
 미국내에서만 50만 페이지 이상의 문서
가 기계에 의해 번역되고 있었음
 80년대 중반 이후
 다수의 기업체들이 기계번역 시스템 개
발에 뛰어듦
 일본과 유럽 중심: 정부의 집중적 지원
하에 연구가 활성화됨
한국외국어대학교 언어인지과학과 [email protected]
66
 [1] GAT (Georgetown Automatic Translation)
 1952년 ~ 1964년 완성
 미국정부의 지원
 소련어로 된 물리학 관련 문서를 영어로
번역하는 것을 목표
 번역의 질이 매우 떨어짐
 문서를 빠른 시간내에 대충 살펴보는 목
적으로는 사용 가능
 다른 대안이 없으므로 1979년까지 미국
원자 에너지국에서 사용됨
 언어학 이론을 전혀 사용하지 않음
 단어 대 단어의 번역에 약간의 숙어 처리
를 하는 수준의 번역
한국외국어대학교 언어인지과학과 [email protected]
67
 [2] CETA (Centre d’Etudes pour la
Traduction Automatique)
 1961년 ~ 1967년 완성 (1971년까지
사용)
 프랑스의 그로노블(Gronoble)대학
 러시아어를 프랑스어로 번역
 물리학 분야를 번역의 대상으로 함
 언어학 이론에서 출발
 문장의 의존 구조 분석을 통해 번역
 이론적 배경
 문법: Interlingua(개별언어와 독립적)
 사전: 변환방식
 Interlingua 방식의 한계를 체험함
한국외국어대학교 언어인지과학과 [email protected]
68
 [3] TAUM (Traduction Automatque de
l’Universite de Montreal)
 1965년
 캐나다 정부의 지원
 영어를 불어로 번역하는 시스템을 개발하
기 위함
 순수한 변환 방식을 이용한 최초의 시스템
 일기예보를 번역 대상으로 함
 제한된 어휘와 정형화된 문장을 사용하
고 있는 분야
 인간 번역사들은 6개월이면 이직함
 영어/불어를 동시에 사용하는 캐나다의
사회적 필요성
 1976년부터 사용됨
 가장 성공적인 기계번역 시스템의 하나로
인정됨
 일기예보의 번역
 창조성이 요구되지 않는 작업
 인간에는 부적합
 문장에 중의성이 없고
 사용되는 문장이 정형화되어 있음
 기계적 처리에 매우 적합함
한국외국어대학교 언어인지과학과 [email protected]
69
 [4] SYSTRAN
 Peter Toma(GAT의 개발에 참여)
 최초의 상품화된 기계번역 시스템
 1970년 미국연방정부의 FTD(Foreign
Technology Department)에서 처음 사용
 1980년대 후반까지 사용
 1974년 : NASA에 의해 아폴로-소유즈 공
동 연구를 위한 문서 번역에 사용
 초기 시스템 : 러시아어-영어 번역만 가능
 Cf. 1982년 보고
 FTD는 100만개의 사전항목(entry) 가짐
 1976년
 영어-불어의 번역이 가능한 시스템이
개발
 유럽연합(EU)에 판매됨
 EU의 구매 목적은 정보의 획득이 아니
라 정보의 배포에 있음
한국외국어대학교 언어인지과학과 [email protected]
70
 1978년
 불어-영어 번역
 1979년
 영어-이태리어 번역
 Cf. 1985년 보고
 EU에서는 매달 1000여 페이지의 자료
를 SYSTRAN으로 번역
 번역 수준은 우수하지 않으나 중요하
지 않은 자료의 번역에 충분히 이용
가능
 1985년
 EU는 불어-독어, 영어-독어 번역 가능
시스템을 주문함
 상업적으로 성공한 시스템의 하나로
평가
 약점
 의미 표지 부여에 일관성이 없음
 사전 갱신에 제약이 많음
한국외국어대학교 언어인지과학과 [email protected]
71
 [5] METAO
 TAUM의 후속 시스템
 TAUM-METAO라고도 불림
 완전 자동 번역 시스템
 컴퓨터망을 통해 전송되어 오는 영어
일기예보를 불어로 번역
 SYSTRAN과 다르게 시스템의 확장이
불가능함
 하루에 2만4천 단어, 일년에 850만 단
어를 번역
 90~95%의 번역 성공율을 보임
 번역이 불가능한 5~10%는 인간이 하
나, 번역에 성공한 부분은 후처리없이
바로 사용
 오류 유형: 철자 오류나 사전에 없는
단어
 15분 : 하루치의 번역을 완료
 번역사의 평균 재임기간이 6개월에서
7~8년으로 증가함
한국외국어대학교 언어인지과학과 [email protected]
72
 [6] METAL
 텍사스 대학
 1982년에 개발
 독어-영어 양방향 기계 번역을 위해 개발
 독일어 분석: 변형이 가미된 문맥자유문법
기반
 영어 분석 : GPSG 이용
 문장 분석과 변환이 분리되어 있어 다중
번역(multi0lingual)이 가능
 독일어-중국어, 독일어-스페인어 시스템
이 실험적으로 구현되기도 함
 구조 변환과 어휘 변환이 상호 영향
 언어학적 기반
 문장 편집, DB(사전, 규칙)관리 시스템 등
개발
한국외국어대학교 언어인지과학과 [email protected]
73
 [7] GETA (Groupe d’Etudes pour la
Traduction Automatique)
 그르노블(Grenoble)대학의 기계번역팀
 CETA를 버린후 만든 시스템
 Interlingua의 실패를 거울삼아 변환
방식을 채택
 ARIANE-78을 개발
 그래프에 의한 문법을 사용
 시스템 각 부분의 기능을 최대한 제약
– 시스템의 난이도가 높아지는 것을
방지
 새로운 개념의 도입이 어려운 문제
한국외국어대학교 언어인지과학과 [email protected]
74
 [8] EUROTRA
 유럽공동체의 지원
 9개 언어를 상호 번역이 가능한 시스
템으로 개발
 EU의 다수 국가가 참여하는 프로젝트
 증명된 기술만 사용하고 새로운 기술
은 사용하지 않음
 시스템의 핵심(공유) 부분을 최소화하
기 위해 변환부가 단순히 어휘 치환 정
도로 설계됨
 의존 나무 구조(Dependency Tree)에
자질(feature)과 자잘값(value)의 쌍을
추가하는 방법으로 의미를 표현
 1992년에 1차 연구가 끝남
한국외국어대학교 언어인지과학과 [email protected]
75
 [9] 일본의 경우
 1964년 교토대학의 Nagao 교수팀
 영-일, 일-영 기계번역
 두 언어가 문법적으로 차이가 큰 만
큼 SYSTRAN이나 EUROTRA보다 고
도의 기술을 이용
 상당한 수준에서의 의미 분석
 시스템의 구조도 복잡함
 1980년대 : 기계번역시스템 연구를 위
한 연합회(JEIDA) 결성
 1990년대
 지식기반 기계 번역, 사례기반, 말뭉
치기반
 정부, 기업체, 대학교가 유기적 관계
한국외국어대학교 언어인지과학과 [email protected]
76
 [10] 국내의 기계번역 분야
 1980년대 초반
 서울대학교
 한국과학기술원(KAIST)
 한국전자통신연구원(ETRI)
 상용화된 프로그램
 영한 기계번역
 일한 기계번역
 상용화 과정중의 프로그램
 한일 기계번역
 한영 기계번역
 한중 기계번역
한국외국어대학교 언어인지과학과 [email protected]
77
 Appendix 1
 온라인 기계번역(On-line Machine
Translation> 시스템의 연습
 알타비스타(http://kr.altavista.com/)
  <Babel Fish 번역>으로 가기
 야후 (http://kr.babelfish.yahoo.com/)
한국외국어대학교 언어인지과학과 [email protected]
78
III. Problem Complexity
한국외국어대학교 언어인지과학과 [email protected]
80
 1. 자연언어의 다양성
 자연언어(Natural Language)
 인공언어(Artificial Language)에 대응
되는 개념
 Cf. 에스페란토, 크레올
 개별언어들의 다양성
 형태론적 통사론적 차이
 언어의 유형학적 차이
 형태적 측면
 교착어, 굴절어
 통사적 측면
 SOV 언어, SVO 언어, VSO 언어
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 2. 자연언어처리(NLP: Natural
Language Processing)의 단계
 [1] 형태소분석(Morphological Analysis)
 어휘분석(lexical analysis), 렉시칼분석
 어휘 사전을 바탕으로 입력문자에 형
태소 결합 규칙을 역으로 적용하여 형
태소를 분석
 예: 추워 ( 춥다+어)
 각 형태소가 가진 범주(category=POS)
정보를 어휘 사전에서 추출하여 출력
 예: 추워  춥다(ADJ)+어(Eomi)
 형태소분석은 언어의 특성이나 맞춤법
에 따라 난이도가 달라짐
 영어 < 한국어 <일본어, 중국어
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 [2] 구문분석(Syntactic Analysis=Parsing)
 파싱(parsing) : Representing and
analyzing sentence structure
 문장속의 형태소, 단어들은 일정 역할
을 수행 : 문장이 되기 위해서는 일정
규칙에 의해 조합됨
 통사규칙(syntactic rule)
 형태소들이 결합하여 문장이나 구절
을 만드는 규칙
 문장내에서 형태소들이 가지는 역할
을 분석
 통사적으로 옳고 그름
 학생이 학교에 간다
 *학생이 학교가 간다 : 통사적으로
부적절
 *Love I you : 통사적으로 부적절
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 [3] 의미분석(Semantic Analysis)
 Logical form, meaning representation
 통사분석 결과에 해석을 가함
 문장이 가진 의미를 분석해 내는 작업
 각 구성 형태소가 가진 의미가 합성되
는 단순한 유형에서부터 은유와 같이
고도의 분석을 요하는 유형까지 다양함
 방법
 각 어휘, 형태소에 의미 표지 부여
 하위범주 정보를 이용하여 부분 의
미 통합
 전체 의미를 구성
 예: “돌이 걸어간다”는 통사적으로 옳음
 하위범주정보(“걷다”의 주어는 살아
있는 물체)에 어긋나므로 의미적으
로 틀렸음
 Cf. 돌=의인화된 경우 (문제의 영역
에 따라 좌우됨)
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 [4] 화용분석(Pragmatic Analysis)
 문장이 실세계와 가지는 연관 관계를
분석
 “네 뒤에 벼랑이 있어” :조심하라는 경
고의 의미
 “나는 곰탕이야” : “너는 뭐 먹을래?”라
는 질문에 사용되는 화용의 일부
 높임말의 사용 – 화자, 청자의 관계에
따라
 자연언어에 의한 질의어를 분석하거나
사용자 인터페이스를 구축하기 위해 중
요함
 실세계지식, 상식 등과 같은 지식을 바
탕으로 화자와 청자의 대화 의도를 분
석하는 것
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 3. 자연언어 분석 시스템
 일반적으로 위의 4 단계로 나누어 고려함
 응용분야에 따라 단계 설정이 다름
 기계번역 시스템
 형태분석, 통사분석까지만 수행
 그 이후 다른 언어로 변환방식 사용
 의미분석을 하는 시스템
 통사분석을 생략하기도 함
 격문법(case grammar) 도입
 통사적으로 틀린 문장도 분석할 수
있음
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 4가지 분석 단계의 분리 방식의 장단점
 <장점>
 자연언어처리 시스템을 모듈화함
 언어학 각 연구 분야(형태론, 통사론
등)의 연구 결과를 효과적으로 사용할
수 있음
 어느 단계의 문제가 발생하는지를 효
율적으로 인지할 수 있음
 부분적인 단계별 업그레이드가 가능
 시스템 개발의 효율성 측면에서 효과
적 접근 방법
 <단점>
 단계별로 해결할 수 없는 중의성
(ambiguity) 발생의 문제
 예: 자라는??, 나는??
 인간의 언어처리방식과 대치되는 것
으로 가정됨
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 4. 문제난이도(Problem complexity)
 전산학에서 어떤 문제를 해결하는 데 소
요되는 시간을 입력의 갯수에 따른 함수
로 표현하는 것
 정렬되지 않은 자료가 n개 있을 때 원하
는 자료를 찾고자 한다면, 처음부터 차례
로 원하는 자료가 있는지 모두 조사해야
함
 문제난이도 : O(n)
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 문제난이도를 측정하는 이유
 어떤 문제들은 해결 방법은 존재하지만
문제 난이도가 너무 높아서 비실용적인
경우가 존재
 P문제(Polynominal problem)
 P문제는 입력의 갯수가 n일 경우: 최
악의 처리 시간이 O(nk)로 되는 문제
유형
 P문제는 컴퓨터에 의한 해결이 가능
 Log2(n), O(n), O(n2), O(n3) 문제 유형
 NP문제(Non-deterministic Polynominal
problem)
 NP 문제는 알고리즘 상으로는 해가
있으나, 컴퓨터에 의한 처리가 불가능
 O(2n), O(n!), O(nn) 등의 유형
한국외국어대학교 언어인지과학과 [email protected]
‹#›
문제의 유형
 [1] 알고리즘상의 수학적 해결 방안이
아예 부재하는 유형
 [2] 알고리즘상의 수학적 해결 방안이
존재하는 경우,
 [2-1] P 문제 (컴퓨터에 의해 실제 처
리가 가능한 경우)
 [2-2] NP 문제 (컴퓨터에 의해 실제
처리가 불가능한 경우)  n이 증가
함에 따라 처리 시간이 지나치게 급
격하게 증가하여 처리 시간 면에서
현실성이 없음
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 실제 처리에서 이러한 복잡도가 어떻게
관찰되는지를 보이는 예
 독일어의 Limas Corpus
 평균 문장 길이는 17.54어형(word
form)
 만일 ‘3n’ 유형 알고리즘이라면 하나의
평균 문장(n=17)을 처리하기 위한 최
대한의 operation은 51번이 됨
 만일 ‘n3’ 유형 알고리즘이라면 4,913
번의 처리를 요구함
 만일 ‘3n’ 유형의 알고리즘이라면
127,362, 132번의 처리가 요구되고
<비결정형 알고리즘> 유형이라면 무
한대의 처리횟수가 요구됨
한국외국어대학교 언어인지과학과 [email protected]
91
 Cf. M.R.Garey & D.S.Johnson (1979)
Problem size n
Time complexity
10
50
100
n3
0.001 초
0.125 초
1.0 초
2n
0.001 초
35.7 년
1015 세기
 Limas corpus
 71,148개의 문장이 존재
 이때 50개의 문장은 100개 이상의
어형의 결합 길이를 가짐(가장 긴
문장은 165개의 어형으로 구성됨)
 만일 2n 유형의 문법 알고리즘이라
면 그것은 <결정적(decidable)>이
기는 하지만 1 000 000 000 000
000 세기가 소요됨 - 현실적으로
불가능한 시간 소요 알고리즘
한국외국어대학교 언어인지과학과 [email protected]
92
 Language classes and Computational
Complexity
 Basic degrees of complexity
 [1] Linear complexity
 n, 2n, 3n, etc
 [2] Polynominal complexity
 n2, n3, n4, etc
 [3] Exponential complexity
 2n, 3n, 4n, etc
 [4] Undecidable
 N*∞
한국외국어대학교 언어인지과학과 [email protected]
93
 형식문법과 문제난이도
 촘스키 Chomsky
 인간은 선천적으로 언어능력
(competence)을 타고나며, 후천적
학습에 의해 언어수행(performance)
이 가능하다고 봄
 문법 Grammar
 인간의 언어능력에 의해 해석되어
무한한 자연언어를 생성할 수 있는
유한한 규칙으로 정의
 이 문법에 대한 수학적 모형이 형식
문법(formal grammar)
 재귀적 방법(recursive)에 의해 유한
한 규칙으로 무한한 문장의 생성이
가능
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 촘스키의 4가지 형식문법 분류
(Chomsky Hierarchy)




[1]
[2]
[3]
[4]
Type
Type
Type
Type
0:
1:
2:
3:
무제한문법
문맥의존문법
문맥자유문법
정규문법
 이 언어들간의 포함 관계
Type3
Type2
Type1
Type0
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 문법 층위와 난이도
 P 문제
 정규문법
 O(n)의 난이도를 가짐
 문맥자유문법
 O(n3)의 난이도를 가짐
 NP 문제
 문맥의존문법
 무제한문법 (분석할 수 있는 기계가
존재하지 않음이 증명됨)
한국외국어대학교 언어인지과학과 [email protected]
96
 Chomsky Hierarchy와 복잡도
Rule
restrictions
Types of
Grammar
Language
classes
Degree of
complexity
Type 3
Regular
Grammar
Regular
Language
Linear
Type 2
CFG
(Context-Free
Grammar)
CFL
(ContextFree
Language)
Polynominal
Type 1
CSG
(ContextSensitive
Grammar)
CSL
(ContextSensitive
Language)
Exponential
Type 0
Unrestricted
Grammar
Unrestrict
ed
Language
Undecidable
한국외국어대학교 언어인지과학과 [email protected]
97
 일반적인 자연언어 분석 단계와 복잡도
 형태소분석
 정규문법으로 가능
 O(n)의 난이도로 형태소 분석이 가능
 구문분석
 문맥자유문법(CFG)으로 가능한지에
대한 논란  촘스키는 불가능하다
주장함
 컴퓨터로 구현하기 위하여 CFG형태
에 가까운 문법 모델을 연구 (즉 O(n3)
의 알고리즘)
 자질구조의 통합 문법, ATN등
 문법이 잘못 기술되면 천문학적 시간
이 소요됨
한국외국어대학교 언어인지과학과 [email protected]
98
 5. 자연언어 vs. 프로그래밍 언어
(Programming language)
 자연언어의 특징
 적어도 몇만년 전부터 인류는 지구상
에 흩어져 살면서 언어를 사용함
  각 지역에 흩어져서 문화를 발전
시키고, 지역간의 통신 수단도 빈약
  인류가 사용한 언어는 긴 세월
동안 지역별로 발전
 오늘날 지구상에는 200가지가 넘는 언
어가 존재
  이 가운데 40가지 가량이 표기
체계인 글을 가지고 있음
 인류 역사 속에서 생겨나 발전해 왔기
때문에 인위적인 세심한 설계가 없이
자연발생적으로 만들어짐
  처리에 많은 어려움 & 중의성
한국외국어대학교 언어인지과학과 [email protected]
99
 형식 언어 이론에서는 자연언어가 문맥
의존문법에 해당한다고 봄
  그러나 문맥의존문법을 효율적으
로 처리하는 알고리즘은 개발되어 있
지 않기 때문에
  현재의 자연언어처리는 문맥자유
문법을 기본으로 하여, 여기에 문맥
의존적 요소를 처리할 수 있는 기능
을 부가하는 방향으로 수행됨
한국외국어대학교 언어인지과학과 [email protected]
100
 프로그래밍 언어의 특징
 컴퓨터의 출현과 함께 나타남
 컴퓨터의 발전과 함께 다양화함
 자연언어와 달리 컴퓨터 프로그래밍을
위해 특별히 개발된 인공언어(artificial
language)
 예: FORTRAN, PASCAL, C, JAVA
 기계에서의 처리를 염두에 둠
 자연언어에 비해 훨씬 처리하기 쉬
운 언어
 프로그래밍 언어 설계의 이론적 배
경 –궁극적인 모델은 자연언어
 불과 수십년의 역사
 형식언어 이론에서의 분류
 자연언어 : 문맥의존언어(CSL)
 프로그래밍언어 : 문맥자유언어(CFL)
 문맥의존언어의 부분집합
 인위적 언어이므로 처리의 용이성을
중시하여 문맥자유문법으로 설계됨
 문법의 모호함이 없도록 설계됨
한국외국어대학교 언어인지과학과 [email protected]
101
 자연언어와 프로그래밍언어 처리 공통점
 유사한 성격이 많음
 자연언어의 기계번역기와 프로그래밍
언어의 컴파일러의 번역 과정은 매우
흡사함
 번역 과정의 첫 단계: Lexical Analysis
 컴파일러 : 렉시칼 분석 = 원시문장에
서 나타나는 변수나 연산자들을 식별하
는 과정
 기계번역 : 어휘분석(형태소분석) = 형
태소들을 분리해 내고 각 형태소의 품
사를 결정하는 과정과 유사함
 구문 분석: Syntactic Analysis
 컴파일러 : 프로그래밍 언어의 구문
(syntax)을 이용하여 파싱을 함
 기계번역 : 자연언어의 문법 규칙
(grammar rule)을 이용하여 파싱을 함
한국외국어대학교 언어인지과학과 [email protected]
102
 자연언어와 프로그래밍언어 처리 차이점
 프로그래밍 언어
 기계에서의 편리한 사용을 위해 인위
적으로 설계된 것이므로, 동일한 입
력에 대하여 2가지 이상의 유효한 분
석 결과를 내게 되는 “중의성
(ambiguity = 모호성, 애매성) 현상이
애초부터 배제되어 있음
 자연언어
 중의성 발생 문제가 가장 심각한 문
제의 하나
 예: <착한 민수의 친구>의 파싱트리
의 중의성(=중의적 구조)
 중의성(ambiguity) 처리 문제
 자연언어 처리 시스템은 컴파일러와는
달리 구문 분석에 있어 중의성을 발견
하고 처리하는 데에 역점을 두게 됨
한국외국어대학교 언어인지과학과 [email protected]
103
 Appendix 1
 프로그래밍언어의 종류와 특징
 웹프로그래밍언어 HTML(Hyper-TextMarkup-Langugae)의 연습
 [1] 메모장 열기
 [2] HTML태그를 이용해 문서를 만듦
 [3] {index.html}(확장자명에 주의!!)로
저장함(형식-텍스트형식)
 [4] 파일을 더블클릭하여 열기
 [5] 웹브라우저에서 열림
한국외국어대학교 언어인지과학과 [email protected]
104
 HTML 태그의 예
TAG
설명
<html></html>
문서의 맨처음과 맨끝에 들어감
<body></body>
문서의 본문내용이 들어감
HTML문서의 큰 제목 부분을 정
함
글자색을 지정
<head></head>
text=“글자색"
<body bgcolor=“배경색"> 글자색을 지정
<title></title>
<IMG SRC="파일명"
BORDER=n>
<A HREF="연결될 파일명">
글자,그림</A>
<A HREF="HTTP://링크할
주소">글자,그림</A>
<BR>
웹페이지의 제목을 지정
그림을 나타나게함.
테두리선은 n값
글자,그림을 누르면 연결될 문서
로 이동
링크된 웹주소로 이동
내용 줄바꿈
<CENTER>내용</CENTER> 본문의 중앙에 오게 배치
<H1~6>문서 제목</H1~6> 글짜 크기를 1~6까지 사용
<html>
<head>
<title>컴퓨터언어학 웹프로그래밍연습</title>
</head>
<body bgcolor=“black" text=“yellow“ >
본문내용 연습글입니다 : 한국외대 OOO입니다.
</body>
</html>
한국외국어대학교 언어인지과학과 [email protected]
105
 HTML 문서의 예
 메모장으로 만든 {index.htm} 파일
 {index.htm}파일을 클릭  웹브라우저
한국외국어대학교 언어인지과학과 [email protected]
106
IV. Preprocessing of
Text
한국외국어대학교 언어인지과학과 [email protected]
108
 1. 인쇄텍스트와 전자텍스트
 인쇄 텍스트(Printed Text)
 전자텍스트(Electronic Text)
 다음 같은 성분들로 구성된 일련의 문
자열연쇄 (sequence of characters)
 알파벳 문자열 (Alphabet Strings)
 숫자 (Digits)
 구두점 (Punctuation Marks)
 통제 및 포맷부호(여백 Space, 리턴
Return 등의 부호)
 Tokenization
  전자텍스트가 언어적 단위로
<분할(segmented)>되는 과정 필
요함
한국외국어대학교 언어인지과학과 [email protected]
109
토큰분석(Tokenization)
 주어진 전자텍스트가 언어학적으로 의미
있는 단위들의 연쇄로 재구성되는 과정
 이와 같이 분할된 단위들  토큰(Tokens)
[1] <세그멘트 언어 (Segmented
Languages)>
 단어가 여백과 구두점에 의해 분리되
어 있는 언어 유형 (예: 영어)
 토큰화 과정이 상대적으로 용이함
 그러나 두 개의 토큰으로 보이나(예를
들어 여백이 삽입된 형태) 실제로 한
개의 토큰인 경우, 또는 그 반대의 경
우가 존재
 또한 중의적인 형태들이 존재
 하이픈이 삽입된 형태
 단어 축약형
 Apostrophes가 삽입된 형태 등
한국외국어대학교 언어인지과학과 [email protected]
110
[2] <비세그멘트 언어 (Non-segmented
Languages)>
 토큰 경계가 명시적이지 않은 동양
어 유형
 즉 토큰들이 서로 들러붙어 있음
 토큰 인식에 보다 어려운 문제를 유
발함
 이들은 한 문자(한 음절) 단어일 수
도 있으며, 또는 여러 문자(여러 음
절) 결합형 단어(multi-character
words)일 수도 있음
한국외국어대학교 언어인지과학과 [email protected]
111
 Tokenization & Sentence Recognition
(토큰 분석과 문장 인식)
 텍스트 처리 전단계에서 이루어지는
<low-level>의 텍스트 분할 작업
 일반적으로 정규표현(regular
expressions) 방법론으로 통제가 가능
 그러나 아주 사소한 에러라도 발생하
면 그 다음에서 더 많은 에러를 낳게
할 수 있으므로 매우 중요한 단계임
 이를 위해 일반적인 tokenizer에 특화
된 토큰분석 기술들이 추가적으로 제
안되고 있음
한국외국어대학교 언어인지과학과 [email protected]
112
 문장 인식(Sentence splitting)
 텍스트를 문장 단위로 분할하는 처리
 일반적으로 다음 구두점을 이용하여
문장 경계를 인식함
 마침표[.]
 느낌표[!]
 의문부호[?]
 문제의 발생
 마침표가 소수점으로 사용되는 경
우
 약자부호에서 사용된 구두점
 약자(abbreviation)가 문장의 끝에
나타날 때 그곳에 사용된 점이 문장
의 끝일 수도 있음
한국외국어대학교 언어인지과학과 [email protected]
113
 Evaluation of Preprocessing Module (텍
스트 전처리 모듈의 성능 평가)
 정확율(Precision) vs. 재현율(Recall)
 예를 들어 시스템이 찾아내야 할 문
장경계가 모두 100개인데,
 A 시스템은 단 1개만을 찾았고 그것
이 맞았다면,
 그 시스템의 precison은 100%이나,
recall은 1%가 됨
 영어에서 이를 평가하기 위한 코퍼스
 Brown corpus
 Wall Street Journal Corpus
 Penn Treebank의 일부
 각각 백만 이상의 단어를 포함,
POS 태그가 삽입
한국외국어대학교 언어인지과학과 [email protected]
114
 2. 단어분할(Word Segmentation)
 단어(Word)
 단어타입(Word types): 어휘부의 단어
들(words of vocabulary)
 단어토큰(Word tokens): 이 단어들이
실제 텍스트에 여러 번 출현한 결과
(multiple occurrences of these words
in the text)
토큰분석(Tokenization): 단어토큰을
분할하는 과정(process of
segmenting word tokens)
한국외국어대학교 언어인지과학과 [email protected]
115
[1] 세그멘트언어의 경우
 Segmented Languages (영어, 유럽어)
 여백(Blank space)으로 경계가 나뉨
 토큰경계인식 작업이 비교적 용이함
 대부분의 토큰- 여백이나 구두점과 같
은 명시적 구분자(separator)에 의해 나
뉨
 문제가 되는 유형
 마침표(period): 약어 표현에 사용된
경우
 하이픈의 경우
 self-assessment, F-16, forty-two
 ≠ New York-based
 숫자, 문자숫자혼용형, 축약 표현
 특정 표현 (날짜, 수량 표현 등)의 처
리
한국외국어대학교 언어인지과학과 [email protected]
116
 토큰 표시를 위한 일반적인 처리 방법
 토큰구분자가 나타나는 경우 여백을 삽
입함 (예를 들어 쉼표가 나오면 그 앞에
여백 삽입)
 문제[1]: 이와 같이 변형된 문서로부
터 원문 복원이 어렵다
 문제[2]: 본래 2개 이상의 형태로 구
성된 단일 토큰의 경우
 예:불어의 수사 표현: 구분이 안됨
 이 경우 하나의 토큰의 내부 여백
임을 표시하기 위해 underscore를
삽입하기도 함
한국외국어대학교 언어인지과학과 [email protected]
117
 토큰 표시를 위한 좀더 명시적 방법
 특정 마크업 언어(SGML이나 SML)를 사
용하는 방식
 이 경우 삽입된 표지를 다시 제거하고
원문 텍스트를 복원하기가 용이함
 여백을 토큰경계 표지로 바꾸고 각 토큰
에 대해서도 일정 정보를 삽입할 수 있
음
 마크업의 예:
<W c=w>It</W> <W
c=w>was</W> <W c=p>’</W>
<W c=n>3</W> <W c=p>’</W>
<W c=p>.</W>
한국외국어대학교 언어인지과학과 [email protected]
118
 토큰분석 규칙(Tokenization Rules)
 Regular expressions로 표현
 예: 33, 7,000,000, 734.78 인식을 위한 규칙
[0-9] [0-9]? [0-9]? (,? [0-9][0-9][0-9])*
([.][0-9]+)?
 (위에서 ?는 0 또는 1번 출현, *는 0번이상
출현함을 의미)
 토큰 경계 인식에 있어 여러 개의 규칙이
동시 적용 가능할 때에는 <최장일치
(longest match)>가 선호됨
 정규표현은 일반적으로 유한상태오토마타
(FSA)로 컴파일됨
한국외국어대학교 언어인지과학과 [email protected]
119
 [2] 비세그멘트 언어 (Non-Segmented
Languages)
 동양언어 유형
 명시적 경계가 없음
 토큰경계인식 작업이 매우 복잡함
 사용되는 방법
 최장 단위를 사전에서 검색하는 방식
 앞뒤 단어 고려한 계산
 통계적 방식에 의한 결정 등을 사용함
한국외국어대학교 언어인지과학과 [email protected]
120
 3. 약어(Abbreviations) 처리 문제
 문제의 발생
 마침표가 문장의 경계가 아닌 경우
 Abbreviations과 acronyms등을 구성하
는 보편 규칙이 존재하지 않음
 이들을 인식하는 가장 보편적 방법 
유명한 약어들의 리스트를 구성
 형태소분석시 마침표 포함 단어가
그 리스트에 있으면 하나의 토큰으
로 분석, 그렇지 않으면 마침표가 하
나의 토큰으로 분리됨
 이 경우 리스트의 완성도가 중요함
한국외국어대학교 언어인지과학과 [email protected]
121
 문제점
 모든 약어가 리스트에 포함되기 어려움
 일정약어: 일반단어와 동일형태인 문제
 예: in (=inches), no (=number), bus
(=business), sun (=Sunday)
 Mikheev(2000): New York Times에서
270개의 약어 목록 구성
  WSJ 코퍼스에 적용한 경우 (99%
precision, 64% recall)
  즉 실제 약어의 1/3이 인식되지 못
함. 그러나 정확율은 매우 높게 나타남
한국외국어대학교 언어인지과학과 [email protected]
122
 리스트를 사용할 때 재현율(Recall)을 향
상시키는 방법
 휴리스틱(heuristics) 방식 이용
 [1] 한 단어이고, 짧고 모음이 없는
경우 abbreviation일 가능성 높음
 예: Mr. Dr. kg.
 [2] 모음이 없고, 모두 대문자인 경
우 acronym, name일 가능성
 예: NHL
 [3] 한 문자 뒤에 마침표, 또는 여러
개가 각각 마침표 뒤에 온 경우 
abbreviation일 가능성
 예: Y.M.C.A.
  60%의 약어 인식 (=재현율
(Recall)
한국외국어대학교 언어인지과학과 [email protected]
123
 Cf. 위의 휴리스틱 규칙을 리스트 방식과
함께 동시에 사용하는 경우
 97% recall
 99% precision
  여전히 3~5%의 인식 오류율
 오류의 예: “sec. Okla.”
 즉 리스트에 없어 실패하는 경우나,
표면 형태에 대한 추측만으로 인식
이 불가능한 경우들
한국외국어대학교 언어인지과학과 [email protected]
124
 4. 하이픈연결 단어 (Hyphenated
words)
 한 단어로 분석되어야 하는 경우
 self-assessment, F-16, forty-two
 두 단어로 인식되어야 하는 경우
 New York-based
 <한단어? 두단어?> 질문의 중요성
 정보검색용 색인 후보 설정에서 문제
 예: “Moscow-based”만이 색인어로 처
리되면 Moscow와 같은 질의어에 답
하지 못함
 반대로, ‘co-operation’이 둘로 나뉘면,
‘operation’질의문에도 위의 결과가 검
색되는 문제가 발생
한국외국어대학교 언어인지과학과 [email protected]
125
 실제 하이픈 VS. 줄바꿈 하이픈
 실제하이픈(True hyphens)
 복합형의 내부에 나타남(예: fortyseven)
 전처리 단계에서 삭제되면 안됨
 줄바꿈하이픈(End-of-line hyphens)
 전처리 단계에서 삭제되어야 함
 실제 하이픈이 줄바꿈 위치에서 실현되
는 경우의 문제
 만일 모든 줄바꿈 위치의 하이픈 앞
뒤 문자들을 하이픈 삭제후 연결시키
면  4.9%의 에러율이 나타남
 사전 리스트와 함께 고려하는 방법
 즉 복합어 목록을 내장하여 이 목록
에 있으면 하이픈을 제거하지 않음
 에러율을 4.9%에서 0.9%로 감소시킴
한국외국어대학교 언어인지과학과 [email protected]
126
 <실제 하이픈>의 2가지 유형
 [1] <어휘적 하이픈 (lexical hyphen)>
 접두사가 결합할 때
 예: co-, pre-, meta-, multi 복합접두사가 결합할 때
 예: pre- and post-processing
 기타 유형
 예: rock-n-roll
 저자에 따라 변이형이 존재할 때
 예:co-operative, mark-up/mark up
 [2] <통사적 하이픈 (Sententially
determined hyphenation)>
 통사적구성 형용사처럼 사용되는 경우
 “N+(V-ed)”=Adjective
 예: case-based, computer-linked,
hand-delivered
 명사구의 수식어로 사용되는 경우
 예: three-to-five-year direct
marketing plan
 이런 유형은 사전에 등록되기 어려움
 일반적으로 단일 토큰으로 분석됨
한국외국어대학교 언어인지과학과 [email protected]
127
 5. 수사 및 특수표현류
 유형
 이메일 주소
 웹페이지 주소(URL)
 전화번호
 날짜 표현
 시간 표현
 측량, 단위 표현
 차량 등록 번호
 책, 논문 등의 인용 표현
 특징
 문자+숫자+구두점 혼용
 내적 구조가 매우 정형화되어 있음
 이들을 다루기 위한 별도 분석기 설계
가 가능  <전처리기
(preprocessors)>로 불림
한국외국어대학교 언어인지과학과 [email protected]
128
 특수 표현의 예
 15/05/76
 6-JAN-76
 3:30pm
 123km/hr
 +44 (0131) 647 8907
 1 800 FREECAR
 전처리기의 분석
 <단일토큰으로 분석>
 일반 분석기는 여러 개의 토큰으로
인식하나 전처리기는 이들을 하나
의 토큰으로 분석함
 <동일 정보 인식>
 “3:30pm”과 “3:30 pm”을 동일한 것
으로 분석
한국외국어대학교 언어인지과학과 [email protected]
129
 특수토큰분석기(Specialized
tokenizer(=preprocessor))
 전처리기의 작동
 문법(grammars)와 리스트(lists)를 이
용함
 [1] 리스트의 예:
 달의 이름(January, February..)
 약자(Jan, Feb,..)
 요일(Sunday, Monday,..)
 약자(Sun, Mon,..) 등
한국외국어대학교 언어인지과학과 [email protected]
130
 [2] 문법의 예:
 날짜 표현에서 이들이 어떻게 결합
하는지 정의됨
 날짜 표현 구성의 문법 예
DATE = [0-3]? [0-9] >> [.-/] >> month-any >>
[.-/] >> [0-9][0-9][0-9][0-9]?
 (=즉 두자리 정수 뒤에 {period,
dash, slash}가 삽입되고 달이름이
온 뒤 다시 구두점이 삽입되고, 2-4
자리 숫자의 정수가 수반된다)
 위 문법은 다음을 인식함
 6-JAN-76
 15.FEBRUARY.1976
 15/02/1976
한국외국어대학교 언어인지과학과 [email protected]
131
 전처리기의 기능
 특수 표현들을 올바르게 토큰화
 이들에 대한 해석
 정규화(normalization)
 예: 3pm  15:00
 31-Jan-92  31.01.1992
 이를 위한 특수 하위문법들(subgrammars)
 날짜(dates)
 시간(times)
 측량(measures)
 인용(citations)
 일반적으로 일반 토큰 분석기 전에 적
용됨
한국외국어대학교 언어인지과학과 [email protected]
132
 6. 다양한 언어들의 문제
 일부 언어들의 명사구 처리 문제
 독일어, 덴마크어, 노르웨이어, 스웨덴
어, 네덜란드어 등의 명사구
  여백없이 쓰여지지만 내부 토큰 구
별의 필요성
 예: professorentreffen = professoren
+ treffen
 Cf. 한국어 복합명사구의 경우도 유사
함
한국외국어대학교 언어인지과학과 [email protected]
133
 중국어, 일본어
 대부분 문자들이 한문자 단어를 이루
면서 동시에 여러 문자 단어를 구성할
수 있음
 예: “together”  “to+get+her”
 이러한 합성어 구성이 일반적 원리이
기 때문에 잘 쓰이지 않는 유형들을 사
전에 모두 수록하는 것이 불가능함
 고유명사가 일반 단어와 구별이 없음
 예: fairweather : 고유명사, 또는 두
개의 토큰
 일본어의 토큰 경계 인식
 간지, 히라가나, 가다가나의 사용
  이들 사용의 경계를 따라 토큰 경계
를 나누면 약 60%의 성공율을 보임
  즉 형태분석, 어휘 지식, 문법 제약
조건 등을 이용하여 토큰화 작업을 함
한국외국어대학교 언어인지과학과 [email protected]
134
 개별언어별 토큰분석 규칙(Languagespecific tokenization rules)의 필요성
 <Apostrophes>의 경우 언어마다 그
규칙이 다름
 [1] 영어 동사: they are  they’re 
they + ‘re
 둘째 단어의 첫음소 삭제
 [2] 영어 부정문: does not 
doesn’t  does + n’t
 토큰경계가 apostrophe앞의 음소
 [3] 불어의 대명사/관사/접속사 + 모
음: le avion l’avion  l’ + avion
 항상 apostrophe뒤가 경계
 [4] 불어 발음 표기: petit  p’tit
 [5] 단어 내부에 존재하는 경우
 O’Brien, Gurkovitch’ (경계없음)
한국외국어대학교 언어인지과학과 [email protected]
135
 7. 문장인식(Sentence Segmentation)
 텍스트를 문장으로 나누는 작업이 중요
한 분야
 구문 분석
 정보 추출
 기계 번역
 다국어 문서 정렬(text alignment)
 문서 요약
 General Sentence Delimiter (일반적 문
장 경계 표지)
 [.!?]마침표, 감탄부호, 의문부호
 문제의 발생:
 마침표가 소수점, 약어 표현에 사용
될때
 약어가 문장의 끝에 나타날 때 동
시 기능
한국외국어대학교 언어인지과학과 [email protected]
136
 문장경계의 중의성해결 문제(Sentence
boundary disambiguation(SBD))
 구두점 주위의 부분문맥(local
context)에 대한 분석이 요구됨
 [1] 영어의 약어와 관련된 문제
 <1> 약어가 아닌 경우
 마침표가 문장 경계임
한국외국어대학교 언어인지과학과 [email protected]
137
 <2> 약어 가능성이 있는 경우
 <2-1> 그다음 문자가 <구두점이거나
숫자이거나 소문자인 경우>: 이 약어
가 문장의 경계가 아님
 <2-2> 다음 문자가 <대문자>인 경우
 {2-2-1} 일반 단어이면 문장 경계
 {2-2-2} 고유명사이면 중의성 발생
 {2-2-2}의 예
He stopped to see Dr.
White…
He stopped at Meadows Dr.
White Falcon was still open
약어가 문장
경계 아님
약어가 문장
경계임
 (Cf. 위에서 Dr.1(=Doctor),
Dr.2(=Drive)는 서로 다른 의미의
약자임)
한국외국어대학교 언어인지과학과 [email protected]
138
 문장 분할 알고리즘의 성능
 약어와 고유명사의 출현빈도와 관련
 도메인과 텍스트 쟝르에 영향 받음
 과학, 법률, 시사적 텍스트는 소설류보
다 더 많은 약어와 고유명사를 가지므
로 다루기가 어려움
 구어체 전사의 문장 경계 인식은 구두
점이나 대문자 단어 등의 표지가 없으
므로 더 어려움
 가장 일반적 방식
 <period-space-capital letter>의 표
지로 인식하는 방식
 예: [.?!] [ ( ) ’ ’]+ [A-Z] :
 그러나 이 정규표현은 그리 성능이
좋지 않음  Brown corpus와 WSJ
에 시험한 결과 6.5%의 에러율 보임
한국외국어대학교 언어인지과학과 [email protected]
139
 <period-space-capital letter> 문장 분할
알고리즘 성능의 향상
 약어 목록의 구성
 잘 알려진 단어들의 목록 구성
 결코 문장 경계가 될 수 없는 약어들의
목록도 구성(예: Mr. Prof. 등)
 마침표 뒤에서 대문자로 사용되면 늘
문장의 시작인 단어들의 목록도 구성
(예: The, This, He, However 등)
 이들을 사용한 경우 앞보다 성능이 향
상됨  3-3.5%의 에러율로 향상됨
한국외국어대학교 언어인지과학과 [email protected]
140
 단어기반 vs 통사단위기반 인식
 문장경계인식 시스템은 일반적으로
<word>에 기반한 방식임
  즉 문장경계 가능 앞뒤 단어의 어
휘정보(대문자, 철자, 접미사 등의 고
려)를 이용
 마침표 뒤의 대문자 단어가 고유명
사인지 일반명사 등을 고려
  어휘사전을 참조하여 작업함
 문제점: 예 ‘Black’은 사람이름과 형
용사의 두가지 가능성
  문맥 정보를 고려해야 함 (Black
described… vs. Black umbrella)
한국외국어대학교 언어인지과학과 [email protected]
141
 복잡도의 문제
 단어기반 방식
 Brown corpus: 50,000개의 단어
  단어들의 bigrams : 250000 잠재
적 단어 bigrams
 통사단위기반 방식
 Penn Treebank: 40개의 품사태그
(POS tags)  품사들의 bigrams :
240 잠재적 품사 bigrams
 따라서 다양한 코퍼스에 적용될 수
있는 학습된 시스템의 개발이 더
용이함
  그러나 텍스트가 일단 POS 단위
로 분석되어야 한다는 문제
  이 부분에서 에러가 발생할 수
있음
한국외국어대학교 언어인지과학과 [email protected]
142
 Cf. Unitex 에 내장된 문장인식 문법의 예
한국외국어대학교 언어인지과학과 [email protected]
143
 Think about...
 한국어 문장경계 인식
 문장의 언어학적 정의
 문장의 형식적(전산학적 정의)
 문장경계를 나타내는 형식 표지는?
 형식표지를 나타내는 정규표현과 오토
마타 그래프
 특정패턴의 인식 문제
 수사 체계
 이메일 주소
 전화번호(유선/무선)
 우편번호 체계
 그외
한국외국어대학교 언어인지과학과 [email protected]
144
V. Morphological
Analyzer
한국외국어대학교 언어인지과학과 [email protected]
146
 Dictionary & Morphological Analyzer
 General Analysis Processing
 Input Text  Preprocessing 
Morphological Analysis  Syntactic &
Semantic Analysis
 Cf. Morphological Analysis에 필요함
 태그셋 TAGSET
 전자사전 Electronic Dictionary
 분석기 Analyzer (Tool)
 Frequency & Concordance Lists based
on POS
  형태소분석이 수행되어야 가능함
 예: 고빈도 명사 목록을 갖고 싶음
 예: 대명사로 사용된 ‘나’의 문맥만 원함
 예: 부사와 형용사 공기 문맥을 원함
한국외국어대학교 언어인지과학과 [email protected]
147
 형태소분석(Morphological Analysis)
 자연어 분석의 첫 단계
 단어(한국어-어절) 단위로 분리된
(tokenized) 입력 문자열(input string)로
부터 각각의 형태소를 분리하는 작업
 용언의 불규칙 활용이나 굴절 현상이 일
어난 단어에 대해 원형을 복원함
 형태소(morpheme)
 [1] : 의미가 있는 최소의 단위
 [2] : 문법적, 관계적 뜻을 나타내는 단
어, 또는 단어의 부분(=문법소) > 어
휘소(lexeme)
 일반적으로 NLP의 형태소분석 단계는
위의 [1]의 의미로 사용된 단위로의 분
석을 의미함
한국외국어대학교 언어인지과학과 [email protected]
148
 형태소 분석 과정
 자연언어 분석
 분석 후보의 생성과 그 후보들로부터
옳은 분석 결과를 선택하는 과정
 분석 과정 (Processing)
 [1] 단어를 이루고 있는 형태소를 분리
(Split word by Morphemes)
 [2] 형태론적 변형이 일어난 형태소의
원형을 복원 (Finding Basic Form)
 [3] 사전과 단어들 사이의 결합 제약 조
건에 따라 옳은 분석 후보를 선택하는
과정 (Choosing the right candidate)
 Cf. Ambiguity Resolution: Tagging
 이때 여러 개의 분석 후보 가능성이 나
타나는 중의성이 발생할 때 태깅
(Tagging)을 해야 함
  좁은 의미의 형태소 분석은 태깅 모
듈을 분리하여, 모든 후보를 생성해내
는 그 전단계까지만을 의미함
한국외국어대학교 언어인지과학과 [email protected]
149
 형태소 분석 관점
 언어학(Linguistics)
 보편적이고 타당한 형태소와 관련된 현
상을 발견하고 이를 규명하는 것
 전산언어학 (Computational Linguistics)
 단어로부터 일정한 규칙에 따라 형태소
를 분석하거나 생성할 때 이를 컴퓨터
로 어떻게 구현하는지에 대한 방법론
 핵심이슈 (Main Issues)
 Method 방법론 (How to handle by
Computer? 컴퓨터로 어떻게 처리?)
 Recall 재현율(How many? 얼마나 많
은 현상을 처리)
 Precision정확성(How correct? 얼마
나 정확한 분석)
 Effeciency 효율성(시스템이 얼마나
효율적? Relation between Time and
Space(Memory) : 시간과 메모리 관
계)
한국외국어대학교 언어인지과학과 [email protected]
150
 일반적인 형태소 분석 프로세싱
 [1]전처리 단계(Pre-processing)
 문서로부터 형태소 분석의 대상이 되는
단어 추출
 문장 부호를 분리
 숫자나 특수 문자열을 처리
 [2] 메인 과정(main processing)
 분석 후보 생성
 복합형태소 분석, 원형 복원
 결합 제약 검사
 형태소 사이의 제약 확인
 분석 후보 선택
 최종적으로 옳은 후보 선택
 [3] 후처리 단계(Post-processing)
 복합명사나 미등록어, 준말 등 처리
 중의성 제거 작업 (Cf. tagging 모듈)
한국외국어대학교 언어인지과학과 [email protected]
151
 단어(word)와 형태소(morpheme)
 단어(word)
 예: WRITE
 Cf. 어형(word form)
 예: write, writes, wrote, written,
writing
 어형들의 통사적 출현환경은 서로 다름
 예: John has (*write + *writes +
*wrote + written) a letter
 어형의 실제 출현
 영어의 경우 여백(space)에 의해 분리
 <a ‘graphic’ word>: “as a string of
continuous alphanumeric characters
with space on either side; may
include hyphens and apostrophes,
but on other punctuation marks”
(Francis & Kucera 1982)
 Cf. 불변형 단어(Non-inflecting words)
 예: and
한국외국어대학교 언어인지과학과 [email protected]
152
 품사(Part of Speech(POS)/문법범주
(grammatical category)
 <Open classes>: Content words
 Verbs: walk, read, give, help..
 Nouns: book, table, woman..
 Adjectives: quick, good, low…
 보통 몇만개 이상의 단어 포함
 활용, 파생, 합성 등의 형태론적 변화
일어남  이러한 생산성 때문에 정
확한 수의 파악이 어려움
 또한 단어의 변화, 사멸, 신조어의 등
장 등의 변수가 포함됨
 <Closed classes>: Function words
 Conjunctions: and, or, because…
 Prepositions: in, on, over, before…
 Determiners: a, the, every, some…
 Particles: only, already. Just…
 보통 몇 백개 정도의 단어
한국외국어대학교 언어인지과학과 [email protected]
153
 들러붙은 형태에 대한 쪼개기 작업 요구됨
(Concatenation & Segmentation)
 예: 독일어에서 자주 사용되는 기본 어휘
 40,000 개 (파생, 합성이 아닌 기본어)
 명사: 23,000개
 동사: 6,000개
 형용사: 11,000개
 활용변화
 명사: 보통 2-5개의 활용형(평균4)
 동사: 규칙형은 24개의 활용 형태
 형용사: 보통 18개의 활용
 독일어 활용형 개수(약 10배)
Base Forms
Inflectional Forms
Nouns
23,000
92,000
Verbs
6,000
144,000
11,000
198,000
40,000
434,000
Adj
 Cf. 프랑스어 경우(DELA)도 전체 10배정도
 9만개 Lemma  90만 활용형
한국외국어대학교 언어인지과학과 [email protected]
154
 독일어 활용변화에 파생/합성이 일어날 때
 NN 유형의 합성명사 구성: 복잡도 n2
 즉 20,000개의 명사  NN의 길이 2
인 합성명사가 4억 개(400 000 000)
생성 가능
 이들이 다시 활용변화함
 NNN 유형의 합성명사 구성: 복잡도 n3
 즉 20,000개의 명사  NNN의 길이
3인 합성명사 8조 개(8 000 000 000
000)가 추가로 생성 가능
 이들도 역시 다시 활용변화함
한국외국어대학교 언어인지과학과 [email protected]
155
 독일어 합성명사의 수는 유한함
  그러나 새로운 신조어 생성가능성이
열려있음
 Cf. 사전에 등재되지 않은 영어 신조어
(neologisms)의 예
 insurrectionist, three-players,
copper-jacketed, bad-guyness,
cyberstalker, trapped-rat, selftapping, dismissiveness,
extraconstitutional, migraineur
한국외국어대학교 언어인지과학과 [email protected]
156
 생산적인 단어들을 처리하기 위해서
는 단어가 아닌 <형태소
(morpheme)>의 개념이 도입되어야
함
 형태소와 이형태(allomorph)
 형태소: 최소의 유의미 단위(the
smallest meaningful units of
language)
 이형태: alternative shape
 일반적으로 한 언어의 단어의 수는
무한할 수 있으나 형태소의 수는 유
한함
 예: 형태소 WOLF는 이형태로 ‘wolf’
와 ‘wolv’를 가짐
한국외국어대학교 언어인지과학과 [email protected]
157
 단어분할(segmentation)의 여러 가능방법




<이형태(즉 형태소) 분할>: learn/ing
<음절 분할>: lear/ning
<음소 분할>: l/e/r/n/i/ng
<철자 분할>: l/e/a/r/n/i/n/g
 의존 형태소(Bound Morpheme)
 Cf. <자립 형태소(Free morpheme)>
 앞서 살핀 <Open class>와 <closed
class>의 단어들  혼자 자립적으로
실현될 수 있음 (예: book)
 의존형태소(자립형태소에 결합해서 실현)
 접두사(un-, pre-, dis-,…)
 접미사(-s, -ed, -ing,…)
한국외국어대학교 언어인지과학과 [email protected]
158
 미등록어의 형태소 분석 3단계
 [1] 분할(Segmentation)
 기본 단위들로 분할
 [2] 사전 검색(Lexical look-up)
 위의 기본 단위들에 대해 사전에서 문
법적 정의를 검색함
 [3] 결합(Concatenation)
 위에서 검색된 결과를 결합하여 본래
의 미등록어의 분석결과 제시
 표면활용형을 사전표제어로 등재하는 방법
 즉 ‘wolves’와 같은 형태를 직접 등재하
는 경우는 위와 같은 프로세싱이 필요하
지 않음
 그러나 단어의 생산성과 그에 따른 전체
사이즈, 신조어의 처리 문제 등으로 인해
적합하지 않음 (독일어의 예)
 따라서 형태소 기반 분석 방법론
(morpheme method)을 사용함
한국외국어대학교 언어인지과학과 [email protected]
159
 영어 형태소 분석(Morphological
Analysis of English)
 형태소분석에서 제공되는 정보











기본형(lemma)
품사(part-of-speech: POS)
하위범주 가능성(subcategorization)
격(case)
수(number)
인칭(person)
성(gender)
명사 클라스(noun class)
동사의 상(aspect), 시제(tense)
법(mood)
재귀(reflexiveness), WH-단어 등
한국외국어대학교 언어인지과학과 [email protected]
160
 영어 형태소분석의 특징
1. 다음 단계인 구문분석 단계
 위의 정보로는 구문분석(aprsing)이
외에 아무것도 할 수 없음
 즉 의미적 정보의 부재에서 기인함
2. 어휘사전에는 단어의 모든 변이형에
대한 정보가 들어 있어야 함(굴곡형,
파생형에 대한 정보)
 모든 형태를 나열하는 것이 소모적
일 수 있음
 불규칙 관련 정보만을 규칙과 같은
방식으로 저장
3. 다음과 같은 특수 경우의 처리 어려움
한국외국어대학교 언어인지과학과 [email protected]
161
 <형태소 분석 과정에서 처리하지 못하는
특수한 어휘변형의 예>
 [1] 동철이의어(homographs)
 mail(우편)과 mail(갑옷)  동일 철
자, 다른 의미
 [2] 복합어(compound words)
 ‘hot dog’, ‘hot-blooded’와 같이 2
개 이상의 분리된 단어 집합이 하나
의 단어를 이루는 경우(하이픈, 공백
등이 단어 경계표지이므로)
 [3] 복수형(plural)
 pain(고통), pains(수고)와 같이 복수
형이 되면서 뜻이 달라지는 경우
 [4] 대문자(capital letter)로 시작하는
단어 구별 문제
 reformation(개혁), Reformation(16
세기 종교혁명)과 같이 대문자로 시
작하면서 의미가 달라지는 경우
한국외국어대학교 언어인지과학과 [email protected]
162
 [5] 축약어(abbreviation)
 ‘Dr’, ‘AIDS’와 같이 단어를 줄여 쓸 경우
나 구성 단어의 첫문자로 구성된 단어
(acronym)을 의미함. 이런 경우도 단어가
축약형이라는 것을 인식해야 함
 [6] 접두사와 접미사(prefixes and suffixes)
 단어에 접두사나 접미사가 결합하여 단
어의 의미에 약간의 변형이 가해지는 경
우  접사 리스트를 구성할 필요
 [7] 여러 철자로 쓰이는 단어(different
spelling)
 ‘caftan’, ‘kaftan’과 같이 단어가 하나 이
상의 다철자로 사용되는 경우. 이들을 동
일한 단어로 인식하는 과정이 필요
 [8] 불규칙 변화(irregular inflection)
 불규칙 변형의 경우는 변형된 이후의 형
태를 하나의 독립된 단어로 취급하여 분
석 (일반적 규칙 형태들과는 다른 처리가
요구됨)
한국외국어대학교 언어인지과학과 [email protected]
163
 [9] 구동사(phrasal verb)
 동사와 부사, 동사와 전치사, 또는 동
사와 부사, 전치사로 구성되어 하나
의 동사 역할을 하는 굳어진 형태의
표현  전체가 하나의 표현(어휘)
 [10] 숙어(idiom)
 구성하는 단어의 본래 뜻과는 완전히
다르게 쓰이는 고정된 형태의 표현.
이 경우도 숙어의 인식과 분석이 구
동사와 마찬가지로 필요
 [11] 파생어(derived word)
 기본 단어에 의미를 부가하여 만들어
진 단어가 다른 품사로 사용되는 경
우. 어미 분석과 독립된 단어로의 분
석이 병행되어야 함
 [12] 단축형(shortened form)
 ‘I’ll’과 같이 두 개 이상의 단어가 단축
되어 하나의 단어처럼 쓰이는 경우.
이러한 형태들의 분석과 인식이 병행
되어야 함
한국외국어대학교 언어인지과학과 [email protected]
164
 영어의 활용과 파생
 규칙 활용(regular inflection):
 단어의 원형을 찾아내어 해당 정보
를 찾아냄
 불규칙 활용(irregular inflection):
 원형을 찾기 위해 개별적으로 어휘
사전에 수록하는 것이 불가피함
 파생 접두사가 사용되는 경우
 통사규칙으로 예측 불가능
 예
 In/im(내부성): inject, inside,
implicit
 In/im(부정): incomplete,
inappropriate, immoral
 Ex(외향성): expel, expatriate,
explicit
 파생접미사가 사용되는 경우
 –ist, -er 처럼 예측이 안됨
 Cf. 활용접미사 경우와 다름
 -ing: 동사의 현재분사형
 -s: 명사의 복수형
한국외국어대학교 언어인지과학과 [email protected]
165
 한국어 형태소 분석(Morphological
Analysis of Korean)
 형태소 분석기 모듈에서 필요한 기능
 조사와 어말 어미의 분리
 생략된 서술격 조사 복원
 선어말 어미의 분리(어말 어미가 발견
된 경우에만)
 접미사 분리
 불규칙 원형 복원
 붙여쓰기가 허용되는 한 음절 체언과
보조 용언 처리
 준말 처리
 복합어 추정
 미등록어 추정
 영문자, 숫자 처리
 수사 처리
 사전 탐색 기능
한국외국어대학교 언어인지과학과 [email protected]
166
 [1] 형태소 분리
 분리되어야 하는 형태소
 <1> 어근, 조사, 어말어미, 선어말어미,
접미사 등
 Cf. 형태소로 분석되는 기준
 실제로는 최소의 의미 단위라는 형
태소 자체의 의미에 따르지 않고,
사전에 저장되어 있는 단위에 따름
 예: <예뻐지다>를 사전에 수록하
지 않으면, <예쁘+어+지+다>로
분리, 반면 <그리워지다>가 사전
에 수록되면 <그리워지+다>로 분
리됨
한국외국어대학교 언어인지과학과 [email protected]
167
 <2> 조사나 어미가 연속적 나타난 경우
 예: 복합조사(<에서부터였다고는>)
 결합 제약을 규칙화하기 어려우므로 결합
형을 사전에 수록함
 [1] 조사로만 이루어진 결합형
 [2] 어말어미로만 이루어진 결합형
 [3] [1]에 어말 어미가 결합되는 경우
 [4] [2]에 조사가 결합되는 경우
 예: <사무실에서부터였다고는>
 <사무실>+<에서부
터>+<이>+<었>+<다고는>
 Cf. 복합형(조사,어미)을 사전에 수록하는
경우 (아래보다 더 많을 수 있음)
 복합형: 1500 ~ 2000 개
 단일형: 600 ~700개
 국어사전에 수록된 단일 조사: 140여개,
단일어미: 490여개
한국외국어대학교 언어인지과학과 [email protected]
168
 <3> 선어말 어미를 분리하는 작업
 <시, 었, 겠>으로 축소하여 고려함
 <4> 접미사를 분리하는 작업
 결합 제약이 약한것(생산성)만 따로 분
리하고, 나머지는 어근과의 결합형을 사
전에 수록함
한국외국어대학교 언어인지과학과 [email protected]
169
 형태소의 결합 제약
 조사 <에게>의 변이체: 게, 께, 한테
 어말어미의 변이체: 어/아
 중의성 (가시다의 경우 ‘시’가 선어말어
미거나 어간의 일부)
 이웃하는 형태소 사이의 제약 관계
 조사, 어미 사이의 결합 제약
 체언과 조사의 결합 제약
 용언과 어미의 결합 제약
 인명과 조사의 결합 제약
 접미사의 결합 제약
 매개모음이 삽입되는 조사/어미의 결
합 제약
 모음조화를 따르는 어미의 결합 제약
한국외국어대학교 언어인지과학과 [email protected]
170
 [2] 불규칙의 원형 복원
 한국어의 ‘ㅂ’불규칙
 영어의 study+s=studies 처럼 규칙적
인 것으로 분류될 수 있음
 단 ㅂ종성 모든 용언에 적용되는 것이
아니므로 어휘 사전에 ㅂ불규칙임을
표시해 주어야 함
 불규칙 현상의 형태 변이
 [1] 어간에서만 일어나는 경우
 [2] 어미에서만 일어나는 경우
 [3] 어간과 어미에서 일어나는 경우
한국외국어대학교 언어인지과학과 [email protected]
171
 [3] 복합어와 미등록어 추정
 <복합어> 처리  한국어 형태소 분석에
서 가장 해결하기 어려운 부분
 나머지 부분은 사전과 규칙에 의해 처리
가능하나, 복합어와 미등록어는 명확하게
인식할 수 있는 방법이 없음
 복합명사
 4, 5, 6 음절어가 전체의 97%
 3음절어- 추정에 의존할 경우 오류가
많아 사전에 수록하는 것이 바람직함
 복합용언
 ‘용언+아/어+보조용언’의 형태가 많음
한국외국어대학교 언어인지과학과 [email protected]
172
 형태소 분석기의 성능
 형태소 분석기의 성능(system
performance)
 분석률
 전체 실험 단어 중에서 정확하게 분
석된 단어의 비율
 처리 속도(processing speed)
 단위 시간내에 몇 개의 단어를 분석
하는지에 의해 측정됨
 예: 분석률이 100%라도 처리속도가
느리면 의미가 없음
 기계번역기나 맞춤법검사기: 1초에
10개 이상의 단어를 처리해야 사용
할만한 가치가 있음
 분석률과 처리 속도는 반비례 관계
 알고리즘의 효율과 어휘 사전의 탐
색 속도가 중요함
 사전 탐색 횟수를 줄이는 방법 연구
필요  시스템의 성능에 큰 영향
한국외국어대학교 언어인지과학과 [email protected]
173
 중의성의 문제
 형태소분석: 품사 중의성, 어휘 중의성
 중의성의 발생은 구문분석 단계에 영향을
미침
 예: <나는 파란 감을 보고 난 후 마을로
가는 길을 알 수가 있었다> = 82,944 개
의 중의성 조합 가능성
(=3x4x3x4x4x4x3x1x4x2x2x3x1)
 한국어의 경우: 이웃하는 단어의 조사나
어미 정보 이용
 형태소분석기 – 시스템 자체의 효율뿐 아
니라 다른 응용 시스템과 결합했을 때의
경우 고려해야 함
한국외국어대학교 언어인지과학과 [email protected]
174
 사례: 지능형형태소분석기 2.0
 [1]사용하기
 [C]에서 <말뭉치통합응용시스템>
<지능형형태소분석기> 클릭
 <파일> <열기>  <샘플코퍼스>
 txt파일을 선택  코퍼스가 열림
(만일 새 문서를 분석하고자 할 때는
메모장이나 한글에서 새로운 문서를
구축한 뒤 <text> 형식으로 저장함)
 메뉴아래 <T>아이콘을 클릭(형태소분
석 시작)  분석된 결과 파일
한국외국어대학교 언어인지과학과 [email protected]
175
 사례: 지능형형태소분석기 2.0
 분석된 결과 파일의 예
한국외국어대학교 언어인지과학과 [email protected]
176
 위 결과는 실제 다음 2단계가 모두 적용
된것
 <1> 본질적인 형태소분석 단계 (=가
능한 모든 후보를 찾기)
 사전 검색
 규칙 적용 (통계적&언어학적 )
 <2> 태깅 단계(=최적의 단일후보 결
정하기)
 아래 오른쪽 작은 박스에는 <1>의
결과를 보임
한국외국어대학교 언어인지과학과 [email protected]
177
한국외국어대학교 언어인지과학과 [email protected]
178
 형태소분석 결과 저장하기(1)
 잘못 분석된 경우는 어떤 경우?  원
인은 무엇일까?
 오류인지 아닌지를 판단하기 어려운
경우? 그 이유가 무엇일까?
환자들의
얘기를
가만히
듣다
보면
어떤
땐
너무도
기발해
누구라도
그런
생각을
하면
헤어나지
못할
거라는
생각마저
든다.
환자/NNG+들/XSN+의/JKG
얘기/NNG+를/JKO
가만히/MAG
듣/VV+다/EC
보/VX+면/EC
어떻/VA+ᄂ/ETM
때/NNG+ᄂ/JX
너무도/MAG
기발하/VV+아/EC
누구/NP+라도/JX
그렇/VA+ᄂ/ETM
생각/NNG+을/JKO
하/VV+면/EC
헤어나/VV+지/EC
못하/VX+ᄅ/ETM
것/NNB+이/VCP+라는/ETM
생각/NNG+마저/JX
들/VV+ᄂ다/EF+./SF
한국외국어대학교 언어인지과학과 [email protected]
179
 형태소분석 결과 저장하기(2)
어떤
어떻/VA+ᄂ/ETM
환자는
환자/NNG+는/JX
스스로
스스로/MAG
신화를
신화/NNG+를/JKO
만들기도
만들/VV+기/ETN+도/JX
하고
하/VV+고/EC
또
또/MAJ
어떤
어떻/VA+ᄂ/ETM
환자는
환자/NNG+는/JX
종교를
종교/NNG+를/JKO
재해석하기도 재/XPN+해석/NNG+하기/NNG+도/JX
하는데
하/VV+는데/EC
그들의
그/NP+들/XSN+의/JKG
얘기는
얘기/NNG+는/JX
한편으론
한편/NNG+으로/JKG+ᄂ/JX
타당성이
타당/NNG+성/XSN+이/JKS
있어
있/VA+어/EC
가만히
가만히/MAG
듣다
듣/VV+다/EC
보면
보/VX+면/EC
혹하기
혹하/VV+기/ETN
십상이다.
십상/NNG+이/VCP+다/EF+./SF
한국외국어대학교 언어인지과학과 [email protected]
180
 Exercise
 Morphological Analyzer
 What’s the difference between
English and Korean Morph Analysis
Units (& TAGSET systems)?
 When the tagset is bigger, what’s
the advantage and what’s the
problematic point?
 How should a dictionary be to
provide a reliable result?
 What are the problems with a
statistical tagger?
한국외국어대학교 언어인지과학과 [email protected]
181
 Exercise
 Morphological Analyzer
 Construction of Corpus
 Application of Korean Morph
Analyzer to this corpus
 How’s the result? (performance of
the analyzer)
 What’s the conclusion?
한국외국어대학교 언어인지과학과 [email protected]
182
VI. POS-Tag Set &
Dictionary
한국외국어대학교 언어인지과학과 [email protected]
184
 1. 품사와 태그셋 (POS & Tagset)
 품사(Part of Speech: POS)
 품사의 정의와 그 용도
 학교문법의 9품사
 명사, 대명사, 수사
 동사, 형용사
 부사, 관형사
 조사, 감탄사
 Cf. 문법범주(Grammatical Category),
어휘범주(Lexical Category)
 Cf. 단어(word), 형태소(morpheme),
구(phrase), 문장(sentence)
한국외국어대학교 언어인지과학과 [email protected]
185
 태그셋 (Tagset)
 자동처리의 효율성을 위해 간단한
POS를 세분화하여 다시 재정비한 품
사 SET임
 분석 시스템에 따라 태그셋이 달라짐





<연세말뭉치 태그셋>
<ETRI 태그셋>
<KAIST 태그셋>
<고려말모둠 태그셋>
<21세기 세종계획 태그셋> 등
한국외국어대학교 언어인지과학과 [email protected]
186
 세종말뭉치 태그셋의 예(1) – 전체 46개
한국외국어대학교 언어인지과학과 [email protected]
187
 세종말뭉치 태그셋의 예(2)
한국외국어대학교 언어인지과학과 [email protected]
188
 세종말뭉치 태그셋의 예(3)
한국외국어대학교 언어인지과학과 [email protected]
189
 세종말뭉치 태그셋의 특징
 모두 몇 개의 태그로 되어 있는가?
 분류 단위가 무엇인가?
 각 태그별 예를 생각해보면?
한국외국어대학교 언어인지과학과 [email protected]
190
 Cf. KAIST 태그셋 (1) – 전체 55개
기호(s)
외국어(f)
체언(n)
1.
sp
3.
sl
5.
sd
7.
su
9.
f
쉼표
2.
sf
마침표
여는따옴 4.
표및묶
음표
sr
닫는따옴
표 및 묶음
표
6.
se
줄임표
단위기호 8.
sy
기타 기호
이음표
외국어
보통명사
(nc)
서술성 명 10. ncpa 동작성 명 11. ncps 상태성 명
사(ncp)
사
사
비서술성 12.
명사(ncn)
ncn
비서술성
명사
고유명사 13.
(nq)
nq
고유명사
의존명사 14. nbu 단위성 의 15. nbn 비단위성
(nb)
존 명사
의존명사
대명사(n 16. npp 인칭대명 17. npd 지시대명
p)
사
사
수사(nn) 18.
nnc
양수사
19. nno
한국외국어대학교 언어인지과학과 [email protected]
191
서수사
 Cf. KAIST 태그셋 (2)
용언 동사(pv)
(p)
형용사
(pa)
보조용언
(px)
수식 관형사
언
(mm)
(m)
부사(ma)
20.
pvd
22.
pad 지시형용사 23. paa
24.
25.
px
지시동사
일반동
사
성상형
용사
보조용언
mm 지시관형사 26. mm
d
a
28. mad
지시부사
30. mag
일반부사
독립 감탄사(ii) 31.
언(I)
관계 격조사
32.
언( j)
( jc)
34.
21. pvg
성상관
형사
29. maj
접속부
사
목적격
조사
관형격
조사
부사격
조사
공동격
조사
ii
감탄사
jcs
주격조사
33. jco
jcc
보격조사
35. jcm
36.
jcv
호격조사
37.
jca
38.
jcj
접속격조사 39.
jct
40.
jcr
인용격조사
보조사
( jx)
41.
jxc 통용보조사 42.
서술격조
사( jcp)
43.
jcp 서술격조사
한국외국어대학교 언어인지과학과 [email protected]
jxf
192
종결보
조사
 Cf. KAIST 태그셋 (3)
어미
(e)
접사
(x)
선어말
어미
(ep)
연결어
미(ec)
44.
ep
선어말어
미
45.
ecc
대등적 46. ecs 종속적 연
연결어미
결어미
47.
ecx
보조적
연결어미
전성어
미(et)
48.
etn
명사형
어미
종결어
미(ef)
50.
ef
종결어미
접두사
(xp)
51.
xp
접두사
접미사
(xs)
52.
xsn
49. etm 관형사형
어미
명사파생 53. xsv
접미사
동사파생
접미사
54. xsm 형용사파 55. xsa
생접미사
부사파생
접미사
한국외국어대학교 언어인지과학과 [email protected]
193
 Cf. DECO 한국어전자사전
(Dictionnaire Electronique du
COréen) http://dicora.hufs.ac.kr
 DECO (1) – Lexical Entry Tags
한국외국어대학교 언어인지과학과 [email protected]
194
 DECO (2) – Morphological Item Tags
(Only Top levels)
한국외국어대학교 언어인지과학과 [email protected]
195
 20 Sub-Tags for 4 Lexical Categories
한국외국어대학교 언어인지과학과 [email protected]
196
 20 JN(명사-조사) & 5 JD(부사-조사)
한국외국어대학교 언어인지과학과 [email protected]
197
 33 EV(동사어미) & 33 EA(형용사어미)
한국외국어대학교 언어인지과학과 [email protected]
198
 그외 DECO-Tagset
 Inflectional Class Tags
 Noun : 12 classes
 Adverb: 4 Classes
 Adjective: 25 Classes
 Verb: 25 Classes
 Morphological Property Tags
 Syntactic Class Tags
 Adjective: 15 & etc.
 Veb: 11 & etc.
 Semantic Class Tags
 Noun: 62 Classes
 Adjective: 17 Classes
 Verb: 30 Classes
 Adverb: 7 Classes
한국외국어대학교 언어인지과학과 [email protected]
199
 Summary
 What we need in Electronic Dictionary
 {ENTRY, INFORMATION}
 Entry
 Basic Information
 Inflectional Class
 Canonical Form Information
 Surface Form Information
 POS Information
 TAGSET
 Auxiliary Information
 Morphological Information
 Semantic Information
 Syntactic Information
한국외국어대학교 언어인지과학과 [email protected]
200
 2. 인쇄사전과 전자사전
 전자사전에 대한 논의의 초점
 기존 인쇄사전과의 관계
 어떠한 차이를 가지는가?
 어떠한 공통점을 가지는가?
 MRD를 만들기 위해 기존 사전에서
자동으로 정보를 추출하는 방법은
없는가?
 전자사전은 향후 적용분야를 미리 고려함
 단독으로는 매우 한정된 정보를 가지
는 것이 일반적임  정보를 직접 기존
사전에서 추출하는 시도 제안됨
 구체적 응용 분야에 따른 용도가 의미
를 가짐  대표적 사례: 2개국어 이상
의 자동 번역기에서 요구되는 사전
(Machine Translation)
 Cf. 범용의 전자사전?
한국외국어대학교 언어인지과학과 [email protected]
201
 전자사전 구축&적용을 위한 툴
 구축을 위한 툴
 기존 사전의 정보 추출 툴
 빈도 추출 프로그램
 용례 추출 프로그램
  Cf. 형태소분석기가 요구됨
  Cf. 전자사전이 요구됨
 적용을 위한 툴
 코퍼스 구축 및 편집 툴
 전처리 툴
 전자사전을 적용한 텍스트 분석기
  형태소 분석 결과 획득
  부분적 파싱, 패턴 추출 획득
  의미적 특징 추출
 언어자원으로서의 전자사전 구축
 체계적인 DB의 필요성
 표제어(Entry)의 선정 문제
 관련정보(Information)의 기술 문제
한국외국어대학교 언어인지과학과 [email protected]
202
 전자사전 관련 용어
 Cf. What is Computerized Dictionary?
 MRD (Machine-Readable Dictionary)
 MD (Machine Dictionary)
 CRD (Computer-Readable Dictionary)
 LDB (Lexical Data Base)
 MTD (Machine-Tractable Dictionary)
 EL(Electronic Lexicon)
 Cf. 전자화된 사전과의 구별
 =인간사용자를 위한 디지털형식의 인쇄
사전/ 전자수첩 등
 전자사전의 종류
 형태소사전
 구문분석 사전
 변환 사전
 생성 사전 등
한국외국어대학교 언어인지과학과 [email protected]
203
 전자사전의 구조와 검색 기법
 탐색 알고리즘
 [1] 선형 탐색(linear)
 하나의 키에 하나의 내용이 대응되
는 구조
 하나씩 검색
 [2] 이진 탐색(binary)
 미리 정렬되어 있는 배열을 가정
 제일 낮은 인덱스(low)와 제일 높은
인덱스(high)  배열의 가운데 인덱
스를 구하여 비교  키 값이 작으면
high 인덱스를 middle-1로 조정하여
새로운 탐색 영역을 결정함
 N값이 클수록 선형탐색보다 효율이
우수함
 사전 구조
 트라이 구조(trie)
 각 분기 노드에서 그 아래로 데이터
멤버를 가지는 구조  마치 트리
(tree) 구조와 유사함
한국외국어대학교 언어인지과학과 [email protected]
204
 3. 사전과 지식베이스(Knowledge Base)
 [1] 시소러스(Thesaurus)
 통제된 색인언어의 어휘집
 개념간의 특정 관계를 형식적으로 조직
화하여 명시한 것
 초기 문헌정보학에서 색인 작업시 색인
표의 선택과 색인어의 통제를 위해 사용
 정보검색, 전자상거래, 전문가시스템, 기
계번역, 자동요약 등에 사용됨
한국외국어대학교 언어인지과학과 [email protected]
205
 분야에 따른 분류
 정보검색
 동의어, 상하위 개념어, 관련어 등
 전자상거래
 적용업종 및 분야별 분류, 분류
code 및 상품명 등
 NLP
 상하위 개념어, 동형이의어, 다의어,
반의어, 부분-집합어 등
 언어학적 관점
 19세기 Roger <Thesaurus of
English Words and Phrases>
 한국어의 경우
 유의어-반의어 사전 (김광해)
 우리말 분류사전 (남영신)
 우리말 분류대사전 (박용수) 등
 관련 영역
 WordNet
 EDR 사전
 Ontology
한국외국어대학교 언어인지과학과 [email protected]
206
 [2] WordNet
 1985년부터 미국 Princeton대학에서 구축
 의미 네트워크
 영어의 명사/동사/형용사/부사에 대해 의
미적 연관관계로 연결된 동의어 집합
(Synset)을 나누고 각각의 개념들로 표현
 약 120,000 어휘를 90,000 의미 태그로
분류
 동의어, 반의어, 상위어/하위어, 부분/전체,
함의 관계 등으로 규명
Synonymy(동의)
[N/V/A/Ad] pipe/tube, sad/unhappy
Antonymy(반의)
[A/Ad/(N/V)] wet/dry, rapidly/slowly
Hyponymy(상하) [N] maple/tree
Meronymy(부분) [N] brim/hat
Troponomy(방법) [V] whisper/speak
Entailment(함의)
[V] divorce/marry
한국외국어대학교 언어인지과학과 [email protected]
207
 [3] EDR 언어자료베이스
 일영/영일 기계번역을 위해 일본정부와 8
개 컴퓨터 관련업체가 참여한 프로젝트
 구성
 단어사전: 단어와 개념 사이의 관계 및
단어의 문법적 특성과 주어진 의미를
표시하여 컴퓨터에게 형태소 및 구문
처리를 할 수 있게 함
 개념분류사전: 모든 개념을 상하위 관
계를 표현하고 유사도를 계산
 개념기술사전: 개념 사이의 의미적 공
기 관계를 결정할 수 있게 함
 400,000 개의 개념 + 400,000 개의 개
념 기술항
한국외국어대학교 언어인지과학과 [email protected]
208
 두 개념 사이의 관계를 5가지 종류로 나
누어 총 36가지 관계를 규정함
 [1] 격 관계: 행위자, 대상, 수단 등 13
가지
 [2] 사건 관계: 인과관계 등 사건 사이
관계 5가지
 [3] 의미 관계: 상하관계 등 5가지
 [4] 한정 관계: 역할/수/량 등 한정관계
7개
 [5] 의사 관계: 소유 관계를 비롯한 6가
지
한국외국어대학교 언어인지과학과 [email protected]
209
 [4] 온톨로지(Ontology)
 Cf. 철학적 정의 vs. 공학적 정의
 지식의 모든 표현을 기술할 수 있는 단
어로 나타냄
 지식의 재활용, 지식의 공유가 가능
 관련 용어
 의미표현(Semantic Representation)
 지식표현(Knowledge Representation)
 온톨로지 포맷, 언어
 RDF/ OWL(Web Ontology
Language)
 온톨로지 구축 도구, 에디터
 Protégé
한국외국어대학교 언어인지과학과 [email protected]
210
VII. Corpus &
Frequency List
한국외국어대학교 언어인지과학과 [email protected]
212
 1. Corpus
 Cf. Roland Hausser <Foundation of
Computational Linguistics> Springer
1998
 Corpus의 정의
 대량의 말뭉치, 균형잡힌 텍스트 구성
 Corpus의 사용
 NLP분야에서 언어 분석 및 처리 방법
 Chomsky의 구조주의적 방법, 인공지
능, 문법 규칙과 지식을 기반으로 한
NLP 시스템의 한계에 대한 성찰에서
시작
 1990년대 이후 대량의 자료인 코퍼스
(corpus, 말뭉치, 말모둠) 기반으로 하
는 경험주의적 방법이 다시 우세해짐
한국외국어대학교 언어인지과학과 [email protected]
213
 [1] Brown Corpus
H. Kucera & W.N. Francis 1967
American English
500개의 텍스트
1,014,231개의 단어토큰(running
word forms: tokens)
 50,406개의 단어타입(different
types)




 [2] LOB Corpus






Lancaster-Oslo/Bergen corpus
G.N.Leech & S.Johannson 1978
British English
500개의 텍스트
약 1백만개의 토큰
약 50,000개의 타입
한국외국어대학교 언어인지과학과 [email protected]
214
 Brown 코퍼스와 LOB 코퍼스
 두 코퍼스 모두 전체 사이즈(토큰, 타
입의 수)와 문서의 수(500텍스트), 장르
의 수(15개의 장르)에서 서로 유사함
Brown
LOB
A
신문 기사
44
44
B
신문 사설
27
27
C
신문 논평/서평
17
17
D
종교
17
17
E
기술, 무역, 취미
36
38
F
대중 잡지
48
44
G
문학, 자서전, 수필
75
77
H
기타(정부문서, 기록물)
30
38
J
학습, 학문적 문서
80
80
K
일반 소설
29
29
L
미스터리, 탐정 소설
24
24
M
공상과학 소설
6
6
N
모험, 서부 소설
29
29
P
로맨스, 연애 소설
29
29
R
유머
9
9
500
500
Total
한국외국어대학교 언어인지과학과 [email protected]
215
 [3] BNC (British National Corpus)
 위보다 더 확장된 크기의 코퍼스
 1995년 이후 On-line 서비스
 1억 단어(100 million running word
forms)
 Written language:
 89.7 million 토큰(Token) &
659,270 타입(Type)
 (Cf. By BNC authors : 921,073
타입)
 Spoken language:
 10.34 million토큰
한국외국어대학교 언어인지과학과 [email protected]
216
 BNC (British National Corpus)
 http://www.natcorp.ox.ac.uk/using/index.
xml?ID=intro
한국외국어대학교 언어인지과학과 [email protected]
217
 일반언어학적 연구에서 Corpus의 조건
 [1] 대표성(Representativeness)
 [2] 균형성(Balance)
 코퍼스가 대표성과 균형성을 잘 갖출
수록 한 언어의 단어와 어형들의 빈
도 분포(frequency distribution)의 신
뢰도가 높아짐
한국외국어대학교 언어인지과학과 [email protected]
218
 2. 빈도 목록(frequency list)
 통계적 분석의 가장 기본적 층위
 <Rank>: 빈도목록에서 토큰들의 순위
 <BNC Frequency list>의 예
 최상위 단어: the
 5,776,399 횟수가 나타남
 전체 토큰들의 6.4%를 차지함
 목록의 하위 단어들: 1회 출현하는 토
큰들
 hapax legomena(그리스어:= “said
once”)로 불림
 (BNC에) 348,145개의 hapax
legomena 출현
 전체 타입의 52.8%를 차지함
한국외국어대학교 언어인지과학과 [email protected]
219
 F-classes(Frequency classes)
 빈도 목록에서 동일한 빈도를 가지는 토큰
들을 F-class에 모음
 예: hapax legomena
 F-class는 두 개의 파라미터에 의해 정의됨
 [1] 빈도
 [2] 그 빈도를 가지는 타입의 수
 F-Class 개념의 정의
 F-Class = def [타입들의 빈도(frequency of
types) # 타입들의 수(number of types)]
 여기서 타입들의 수는 최고 고빈도어와 최
고 저빈도어 등수(rank) 사이의 차이
 F-Class의 개념은 빈도목록의 모든 등수의
집합들에 적용됨
 BNC의 F-classes
 최고 고빈도: “the”: [5,776,399#1]
 빈도3의 경우: [3#39,691]
한국외국어대학교 언어인지과학과 [email protected]
220
 한 F-class에 대응되는 토큰의 수(the
number of tokens corresponding to an
F-class)
= 타입 빈도(type frequency) x 타입 수
(type number)
 예: 위의 빈도 3의 F-class의 토큰수 = 3
x 39,691 = 119,073 개
 BNC의 16.4%의 타입  전체 출현 어형들
의 98.8%를 커버함
 즉 단지 1.2%의 어형들이 전체 타입의
83.6%를 차지함
 Cf. 음성인식시스템에서 작은 사이즈의
사전만으로 처리가 가능하다는 주장 vs.
그러나 단어의 의미(semantic
significance of a word)는 더 낮은 빈도
의 단어일수록 더 중요하다는 사실을 간
과하는 주장임
한국외국어대학교 언어인지과학과 [email protected]
221
 코퍼스 빈도의 허구와 진실
 전체 타입수의 84%가 전체 토큰수의
2% 정도만을 차지하는 저빈도어 타입
이나, 빈도가 낮을수록 오히려 의미적으
로 중요한 성분임
 즉 사용자들은 ‘the, of, and, to’와 같은
고빈도어들은 사실상 필요하지 않음
 반면 ‘audiophile, butternut,
customhouse, dustheap’과 같은 단어들
은 BNC에서 단1회 출현하나 의미적으
로 위보다 더욱 중요함
 더욱이 ‘aspheric, bipropellant,
dynamotor’ 등과 같이 전통사전에 등재
되어 있는 의미있는 단어들이 BNC처럼
대용량(그리고 대표성&균형성의) 코퍼
스에서 1번도 출현하지 않음
 즉 코퍼스의 어형 목록은 기존 사전을
업그레이드하는 데에 도움을 주나 결코
동일하거나 더 완성적인 형태로 이해되
어서는 안됨
한국외국어대학교 언어인지과학과 [email protected]
222
 타입과 토큰의 빈도 상관관계
 George K. Zipf (1902-1950)
 Zipf 1935
 타입의 빈도 분포는, 코퍼스의 사이
즈나 텍스트의 유형, 자연언어의 유
형 등과 무관하게 다음 공식과 같은
항상 일정 동일한 패턴을 따름
 Zipf’s law
 빈도 x 등수 = 상수 (frequency x
rank = constant)
 즉 “주어진 단어의 빈도와 그 등수
를 곱하면, 그 텍스트의 어느 다른
단어의 빈도와 등수를 곱해도 그와
동일한 값을 가진다”는 법칙
Word form
Rank
Frequency = constant
the
1
5,776,399 = 5,776,399
and
2
2,789,563 = 5,579,126
was
9
839,967 = 7,559,703
holder
3251
2,870 = 9,330,370
한국외국어대학교 언어인지과학과 [email protected]
223
 Zipf의 연구
 위의 Zipf’s law에서 나타나는 값의 차
이를 보완하기 위해 후세에 약간의 공
식 조정이 제안
 일반적으로 화자-청자에게는 <동일한
빈도로 실현되는 모든 어형들을 사용
하는 것>보다 <자주 사용되는 아주 소
수의 어형들을 사용하는 것>이 훨씬
쉽다는 주장
 또한 이러한 자주 사용되는 어형들은
대체로 <짧은 형태>들이며, 단어가 길
어질수록 빈도가 낮아진다는 주장
 어형들의 의미적 중요성은 저빈도어일
수록 높아진다는 주장
한국외국어대학교 언어인지과학과 [email protected]
224
 3. 통계적 태깅(Statistical tagging)
 <TAGGIT>
 W.N.Francis 1980가 개발
 패턴기반 태거(Pattern-based system
of categorization)
 많은 후처리를 필요로 함
 <CLAW1>
 R.Garside, G.Leech& G.Sampson 1987
 통계기반태거(statistically-based
tagging) – 위의 패턴매칭보다 더 빠르
고 정확한 태깅 결과를 얻기 위해 고안
 통계 태거
 Core corpus에 기반함
 거의 수동으로, 또는 반쯤 자동으로
한 후 후처리를 한 작은 사이즈의
코퍼스
 이때 태깅을 위해 사용되는 범주들
은 ‘tags’ 또는 ‘labels’로 불리며, 그
전체는 <Tagset>으로 불림
한국외국어대학교 언어인지과학과 [email protected]
225
 태그셋의 선택
 하나의 어형으로부터 그 다음 어형
(bigrams)에 전이가 일어나는 과정을
최대한 효율적으로 통계적 구별이 가
능하도록 만들어짐
 이러한 이유로 BNC는 매우 큰 태그셋
에 기반함  Enriched(C7) tagset (전
체 139개의 태그를 가짐- 구두점 태그
를 제외한 경우)
 이와 같이 수동으로 코어코퍼스를 태
깅하면 한 어형으로부터 다른 어형으
로의 전이 확률(probabilities of the
transitions)은 HMMs(Hidden Markov
Models)에 의해 컴퓨팅됨
 이후 이러한 코어코퍼스의 확률값은
간단한 태그셋을 사용하여 전체 대용
량 코퍼스에 적용되어짐  즉 결과적
으로 BNC의 기본태그셋(basic(C5)
tagset)은 모두 61개의 labels을 가짐)
한국외국어대학교 언어인지과학과 [email protected]
226
 BNC의 기본 태그셋(C5)의 일부
 AJ0 Adjective(good, old)
 CRD Cardinal number (one, 3609,
fifty-five, 3)
 NN0 Common noun, neutral for
number (data, committee, aircraft)
 NN1 Singular common noun (pencil,
goose, time)
 NN2 Plural common noun (pencils,
geese, times)
 NP0 Proper noun (London, Mars, IBM)
 UNC Unclassified items
 VVB The finite base form of lexical
verbs (forget, send, live)
 VVD The past tense form of lexical
verbs (forgot, sent, lived)
 VVG The –ing form (forgetting)
 VV1 The infinitive form (forget, send)
 VVN The past participle form
(forgotten, sent)
 VVZ The –s form (forgets, sends)
한국외국어대학교 언어인지과학과 [email protected]
227
 BNC 코퍼스의 자동태깅된 결과 예(38개)
 Alphabetical word form list (구성방식:
{빈도수, 표면형, 태그, 문서수})
 1 activ nn1 –np0 1
 1 activ np0 1
 2 activa nn1 1
 3 activa nn1 –np0 1
 4 activa np0 2
 1 activatd nn1 –vvb 1
 21 activate np0 4
 62 activate vvb 42
 219 activate vvi 116
 140 activated aj0 48
 56 activated aj0 –vvd 26
 52 activated aj0 –vvn 34
 5 activated np0 3
 85 activated vvd 56
 43 activated vvd -vvn 36
 312 activated vvd 144
 1 activatedness nn1 1
 88 activates vvz 60
한국외국어대학교 언어인지과학과 [email protected]
228




















5 activating aj0 5
8 activating aj0 –nn1 6
47 activating aj0 -vvg 22
3 activating nn1 –vvg 3
14 activating np0 5
371 activating vvg 49
538 activation nn1 93
3 activation nn1 –np0 3
2 activation-energy aj0 1
1 activation-inhibition aj0 1
1 activation-synthesis aj0 1
1 activation. nn0 1
1 activation/ unc 1
282 activator nn1 30
6 activator nn1 –np0 3
1 activator/ unc 1
1 activator/ unc 1
7 activator/tissue unc 1
61 activators nn2 18
1 activators np0 1
한국외국어대학교 언어인지과학과 [email protected]
229
 위의 <알파벳 순서의 어형 목록>을 빈도
순으로 정렬  Frequency list
 위 결과물: 자동태거 CLAWS4의 결과
 이것은 BNC를 분석하기 위해 개발된
자동 태거임
 일반적으로 가장 우수한 통계적 태거
로 알려져 있음
 CLAWS4의 에러율(error rate)은 1.7%
(Leech 1995)  매우 우수한 편임
 문제점
 그러나 위의 에러율은 실제 출현한 어
형들에 적용된 것으로 타입에 적용된
값이 아님  즉 1.2.% 정도의 낮은 빈
도를 갖는 토큰들이 전체 타입의
83.6%를 차지하는 점을 고려하면,
1.7%의 에러율은 매우 저조한 수치임
 즉 약 90%의 타입들이 분석되지 못
했거나 잘못 분석되었다는 의미임 (즉
많이 쓰이는 형태들이 많은 토큰수를
차지하며 이들이 옳게 분석되었다는
것으로, 잘 안쓰이는 형태들은 거의 틀
렸을 가능성을 배제할 수 없기때문)
한국외국어대학교 언어인지과학과 [email protected]
230
 앞서 보인 분석 결과(첫 38개 표제어)의 오
류 유형 문제점들
 이중 27개가 2개 이상의 태그로 분석되
었음 (activ(2), activa(3), activate(3),
activated(7), activating(6), activation(2),
activator(2), activators(2))
 이때 ‘activ-’와 같은 타이핑에러 유형은
nn1 –np0 과 np0으로 분석되었으나 그
어느것도 아무 의미없는 분석임
 ‘activate’를 np0으로 분석한 것도 잘못
된 분석임
 잘못 타이핑된 ‘activatd’도 올바른 것으
로 간주되어 nn1 –vvb 로 분석됨
 ‘activation.’과 같이 구두점을 가진 경우
구두점이 삭제되지 못하고 전체가 nn0
태그를 가짐
 ‘activation/’와 ‘activator/’의 경우 /때문
에 unc(unclassified)로 분류됨
 ‘activator/’는 동일한 표제어가 별도로 2
개 나뉘어짐
한국외국어대학교 언어인지과학과 [email protected]
231
 위 태거의 또다른 유형의 문제점
 숫자를 처리하는 전처리 모듈의 성능이
나쁘기 때문에 다음과 같은 토큰들이 모
두 각각 카운트되어 각각의 별도의 타입
을 구성함
 1 0.544 crd 1
 1 0.543 crd 1
 1 0.541 crd 1
 위와 같은 숫자들이 서로 다른 타입으로
분석되어 결과적으로 58,477개의 타입
이 추가로 생성됨  이것은 BNC 코퍼
스 타입의 6.3%에 해당되는 수치
 또한 ‘&pound’와 같은 측량단위에 의해
11,706개 타입이 추가되고, ‘&dollar’에
의해 8,723개가 추가됨
 하이픈이나 하이픈 수반한 시퀀스들이
잘못 분석되어 4,411개의 타입이 추가
되었고 여기 잘못된 태그가 할당됨
 결과적으로 위의 통계기반 태거는 원래
타입수가 659,270인 BNC의 코퍼스를
921,074개로 증가시키게 됨
한국외국어대학교 언어인지과학과 [email protected]
232
 만일 전처리 모듈에서 <숫자>와 <하이
픈>을 올바르게 처리하기만 했어도
83,317개를 줄일 수 있어서 전체 타입수
를 575,953개로 줄일 수 있었을 것임
 결국 통계기반 태거가 BNC의 타입수를
최소 37.5%나 증가시키는 문제를 일으킴
 통계기반 태거의 장단점
 장점: 적은 노력으로 어형 인식 시스템
(system of automatic word form
recognition)을 구축
 단점: 다음과 같은 약점들(특히 형태론적
으로 복잡한 언어의 경우 더욱)
 [1] 규칙 기반 통사 파싱을 하기 위한
문법범주 설정(categorization) 작업이
에러가 너무 많음
 [2] 어형들이 기본형으로 줄여지거나
(lemmatization), 또는 형태소단위로
분할(segmented)될 수 없음
 [3] 전체 코퍼스의 빈도 분포 분석이
인위적인 타입수 증가 때문에 잘못 이
루어지는 문제
한국외국어대학교 언어인지과학과 [email protected]
233
 통계기반 태거의 한계와 규칙기반태거
 통계기반태거
 실제로 발견되는 구체적인 오류들을
바로잡을 방법이 없음
 다른 대안: 규칙 & 사전 기반 자동 태거
(a rule- and lexicon-based system of
automatic word form recognition)
 이 경우: 어형이 분석되지 못하거나
잘못 분석되는 경우  사전에 표제어
가 빠져있는 경우거나 규칙에 오류가
있는 경우임  즉 오류의 기원을 찾
아내는 것이 가능하기 때문에 수정될
수 있으며, 그 인식율이 향상될수있음
 예를 들어 <1회출현타입: hapax
legomena>들(전체 타입의 거의 반에
해당되는 비중)은 통계기반 태거에서
는 거의 처리불가능한 유형이 되지만,
규칙&사전기반 태거에서는 이들을
정확히 분석할 수 있음
한국외국어대학교 언어인지과학과 [email protected]
234
 4. Treebank의 개념
 Treebank, Annotated Corpus
 코퍼스에 형태소 및 구문 정보를 주석으
로 붙인 것
 주석코퍼스(annotated corpus)
 트리뱅크(Treebank)
 예: Penn Treebank
 정보의 유형
 형태소 정보
 POS 태그
 구문 정보
 구구조 주석(phrase structure
annotation)  통사구조
 Cf. 좁은의미의 <트리뱅크>는 파싱
(parsing)이 이루어진 결과, 또는 구문주
석코퍼스(Annotated corpus)를 의미함
 넓은의미로는 모든 유형의 정보(형태
정보/통사정보/의미정보)가 동시에, 혹은
각각 삽입된 주석코퍼스 형태를 의미함
한국외국어대학교 언어인지과학과 [email protected]
235
 [1] POS tagging이 된 트리뱅크
 CLAWS1-132개 태그
 CLAWS2-166개 태그
 BNC-60개 태그
Hospitality_NN is_BEZ an_AT excellent_JJ
virtue_NN ,_, but_CC not_XNOT when_WRB
the_ATI guests_NNS have_HV to_TO
sleep_VB in_IN rows_NNS in_IN the_ATI
cellar_NN !_!
 [2] Grammatical parsing이 된 트리뱅크
 POS 외에 구구조를 주석으로 부여하는 것
 POS보다 더 적은 수의 문법 범주를 사용
[S[N Nemo_NP1 ,_, [N the_AT killer_NN1
whale_NN1 N] ,_, [Fr[N who_PNQS N] [V
‘d_VHD grown_VVN [J too_RG big_JJ [P
for_IF [N his_APP$ pool_NN1 [P on_II [N
clacton_NP1 Pier_NNL1
N]P]N]P]]]V]Er]N] ,_, [V has_VHZ …
한국외국어대학교 언어인지과학과 [email protected]
236
 [3] 의미 주석(Word sense tagging)
 의미론적 단어 태깅을 주석으로 부여
 [4] 조응 주석(Anaphoric annotation)
 대명사와 같은 조응 표현 주석
 예: 대명사가 가르키는 명사구를 주석
으로 부여
 문맥 정보가 요구됨
 현재까지는 대부분 수작업으로 이루어
짐
 [5] 운율주석(Prosodic annotation)
 대화에서 억양, 강세 및 쉼 등의 형태
를 주석으로 부여
 자동보다는 훈련된 사람이 듣고 기록
함
한국외국어대학교 언어인지과학과 [email protected]
237
 한국어 코퍼스 (Korean Corpus)
 연세 말뭉치 (Yonsei Corpus) : 약 9천만
어절 (코퍼스 소개만 있음)
http://ilis.yonsei.ac.kr/subbbs/sub?grid=
g7&top_id=g7_b2&grname=%EC%9E%
90%EB%A3%8C%EC%8B%A4&id=1&vie
w=
 카이스트 코퍼스 (Kaist Corpus) : 약7천
만 어절 (& 용례추출 프로그램)
http://semanticweb.kaist.ac.kr/research/k
cp/
 고려 말모둠 (Korean Corpus) : 형태소분
석기
http://cl.korea.ac.kr/Demo/dglee/
 세종말뭉치 (Sejong Corpus)
http://www.sejong.or.kr/product_frame.p
hp
한국외국어대학교 언어인지과학과 [email protected]
238
 세종말뭉치 (Sejong Corpus)
http://www.sejong.or.kr/product_frame.p
hp
한국외국어대학교 언어인지과학과 [email protected]
239
 한국어 코퍼스 (Korean Corpus)
 코퍼스를 이용하기 위한 부가적 도구
 (코퍼스)
 분석 단위(Unit: Token)의 결정
 태그셋(Tagset)의 결정
 태그가 markup된 전자사전(Electronic
Lexicon)
 형태소분석기(Morphological Analyzer)
 중의성 제거기(Desambiguation  자
동 태거(Automatic Tagger))
 분석 도구(Tool)
 빈도(Frequency) 분석 프로그램
 용례(Concordance) 추출 프로그램
 형태소분석기(Morphological
Anlyzer) & 태거(Tagger)
한국외국어대학교 언어인지과학과 [email protected]
240
VIII. Exercise: Corpus
Analysis
한국외국어대학교 언어인지과학과 [email protected]
242
 Exercise: 형태소분석기 사례 연구
 KAIST Morphological Analyzer
 http://semanticweb.kaist.ac.kr/researc
h/kcp/
 KOREA NLP Morphological Analyzer
 http://cl.korea.ac.kr/Demo/dglee/
 Sejong Geuljabi Morphological Analyzer
한국외국어대학교 언어인지과학과 [email protected]
243
한국외국어대학교 언어인지과학과 [email protected]
244
PART II
한국외국어대학교 언어인지과학과 [email protected]
246
IX. Ambiguity and
POS Tagging
한국외국어대학교 언어인지과학과 [email protected]
248
 1. 태깅(tagging)
 다음의 2가지 작업 의미함
 [1] 자동으로 텍스트의 분석 후보 찾기
 분석 결과에서 획득된 여러 분석 가
능성 후보 중에서 올바른 결과를 제
시하는 작업
  <태깅되다(Tagged)>, <자동태
거>등의 개념과 연결
 [2] 수동으로 말뭉치에 표지 부착하기
 말뭉치(corpus)에서 다양한 언어 정
보를 추출하고자 할 때 원시말뭉치
(raw corpus)에서의 정보 획득은 한
계가 있으므로 이를 보완하기 위해
여러 언어 정보를 부가하여 말뭉치를
가공하는 작업
  주로 <주석이 붙다(Annotated)>,
<수동/반자동태깅>등의 개념과 연결
한국외국어대학교 언어인지과학과 [email protected]
249
 용어 정리
 태그 (tag)
  부가된 언어정보(또는 중의성 제거
된 정보)
 태그부착 말뭉치 (주석 말뭉치, Tagged
Corpus)
  태그가 부착된 말뭉치
 태거(tagger)
 자동태깅을 수행하는 프로그램
한국외국어대학교 언어인지과학과 [email protected]
250
 개요
 [1] 어휘 태깅(lexical tagging)
 품사 부착 작업(part-of-speech
tagging)
 품사 부착 말뭉치를 구성하게 됨 
형태소 태깅(morphological
tagging)
 [2] 구문 태깅(syntactic tagging)
 트리 형태로 구문에 관련된 언어 정
보를 부착  트리 태깅(tree
tagging)이라고도 함
 구문 범위를 결정하여 괄호를 치는
작업  bracketing이라고도 함
한국외국어대학교 언어인지과학과 [email protected]
251
 [3] 의미 태깅(semantic tagging)
 원래는 의미 분석 단계에서 발생하는
의미적 중의성을 제거하는 태깅 작업
(분석 후보들 중 올바른 답을 제시하는
작업)
 현 수준의 의미 태깅은 위와 같은 수준
의 문장 층위의 작업이 아닌, 어휘 층위
에서의 어휘 의미 중의성 해소를 위한
의미 태깅 코퍼스 구축을 위한 작업을
의미함
 즉 자연언어처리의 마지막 단계의 의미
분석/태깅이 아님
 = sense tagging (중의성 어휘에 대해
의미 부류를 태그로 부착) – WordNet
의 synset 의미 부류 번호
한국외국어대학교 언어인지과학과 [email protected]
252
 어휘 태깅 (POS-Tagging)에 대한 연구
 1980년대 영어권을 중심으로 활성화
 한국어 – 1990년대 본격적으로 시작
 현재 95% 이상의 비교적 높은 정확성을
가진 것으로 보고되고 있음
 3가지 방식
 규칙 기반 접근법 (Rule-based
approach)
 통계적 접근법 (Stochastic approach)
 복합적 접근법 (Hybrid approach)
 [1] 규칙 기반 접근법
 언어 정보의 유형
 [1] 긍정 정보(positive information)
 특정 문맥에서 선호되는 어휘 태그
에 대한 언어 지식
 예: [A or B]  A [C or D] (A와 B 사
이에 중의성이 있고, 뒤에 C나 D가
오면, 태그 A가 선호됨)
한국외국어대학교 언어인지과학과 [email protected]
253
 [2] 부정 정보(negative information)
 특정 문맥에서 배제되는 어휘 태그에
대한 언어 지식
 예: A ? B  not C (해당 언어의 선행,
후행 정보가 A, B인 경우에, ?로 표시
된 단어의 태그가 C가 되는 것은 배제
된다는 의미)
 [3] 수정 정보 (correctional information)
 통계적 접근법에 의해 유발된 오류의
교정에 대한 정보
 예: α: A  B (문맥 α에서는 태그 A를
B로 교정한다는 수정 정보)
 주로 복합적 접근법에서 통계적 방식
을 보완하기 위해 사용함
 Cf. 앞의 긍정/부정 정보는 규칙기반에
서 많이 사용함
 Cf. 규칙 기반 접근법의 특징
 대체로 수동으로 구축함 (또는 부분적
으로 자동)
 자동으로 규칙 구축 = 통계기반 접근
법과 유사함
한국외국어대학교 언어인지과학과 [email protected]
254
 [2] 통계적 접근법
 HMM (Hidden Markov Model) 접근법
 은닉 마르코프 모형
 MEM (Maximum Entropy Model) 접근
법
 최대 엔트로피 모형
 [3] 복합적 접근법
 <1> 통계적 접근법 사용 + 결과에 대한
오류 교정, 또는 통계적 신뢰도가 낮은
결과에 대해서만 규칙 기반 접근법으로
태깅
 <2> 위의 2가지를 별도로 적용한 다음,
결과가 다를 경우, 신뢰도가 높은 것을
선호하는 방법
한국외국어대학교 언어인지과학과 [email protected]
255
 Cf. 한국어 태깅과 영어 태깅의 차이
 영어 : 단어 토큰 전체 단위로 태그 부착
 예: books/NNS
 한국어 : 형태소 단위(토큰보다 작은 단
위)로 태그 부착
 일반: “주/V+는/E” 또는 “줄/V+는/E”
 Cf. 영어방식: “주는/VE (동사+어미)”
한국외국어대학교 언어인지과학과 [email protected]
256
 휴리스틱(heuristics)과 확률적 방법론
 휴리스틱 방법들을 찾아내는 것은 쉽지
않고 시간이 소요됨
 더구나 실제적으로 이러한 방법론이 얼
마나 효율적인 것인지를 평가할 수 있는
방법이 부재함
 이를 위해 <확률적 방법(probability
theory)>을 사용함
 이러한 방법론이 가능해진 배경  대
용량 코퍼스(large database, corpora)의
출현
 <Brown Corpus>
 약 100만개의 단어로 구성
 모든 단어에 문법태그가 부착됨
 <Wall Street journal>
 <Penn Treebank>
 통사구조가 태깅되어 있는 말뭉치
한국외국어대학교 언어인지과학과 [email protected]
257
 2. Basic Probability Theory
 확률(Probability)
 확률1: 어떤 사건이 반드시 일어남
 확률0: 어떤 사건이 결코 일어나지 않음
 만일 0.5의 확률이라면 반반의 가능성,
만일 0.75라면 100번에 75번 일어날
것이라는 가능성을 의미
 랜덤변수(Random variables)
 유한한 셋트의 값(value)에 적용되는
경우의 예를 들면, 동전의 앞뒷면의
확률
 즉 <TOSS 랜덤변수>는 동전던지기의
결과가 2개의 가능한 값(h=heads,
t=tails) 중의 하나가 되는 것을 보임
(즉 TOSS=h, TOSS=t외의 다른 값은
가능하지 않음)
 일반적으로 <TOSS=h>의 확률을 사
건h의 확률이라 말함
한국외국어대학교 언어인지과학과 [email protected]
258
 <PROB>: 확률 함수(probability function)
 확률함수는 각 랜덤변수에 가능한 모든 값
의 확률을 할당함
 이때 모든 확률함수는 다음과 같은 특징을
보임(여기서 e1…en은 랜덤변수 E의 가능한
모든 변별적인 값을 의미)
 [1] PROB(ei) ≥ 0, for all i
 [2] PROB(ei) ≤ 1, for all i
 [3] ∑i=1,nPROB(ei) = 1
 예
 Harry라는 말이 전체 100번의 경주를 함
 한 경주의 결과는 <승(Win)>과 <패
(Lose)>라는 2개의 값 중 하나를 갖는 랜
덤변수 R로 나타내어짐
 만일 Harry가 20번 이겼다면, <해리가
이길 확률>은 PROB(R=Win)=0.2가 되고,
<질 확률>은 PROB(R=Lose)=0.8이 됨
 이러한 값들은 위에서 정의한 3가지 조
건을 충족시키고 있음
한국외국어대학교 언어인지과학과 [email protected]
259
 3. 조건 확률(Conditional probability)
 랜덤변수가 여러 개일 때 이들이 서로 영
향을 미치는 경우의 확률
 예: 위의 Harry의 경주에서 날씨상태를
나타내는 <랜덤변수 W>을 가정
 가능한 값을 <비(Rain)>와 <맑음
(Shine)>의 2가지로 함
 경주가 있었던 100번에 대해 30번의
비가 왔다고 가정
 이러한 30번의 비온 날 중 Harry가 15
번을 이겼다면, 직관적으로 <비온날,
(즉 W=Rain)일때, 이길확률(R=Win)은
0.5(즉 30회 비온날 중 15번 승리)이
다>라고 가정할 수 있음.
 이러한 직관이 바로 조건확률을 나타
내는 것이며, PROB(Win|Rain)과 같은
방식으로 표현됨  즉 “사건 <Rain>
이 주어졌을 때 사건 <Win>이 일어날
확률” 을 의미
한국외국어대학교 언어인지과학과 [email protected]
260
 조건확률은 다음과 같은 formula로 표현됨
PROB(e | e') = PROB(e & e') / PROB(e‘)
(여기서 <PROB(e&e`)>는 e와 e`의 두 사건
이 동시에 발생할 확률임)
 조건확률 계산
 위에서 PROB(Rain)=0.3(100회 경주중 30
회 비)이고, PROB(Win&Rain)=0.15 (즉 비
가 왔을때 동시에 이길 확률이므로
0.3x0.5(0.5=30회 비 중에서 15회 이
김)=0.15임)
 따라서 위의 공식을 이용하면,
PROB(Win|Rain) = PROB(Win&Rain)/PROB(Rain)
= 0.15 / 0.30
= 0.5
 Bayes’ Rule (조건확률과 관련된 공리)
 이 규칙은 사건 B가 주어졌을 때 사건
A가 일어날 조건확률을 사건 A가 주어졌
을 때 B가 일어날 확률과 연관시켜 계산
하는 방식임
한국외국어대학교 언어인지과학과 [email protected]
261
 Bayes’s Rule
PROB(A | B) =
PROB(B | A) * PROB(A)
PROB(B)
 위의 식을 이용해서 Harry가 이긴 날
비가 온 확률을 구하면 다음과 같음
PROB(Rain|Win) = PROB(Win|Rain)*PROB(Rain)/
PROB(Win)
= (0.5 * 0.3) / 0.2
= 0.75
 위의 방법은 앞서 조건확률 정의
formula를 직접 사용하여 구한 값과
동일한 결과를 보임
PROB(Rain|Win) = PROB(Rain&Win)/PROB(Win)
= 0.15 / 0.20
= 0.75
한국외국어대학교 언어인지과학과 [email protected]
262
 Bayes’s Rule이 유용한 이유
 일반적으로 조건에 맞는 모든 정보를
가지고 있지 못한 경우에도 계산을
가능하게 함
 이런 경우 이 규칙을 이용하여 적절
히 추론하는 것이 가능함
한국외국어대학교 언어인지과학과 [email protected]
263
 4. 독립 확률의 개념(Independence)
 정의
 2개의 사건이 있을 때 한 사건의 발생
이 다른 사건의 발생 확률에 아무런 영
향을 미치지 않는 경우  두 사건은
확률적으로 서로 독립적(independent)
이라 함
 예를 들어, 위의 Harry의 예에서 또다
른 랜덤변수 L이 존재한다고 가정
 L={행운의 토끼발을 가진 경우}
 이 변수의 값은 F(Foot)와 E(Empty)
의 둘(즉 가진 경우와 안가진 경우)
 만일 내가 토끼발을 60회 가지고갔
는데, Harry가 12번을 이겼다면 <내
가 토끼발을 가진날 이길 확률>은
PROB(Win|Foot)=12/60=0.2 임
 그러나 Harry가 이길 확률이 원래부
터 0.2이므로 이 경우 토끼발을 가
진 사건은 경주와 무관하다는 결론
한국외국어대학교 언어인지과학과 [email protected]
264
 독립확률의 공식
 두 사건 A와 B는, 만일(if and only if)
다음과 같다면 서로 독립적임
PROB(A | B) =
PROB(A)
 위의 공식을 조건확률 공식을 사용해
서 다시 표현하면 아래와 같음
PROB(A & B) =
PROB(A) * PROB(B)
 위와 반대로 <Win>과 <Rain>의 사건
은 독립적이지 않은데,
PROB(Win)*PROB(Rain)=0.2*0.3=0.06
인데 반해 PROB(Win&Rain)=0.15으로
그 결과가 다르기 때문
한국외국어대학교 언어인지과학과 [email protected]
265
 5. 확률 이론과 품사태깅(POS Tagging)
 POS indentification 문제
 중의적인 단어들을 가진 문장을 분석할때 각
단어에 대해 가장 유력한 문법범주(lexical
category)를 할당하는 작업
 예: 어떤 단어들에 <N>인지 <V>인지를
결정해야 하는 경우
 2가지 랜덤변수 유형
 [1] C: POS로 N, V의 두 값을 가짐
 [2] W: 모든 가능한 단어들의 값을
range로 함
 예: {W = flies}
 이 경우, “PROB(C=N|W=flies)와
PROB(C=V|W=flies) 중에서 어느 것이
더 큰가” 하는 문제로 정의됨
 일반적으로 랜덤변수는 생략되어 표현
되므로, 위의 문제는 “PROB(N|flies)와
PROB(V|flies)” 사이의 문제로 표상됨
한국외국어대학교 언어인지과학과 [email protected]
266
 PROB(N|flies)와 PROB(V|flies) 비교 문제
 조건확률의 정의에 따라, ‘flies’라는 단
어에 대한 각 문법범주의 확률은 다음과
같이 계산됨
PROB(N | flies) = PROB(flies & N) / PROB(flies)
PROB(V | flies) = PROB(flies & V) / PROB(flies)
 결국 <PROB(flies & N)>과 <PROB(flies
& V)>의 크기를 비교하는 문제로 압축
됨 (나머지 부분은 동일하므로)
 이 경우 어떻게 그 값을 구할까?
 실제로 구축되어 있는 텍스트가 없다면
정확한 확률을 결정할 수 없음
  그러나 충분히 큰 사이즈의 샘플이
있다면 그 확률을 예상하는 것이 가능할
것임
한국외국어대학교 언어인지과학과 [email protected]
267
 예를 들어, 1,273,000 개의 단어를 가진
코퍼스가 있고,
 flies의 쓰임이 모두 1000번 나타났다고
가정.
 이때 400번은 N으로, 600번은 V로 사용
되었음.
  이 경우 코퍼스에서 이 단어의 빈도
비율을 고려하여
 어림 확률 계산이 가능함
한국외국어대학교 언어인지과학과 [email protected]
268
 ‘flies’의 확률 계산
 [1] 무작위로 추출된 단어가 ‘flies’일 확률
PROB(flies ) ≒
1,000/1,273,000 ≒ 0.0008
 [2] 이 무작위 단어가 ‘flies’이면서 동시에
N이거나 또는 V일 각각의 확률
PROB(flies & N)
≒ 400/1,273,000 = 0.0003
PROB(flies & V)
≒ 600/1,273,000 = 0.0005
 [3] 위에서 ‘flies’가 V라는 가정이 더 나은
추측이 됨을 볼 수 있음.
 앞서 보인 공식을 이용해 ‘flies’가 V가
될 확률을 구하면 다음과 같음
PROB(V | flies) = PROB(flies & V) / PROB(flies)
= 0.0005 / 0.0008 = 0.625
한국외국어대학교 언어인지과학과 [email protected]
269
 위의 결과로, ‘flies’가 V라고 결정하는 알
고리즘은 약 60%의 정확율을 보이게 됨
 더 나은 정확율을 위해서는 ‘flies’가 나타
나는 문장과 같은 <문맥(context)>을 고
려해야 함
 코퍼스의 <학습셋>과 <실험셋>
 학습셋(Training set)
 확률값을 구축하기 위해 사용됨
 실험셋(Test set)
 만들어진 알고리즘이 새로운 데이터
에 얼마나 잘 작동하는지 테스트
 일반적으로 전체 코퍼스의 10-20%
정도로 구성함
한국외국어대학교 언어인지과학과 [email protected]
270
 6. 품사태깅(POS Tagging)
 정의
 품사태깅은 한 문장의 단어들에 대해
가장 유력한 통사적 범주 시퀀스를 선
택하는 작업을 의미함
 가장 간단한 알고리즘: <학습셋>에서
가장 유력하게 나온 결과를 적용하는
것
 이 방법은 놀랍게도 보통 90% 정도의
정확율을 보임
 (즉 코퍼스에서의 출현 단어의 반 이상
이 실제로는 중의적이지 않기 때문에
나오는 수치임)
  즉 좀더 복잡한 방식을 위한 출발점
으로 사용 가능함
한국외국어대학교 언어인지과학과 [email protected]
271
 7. N-그램(n-gram) 방식
 발전된 방식: 일반적으로 그 단어가 나타
나는 문장의 <local context>를 사용하는
방법
 위에서 ‘flies’를 V로 분석할 때 약 60%의
정확율을 가지는 것을 보았음
 그러나 만일 앞에 ‘the’가 온다면 N가 될
확률이 분명히 높아짐
 일반적 문제 해결 방식
 [1] w1, … wT가 단어들의 연쇄(sequence
of words)임
 [2] C1, … CT와 같은 문법범주 연쇄
(sequence of lexical categories)를 갖는
최대 확률을 구하고자 함
PROB(C1, …, CT | w1, …, wT)
-----------{1}
 [3] 그러나 모든 연쇄를 계산하는 직접
방식은 불가능하므로 Bayes’ rule을 이용
해서 위의 {1} 조건확률을 다시 표현함
(PROB(C1,…,CT) * PROB(w1,…,wT|C1,…,CT) )
/ PROB(w1,…,wT)
-----------{2}
한국외국어대학교 언어인지과학과 [email protected]
272
 [4] 그런데 여기서는 최대값을 갖는 일
반 C1,…,Cn을 구하고자 하므로, 모든 경
우에 공통인 이 분모는 결과에 영향을
주지 않게 되고, 문제는 결국 다음 식을
최대로 만족시키는 <C1,…,Cn>의 시퀀
스를 찾는 문제로 압축됨
PROB(C1,…,CT)*PROB(w1,…,wT| C1,…,CT) ---{3}
 [5] 여전히 이와 같이 긴 시퀀스를 계산
할 수 있는 현실적인 방법이 존재하지
않으므로, 다음과 같은 방법을 이용
 문법범주들의 전체 시퀀스는 일정 제
한된 수의 선행 범주들의 수에 기반
한 확률값의 셋트를 통해 계산함 
가장 일반적 방법은 선행하는 1개 또
는 2개의 범주를 고려하는 것
 <Bigram>: 1쌍의 범주(또는 단어)
를 고려하여 이들의 조건확률을 구
함(즉 Ci가 Ci-1을 뒤따를 확률) 
PROB(Ci | Ci-1)
 <TRIGRAM>: 선행하는 2개의 범
주를 고려하여 조건확률을 계산
 PROB(Ci | Ci-2 Ci-1)
한국외국어대학교 언어인지과학과 [email protected]
273
 N-gram 모델
 N은 패턴 속에 사용된 단어의 수를 의
미함
 Trigram이 더 효과적이기는 하지만, 더
간단한 bigram의 방법을 보기로 함
 앞서의 예에서 bigram을 사용하면, 구
하고자하는 확률은 다음과 같음
PROB(C1,…,CT) ≒ ∏i=1,T PROB(Ci| Ci-1)
---{4}
 문장의 첫 시작을 위하여 맨앞자리
(position0)에는 C0의 값으로
ø(pseudocategory)를 할당함
 이 경우 첫 단어가 ART인 경우, 그
bigram 확률은 PROB(ART | ø)이 됨
 예를 들어 bigram을 이용하여 <ART N
V N>의 연쇄가 나타날 확률을 구하면,
PROB(ART N V N) ≒PROB(ART|ø)*PROB(N|ART)
*PROB(V|N)*PROB(N|V)
---{5}
한국외국어대학교 언어인지과학과 [email protected]
274
 위의 {3}의 뒷부분의 확률은,
PROB(w1,…,wT| C1,…,CT)
결국 앞뒤의 범주와 무관하게 각 단어
가 실현될 확률과 유사하므로, 각 단어
들이 각 문법범주로 나타날 확률들의
곱으로 계산될 수 있음. 즉,
PROB(w1,…,wT|C1,…,CT) ≒ ∏i=1,T PROB(wi|Ci)
 이러한 방식으로, 결국 이 문제는 다음
의 값을 최대화하는 C1,…CT의 연쇄들
을 구하는 문제가 됨
∏i=1,T PROB(Ci | Ci-1) * PROB(wi | Ci)
---{6}
 위의 새로운 식의 장점은 POS태그가
부착된 코퍼스로부터 그 확률값 계산
이 쉽게 가능하다는 점
 특히 하나의 텍스트가 주어진 경우,
bigram 확률은 각 범주쌍이 나타난 횟
수를 각 범주가 혼자 나타난 횟수와 비
교하여 카운트함으로써 쉽게 구해질
수 있다는 점
한국외국어대학교 언어인지과학과 [email protected]
275
 가령 V가 N을 뒤따를 확률은 다음과 같
이 계산되어질 수 있음
PROB(C1=V|C1-1=N)≒Count(N at position i-1 and V at i)
Count(N at position i-1)
 예: 300개의 문장으로 이루어지고, N, V,
ART, P의 4개의 문법범주만을 가진 코퍼스
에 대한 bigram 확률 (Cf. 실제 Penn
Treebank의 경우 40개의 태그)
 1,998개 단어(N:833,V:300,ART:558,P:307)
 각 bigram을 위의 공식을 이용하여 계산
Cate
gory
Count
at i
Pair
Count at
I,i+1
Bigram
Estimate
Ø
300
Ø,ART
213
PROB(ART|Ø)
0.71
Ø
300
Ø,N
87
PROB(N|Ø)
0.29
ART
558
ART,N
558
PROB(N|ART)
1
N
833
N,V
358
PROB(V|N)
0.43
N
833
N,N
108
PROB(N|N)
0.13
N
833
N,P
366
PROB(P|N)
0.44
V
300
V,N
75
PROB(N|V)
0.35
V
300
V,ART
194
PROB(ART|V)
0.65
P
307
P,ART
226
PROB(ART|P)
0.74
P
307
P,N
81
PROB(N|P)
0.26
한국외국어대학교 언어인지과학과 [email protected]
276
 8. 어휘생성확률(Lexical-generation
Probability: LGP)
 PROB(wi | Ci)
 각 문법범주로 실현된 각 단어의 출현
횟수를 세어 알 수 있음
 예: 다음과 같이 어떤 텍스트에 실제
단어들이 다음과 같은 횟수로 출현한
경우
N
V
ART
P
TOTAL
flies
21
23
0
0
44
fruit
49
5
1
0
55
like
10
30
0
21
61
a
1
0
201
0
202
the
1
0
300
2
303
flower
53
15
0
0
68
flowers
42
16
0
0
58
birds
64
1
0
0
65
others
592
210
56
284
1142
TOTAL
833
300
558
307
1998
한국외국어대학교 언어인지과학과 [email protected]
277
 다음과 같은 어휘생성확률을 얻음
 이것은 주어진 품사가 X라는 단어로
실현될 수 있는 확률로서, 주어진 단
어가 X라는 품사로 실현될 수 있는
확률을 의미하는 것이 아님
 즉 PROB(the|ART)는 Count(‘the’가
ART인 횟수)/Count(ART출현횟수)로
서, ‘the’가 ART로 출현할 확률을 구
하는 PROB(ART|the)와는 전혀 다름
 <Table LGP>
PROB(the|ART)
0.54
PROB(a|ART)
0.360
PROB(flies|N)
0.025
PROB(a|N)
0.001
PROB(flies|V)
0.076
PROB(flower|N)
0.063
PROB(like|V)
0.1
PROB(flower|V)
0.05
PROB(like|P)
0.068
PROB(birds|N)
0.076
PROB(like|N)
0.012
한국외국어대학교 언어인지과학과 [email protected]
278
 9. 입력문의 최대확률 품사열 구하기
 원칙적으로 그 문장을 구성할 수 있는 모든
품사열들을 구해서 이들의 확률을 계산한 후
최고값을 구하면 될 것임
  그러나 <Exponential Problem>이 됨
 Exponential number of sequences
 즉 N개의 문법범주와 T개의 단어가 있을
때 가능한 연쇄들의 수는 NT가 됨
 따라서 다음과 같은 방식으로 대신함
 I번째 단어가 Ci 범주에 들어갈 확률은 (i1)번째 단어의 범주인 Ci-1에 의존적임
 따라서 각 단어별로 그 확률을 계산하면
되므로, <확률유한상태기계(probabilistic
finite state machine)>에 의해 모델링될
수 있음(다음 그림)
 다음 그림에서 각 노드(둥근원)는 품사를
의미하고, 전이(화살표) 확률(bigram확률)
은 각 품사가 다른 품사를 뒤따를 수 있는
확률을 보임
한국외국어대학교 언어인지과학과 [email protected]
279
 Bigram확률을 나타내는 마르코프체인
(Markov chain)
0.71
ART
0.65
ø
1
V
0.43
0.29
0.74
0.35
N
0.13
0.26
0.44
P
 위의 네트워크 표상은 어휘생성확률(앞의
표 참고)도 포함해서 나타낼 수 있음
 특히 각 노드(둥근원)에 <출력형 확률
(output probabilities)>을 포함할 수 있음
 즉 그 노드에 대응될 수 있는 가능한 단
어들의 확률값을 표현
 이와 같이 어휘성분 출력형과 함께 나타난
그래프를 HMM으로 명명함(다음 장)
한국외국어대학교 언어인지과학과 [email protected]
280
 10. 은닉마르코프체인(HMM: Hidden
Markov Model)
 Cf. vs. Regular MM
 앞서 그래프에서 N의 예
 위의 노드 N은, “만일 우리가 우연히 명
사를 선택한다면, 이때 어떤 단어가 선택
될 수 있는 확률이 얼마나 될까”를 보이
는 확률값 표(앞서 <LGP>테이블)와 결
합될 수 있음(가령 N을 고를때 flies가 선
택될 확률은 0.025임)
 ‘hidden’이라는 표현 설정 이유
 일정 단어열에 대해서 마르코프모델이
어느 상태에 있는 것인지가 분명하지 않
기 때문
 예: 만일 단어 ‘flies’는 0.025의 확률을 가
지고 N 상태에서 실현되거나, 또는
0.076의 확률을 가지고 V 상태에서 실현
될 수 있음  이러한 중의성 때문에 이
네트워크로부터 단어열들의 확률을 계산
하는 것은 간단하지 않은 문제가 됨
한국외국어대학교 언어인지과학과 [email protected]
281
 그러나 반대로 특정 구체 문장이 주어진다면,
그러한 문장을 생성하는 확률값은, 각 출력
형들의 어휘생성확률값들을 그 가능 경로를
따라 곱해줌으로써 쉽게 구할 수 있음
 예를 들어, <N V ART N>이라는 연쇄가
“Flies like a flower”라는 출력형을 생성할
확률을 구하는 방식은 다음과 같음
 [1] 위의 마르코프체인에 따라 <N V
ART N> 경로의 확률은 “0.29 x 0.43 x
0.65 x 1 = 0.081”이 됨
 [2] 이때 이 연쇄의 어휘 출력형이
“Flies like a flower”이 될 확률은 앞서
<LGP> 테이블에 의해 다음과 같이 계
산됨
PROB(flies|N)*PROB(like|V)*PROB(a|ART)*
PROB(flower|N)
= 0.025 x 0.1 x 0.36 x 0.063
= 5.4 x 10-5
 [3] 최종적으로 위의 [1]과 [2]를 곱하면,
HMM이 위의 문장을 생성할 확률은
“4.37 x 10-6”이 됨
한국외국어대학교 언어인지과학과 [email protected]
282
 HMM을 이용한 일반 계산 공식
 즉, <C1,…,CT>형태의 시퀀스(여기서 C는
품사임)가 주어졌을 때, 하나의 문장
<w1,…,wT>(여기서 w는 실제 단어)가 실
현될 확률을 구하는 공식
∏i = 1,T PROB(Ci | Ci-1) * PROB(wi | Ci)
 확률적으로 최적의 품사열 찾기
 실제 주어진 문장에 가장 유력한 품사열
을 선택하는 작업
 마르코프모델 덕분으로, 모든 가능한 시퀀
스 전체를 반복해서 나타낼 필요가 없음
 즉 다음 단계의 품사는 그 문자열의 선
행 <품사>에만 영향을 받기 때문에, 만
일 동일한 품사를 나타내는 어휘들이
있다면 이들은 함께 처리될 수 있음
 즉 각 단계에서 가장 유력한 경로를 알
고 있다면 그외의 경로(가능한 시퀀스
열)은 무시할 수 있음
한국외국어대학교 언어인지과학과 [email protected]
283
 예: “Flies like a flower” 문장의 가장 유력
한 품사열 찾기
 앞서 어휘생성확률과 bigram 확률값을
이용함
 각 단어에 대하여 각각 4가지 품사가 가
능함(N, V, P, ART)
 따라서 위와 같이 4개의 단어로 구성된
전체 문장의 모든 가능한 품사열 가능
경로는 44=256이 됨
 이 경우 원칙적으로 위의 256개의 경로
를 모두 생성하여 최적의 확률을 찾기
위하여 이들을 모두 각각 비교해야 함
(단, 이때 마르코프모델에 의해, 동일 품
사에 이어지는 시퀀스 경우의 계산은 통
합할 수 있음)
한국외국어대학교 언어인지과학과 [email protected]
284
 11. Viterbi 알고리즘
 위의 256개의 경로를 일일이 계산하는 문제
를 피하기 위한 알고리즘
 각 노드에서 우선 최적의 경로만을 선택함
(예를 들어, 위의 ‘flies like’의 두 개의 단어열
이 나타날 때 가장 최적의 경로를 찾으면 1
개가 선택됨)
 즉 이 경우 우선 ‘flies like’에 대해 최적의 쌍
을 선택함(예를 들어 ’like/V’에 이르는 선행
경로는 4개가 있었으나, 가령 ‘flies/N’이 가
장 높게 나오면 이중 그것만 유지함, 또한
‘like/N’에 이르는 선행경로도 4개 있었으나,
최적의 경로로 ‘flies/ART’가 나오면 그것만
유지, 이런식으로 ‘like’의 4가지 노드의 선행
경로로 각각 1개씩만 유지함)
 ‘flies like a’에 대해 같은 방식으로 진행함
 문장의 끝에 갈 때까지 동일한 방법을 적용
 이 알고리즘이 Viterbi 알고리즘으로서,
 T개의 단어와 N개의 품사가 있을때, 최적
의 경로를 찾기위한 문제난이도= k*T*N2
(k는 상수) 앞서 NT의 난이도보다 훨씬
효율적임
한국외국어대학교 언어인지과학과 [email protected]
285
 Viterbi 알고리즘 적용의 단계별 예
한국외국어대학교 언어인지과학과 [email protected]
286
 Appendix 1
 입력문에 대한 POS 중의성 문제
 문제의 발생
 단어 자체가 중의적인 경우
 사전이나 태그셋 정의에 따라 의존
적이기도 함 (과연 ‘자라는’과 같은
어절은 몇 개의 형태소 태그로 나뉘
어져야 할 것인가? – 참조한 사전이
나 태그셋의 상세분류에 영향을 받
을까?)
 문제의 해결
 위와 같은 통계적 방법의 장단점
 그외의 다른 대안은 없나?
한국외국어대학교 언어인지과학과 [email protected]
287
 NOTE
한국외국어대학교 언어인지과학과 [email protected]
288
X. Formal Grammar &
Language Hierarchy
한국외국어대학교 언어인지과학과 [email protected]
290
 1. 형식화 모델의 수학적 배경
 그래프(Graph)
 G = (V, E)
 V: 유한한 개수의 꼭지점
(vertex)(=노드(node)라고도 함)의
집합
 E: 에지(edge)들의 집합으로서, 에
지는 노드들을 연결하는 경로로
서 이는 2개 노드의 쌍으로 표현
됨
 모든 1≤i≤k 에서 에지(vi, vi+1)이
존재할 때 이들의 연결 시퀀스
(v1,v2,..,vk)를 경로(path)라 함
한국외국어대학교 언어인지과학과 [email protected]
291
 다음 왼쪽 그림에서,
 V={1,2,3,4}, E={(1,2) (2,3) (2,4)}
 <1,2,3>은 경로(path)가 됨
 이때 v1=vk이면 경로는 사이클
(cycle)이 됨
  오른쪽에서 경로<1,2,3,1>은 사
이클이 됨
1
1
2
3
2
4
4
3
한국외국어대학교 언어인지과학과 [email protected]
292
 방향그래프(Directed Graph)
 = 다이그래프(Digraph)
 G = (V, E)
 V: 유한한 개수의 꼭지점(vertex)(=
노드(node)라고도 함)의 집합
 E: 에지(edge)들의 집합으로서, 에지
는 노드들의 순서화된 쌍으로 표현
됨(=아크(arc)로 표현), 노드 v에서
w로 가는 아크를 v→w로 표시함
 모든 i에 대해 vi→vi+1이 아크일 때
노드들의 연결 시퀀스(v1,v2,..,vk)를
경로(path)라 함
1
2
3
한국외국어대학교 언어인지과학과 [email protected]
4
293
 트리(Tree)
 방향있고 순서화된 트리로서, 다음을
만족하는 다이그래프의 특별한 형태
 [1]선행자가 없는 루트(root) 노드
가 존재
 [2] 루트제외 모든 노드는 오직 1
선행자
 [3] 각 노드의 후속자는 왼쪽부터
순서화
 Cf. 트리는 일반적 언어학구조와 동일
형태임
한국외국어대학교 언어인지과학과 [email protected]
294
 집합(Set)
 중복된 원소가 없는 객체(object)들의
모임
 [1] { } 사이에 원소를 나열함으로써
<유한집합>을 표시함
 예: {0,1}은 0과 1의 알파벳으로 이
루어진 집합을 나타냄
 [2] 보다 일반화된 표기
 {x | P(x)}: P(x)가 x에 대한 어떤 문
장일 때 “P(x)가 사실일때의 x의 집
합”을 의미
 {x ∈ A | P(x)}: “P(x)가 사실일때 집
합 A에 있는 x의 집합”을 의미
한국외국어대학교 언어인지과학과 [email protected]
295
 <부분집합(Subset)>
 A라는 집합에 속하는 A의 모든 원
소가 B에 속할 때  A ⊆ B
 <진부분집합(Proper Subset)>
 A의 모든 원소가 B에 포함되고 B
에는 A에 포함되지 않는 원소가
있을 경우
한국외국어대학교 언어인지과학과 [email protected]
296
 2. 형식 언어(Formal Language)
 정의 Definition
 형식언어 L
 주어진 V(Vocabulary)에 기초하여
구성된, 유한한 길이의 심볼들의
연쇄 집합
 V: 알파벳(Alphabet)
 심볼들의 유한한 집합
 심볼은 라틴어 알파벳 소문자로
표기
 일반적으로 형식언어의 단어를 구
성함
한국외국어대학교 언어인지과학과 [email protected]
297
 형식언어의 예 <Language1>
 Language L:
 “V는 하나의 심볼(“a”)로 구성되어
있고, L은 a가 연결(concatenation)
에 의해 형성된, 유한한 길이의 모
든 심볼 연쇄를 포함하는 경우”
 즉 “aaa, aa, a”등이 이 언어에 속함
 이 언어 L={ai | i ≥1}로 표현될 수 있
음 (무한언어의 경우이므로 일일이
나열할 수 없음)
한국외국어대학교 언어인지과학과 [email protected]
298
 유한 언어/ 무한 언어
 유한언어(Finite Language)
 유한한 수의 문장(연쇄)를 가지는
언어
 모든 원소를 집합으로 나열하는 것
이 가능
 무한언어(Infinite Language)
 유한한 수의 문장(연쇄)를 가지는
언어
 변수를 이용한 형식화가 요구됨
 Cf. 자연언어의 경우 (그 알파벳은
유한하나, 생성된 언어는 무한함)
한국외국어대학교 언어인지과학과 [email protected]
299
 형식언어 연구의 중요한 2가지 문제
 Membership problem
 하나의 ‘연쇄’와 ‘언어L’가 주어졌을
때 이때 그 연쇄가 그 언어에 속하는
가를 결정하는 문제
 문법(G)는 그 언어(L)에 속하지 않는
연쇄들을 생성하지 말아야 함. 즉 그
언어에 속하는 연쇄들만을 생성하는
규칙이어야 함
 Language representation
 하나의 언어에 속하는 모든 연쇄들을
표현하는가 하는 문제
 문법(G)는 그 언어(L)에 속하는 모든
연쇄들을 생성할 수 있어야 함. 즉 그
문법으로 생성되지 않는 연쇄들이 존
재하면 안됨
한국외국어대학교 언어인지과학과 [email protected]
300
 형식언어의 예 <Language2>
 “L이라는 언어가 있는데 이것은 a와 b의
연결 작용에 의해 이루어지는 모든 연쇄
를 표현함. 이때 각 연쇄는 모두 두 개의
시퀀스로 이루어지는데 이때 둘째 시퀀
스는 첫 시퀀스의 역구조를 가지고 있다.
이것을 형식적으로 표현하라”
 L={x | x=wwR and w=anbm with n,m ≥1}
 이 언어에 속하는 몇가지 예
 L’={aa, bb, abba, aaabbaaa,
aabbbbaa,...}
 이 언어는 모두 짝수개의 심볼로 구성.
길이가 동일한 두개의 그룹으로 분할 가
능. 동일한 심볼들의 구성으로 단지 순
서만 반대임
한국외국어대학교 언어인지과학과 [email protected]
301
 3. 형식문법(Formal Grammar)
 문법(Grammar)
 유도 규칙(Derivation Rule)들의 유한
한 집합으로 구성된 생성시스템
(Generative System)으로서,
 하나의 언어의 모든 연쇄들을 체계적
인 방법으로 생성해낼 수 있게 함
 오토마타(Automata)
 주어진 한 언어에 대하여 어떤 연쇄가
그 언어에 속하는 것인지 아닌지를 결
정할 수 있게 하는 추상적 메커니즘
 Cf. 형식언어: 형식문법에 의해 정의된
언어  이를 인식하는 오토마타가 존
재함
한국외국어대학교 언어인지과학과 [email protected]
302
 형식문법의 정의
G={N, T, P, S}
N
NonTerminal
문법범주- 중간단계로
이용됨
T
Terminal
어휘,단어 –최종 단계
P Production
Rule
S
Initial
Symbol
다시쓰기 규칙
N의 한 성분으로 문법
의 시작 심볼
한국외국어대학교 언어인지과학과 [email protected]
303
 형식문법의 예 <G1>
 “언어L=a*b를 생성하게 하는 문법
(즉 심볼 a가 0번 이상 반복된 후 b가
단한번 실현되는 연쇄)”을 구성하라
 G= {N, T, P, S}
 N= {S}
 T= {a, b}
 P: 1. S → aS
2. S → b
 L(G) = a*b
한국외국어대학교 언어인지과학과 [email protected]
304
 형식문법의 특징
 수학적 관점에서 볼때 문법은 철저
히 명시적인 규칙들의 집합으로 정
의되는, 하나의 형식적 체계
 이때 규칙들은 기계적인 방법으로
적용되어 일정 심볼연쇄(입력연
쇄:Input)를 다른 심볼연쇄(출력연
쇄:Output)로 바꾸어주는 기능만을
수행함
 이 심볼연쇄들은 특정 알파벳으로
구성된 문자열들에 대응됨
 입력연쇄는 하나의 Initial Symbol(IS)
로 구성되고 출력연쇄는 유한한 수
의 규칙의 적용으로 이 첫 IS로부터
유도됨
 모든 출력연쇄가 터미날성분일 때
문장의 생성이 종료됨
한국외국어대학교 언어인지과학과 [email protected]
305
 4. Language Hierarchy
 언어, 또는 문법의 클라스와 그 복잡도는
생성규칙의 형태를 제한시키는 다음 3가
지 조건에 의해 결정됨
 P속의 모든 생성 α→β에 대하여,
 <조건1>: “|α|≤ |β| 이다.”
 이 조건은 규칙의 오른쪽이 왼쪽보
다 크거나 같기만 하면 되는 조건
(즉 더 작아지면 production이 이루
어질 수 없음)
 <조건2>: “α∈N, β≠ Φ이다.”
 이 조건은 규칙의 왼쪽은 N하나만
이 가능한 반면, 오른쪽은 제로가
아닌 연쇄가 되면 되는 조건
한국외국어대학교 언어인지과학과 [email protected]
306
 <조건3>: “β=a 또는 β=aB 이다.”
(a는 T에 속하고 B는 N에 속함)
 이 조건은 위처럼 규칙의 왼쪽은 N
하나만이 가능한 반면,
 규칙의 오른쪽이 유일한 T심볼 하나
로 구성되거나 T에 N이 하나 결합
한 형태를 가질 수 있는 조건임
한국외국어대학교 언어인지과학과 [email protected]
307
 Chomsky Hierarchy
 위의 3가지 조건을 기초로 하여 문법의
유형을 4가지로 나눔
 Type 0 문법
(무제한 문법: Unrestricted Grammar)
  위의 3조건의 어느 하나도 충족
시키지 않는 규칙을 하나 이상 가짐
한국외국어대학교 언어인지과학과 [email protected]
308
 Type 1 문법
(문맥의존문법:Context-Sensitive
Grammar)
  모든 규칙들이 위의 <조건 1>을
만족시킴
 Type 2 문법
(문맥자유문법: Context-Free G)
 모든 규칙들이 위의 <조건 2>를 만
족시킴
 Type 3 문법
(정규문법: Regular G)
  모든 규칙들이 위의 <조건 3>을
만족시킴
한국외국어대학교 언어인지과학과 [email protected]
309
 Cf. 촘스키의 4가지 형식문법 분류
(Chomsky Hierarchy)




Type
[1]
[2]
[3]
[4]
Type
Type
Type
Type
0:
1:
2:
3:
Grammar
Type0 Unrestricted
무제한문법
문맥의존문법
문맥자유문법
정규문법
Language
Automata
Unrestricted L Turing Machine
Type1 Context-Sensitive CSL
Linear Bounded A
Type2 Context-Free
CFL
Pushdown A
Type3 Regular
Regular L
Finite Automata
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 이 언어들간의 포함 관계
Type3
Type2
Type1
Type0
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 생성능력(Generative Capacity)
 각 문법이 기술할 수 있는 언어의 범위
 [1] 정규문법(Regular Grammar)
 예: abd, ad, bcd, b, abcd가 올바른 문
장일때(즉 유한언어의 예), 이 언어 L1
를 기술하기 위해서 다음과 같이 오른
쪽에 1개의 <단말부호T>가 오고, 그
뒤에 1개의 <비단말부호N>가 뒤따를
수 있는 규칙들로 구성된 문법을 구축
하면 이 문법의 형태는 정규문법으로
불림
 L1를 위한 문법
S→a S1
S→ d
S→b S2 S1→b S2
S→c S3
S1→c S3
S1→d
S3→d
S2→c S3
S2→d
한국외국어대학교 언어인지과학과 [email protected]
312
 [2] 문맥자유문법(Context-Free Grammar)
 예: ab, aabb, aaabbb, …처럼 일정 수
의 a가 오고, 그 뒤에 동일 숫자의 b가
뒤따르는 언어 L2(즉 무한언어의 예)가
있을때, 위의 L2문법을 생성할 수 있는
정규문법은 가능하지 않다(수학적으로
증명된 결론).
 따라서 다음과 같은 CFG 문법을 구축
해야 함
 (단 횟수가 제한되는 경우에는, 매우
복잡한 형태가 될 것이기는 하나 정규
문법으로 가능해짐)
 L2를 위한 문법
S→ ab
S→aSb
한국외국어대학교 언어인지과학과 [email protected]
313
 [3] 문맥의존문법(Context-sensitive
grammar)
 예: abc, aabbcc, aaabbbccc,…처럼 동
일 수의 a, b, c가 뒤따르는 언어나
abab, abcabc, acdabacdab,…처럼 일정
수의 letter가 동일한 순서로 2번 반복
되는 언어의 경우 CFG, RG 형태로 문
법을 구성할 수 없다.
 이를 가능하게 하는 문법의 중요한 클
라스가 문맥의존문법임.
 CSG 문법
αΑβ→ αΨβ
 위에서 Α는 하나의 심볼이고, α, β 는
일련의 심볼 연쇄(비워질수 있음), Ψ는
비어있지 않은 일련의 심볼 연쇄를 의
미함
한국외국어대학교 언어인지과학과 [email protected]
314
 [4] Type 0 문법
 위보다 더 일반적이고 모든 인위적
인 다시쓰기규칙 형태들이 가능함
한국외국어대학교 언어인지과학과 [email protected]
315
 [Type 3] 정규언어(Regular Grammar)의 예
 정규언어(Type 3) (우측선형문법의 예)
S → aS
B → bC
C→a
S → aB
C → aC
 L(G) = anbam n, m >0
 연습: {abaa} 연쇄를 유도하는 트리
구조
 “S ⇒ aB ⇒ abC ⇒ abaC ⇒abaa”
한국외국어대학교 언어인지과학과 [email protected]
316
 [Type2] 문맥자유언어(CFG)의 예
 문맥자유언어 CFG (Type 2)의 예
 S → aSb
 S → ab
 L(G) = anbn n≥1
 연습: L={aaabbb}의 유도과정 찾기
한국외국어대학교 언어인지과학과 [email protected]
317
XI. PS-Rules &
Transition Network
Model
한국외국어대학교 언어인지과학과 [email protected]
319
 1. Syntactic Structure of Natural
Language Sentence
 문장은 단어들의 일차원적 나열로 표기되
지만 실질적으로는 어떤 의미 있는 문법
적 구조를 내포하고 있음
 문법적 구조(Syntactic Structure)
 문장을 이루는 부분들의 수식과 결합
관계를 계층적으로 해석하는 트리 구
조(tree structure)로 표현
 트리 구조는 문장의 구문 구조를 표현
하기 위해 설계된 도구
 파싱(parsing)
 단어들의 선형적 나열인 문장으로부터
그와 같은 문장의 문법적 구조를 복원
하는 처리 과정
 문법 규칙 및 여러 종류의 우선 규칙에
의해 입력 문장을 분석하여 문법적 구
조를 구하는 과정
한국외국어대학교 언어인지과학과 [email protected]
320
 문장 통사구조의 컴퓨터처리를 위한 2가지
 [1] 문법(Grammar)
 언어의 가능한 문장 구조들에 대한 명
시적인 형식화
 [2] 파싱 알고리즘(Parsing algorithm)
 문법에 따라 문장 구조를 결정하기 위
해 문장을 처리하는 방법론
 문법과 문장 구조
 문장의 예: “John ate the cat”
 위의 문장에 적용된 간단한 문법 예
1. S → NP VP
5. NAME → John
2. VP → V NP
6. V → ate
3. NP → NAME
7. ART → the
4. NP → ART N
8. N → cat
한국외국어대학교 언어인지과학과 [email protected]
321
 [1] 트리(tree) 방식
 하나의 문장이 어떠한 성분들로 구성되
어 있는지, 또한 그 성분들은 다시 어떻
게 나뉘어져야 하는지를 표상하기 위한
일반적인 방법
S
NP
VP
NAME
John
NP
V
ate
ART
N
the
cat
 [2] 리스트(list) 방식 표상
 위의 트리와 동일한 정보를 리스트방
식으로 표현한 것
(S (NP (NAME John) )
(VP (V ate)
(NP (ART the)
(N cat) ) ) )
한국외국어대학교 언어인지과학과 [email protected]
322
 트리(Tree)
 노드(node, labeled node) : S, NP 등과
같이 표지가 붙은 마디
 Root : 맨꼭대기의 노드
 Leaves : 그 아래의 모든 노드들
 Parent / Child: 연결되어 있는 윗노
드와 아랫노드 (S는 NP와 VP의
parent이며, NP는 NAME의 parent)
 Ancestor (그위의 모든 조상)
 Dominated (ancestor에 의해 지배됨)
 링크(links) : 위의 노드들을 연결
한국외국어대학교 언어인지과학과 [email protected]
323
 문법(Grammar)
 다시쓰기규칙(Rewrite rules)
 각 규칙은 예를 들어 S가 NP와 VP로
구성될 수 있고, VP는 V와 NP로 구성
될 수 있음 등을 나타냄
 Mother: 각 규칙의 왼쪽에 있는 단일
심볼
 문맥자유문법: CFGs(Context-Free
Grammars) 형태로 구성
한국외국어대학교 언어인지과학과 [email protected]
324
 2. 유도(derivation)의 개념
 하나의 형식문법은 다음과 같은 방법으
로 문장들을 생성하거나 유도함
 문장의 첫 심볼(S)로부터 일련의 생성
규칙들을 적용해서 더이상 Nonterminal 심볼들이 나타나지 않을 때
까지 적용을 계속함
 유도의 <한 단계>
 문장 생성 과정에서 <하나의 생성 규
칙>을 적용한 것
 더블 화살표로 표시함 (⇒)
한국외국어대학교 언어인지과학과 [email protected]
325
 유도 트리(Derivation Tree)
 문법의 심볼들을 나무의 마디로 표현
하고 생성 관계들을 일종의 지배관계
처럼 표현
 예: 문법 G가 다음의 생성 관계 규칙
을 가질때
 S → NP VP
 NP → Det N
 VP → V NP
 다음 (1)의 유도과정은 (2)와 같은 트
리구조를 결정해줌
 (1) S⇒NP VP ⇒ Det N VP ⇒ Det
N V NP ⇒ Det N V Det N
 (2) <트리구조 그려보기>
한국외국어대학교 언어인지과학과 [email protected]
326
 3. 중의성(ambiguity)의 개념
 자연언어 구조의 중의성(ambiguity)
 만일 어떤 문법에 의해 생성된 언어가
하나 이상의 (좌측우선)유도를 허용하
는 문장을 포함하게 되면 이 문법은
중의적이라 함
 문법 규칙에 따라 문장의 구조를 해석
할 때 두 가지 이상의 다른 의미의 구
조로 해석될 수 있는 성질
 예: “John saw Mary in the park”를 주
어진 문법 규칙에 따라 파싱할 때 
2가지 트리 구조가 가능함  2가지
방식의 문법 적용 순서 때문
 Cf. PP-Attachment Problem
 예: “John saw Mary in the park with
a telescope”
  4가지 트리 구조로 해석될 수 있음
한국외국어대학교 언어인지과학과 [email protected]
327
 중의성의 다른 예
 2가지 다른 문법 규칙이 적용될 뿐 아
니라, 단어의 품사에 대하여 2가지 이
상의 정의가 가능한 경우
 예: “Time flies like an arrow”
 이 경우도 문법규칙을 적용할 때 2
가지 트리구조가 생성됨
 그러나 이것은 앞서의 예(John saw
Mary in the park)와는 달리, 인간에
게는 중의성이 없는 예이다.
한국외국어대학교 언어인지과학과 [email protected]
328
 중의적 문법의 예 <G1>






1.
2.
3.
4.
5.
6.
S → NP VP
NP → Det N
NP → Det N PP
PP → P NP
VP → V NP
VP → V NP PP
한국외국어대학교 언어인지과학과 [email protected]
329
 위의 문법은 다음 문장에 대하여 두 개의
(좌측우선)유도를 허용함
 <문장> Det N V Det N P Det N
 [첫째 유도]
S ⇒NP VP
⇒Det N VP
⇒Det N V NP
⇒Det N V Det N PP
⇒Det N V Det N P NP
⇒ Det N V Det N P Det N
 [둘째 유도]
S ⇒ NP VP
⇒ Det N VP
⇒ Det N V NP PP
⇒ Det N V Det N PP
⇒ Det N V Det N P NP
⇒ Det N V Det N P Det N
한국외국어대학교 언어인지과학과 [email protected]
330
 위의 각 2가지 유도 방식은 각 규칙이 어
떤 순서로 적용된 결과인지 그 규칙의
번호를 적어보기
 위의 각 유도에 대응되는 트리 구조를
그려보기
한국외국어대학교 언어인지과학과 [email protected]
331
 다음 두 문장에 대한 올바른 유도 트리
그려보기
 [1] The man saw the girl with a
black hat
 [2] The man saw the girl with a
telescope
한국외국어대학교 언어인지과학과 [email protected]
332
 4. 유한상태오토마타 (Finite-State
Automata: FSA)
 형식적으로 다음과 같이 정의됨
FSA = {Q, V, T, q0, F}
Q
Finite Set of
States
상태들의 유한 집합
V
Vocabulary
(∑ : Input
alphabet)
언어의 어휘
(입력알파벳이라는 유한
개의 심볼집합)
T
Transition
Function
전이함수
q0
Initial State
Q에 속하는 초기상태
F
Final States
Q에 속하는 최종상태(들)
 위와 같이 정의된 유한상태오토마타는 결
정적 유한오토마타(Deterministic Finite
Automata: DFA)라고도 불림
한국외국어대학교 언어인지과학과 [email protected]
333
 전이 집합을 표현하는 방법
 전이테이블의 이용
q0
q1
a
q1
0
b
0
q0
 만일 초기 상태에 있는 오토마타가
한 문장의 첫 단어에서 끝 단어에 이
르기까지 차례로 이동해서 최종 단계
에 이르게 하는 일련의 ‘전이’가 존재
한다면 이 문장은 이 오토마타에 의
해 ‘인식된다(recognized)’. 그렇지 못
한 경우 ‘기각된다(rejected)’
 한 오토마타에 의해 인식된 문장들의
집합이 바로 이 오토마타에 의해 인
식된 <언어>를 정의하게 됨
한국외국어대학교 언어인지과학과 [email protected]
334
 오토마타와 언어, 문법의 관계
 오토마타(Automata)
 언어(Language)
 문법(Grammar)
언어
문법
오토마타
한국외국어대학교 언어인지과학과 [email protected]
335
 오토마타(Automata)
 컴퓨터의 수학적 모델인
<Automaton>의 복수형으로, <자
동기계장치>라는 뜻을 가짐
 입력장치, 출력장치, 저장장치, 제
어장치 등을 가짐
  현대적 컴퓨터가 작동하는 이론
적 메커니즘임
 출력여부에 따라 <인식기
(Accepter)>와 <트랜스듀서
(Transducer)>로 나뉨
한국외국어대학교 언어인지과학과 [email protected]
336
 오토마타의 응용
 예: 파스칼언어의 변수 정의
 파스칼언어에서 모든 변수의 집합은
하나의 언어이다.
 각 변수는 하나의 문자(letter)로 시작
되어야 하며,
 문자 다음에는 임의 개수의 문자나
숫자(digit)가 혼용하여 사용될 수 있
다.
 이 언어(즉 변수)를 정의하는 문법은
구성하라
한국외국어대학교 언어인지과학과 [email protected]
337
 문법의 예(CFG문법 형태로 구성됨)
<id>
→ <letter> <rest>
<rest>
→
<letter> →
<letter> <rest> |
<digit> <rest> |
λ
a|b|…|
<digit> →
0|1|…|9
 위와 동등한 오토마타 (인식기)
letter
1
2
digit
3
Letter or digit
Letter or digit
한국외국어대학교 언어인지과학과 [email protected]
338
 유한상태시스템의 예
 AI(인공지능) 문제
 게임(Game) 프로그램 등에 활용
 예: 뱃사공 문제
 어떤 사람이 늑대, 염소, 양배추와 함
께 강의 왼쪽 기슭에 있다.
 사람은 한번에 늑대와 염소, 양배추
중 하나만 선택하여 왼쪽과 오른쪽을
왕복할 수 있다.
 물론 사람 혼자 건널 수 있다.
 늑대와 염소를 한쪽에 남겨두면 늑대
가 염소를 먹어버리고, 염소와 양배
추만 남기면 염소가 양배추를 먹어버
린다.
 어떻게 이런일 없이 모두 무사히 강
을 건너갈 수 있을까?
 유사문제(Cf. AI: ‘선교사와 식인종’ 문제)
한국외국어대학교 언어인지과학과 [email protected]
339
 유한상태시스템의 응용
 사람(M), 늑대(W), 염소(G), 양배추(C)
 시작상태(MWGC-Ø)
 최종상태(Ø-MWGC)
 전이의 예: <Start> <MWGC-Ø>
MWGC-Ø
g
WC-MG
한국외국어대학교 언어인지과학과 [email protected]
m
340
 정규표현(Regular Expression)
 정규언어, 유한상태오토마타, 정규표
현의 상관성
 어느 언어가 정규언어인지는 그것을
인식하는 유한 오토마타(FSA)가 존재
하느냐에 달려있음
 FSA에 의해 인식되는 언어는 정규표
현으로 나타내는 것이 가능함
 즉 정규언어는 형식문법의 방식을 빌
리지 않고도 다음과 같은 정규표현들
을 통해 기술될 수 있음
한국외국어대학교 언어인지과학과 [email protected]
341
 정규표현의 연산자
∑
()
알파벳(a, b,...)
괄호
+
·
*
합(union)
연결(concatenation)
스타-클로우저(star-closure)
[예] (a+b)*=({a}∪{b})*={λ, a, b, aa, bb,…}
을 나타냄
 정규표현으로 나타난 언어 L(a* ·(a+b))를
집합으로 나타내면 다음과 같음
 L(a* ·(a+b)) = L(a*) L(a+b)
= (L(a))* (L(a)∪L(b))
= {λ, a, aa, aaa,…} {a, b}
= {a, aa, aaa,..,b, ab, aab,..}
한국외국어대학교 언어인지과학과 [email protected]
342
 Cf. 파스칼언어의 변수 표현:
 Letter(letter | digit)*
 (즉 문자로 시작하고 0 또는 1개 이상
의 문자나 숫자들로 이루어지는 언어
로 앞서 오토마타로 기술한 것과 동
일한 의미를 가짐)
 위에서, letter는 대소문자 알파벳이
고, digit은 0에서 9까지 수임
 = [A-Z, a-z][A-Z, a-z, 0-9]* (위의 정
규표현을 자세히 표현하면)
 Cf. <공리> “만일 r이 정규표현이라면,
L(r)은 정규언어가 된다” 즉 “이를 받
아들이는 오토마타가 존재한다”
한국외국어대학교 언어인지과학과 [email protected]
343
 유한상태 트랜스듀서 (Finite-State
Transducer: FST)
 앞서 유한상태기계와 동일하나, 단 각
입력상태에 대해 출력상태(output)를
가질 수 있는 점에서 차이
 즉 FST의 각 아크는 한 쌍의 심볼로
레이블됨
 예: “i:y”로 레이블되어있는 아크는 현
입력이 i이고 출력이 y가 되는 경우에
만 전이가 이루어짐
 예: 사전의 표면형을 형태소들의 결합
형태로 변환시켜서 사전을 효과적으
로 표상하게 함
한국외국어대학교 언어인지과학과 [email protected]
344
 ‘Happy’의 파생형을 위한 FST
한국외국어대학교 언어인지과학과 [email protected]
345
 명사 단어의 단수/복수형을 정의하기 위한
FST(부분)
 이러한 FST를 이용하면 입력문장들이
모두 위와 같이 형태소분석열로 변환되
어, 여기서 나타난 <기본형>들을 중심
으로 사전 검색을 하여 분석(처리)이 가
능하게 됨
한국외국어대학교 언어인지과학과 [email protected]
346
 5. 전이망(Transition Network)
 전이망(TN)
 유한오토마타를 전이 테이블이 아닌
다른 방법으로 표현하는 형태
 오토마타의 움직임을 그래프 그림
(graph)으로 표현함
 문맥자유 다시쓰기 규칙(Context-free
rewrite rules)과 다른 formalism
 구축 방법
 상태q는 원으로 표현됨
 전이T는 두 개의 원을 연결하며 그 언
어의 한 단어에 대응되는 레이블
(label)을 가진 방향성 곡선으로 표현
함
 작은 화살표는 초기상태q0의 시작을,
이중원(double circle)은 최종상태F를
표현함
한국외국어대학교 언어인지과학과 [email protected]
347
 전이망의 해석
 노드(Nodes)
 시작상태(Initial state, Start state)
 레이블 아크(Labed arcs)
 예: <NP> 전이망
 초기상태가 <NP>로 설정되고, 각
레이블아크에는 단어품사가 붙음
 다음 페이지의 <NP> 전이망은 초
기 상태에서 출발하여, 만일 현재
입력된 단어가 아크의 품사에 해당
하면 아크를 통과(전이)할 수 있음
을 의미
 주어진 구가, NP노드에서 출발하여
<pop>레이블이 있는 아크에 도달
할때 올바른 NP로 인정하는 문법
한국외국어대학교 언어인지과학과 [email protected]
348
 NP 전이망
 위의 전이망은 다음의 CFG와 동일한 문
장 셋을 인식하게 함
NP → ART NP1
NP1 → ADJ NP1
NP1 → N
 예: “a purple cow”는 위의 전이망으로
인식이 됨  <legal NP>
한국외국어대학교 언어인지과학과 [email protected]
349
 Simple Transition Network (TN)
 유한상태기계(Finite-state machines
(FSMs))로 불림
 앞서 정규문법(Regular Grammar)과
동일한 생성력/표현력을 가짐
 CFG와 같은 생성력을 가지기 위해서
는  <재귀성(recursion)>의 개념이
필요해짐  순환(재귀) 전이망
한국외국어대학교 언어인지과학과 [email protected]
350
 Recursive Transition Network
(RTN: 순환 전이망, 재귀 전이망)
 레이블아크가 다른 전이망을 호출하게함
 전체 문법을 여러 개의 독립된 전이망,
즉 여러 개의 그래프의 집합으로 정의
하며, 각 전이망은 자신의 고유 이름을
가짐.
 일반 전이망(TN) 문법은 복잡한 자연언어
문법을 표현하기에는 표현력이 부족함
 특히 자연언어의 중요한 특징인 순환성,
재귀성(recursion)을 표현하기 어려움
 재귀성이란 어떤 대상을 정의하기 위해
그 대상 자체가 다시 이용되는 성질로 문
법 규칙의 오른쪽에 왼쪽의 문법 기호가
다시 나타나는 것을 의미
한국외국어대학교 언어인지과학과 [email protected]
351
 예: S 전이망 (재귀전이망의 예)
 예: “The purple cow ate the grass”
위 전이망을 따라 올바른 문장으로 인
식됨
한국외국어대학교 언어인지과학과 [email protected]
352
 RTN에서 사용되는 아크들의 유형
아크타입
예
사용법
현 단어가 단어의 품사를
품사(CAT) noun
나타낼 때 성공
단어(WRD) of
호출
(PUSH)
현 단어가 레이블과
일치하는 어휘일때 성공
이 명칭 전이망을 올바로
NP
통과하고 올때 성공
분기
jump
(JUMP)
아무 조건없이 항상
전이를 할 수 있음
복귀(POP) pop
전이망의 성공적인
종료를 의미함
한국외국어대학교 언어인지과학과 [email protected]
353
 RTN 전이망 문법의 다른 예
한국외국어대학교 언어인지과학과 [email protected]
354
 Cf. 비결정성과 백트래킹
 백트래킹(backtracking)
 두 개 이상의 아크 중에서 하나의 아
크를 따라 파싱을 진행하다가 더 이
상 진행할 수 없는 상태가 되면 진행
한 과정을 되돌아가 선택하지 않았던
다른 경로를 다시 시도하는 것
 비결정성(nondeterministic) – 백트래킹
의 원인
한국외국어대학교 언어인지과학과 [email protected]
355
6. 자질구조와 부가문법(Feature
systems and Augmented
Grammars)
 일치 제약(Agreement restriction)
 영어의 경우
 주어-동사 일치
 대명사의 성 일치
 구 헤드와 그 보어형태 사이의 제
약등
한국외국어대학교 언어인지과학과 [email protected]
356
 문법에서 그 구성성분들에 <자질(feature)>
값을 추가하게 하는 방식
 예: <수(NUMBER)>의 Feature은
s(singular)와 p(plural)의 두 값(value)을
가짐
 부가 CFG (Augmented CFG)
NP → ART N
only when NUMBER1
agrees with NUMBER2
 위와 동일한 의미의 단순 CFG
NP-SING → ART-SING N-SING
NP-PLURAL → ART-PLURAL N-PLURAL
 그러나 이 경우 문법의 사이즈가 2배로
늘어남, 반면 부가CFG는 문법의 크기를
늘리지 않음
한국외국어대학교 언어인지과학과 [email protected]
357
 일치 제약의 예
 가능한 문장
The man cries
The men cry
The man saw the dogs
He wants the dog
He wants to be happy
He wants the man to see the dog
He is happy to be a dog
 불가능한 문장
*The men cries
*The man cry
*The man saw to be happy
*He wants
*He wants the man saw the dog
한국외국어대학교 언어인지과학과 [email protected]
358
 자질구조(Feature Structure)
 주어진 문장성분의 의미있는 특징들을 정
의하기 위해 자질과 그 값을 할당한 구조
 단어 “a”의 경우를 보이는 ART1 자질구조
ART1:
(CAT ART
ROOT a
NUMBER s)
 위 구조의 간략한 형식
ART1:
(ART ROOT a NUMBER s)
한국외국어대학교 언어인지과학과 [email protected]
359
 NP와 같이 더 큰 단위에 대한 자질구조
(예: “a fish”)
NP1:
(NP NUMBER s
1(ART ROOT a
NUMBER s)
2(N ROOT fish
NUMBER s))
 Noun Phrase를 위한 일반 규칙
(NP NUMBER ?n)→(ART NUMBER ?n) (N NUMBER ?n)
한국외국어대학교 언어인지과학과 [email protected]
360
 부가전이망 (Augmented Transition
Networks)
 전이망에 자질구조가 삽입된 형태
 여기서는 자질(feature)이 레지스터
(Registers)로 불림
 DET := * (현 문장성분을 DET 레지
스터에 할당)
 AGR := AGR* (네트워크의 AGR 레
지스터를 새로운 단어의 SGR레지스
터의 값에 할당함)
 Action (위처럼 할당하는 작업)
 Test (일치 현상을 체크하는 작업) 일
정 값이 나오면 성공, nil값이 나오면
실패  실패하면 전이를 하지 못함
한국외국어대학교 언어인지과학과 [email protected]
361
Arc Test
Actions
1
None
DET := * / AGR:= AGR*
2
HEAD:= * /
AGR∩AGR*
AGR:=AGR∩AGR*
3
none
NAME:= * / AGR:= AGR*
한국외국어대학교 언어인지과학과 [email protected]
362
 형식문법과 전이망문법의 대응 관계
 <예1> 정규언어
 L={anbm | n ≠m}
(즉 {abb, aaab, aabbb, ...}과 같음)
 CFG 방식으로 기술하기
 n>m인 경우
S → AS1
S1 → aS1b | λ
A → aA | a
 n<m인 경우
S → S1B
S1 → aS1b | λ
B → bB | b
한국외국어대학교 언어인지과학과 [email protected]
363
 TN 방식으로 기술하기
 Non-deterministic TN (비결정적 전이망)
a
b
q1
q0
F
a
b
 Deterministic TN (결정적 전이망)
a
q0
b
q1
F
a
한국외국어대학교 언어인지과학과 [email protected]
b
364
 <예2> 문맥자유언어
 L(G) = anbn n≥1
(즉 {ab, aabb, aaabbb,...} )
 CFG 방식으로 기술하기
 S → aSb
 S → ab
 TN 방식으로 기술하기
a
S:
q0
b
S
q1
q2
F
b
한국외국어대학교 언어인지과학과 [email protected]
365
 <예3> 자연어 문장에 대한 예
 CFG 방식으로 기술된 문법
 S → NP V | NP V NP
 NP → Det N | Det Adj N | N
 Cf. 대응되는 자연어 문장의 예는?
 TN 방식으로 기술하기
한국외국어대학교 언어인지과학과 [email protected]
366
 예: 언어 L=a(ba)* 의 전이망 그림
a
q0
b
F
 예: {a, aba, ababa, abababa,...}
 한 문장을 TN에 의해 인식하는 것은
한 단계씩 이루어짐
 일련의 전이를 통해 최종 상태에 이르
게 되면 그 문장은 인식되며, 다 읽은
후 최종 상태에 놓이지 못하게 되면 그
문장은 기각됨
 또는 중간 상태에서 더 이상 진전할 수
있는 전이를 만나지 못해 중단되는 경
우에도 그 문장은 기각됨
한국외국어대학교 언어인지과학과 [email protected]
367
 예: ∑={a, b}일 때,
ab로 시작하는 모든 스트링을 인식하는
FSA를 디자인하기
a
q0
b
q1
q2
a
b
a,b
q3
a,b
 예: {ab, aba, abb, abbbb,...}
 Cf. 짝수개의 b를 가지는 ∑={a, b} 상의
모든 스트링을 인식하는 FSA를 디자인하기
한국외국어대학교 언어인지과학과 [email protected]
368
XII. Syntactic Analysis:
Parsing
한국외국어대학교 언어인지과학과 [email protected]
370
 1. 영어의 기본 문법적 특성
 Words
 Morphology
 Inflectional
 Root/Suffix (e.g. sigh-s, sigh-ing)
 Derivational
 (e.g. friend-ly, friend-li-ness)
 Categories
 Nouns, Adjectives, Verbs, Adverbs
 Open class words
 Articles, Pronouns, Prepositions,
particles, quantifiers, conjunctions,
etc  Closed class words
 Open class words : to form the basis
of a phrase
 Head (of the phrase) : “dog”
 The dog, the mangy dog, the
mangy dog at the pound
한국외국어대학교 언어인지과학과 [email protected]
371
 Noun Phrases
 The president of the company
 His desire to suceed
 Adjective Phrases
 Easy to assemble
 Happy that he’d won the prize
 Verb Phrases
 Looked up the chimney
 Believed that the world was flat
 Adverbial Phrases
 Rapidly like a bat
 Inside the house
 The elements of Simple Noun Phrases(NP)
 Refer to things: objects, places, concepts,
events, qualities, etc..
 [1] Single pronoun (he, she, it, me..)
 [2] Name, Proper noun (John, Rochester)
 [3] Common Noun
 Count noun (book/books)
 Mass noun (some water/*waters)
한국외국어대학교 언어인지과학과 [email protected]
372
 [4] Specifiers
 Ordinals (first, second)
 Cardinals (one, two)
 Determiners
 Articles (the, a)
 Demonstratives (this, that)
 Possessives (‘s: John’s, her, my)
 Wh-determiners (which, what)
 Quantifying determiners (some,
every, most, no, any, half, both)
 [5] Qualifiers
 Adjectives (angry)
 Noun modifiers (the cook book)
 [6] Inflection of Nouns
 Person
 Gender
 Number
 Case
한국외국어대학교 언어인지과학과 [email protected]
373
 Verb Phrases & Simple Sentences
 [1] Mood
 Declarative(or Assertion)
 Yes/No Question
 Wh-Question
 Imperative(or Command)
 [2] Verb class
 Auxiliary verbs (be, do, have)
 Modal verbs (will, can, could)
 Main verbs (eat, believe)
 [3] Tense System
 Simple present
 Simple past
 Simple future (will+Inf)
 Present perfect (have+PP)
 Future perfect (will+have+PP)
 Past perfect(Pluperfect)(had+PP)
한국외국어대학교 언어인지과학과 [email protected]
374
 [4] Transitivity and Passives
 Main verb
 Intransitive
 Transitive
 Passive form
 With 2 Objects
 Direct Object
 Indirect Object
 [5] Particles
 Look over, look up, look out
 [6] Clausal Complements
 S[that]: (Sam knows) that Jack ate the
pizza
 VP[inf]: (Jack wishes) to eat the pizza
 S[WH]: (Sam knows) whether we went
to the party
 [7] Prepositional Phrase Complements(PP)
 (Jack put the book) in the box
한국외국어대학교 언어인지과학과 [email protected]
375
 Adjective Phrases(ADJPs)
 E.g. Jack was pleased with the prize
 E.g. Jack was angry at the committee
 Adverbial Phrases
 very, rather, too
 Every day
 For three hours
 Until the moon turns blue
한국외국어대학교 언어인지과학과 [email protected]
376
 2. 한국어의 기본 문법적 특성
 형태적 특징과 관련 용어
 형태론
 굴곡 형태론
 파생 형태론
 형태소, 이형태
 어근, 어간, 접사, 어미, 어기
 단어의 구성
 단순어
 복합어
 파생어
 합성어
 형태소 & 단어
 어절
 품사(Part-Of-Speech)
 학교문법의 9품사
 문법범주, 어휘범주
 단어의 분류 & 형태소의 분류
 태그셋(Tagset)
한국외국어대학교 언어인지과학과 [email protected]
377
 형태적 특징
 <조사 결합 유형>
 명사 뒤에 조사가 결합(선생님-이)
 일부 부사에는 조사가 결합할 수 있음
(빨리-도, 빨리-들-은)
 여러 개의 조사가 들러붙음 (그-에게만-은)
 소위 ‘서술격조사’라는 조사와 어미의
중간적 형태가 존재함 그 뒤에 다시
활용어미가 결합함 (학생-을/학생-이
다:학생-이-었-지만)
 <어미 결합 유형>
 동사 뒤에는 어미가 결합(떠나-ㅂ니다)
 형용사도 동사처럼 활용(작-아요)
 시제, 존칭, 서법 등의 어미(영어의 조
동사 부류 포함)들이 일정 순서와 제
약 관계를 가지고 모두 들러붙음(떠나
-시-었-겠-지만)
 각 동사/형용사의 활용형의 수가 폭발
적으로 증가함
한국외국어대학교 언어인지과학과 [email protected]
378
 한국어 품사 유형
 주요품사(Open class)
 명사
 동사
 형용사
 부사
 그외의 품사 범주(Closed class)
 한국어 문장 구성의 특징
 주어+목적어+동사의 어순
 어순이 자유로움
 주어 등의 생략이 자유로움
 띄어쓰기가 비교적 자유로움
 수량사+의존명사 유형의 발달
 성(gender)의 표지가 없음
 수(number)의 표지가 강제적이지 않음
 존칭(honorification)의 표지가 발달
 복합조사, 복합어미의 발달
 NN유형의 복합명사, 명사구가 풍부함
한국외국어대학교 언어인지과학과 [email protected]
379
 3. 문법(Grammar) & 유도(Derivation)
 문맥자유문법(CFG)
 대부분의 자연언어 문장 구조를 표현할
수 있을 만큼 충분히 powerful 하며 동
시에 효율적인 파서를 개발하는 것이
가능할 만큼 충분히 제약적임
 Terminal Symbols (John, ate)
 Non-terminal Symboles (NP, VP)
 Lexical symboles (N, V  구가 아닌
각 단어의 품사를 표현하는 심볼)
 Derive (유도하기)
 첫 시작 심볼을 온전한 문장으로 다
시 쓸 수 있도록 해주는 일련의 규칙
이 존재할 때 <그 문법이 그 문장을
유도한다>라고 말함
한국외국어대학교 언어인지과학과 [email protected]
380
 Derivation과 관련된 2가지 주요 프로세스
 [1] 생성: <문장 생성(Sentence
Generation)>
 유도를 이용해서 올바른 문장을 생성
해 내는 것
  간단한 생성기는 S 심볼에서 시작
해서 랜덤으로 일정 규칙들을 선택 적
용하여 실제 문장을 생성함
  즉 위의 규칙들을 임의로 적용하여
“John ate the cat”이라는 문장을 생성
함
한국외국어대학교 언어인지과학과 [email protected]
381
 [2] 분석 : <파싱(Parsing)>
 문법을 이용해서 주어진 문장의 구조를
검색하는 작업
  이러한 검색에서 2가지 기본 방법이
존재
 {1} 하향식(Top-down strategy)
 S 심볼에서 시작하여 이를 다시 쓸
수 있는 여러 방법들을 찾아봄으로
써 궁극적으로 입력된 문장이 유도
되기까지의 경로를 찾거나 아닌 경
우는 가능한 모든 경로를 시도해 보
는 방법.
 다음은 “John ate the cat”이 발견될
수 있는 유도 과정을 보임으로써 이
문장이 올바른 것임(legal sentence)
을 보임
한국외국어대학교 언어인지과학과 [email protected]
382
 하향식 유도과정의 예
S
⇒ NP VP
(Rewriting S)
⇒ NAME VP
(Rewriting NP)
⇒ John VP
(Rewriting NAME)
⇒ John V NP
(Rewriting VP)
⇒ John ate NP
(Rewriting V)
⇒ John ate ART N
(Rewriting NP)
⇒ John ate the N
(Rewriting ART)
⇒ John ate the cat
(Rewriting N)
한국외국어대학교 언어인지과학과 [email protected]
383
 {2} 상향식(Bottom-up strategy)
 이것은 실제 입력문장의 단어들에서
출발하여 다시쓰기규칙을 거꾸로 적
용하여 최종적으로 S에 이르도록 그
심볼의 수를 줄여나가는 방식.
 다음은 위의 문장에 대한 상향식 파싱
방법을 보임.
⇒ NAME ate the cat (Rewriting John)
⇒ NAME V the cat
(Rewriting ate)
⇒ NAME V ART cat
(Rewriting the)
⇒ NAME V ART N
(Rewriting cat)
⇒ NP V ART N
(Rewriting NAME)
⇒ NP V NP
(Rewriting ART N)
⇒ NP VP
(Rewriting V NP)
⇒S
(Rewriting NP VP)
한국외국어대학교 언어인지과학과 [email protected]
384
 자연언어 구조의 중의성
 중의성(ambiguity)
 문법 규칙에 따라 문장의 구조를 해석
할 때 두 가지 이상의 다른 의미의 구
조로 해석될 수 있는 성질
 예: “John saw Mary in the park”를 주
어진 문법 규칙에 따라 파싱할 때
  2가지 트리 구조가 가능함
  2가지 방식의 문법 적용 순서 때
문
 Cf. PP-Attachment Problem
 예: “John saw Mary in the park with a
telescope”
  4가지 트리 구조로 해석될 수 있음
한국외국어대학교 언어인지과학과 [email protected]
385
 중의성의 다른 예
 2가지 다른 문법 규칙이 적용될 뿐 아
니라, 단어의 품사에 대하여 2가지 이
상의 정의가 가능한 경우
 예: “Time flies like an arrow”
 이 경우도 문법규칙을 적용할 때 2
가지 트리구조가 생성됨
 그러나 이것은 앞서의 예(John saw
Mary in the park)와는 달리, 인간에
게는 중의성이 없는 예이다.
한국외국어대학교 언어인지과학과 [email protected]
386
 4. 하향식 & 상향식 파서
 [1] 하향식파서(A Top-Down Parser)
 ‘탐색 문제(Search Problem)’의 한 유형
 예:
 [1] 문법
1. S→NP VP
4. VP → V
2. NP→ART N
5. VP → V NP
3. NP→ART ADJ N
 [2] 사전
cried: V
dogs: N, V
the: ART
 [3] 입력문
1 The 2 dogs 3 cried 4
한국외국어대학교 언어인지과학과 [email protected]
387
 “1 The 2 old 3 man 4 cried 5”문장의 하
향식 파싱 과정
Step
Current State
Backup States
Comment
1 ((S) 1)
2 ((NP VP) 1)
S가 NP,VP
3 ((ART N VP) 1)
((ART ADJ N VP)1)
4 ((N VP) 2)
((ART ADJ N VP)1)
5 ((VP) 3)
((ART ADJ
((V NP) 3)
((ART ADJ
((V NP) 3)
((ART ADJ
((ART ADJ
6 ((V) 3)
7 (( ) 4)
8 ((V NP) 3)
9 ((NP) 4)
10 ((ART N) 4)
11 (ART ADJ N)4)
((ART
((ART
((ART
((ART
ADJ
ADJ
ADJ
ADJ
NP가 2상태
N VP)1)
백업 남음
N VP)1)
N VP)1)
N VP)1)
첫백업선택
N VP)1)
N) 4)
N VP)1)
N VP)1)
4에서 ART
찾기 실패
다시 실패
12 (ART ADJ N VP)1)
3단계백업
13 ((ADJ N VP) 2)
14 ((N VP) 3)
15 ((VP) 4)
16 ((V) 4)
((V NP) 4)
17 (( ) 5)
한국외국어대학교 언어인지과학과 [email protected]
성공!!
388
 하향식파서의 2가지 전략
 [1] 깊이우선방식(depth-first strategy)
 가능성 목록이 <스택(stack)>형식
 단계1에서 목록의 가장 처음 요소를
가지고 시작하고, 단계3에서 새로운
상태를 목록의 맨처음에 저장함  즉
<Last-in First-out(LIFO) strategy>임
 즉 규칙의 앞부분부터 계속 먼저 처리
하고 그 다음 부분으로 넘어감
 [2] 넓이우선방식(breadth-first strategy)
 가능성 목록이 <큐(queue)>형식으로
처리됨
 즉 단계3에서 새로운 상태들을 목록
의 맨 마지막에 저장함  즉 <First-in
First-out(FIFO) strategy>임
한국외국어대학교 언어인지과학과 [email protected]
389
 [2] 상향식파서(A Bottom-Up Chart Parser)
 차트를 이용하여 이미 분석된 부분들을
저장해놓음으로써 계산 복잡도를 줄임
 예
 [1] 문법
1. S→NP VP
4. NP → ADJ N
2. NP→ART ADJ N
5. VP → AUX VP
3. NP→ART N
6. VP → V NP
 [2] 사전
the: ART
large: ADJ
can: N, AUX, V
hold: N, V
water: N, V
 [3] 입력문
1 The 2 large 3 can 4 can 5 hold 6 the 7 water
한국외국어대학교 언어인지과학과 [email protected]
390
 “1 The 2 large 3 can 4 can 5 hold 6 the
7 water”문장의 상향식 차트 파싱
S1 (rule1 with NP1 and VP2)
S2(rule1 with NP2 and VP2)
VP3(rule5 with AUX1 and VP2)
NP2(rule4)
VP2(rule5)
NP1(rule2)
VP1(rule6)
N1
N2
V1
V2
ART1 ADJ1 AUX1 AUX2
1 the
NP3(rule3)
V3
N3
V4
ART2
N4
2 large 3 can 4 can 5 hold 6 the 7 water
한국외국어대학교 언어인지과학과 [email protected]
391
파서의 효율성 비교
 일반적으로 단순한 하향식 파서나 상향식
파서의 경우는 n 길이의 문장을 파싱하기
위해서 Cn번의 Operation을 해야 함(C는
사용되는 알고리즘에 의존적인 상수값
constant)
  즉 C가 아무리 작은 값이라 할지라도,
문제의 복잡도는 ‘exponential complexity’
를 가지므로 결국 이 알고리즘은 사용할
수 없는 것이 됨
한국외국어대학교 언어인지과학과 [email protected]
392
 대안: <차트 파서: Chart Parser)>
 차트: 상향식 파싱에서 각 단계별로 매칭
이 이루어진 결과들을 부분적으로 저장
함으로써 동일한 작업이 반복되지 않도
록 하기 위해 구성되는 데이터 구조
 각 문장구성성분(constituent) 단위로 가
능한 방법을 조사하므로 최악의 경우 복
잡도는 K*n3이 됨 (n은 문장의 길이, K는
알고리즘에 따른 상수값)
  일반적으로 차트파서는 각 단계에서
더 많은 작업을 요하므로 K는 C보다 더
클 것임
 예: <C=10, K=1000, n=12단어>라고 가
정할 때,
 단순 파서: 1012=1,000,000,000,000번
 차트파서: 1000*123=1,728,000번
  차트파서가 50만배 더 빠름
한국외국어대학교 언어인지과학과 [email protected]
393
XIII. Semantic
Representation and
Ontologies
한국외국어대학교 언어인지과학과 [email protected]
395
 1. 의미론과 논리형식(Semantics and
Logical Form)
 논리형식(Logical form)
 문맥과 무관한 의미(meaning)의 표상
 의미해석(Semantic interpretation)
 하나의 문장을 그 논리형식에 매핑하
는 작업
 문맥해석(Contextual interpretation)
 논리형식을 궁극적 지식표현
(Knowledge Representation: KR)언어
에 매핑시키는 작업
 KR언어
 FOPC(First-order predicate calculus)
 Situation
 세계 속의 상황들의 특정 셋트
 예: <B0005>라는 공과 <P86>이라
는 사람의 두 개체로 이루어진 상황
 이 상황은 다음과 같은 셋트로 표상
{ (BALL B0005), (PERSON P86), (OWNS P86 B0005) }
한국외국어대학교 언어인지과학과 [email protected]
396
 논리형식과 지식표현
S
NP
ART
the
LOGICAL
FORM
N
ball
VP
V
is
ADJP
red
Semantic
interpretation
(RED1 <THE b1 BALL>)
Contextual
interpretation
FINAL
REPRESENTATION Red(B073)
한국외국어대학교 언어인지과학과 [email protected]
397
 단어의 의미와 중의성(Word Senses and
Ambiguity)
 의미해석을 위한 이론
 Basic semantic unit  word와
morpheme
 문제점
 중의성(ambiguity)의 발생 문제
 예: “go”의 경우 사전에 40개의 표제
어(entry)가 존재 (40개는 이 단어의
각각 다른 sens를 보임)
 Ontology
 단어들의 여러 sens들은, 우리가 세
계를 분류하는 방식에 기반한 일련
의 대분류 클라스들로 구조화될 수
있음
  이렇게 표상된 개체들의 여러 다
른 클라스들의 집합: 온톨로지
한국외국어대학교 언어인지과학과 [email protected]
398
 논리형식 언어
 Atom(Constant): 단어의 sense
 2가지 타입이 존재
 [1] Terms: 사건(event)이나 상황
(situations)같이 추상적인 대상을 포함
하여, 세계의 모든 대상(objects)을 나
타냄
 [2] Predicates: 위와 반대로, 관계
(relations)나 속성(properties)을 나타
냄
 Cf. 명제(proposition): 1개의 predicate와
일련의 terms(arguments이 됨)들이 결합
하여 구성됨
 예: “Fido is a dog”: <DOG1>이라는
predicate와 <FIDO1>이라는 term의
결합으로 재구성됨
(DOG1 FIDO1)
한국외국어대학교 언어인지과학과 [email protected]
399
 Predicate의 종류
 [1] Unary predicate : 위처럼 1개의 논
항(argument)를 가지는 술어
 [2] Binary predicate : 2개의 논항을 가
지는 술어(예: LOVE1)
 예: “Sue loves Jack”
(LOVES1 SUE1 JACK1)
 [3] N-ary predicates : n개의 논항을
가지는 술어
 자연언어 품사별 word sense의 타입
 [1] 고유명사(Proper names): 이들의
word sense는 <terms>
 예: Jack
 [2] 일반명사(Common nouns): 이들의
word sense는 <Uniary predicates>
 예: dog
 [3] 동사(Verbs): 이들의 word sense는
<n-ary predicates>
 예: run, love, put (동사가 요구하는
논항의 개수에 따름 – 1-ary/2ary/3-ary predicate)
한국외국어대학교 언어인지과학과 [email protected]
400
 의미 네트워크로 논리형식 표상하기
 Cf. 앞서 살핀 방식: <Predicate-argument>
형식으로 표상한 것
 “Sue loves Jack”에 대한 2가지 가능한 형태
의 네트워크
LOVES1
1
2
SUE1
JACK1
LOVES1
pred
11
agent
SUE1
theme
JACK1
한국외국어대학교 언어인지과학과 [email protected]
401
 2. Thematic Roles
 Semantic roles
 예문
 [1] John broke the window with
the hammer
 [2] The hammer broke the window
 [3] The window broke
 위의 3문장에서 semantic roles은 모두
같음
 John  actor
 The window  object
 The hammer  instrument
 위의 특징을 표현하기 위해 다음과 같
은 3가지 relations을 도입함
 [AGENT] [THEME] [INSTR]
한국외국어대학교 언어인지과학과 [email protected]
402
 Common realization of the major roles
Role
Realization
AGENT
능동문의 주어
피동문의 전치사 by뒤
THEME
타동문의 목적어
비-행위동사문의 주어
INSTR
Agent없는 능동문의 주어
전치사 with와 함께
EXPERIENCER Agent없는 능동문의 유생물 주어
BENEFICIARY
타동문에서 간접보어로
전치사 for 뒤에
AT-LOC
전치사 in, on, beyond 등과 함께
AT-POSS
속격의 NP 구성
Agent가 아닌 경우의 문장 주어
TO-LOC
전치사 to, into와 함께
TO-POSS
전치사 to와, 일정 동사의 간접보
어
FROM-LOC
전치사 from, out of 등과
FROM-POSS
전치사 from과 함께
한국외국어대학교 언어인지과학과 [email protected]
403
 3. Word sense hierarchy
 네트워크로 표상된 의미계층구조의 예
한국외국어대학교 언어인지과학과 [email protected]
404
 의미망(Semantic Networks)
 Part of Type hierarchy
ALL
s
PHYSOBJ
s
s
NONAIMATE
s
s
SITUATION
s
ANIMATE
s
NONVEGETABLE
LIVING
EVENT
s
s
DOG
PERSON
한국외국어대학교 언어인지과학과 [email protected]
405
 4. 프레임(Frames)
 Representing Stereotypical Information
 Frame
 어떤 대상이나 상황에 대한 전형적
인(stereotypical) 진실을 구조화한
것
 특정 대상과 상황을 기술하는 사실
들과 대상들을 분류하고 이러한 상
황에 대한 추론이 가능하게 하는 추
론 전략을 포함함
 기본 아이디어는 대상들과 상황들
이 일어나게 하는 공통의 특성들을
특징짓는 정보들을 분류하는 것
 프레임의 principal objects
 슬롯(slots, roles) – logical form 영
역에서 thematic roles과 유사함
 예: <a frame for a house>
 Slots: kitchen, living room,
hallway, front door 등
한국외국어대학교 언어인지과학과 [email protected]
406
 5. Conceptual Dependency
 A Primitive-Based Representation
 Schank 1975
 행동 동사와 일련의 행동 타입에 초점
을 둔 모델
 주요 행동 타입은 아래의 3가지
transfer 개념
[1] ATRANS – abstract transfer
[2] PTRANS – physical transfer
[3] MTRANS – mental transfer
 Primitives based on bodily activity
 PROPEL
 MOVE
 GRASP
 INGEST
 EXPEL
 Primitives based on mental actions
 CONC
 MBUILD
한국외국어대학교 언어인지과학과 [email protected]
407
 6. 스크립트(Scripts)
 Understanding Stereotypical Situations
 스크립트(scripts)
 기대치의 생성을 제어하는 하나의 방
법은 스크립트라 명명되는 포괄적인
단위의 정보를 저장하는 방법
 즉 일정 관심영역에서 공통되는 상황
과 시나리오를 설정하는 것
 여러 행위자에 의한 여러 행동들을
포함하며, 이러한 사건들이 일정 인
과관계를 가지고 일어나게 됨을 가정
함
 예: <TRAVEL-BY-TRAIN script>
 여행객이 기차로 여행할 때 일어나
는 전형적인 시나리오를 가정
 즉 기차역에 가서  티켓을 사고
 알맞은 출발점으로 가서  기
차를 탐  등등
한국외국어대학교 언어인지과학과 [email protected]
408
 기차여행 스크립트의 예
TRAVEL-BY-TRAIN(e):
Roles: Actor, clerk, SourceCity, Train, Station, Booth, Ticket,
Money
Constraints: Person(Actor), Person(Clerk), City(SourceCity),
City(DestCity), TrainStation(Station), TicketBooth(Booth),
In(Station, SourceCity), In(Booth, Station), At(Clerk, Booth),
DepartCity(Train, SourceCity), Destination(Train, DesCity),
TicketFor(Ticket, SourceCity, DestCity), Value(Money,
Price(Ticket))
Preconditions: Owns(Actor, Money)
At(Actor, SourceCity)
Effects: ᄀOwns(Actor, Money)
ᄀAt(Actor, SourceCity)
At(Actor, DesCity)
Decompositions: GoTo(Actor, Station)
Purchase-Ticket(Actor, Clerk, Ticket, Station)
GoTo(Actor, Loc(Train))
GetOn(Actor, Train)
Travel (Train, SourceCity, DestCity)
Arrive(Train, DestCity)
GetOff(Actor, Train)
한국외국어대학교 언어인지과학과 [email protected]
409
 7. 온톨로지(Ontology)
 광의적 의미
 ‘실세계에 존재하는 모든 개념(concept)과
그 개념들의 속성(attribute)은 무엇이며,
그리고 개념들이 상호간 의미적으로 어떻
게 연결되어 있으며(relation), 개념들의
실질적인 사례는 무엇인가’에 대한 정보를
가지고 있는 의미적인 개념 집합체
 보편적 정의
 “An Ontology is an explicit specification
of a (shared conceptualization)”
 협의적 의미
 특정 영역(domain)에서의 정보교환용으
로 합의된 어휘를 만들기 위해 사물, 사건,
관계 등과 같은 개념들의 집합
 특정 영역 애플리케이션(domain
application)에서 효율적으로 사용될 수
있는 합의된 개념들의 집합
한국외국어대학교 언어인지과학과 [email protected]
410
 온톨로지와 관련어








통제어휘집 Controlled Vocabulary
분류 Taxonomy/Classification
시소러스 Thesaurus
의미망 Semantic Network
어휘망 Word Network
어휘, 어휘부 Vocabulary/Lexicon
사전, 백과사전 Dictionary/Encyclopedia
단어, 용어 Word/Term
한국외국어대학교 언어인지과학과 [email protected]
411
 온톨로지와 관련어 구도
한국외국어대학교 언어인지과학과 [email protected]
412
온톨로지의 구축
 Ontology 분야 설정
 Domain 설정
 Ontology 구축 목적과 더불어 분야의 특
성을 고려
 “Wine Ontology의 경우, Wine이라는 특
정한 대상 선정만이 필요한 것이 아니라,
Wine 자체에 대한 색깔, 맛, 구성성분 등
의 내적인 요소와 Wine과 관련된 제조사,
판매처 등 외적인 요소까지 고려해야 하
는 분야 분석 과정을 거친 다음, Wine
Ontology를 구축할 수 있는 것이다.”
 Domain Application 고려
 공학적 측면에서는 애플리케이션을 반드시
고려해야 함
 고려사항
 온톨로지 구축목적과 분야의 연관성 파악
 온톨로지 분야의 적합성 여부 판단
 온톨로지 분야 정보 분석 자료 확인
 온톨로지 분야 특성 파악
한국외국어대학교 언어인지과학과 [email protected]
413
 Ontology 내부 구조 설계
 [1] Class
 특정 분야의 정보 분석을 통한 Class 생
성 가능 집합 형성
 특정 분야의 개념 집합 생성 및 Class화
 온톨로지 내부 구조에 반영될 Class
Name 설정
 Class Name 표기 방식 설정
 상하위 Class 형성의 필요성 및 가능 요
소 분석
 [2] Property
 특정 분야 정보 분석을 통한 Property 생
성 요소 결정
 특정 분야의 공통적인 Property와 개별
적인 Property 구분
 Class(Individual)와 Class, Class와 Value
등의 관계 설정
 온톨로지 내부 구조에 반영될 Property
Name 설정
 Property Name 표기 방식 설정
 Property를 고려한 상하위 Class 형성의
필요성 및 가능 요소 분석
한국외국어대학교 언어인지과학과 [email protected]
414
 [3] Individual
 Class와 Individual의 구분 기준 마련
 온톨로지 Class의 Individual 할당 적합
성 유무
 Individual 생성에 대한 수동/반자동/자
동 방법 연구
 [4] Restriction
 적합한 Restriction 선택 : 불필요한
Restriction 설정하지 말 것
 Restriction에 대한 유효성 여부 점검
한국외국어대학교 언어인지과학과 [email protected]
415
 RDF : Resource Description Framework
 RDF is a natural way to describe the
vast majority of the data processed by
machines
 A simple model for “statements” (simple
sentence)
 RDF는 ‘subject-object-predicate’의 triple
데이터 형식으로 됨
 Triple은 ‘statement’라고도 함
 RDF는 XML 형식으로 기술됨
 RDF 구문은 XML의 기술 이점을 모두
사용할 수 있음
 RDF의 기본 Concept
 resources
 properties
 Statements
한국외국어대학교 언어인지과학과 [email protected]
416
 RDF의 예: University
<rdfs:Class rdf:ID="lecturer">
<rdfs:comment>
The class of lecturers. All lecturers are
academic staff members.
</rdfs:comment>
<rdfs:subClassOf
rdf:resource="#academicStaffMember"/>
</rdfs:Class>
<rdfs:Class rdf:ID="course">
<rdfs:comment>The class of
courses</rdfs:comment>
</rdfs:Class>
<rdf:Property rdf:ID="isTaughtBy">
<rdfs:comment>
Inherits its domain ("course") and
range ("lecturer") from its superproperty
"involves"
</rdfs:comment>
<rdfs:subPropertyOf
rdf:resource="#involves"/>
</rdf:Property>
한국외국어대학교 언어인지과학과 [email protected]
417
 OWL(Web Ontology Language)
 One characterizes classes and properties
 OWL is also an “application” of RDF
 OWL의 예
<owl:Ontology rdf:about="">
<rdfs:comment>An example OWL
ontology </rdfs:comment>
<owl:priorVersion
rdf:resource="http://www.mydomain.
org/uni-ns-old"/>
<owl:imports
rdf:resource="http://www.mydomain.
org/persons"/>
<rdfs:label>University
Ontology</rdfs:label>
</owl:Ontology>
owl:imports is a transitive property
한국외국어대학교 언어인지과학과 [email protected]
418
 OWL의 예
Classes are defined using owl:Class
owl:Class is a subclass of rdfs:Class
Disjointness is defined using owl:disjointWith
<owl:Class rdf:about="#associateProfessor">
<owl:disjointWith
rdf:resource="#professor"/>
<owl:disjointWith
rdf:resource="#assistantProfessor"/>
</owl:Class>
<owl:Class rdf:ID="faculty">
<owl:equivalentClass rdf:resource=
"#academicStaffMember"/>
</owl:Class>
owl:Thing is the most general class, which
contains everything
owl:Nothing is the empty class
한국외국어대학교 언어인지과학과 [email protected]
419
Class의 정의
 Individuals(instances)로 구성된 하나의
집합
 Class는 동일한 속성을 지니고 있어 하
나의 부류로 모아지는 Individuals의 집
합
 Class 계층 구조 형성
 임의의 Class를 세분화하여
subClassOf에 의한 Individuals의 집
합 정의할 수도 있음
 예) {Conference, Workshop,
Seminar…} subClassOf Event
 Class 생성의 유의점
 특정 영역에 필요한 Class만을 생성
 Class 생성을 위한 특정 영역에 대한
분석 필수
 Properties 및 Individuals에 대한 분석
병행
한국외국어대학교 언어인지과학과 [email protected]
420
 온톨로지 에디터(포로테제: Protégé)
한국외국어대학교 언어인지과학과 [email protected]
421
 온톨로지의 어플리케이션
 [1] 시나리오1- 노트북 구입
한국외국어대학교 언어인지과학과 [email protected]
422
 [2] 시나리오 2 – 맞춤형 여행 정보
한국외국어대학교 언어인지과학과 [email protected]
423
 Appendix 1
 온톨로지의 이해
 온톨로지, 워드넷, 시소러스 등의 관계
 실제 활용을 위한 온톨로지의 디자인
한국외국어대학교 언어인지과학과 [email protected]
424
XIV. Information
Retrieval &
Classification
한국외국어대학교 언어인지과학과 [email protected]
426
 1. 정보검색 (Information Retrieval)
 정보검색 시스템의 기본 기능
 사용자가 필요로 하는 정보를 수집
 내용을 분석
 찾기 쉬운 형태로 조직하여 둠
 정보에 대한 요구가 발생했을 때 해당
정보를 찾아 검색 수행
 결과를 제공하는 시스템
 검색의 대상이 되는 정보
 수치 정보 (numeric data)
 사실 정보 (factual data)
 텍스트 정보 (textual data)
 서지 정보 (bibliographic data)
 그림 정보 (graphic data)
 Cf. 음성/사운드/동영상 정보
 위의 정보들이 복합된 형태의 정보
한국외국어대학교 언어인지과학과 [email protected]
427
 정보 검색 순서
 [1] 색인(Indexing)
 정보의 내용을 대표할 수 있는 단어인
색인어를 부여하는 작업
 [2] 질의 처리
 질의의 내용을 분석하여 적합한 검색
어와 탐색 논리를 추출해 내는 작업
 [3] 정보 검색(Retrieval)
 질의의 내용에 적합한 정보를 찾아내
는 행위
 [4] 정보 배포
 검색된 정보가 단말기나 프린터와 같
은 출력 장치를 통해 사용자에게 전달
되는 과정
한국외국어대학교 언어인지과학과 [email protected]
428
 2. 검색시스템 유형
 [1] 데이터 검색 시스템(Data retrieval
system)
 단어나 수치로 표현된 독립된 형태의
데이터 항목을 소장해 두었다가 검색하
는 시스템
 간단하고 기본적인 형태의 검색 시스템
 <업무>: 정부기관, 은행, 항공사, 증권
회사 등과 같은 조직체에서 업무와 관
련된 데이터를 저장해서 검색
 <연구>: 경영 관계 통계 데이터나 과학
기술 데이터를 검색하는 시스템
 예: 업무데이터처리 시스템, 경영정보
시스템. 데이터 뱅크 등
한국외국어대학교 언어인지과학과 [email protected]
429
 [2] 참조 정보 검색 시스템(Reference
retrieval system)
 문헌과 같은 참조 정보를 검색하는 시
스템
 단행본, 논문, 보고서 등 일차 문헌에
대한 서지 정보를 수록할 서지 정보
DB
 연구 프로젝트나 특정 전문 기관의 활
동, 이용 가능한 기술 및 관련 기술자
등 비도서 정보 자료를 수록한 안내 정
보 DB
 서지 정보 검색 시스템
한국외국어대학교 언어인지과학과 [email protected]
430
 [3] 본문 검색 시스템(Full-text retrieval
system)
 문헌의 전문을 소장하고, 이로부터 질
의에 관련된 문장이나 문단, 전문을 검
색하는 시스템
 질의에 직접 관련된 문장이나 문단을
검색하는 경우- 문장 검색
 본문 전체를 출력해 내는 경우- 전문
검색
 자연어 질의문 대신 인공적인 검색문을
작성하여 입력
 검색어의 이형태나 동의어 관계의 모든
단어들의 리스트를 작성하고 이를 이용
하여 DB를 검색
한국외국어대학교 언어인지과학과 [email protected]
431
 [4] 질의 응답 시스템(Questionanswering system)
 소장된 데이터나 질의에 대한 해답을
직접 찾아내는 시스템
 1950년대 후반부터 연구 시작
 관계형 DB(relational DB system)나 계
층형 DB(hierarchical DB system)에 대
한 자연언어 인터페이스를 제공
  자연언어 질의문
 질의문: 구문 분석, 의미 분석을 거쳐
DB 탐색에 적합한 형태의 질의어로 변
환
 어휘 사전, 변환 사전, 문법, 변환 규칙
등을 갖춤
한국외국어대학교 언어인지과학과 [email protected]
432
 [5] 비디오텍스(Videotex)
 텍스트나 그림 정보로부터 일상 생활
과 관련된 정보를 검색하는 시스템
 1970년대 말부터 1980년대 초에 걸쳐
세계 각국에서 본격적으로 개발되기
시작한 새로운 형태의 온라인 정보 서
비스
 TV 수상기를 단말기로 하여 각 가정에
문자 및 그림 정보를 배포하는 정보 시
스템
 공중 전화망, 데이터 통신망을 이용하
여 서비스 제공자와 통신을 함
 뉴스, 일기 예보, 관광 안내, 교통 정보,
상품 정보, 부동사 정보, 금융 증권 정
보, 구인 구직 정보, 출판도서 정보, 도
서관 도서 목록 정보 등이 제공됨
한국외국어대학교 언어인지과학과 [email protected]
433
 3. 색인(Indexing)의 개념
 색인은 방대한 양의 정보원으로부터 가
장 유사한 내용의 정보 자료만을 선별해
주는 역할
 사용자가 원하는 정보만을 걸러주는 여
과기와 같은 구실을 함
 색인의 종류
 [1] 주제 색인
 정보 자료의 주제를 나타내는 요소
를 색인어로 선택하는 색인
 특징
 정보 자료의 내용을 일일이 분석
 중요 개념을 추출함
 다시 적절한 색인어로 변환시킴
 고도의 지적 작업이 수반됨
한국외국어대학교 언어인지과학과 [email protected]
434
 [2] 비주제 색인
 주제와는 직접적으로 관계없는 요소를
색인어로 선택하는 색인
 예를 들어 다음을 중심으로 하는 색인
 저자명
 표제
 기관명
 출판년도
 프로젝트 이름
 보고서 번호 등
 특징
 저자명, 표제, 기관명 등을 데이터 파
일로부터 자동적으로 추출할 수 있음
 색인 과정이 비교적 단순함
한국외국어대학교 언어인지과학과 [email protected]
435
색인 만들기
 [1] 수동 색인(manual indexing)
 해당 전문가가 정보 자료에 포함되어
있는 중요한 개념들을 추출한 후, 적
절한 코드, 즉 색인어로 변환
 작업의 효율을 높이기 위해 색인어를
통제함
 즉 단어의 어형 통제, 동의어 통제,
단수/복수형 통제 등을 통해 같은 개
념의 단어들을 하나로 통일함으로써
항상 하나의 단어로 나타낼 수 있도
록함
한국외국어대학교 언어인지과학과 [email protected]
436
 [2] 자동 색인(automatic indexing)
 컴퓨터로 자료를 분석한 후,
 중요 개념을 나타내는 단어를 일정한 기
준에 따라 추출
 이를 색인어로 삼음
 색인어 통제를 하지 않기 때문에 텍스트
에 나타난 단어가 그대로 색인어로 채택
되는 문제가 존재함
 검색의 효율을 높이기 위해 동의어 사전
을 사용하거나 절단법(term truncation)
이나 용어 집단화 기법(term clustering)
등을 사용함
한국외국어대학교 언어인지과학과 [email protected]
437
 4. 자동 색인(Automatic Indexing)
 자동 색인의 개념
 전통적으로 색인 작업은 잘 훈련된 전
문 사서에 의해 수행되어 옴
 1950년대 이후 색인을 요구하는 문헌
의 양이 급속히 증가, 이것을 처리할 전
문 사서의 수는 그다지 증가하지 않음
 컴퓨터를 이용한 자동 색인의 필요성
 <컴퓨터를 이용하여 주어진 문헌을 분
석한 후, 이 문헌의 주제를 대표할 수
있는 단어나 구를 추출해 내는 것>
한국외국어대학교 언어인지과학과 [email protected]
438
 최초의 자동 기법
 Luhn에 의해 제안
 주어진 문헌에서 사용된 단어의 빈도수
는 그 문헌에 대한 주제어로서의 중요성
을 측정하는 척도가 될 수 있다는 가정
 “빈도수가 매우 높은 단어는 너무 일반
적이어서 주제어로서 가치가 전혀 없으
며, 반대로 빈도수가 지나치게 낮은 단
어는 주제어로서 채택될 가능성이 거의
없다”
  최고 한계 빈도수와 최저 한계 빈도
수의 사이에 있는 단어들을 색인어로 선
정
 그러나 두 한계 빈도수의 구체적인 산출
방법을 제시하지는 않음
한국외국어대학교 언어인지과학과 [email protected]
439
 2가지 자동 색인 기법
 [1] 언어학적 기법
 형태소 분석 수준에서 이루어지는 자
동 색인
 형태소 분석 결과로부터 주제를 나
타내는 단어/구를 식별해내는 방법
 구문 분석 수준에서 이루어지는 자동
색인
 문장의 구문 구조를 분석한 다음,
전치사구나 명사구 등을 이루는 단
어군을 찾아내고 이 가운데 빈번하
게 나타나는 단일어, 또는 복합어를
색인어로 선택하는 방법
 [2] 통계적 기법
 단어의 출현 빈도수에 따라 주제어로
서의 중요도를 측정한 다음 색인어를
선정하는 색인 기법
한국외국어대학교 언어인지과학과 [email protected]
440
[1] 형태소 분석 수준에서의 자동 색인
 한국어의 경우
 한 어절에서 조사를 제외한 나머지를
색인어로 채택함
  오분석의 가능성
 복합명사의 처리 문제
 정보검색 vs. 검색
 문장이나 구로 풀어진 구조에 대한
일관된 색인 구성의 문제
 “정보검색에 대한”
 “정보 검색에 대한”
 “정보의 검색”
 “정보에 대한 검색”
 “정보를 검색하는”
한국외국어대학교 언어인지과학과 [email protected]
441
 [2] 구문 분석 수준에서의 자동 색인
 문헌의 각 문장에 대한 구문 분석을 통
해 특정 기능을 가진 단어나 구를 식별
하여 이것을 색인어로 사용
 수준별 유형
 의미 처리를 포함하여 완벽한 구문
분석에 의한 자동 색인
 의미 처리를 제외한 통사적 구문 분
석에 의한 자동 색인 기법
한국외국어대학교 언어인지과학과 [email protected]
442
 자연언어처리에서 완벽한 구문분석은 매
우 어려움
 자동 색인 경우: 구문분석의 효과가 그
다지 크지 않기 때문에 실제로 사용하
지 않음
 예: 초기의 SMART 시스템,
LEARDERMART, PHRASE
 의미 처리는 하지 않으나, 하나의 문장에
대하여 하나의 분석 구조가 주어져야 하
므로 구조적 중의성(structural ambiguity)
이나 의미적 중의성(semantic ambiguity)
은 반드시 해소되어야 함
 Phrase(미국 록히드사의 Palo Alto연구
소): 품사의 병치 규칙, 구와 구의 결합
규칙, 단어의 품사, 사용 패턴, 의미 수
록 사전 등을 사용하여 중의성 해소
한국외국어대학교 언어인지과학과 [email protected]
443
[3] 통계적 기법에 의한 자동 색인
 색인어의 선정을 위한 기준
 주어진 문헌에서 특정 단어가 얼마나
자주 사용되었는가 하는 빈도수 정보가
사용됨
 단어의 사용 빈도수
 단순 빈도수 vs. 상대 빈도수
 단순빈도수: 문헌의 크기나 분석 대
상이 되는 텍스트 길이, 단어의 출현
빈도수를 전혀 고려하지 않은 것으
로 부적절함
 상대빈도수: 단어 빈도수를 문헌의
크기 등으로 나누어 줌으로써 빈도
수를 정규화한 것
한국외국어대학교 언어인지과학과 [email protected]
444
 빈도수가 너무 높거나 낮은것은 제외됨
 불용어 리스트(문헌에서 빈번하게 사용
되는 기능어 목록)를 사용하여 고빈도
어를 제거한 다음
 나머지 단어들을 빈도순으로 배열하고
 임의로 정한 최저 한계치를 초과하는
단어들을 색인어로 선택함
한국외국어대학교 언어인지과학과 [email protected]
445
 5. 정보 검색(Information Retrieval)
 검색 대상 문서(text)에 대한 처리
 색인(indexing)의 필요
 정확한 색인을 위한 <형태소분석>의
필요
 명사의 단수/복수의 단일화
 대문자/소문자의 통일
 복합명사/단순명사의 처리
 불용어 목록의 구성 문제
 명사외 품사의 색인어 가능성 문제
 검색 질의어에 대한 처리
 키워드 인식을 위한 <형태소분석>
한국외국어대학교 언어인지과학과 [email protected]
446
 6. 정보 검색과 정보 추출
 정보검색(IR)
 키워드 중심의 pattern matching
 색인이 반드시 요구됨
 정확한 색인이 중요함
 정보추출(IE)
 보다 다양한 의미 정보의 추출이 가능
 의미 정보를 인식할 수 있는 엔진
 통계적 방식
 언어학적 기술 방식
 향후 보다 발전된 정보검색, QA 시스
템 등과 연관
 Cf. <정보추출>에 대해서는 다음 장에
서 상세히 논의됨
한국외국어대학교 언어인지과학과 [email protected]
447
 7. 문서분류 (Text Categorization)
 정의
 문서를 미리 정의된 하나 이상의 범주,
클라스로 분리하는 작업
 예를 들어 문서 검색을 위해 문서를 인
덱싱(indexing)하는 것
한국외국어대학교 언어인지과학과 [email protected]
448
 사례
 [1]NewsWeeder
 뉴스 또는 기사의 양이 방대해지면
서 사용자들이 관심사에 맞는 정보
를 찾는 일이 어려워짐
 사용자의 관심 영역에 해당하는 문
서만을 여과시켜 제공하는 시스템
 독자적인 인터넷 인터페이스에서 사
용자가 링크를 따라 뉴스를 읽도록
함
  시스템이 사용자 개인 정보로부
터 학습된 프로파일을 기초로 여과
해된 기사들(+요약문)을 볼 수 있음
  기사를 보고 사용자가 적합성 정
도를 점수를 매기고 시스템은 모아
진 피드백으로부터 학습을 함
한국외국어대학교 언어인지과학과 [email protected]
449
 [2] WebWatcher
 웹 환경에서 사용자의 브라우징을 돕는
에이전트 S/W임  박물관 안내원처럼
가이드의 역할
 이 시스템이 작동하기 위해서 사용자의
컴퓨터에 3가지 수정을 가함
 홈페이지 상단에 WebWatcher의 명
령문들을 추가함
 원래 페이지의 각 하이퍼링크가
WebWatcher의 서버를 통하도록 수
정함
 강력하게 추천하는 하이퍼링크인 경
우 사용자를 위해 링크를 강조함
 사용자가 하이퍼링크를 클릭하면 하이
퍼링크의 태깅 정보가 확장됨  이 시
스템은 사용자에게 가이드 역할을 하기
위해, 사용자의 관심사를 현재 페이지
의 모든 하이퍼링크의 태깅 정보와 비
교하여 사용자의 관심사와 가장 유사한
태깅 정보를 지닌 하이퍼링크를 추천함
한국외국어대학교 언어인지과학과 [email protected]
450
 8. 문서 요약(Text Summarization)
 정의
 주어진 문서로부터 가장 중요한 정보들
을 추출하여 특정 사용자나 작업에 적
합한 축약된 형태의 문서를 생성하는
작업
 즉 주어진 문서나 문서 집합의 기본적
인 내용을 유지하면서도 문서의 복잡도,
다시 말해 문서의 길이를 줄이는 작업
을 의미함
 이 작업의 중요한 요소  압축률(level
of compression)의 문제
 따라서 문서의 제목이나 핵심어, 목
차 등도 요약의 한 형태이나, 일반적
으로 <문서요약>은 일반적으로 문
서에 대해 초록(abstract)과 같은 축
약본을 제공하는 것으로 정의됨
한국외국어대학교 언어인지과학과 [email protected]
451
 1950년대 시작되어, 1990년대 중반에
들어 관심이 크게 증대됨
 그 원인
 인터넷에서의 정보량의 폭발적 증가
 고성능 컴퓨터와 대용량 문서 자료의
등장
 통계적 학습 기법의 발전
한국외국어대학교 언어인지과학과 [email protected]
452
문서 요약의 유형
 [1] 생성 요약(Abstract) vs. 추출 요약
(Extract)
 <생성요약>
 전체 문서의 내용을 압축하여 새로운
문서를 작성하는 작업으로서 원본 문
서에 포함되지 않았던 단어나 구 등
이 사용될 수 있음
 자연어 이해 및 생성 기술이 필수적
임
 <추출 요약>
 문서에 존재하는 단어나 구, 문장 등
을 그대로 추출하여 요약으로 제시하
는것
 요약문의 응집도나 가독성은 부족하
지만, 요약 문제에 보다 쉽게 접근할
수 있음
한국외국어대학교 언어인지과학과 [email protected]
453
 [2] 포괄적 요약(Generic Summary) vs. 질
의 기반 요약(Query-based Summary)
 <포괄적 요약>
 사용자에 관계없이 해당 문서 저자의
견해를 요약 제시하는 것
 <질의기반 요약>
 질의를 부여하는 특정 사용자의 관심
사항에 중점을 두고 요약을 제시하는
형태
 전통적으로 문서의 저자나 요약 전문가
에 의해 수작업으로 작성되는 포괄적인
요약문이 전체 문서 대용으로 사용되어
옴
 그러나 문서 검색이나 개인화된 정보 여
과를 위한 계산 환경이 성장함에 따라 질
의기반, 또는 사용자 중심의 요약이 점차
중요해짐
한국외국어대학교 언어인지과학과 [email protected]
454
 [3] 지시적 요약(Indicative Summary) vs.
정보적 요약(Informative Summary)
 <지시적 요약>
 단순히 원문이 어떤 내용에 관한 것
인지만을 제시하는 것
 해당 문서가 사용자의 관심이나 정보
욕구를 충족시켜 줄 만한 것인지 판
단을 내리는 데 도움을 줄 수 있으면
되기 때문에 문서의 모든 내용을 포
함할 필요없이 사용자가 판단을 내리
는 데 도움이 될 만한 지시적 기능만
갖추면 됨
 인터넷의 정보검색 사이트에서 후보
웹문서와 함께 보여주는 요약의 기능
이 여기 해당함
 <정보적 요약>
 해당 문서 대신에 사용되어도 무방할
정도이어야 하므로 문서의 중요 내용
을 모두 담고 있는 요약임
한국외국어대학교 언어인지과학과 [email protected]
455
 [4] 단일문서 요약(Single text Summary)
vs. 다중문서 요약(Multiple text Summary)
 <단일문서 요약>
 문서 하나에 대한 요약 작업을 수행
하는 것
 <다중문서 요약>
 여러 문서를 하나의 요약문에 표현하
는것
 일련의 공통 이벤트에 대한 여러 문
서를 검토하고 해당 이벤트에 대한
요약문을 생성하는 것
 과거에는 단일 문서 요약에 대해 많은
연구가 진행되었으나,
 최근 정보의 양이 많아지고 관심 사항에
대한 문서들이 여러 경로를 통해 제공됨
에 따라 다중 문서 요약에 대한 연구가
활발해지고 있음
한국외국어대학교 언어인지과학과 [email protected]
456
 [5] 중립적 요약(Neutral Summary) vs. 편
향적 요약(Biased Summary)
 <중립적 요약>
 객관적인 내용 요약
 <편향적 요약>
 어떤 요구되는 관점에서 문서 내용을
추출하고 형식화하는 것
한국외국어대학교 언어인지과학과 [email protected]
457
 기본적인 접근법
 [1] 심리언어학적 접근법
 요약 전문가(인간)의 요약 전략을 따름
 사소하거나 중복되는 부분은 삭제
 상위 개념이나 상위 동작을 의미하
는 단어를 사용
 주제를 담고 있는 문장을 고르거나
창작해냄
 요약 결과를 검토하기 위해 문서의
‘토론’ 부분을 참고함
 표로 제시된 내용은 의미있는 내용
임
한국외국어대학교 언어인지과학과 [email protected]
458
 [2] 전산학적 접근법
 <하향식>
 사용자의 요구에 맞는 내용을 추출
하여 요약하는 방법
  질의기반 방식(Query-driven)
 <상향식>
 사용자의 관심과 관계없이 해당 문
서의 내용이 무엇인지 알고자 함
  포괄적, 문서기반 방식(Textdriven)
한국외국어대학교 언어인지과학과 [email protected]
459
 문서요약 방법론
 [1] NLP와 정보추출(IE)에 기반한 방법
 문서에 대한 이해를 시도함
 고품질의 요약문을 생성할 수 있으
나 속도나 확장 면에서 개선할 점이
있음
 {1}어휘사슬(lexical chain)을 이용하
는법
 어휘들의 관계를 파악하여 주제
전개를 파악하여 요약을 생성
 WordNet을 이용하여 이러한 어
휘 사슬을 탐색해 감
 어휘사슬의 후보로 명사와 복합명
사만 이용함
  이때 강력한 어휘 사슬이 존재
하는 문장을 요약문으로 선택
한국외국어대학교 언어인지과학과 [email protected]
460
 {2} 담화구조(discourse structure)에 기반
 문서가 중심부분(nucleus)과 주변부분
(satellite)으로 구성된다는 가정하에 두
부분 사이의 수사학적 관계(rhetorical
relation)를 이용하여 요약을 생성
 수사학 구조 분석 알고리즘에 의해 담
화 트리(discourse tree)를 생성함
  중요도 값을 부여하여 순위가 높은
구, 절, 문장 등을 요약으로 제시함
한국외국어대학교 언어인지과학과 [email protected]
461
 [2] 통계(Statistics)와 정보검색(IR)에 기반
한 방법
 어휘 수준의 접근법
 단어의 빈도나 연어(collocation) 정보를
이용하며 대규모 문서 데이터를 필요로
함
 안정적이고 질의주도 요약에 적합함
 품질이 낮음
 개념(Concept)적 수준에서 정보를 조작
할 수 없음
한국외국어대학교 언어인지과학과 [email protected]
462
 {1} 통계에 기반한 방법론
 특정 단어의 빈도, 제목, 문장의 길이,
문장의 위치, 실마리단어나 구 등의
통계적 자질을 참고함
 문장이나 문단의 중요도 값을 구하여
높은 것을 요약문으로 제시하거나 주
어진 자질을 이용하여 기계학습 기법
을 적용함으로써 요약문을 생성함
 {2} 정보검색에 기반한 방법론
 정보검색에서 사용되는 질의 확장 등
의 방법을 적용함
  유사도가 높은 최상위 문장, 문서
의 제목, 문서의 첫 문장 등을 첨가하
여 다양한 질의 확장을 시도하여 자동
요약의 성능을 향상함
한국외국어대학교 언어인지과학과 [email protected]
463
 문서요약절차
 [1] 주제추출(Topic Extraction)
 다음과 같은 사항들을 고려함
{1} 단어빈도: 빈도가 높은 단어류
{2} 제목: 제목이나 머리말에 포함된
단어가 요약문과 관련있다는 것은
통계적으로 99% 확인됨
{3} 문장의 길이: 길이가 너무 짧은 문
장은 요약문에 포함되지 않는 경향
{4} 문장의 위치: 문서의 첫문장이나
제목, 머리말, 마지막 문장 등이 중
요함. 문서의 장르에 따라 위치를
결정하기도 함
한국외국어대학교 언어인지과학과 [email protected]
464
{5} 실마리 단어나 구: 특정 표지 역할을
하는 단어나 구를 탐색하여 해당 부분
들을 요약문에 포함시킴. 예로 ‘이 논문
에서는(in this paper), 결론적으로(in
conclusion)’등이 있음. 반면 ‘예를 들면’
과 같은 형태는 제외시킴
{6} 응집도: 중요한 문장, 구는 의미구조
상에서 연관도가 높기 때문에, 이를 찾
기 위해 공기성, 어휘간 유사도
(WordNet, 어휘사슬) 등을 고려함
한국외국어대학교 언어인지과학과 [email protected]
465
 [2] 해석(Interpretation)
 토픽 해석, 개념 통합 작업 단계임
 신문기사 요약문이 존재하는 경우 그와
는 별도로, 사람들에게 요약문의 내용을
담고 있는 문장을 추출하도록 한 결과
추출문(extract)은 요약문(abstract)보다
2.76배의 길이를 보임
  단순한 추출보다는 요약문이 압축률
면에서 더 우수함.
 이해도 측면에서도 요약문이 더 나음
한국외국어대학교 언어인지과학과 [email protected]
466
 요약을 위한 몇 가지 유형의 작업
{1}개념 일반화(Concept generalization)
 “그녀는 사과, 배, 바나나를 먹었다”
 “그녀는 과일을 먹었다”
{2}부분-전체 관계의 치환(Meronymy
replacement)
 “바퀴, 페달, 안장, 체인” “자전거”
{3}스크립트 일체화(Script Identification)
 “그는 자리에 앉아 메뉴를 보고 주문
을 한 다음, 음식을 먹고 자리를 떴
다”  “그는 음식점에서 식사를 하
였다”
{4}환유어(Metonymy)
 “미국 정부 대변인은 ..라고 발표했다”
 “워싱턴은 ..라고 발표했다”
한국외국어대학교 언어인지과학과 [email protected]
467
 Cf. <Hovy&Lin>
 자동 구축된 단어 집합을 이용하여 어휘
수준에서 스크립트를 일체화하는 방법
제안
 예: restaurant  water + menu +
food + eat + …
 30개의 범주로 구성된 30,000 개의 WSJ
기사로부터 30개의 Topic signature 를
구성한 다음, 여기에 포함되지 않은
2204개의 새로운 문서들을 분류하였음
 정확율: 70%, 재현율: 76%
한국외국어대학교 언어인지과학과 [email protected]
468
 [3] 요약문의 생성(Generation)
 3가지 수준
{1} 별도의 생성 과정 없음
 주어진 문서로부터 추출문을 생성할
뿐인 경우
{2} 간단한 문장 출력
 주어진 문서에서 추출된 구나 절을
합하여 요약문을 생성하는 경우
{3} 자연언어 생성
 생성할 문장의 내용, 길이, 주제, 순
서, 단어들을 계획하고 문법에 맞게
재구성하여 출력하는 방식
  궁극적 연구의 방향임
한국외국어대학교 언어인지과학과 [email protected]
469
 문서요약 시스템의 평가
[1] Shannon Game
 문서의 전문, 요약문을 보거나 아무
것도 보지 않은 상태에서 원래 문서
를 다시 작성해 보도록 하는 방법 
그 결과에 상당한 차이들을 보임
[2] Question Game
 평가자에게 원문이나 요약문을 읽게
한 후 원문의 내용에 대한 질문에 얼
마나 많이 답할 수 있는가를 측정하
는 방법
[3] Classification Game
 평가자에게 요약문을 읽게 한 후, 해
당 문서를 N개의 범주 중 하나로 분
류하게 하고, 원문을 읽고 난 후의 분
류와 얼마나 일치하는가 측정함
[4] Ad-Hoc Task
 위의 [3]과 비슷한 방법. 총 20개의
주제가 있고, 각 주제에 대해 50개의
문서를 요약하도록 함. 평가자가 시
스템이 제시한 요약문을 읽고 원문
주제에 적합한지 판단함. 시스템은 3
등급으로 나뉠 수 있었고, 최고점수
는 73%, 최저점수는 60%이었음
한국외국어대학교 언어인지과학과 [email protected]
470
[5] Categorization Task
 위의 [3]과 비슷한 방법. 총 10개의
주제가 있고, 각 주제에 대해 100개
의 문서를 요약하도록 함. 이때 [4]와
는 달리 시스템은 주제가 무엇인지
전혀 모르는 상태에서 요약문을 생성
함. 사람이 읽고 그 요약문이 10개의
범주 중 어느 범주에 속하는지를 결
정하게 함. 시스템들은 서로 큰 차이
가 없고 대략 53%의 성능을 보임
[6] Q&A Task
 총 3개의 주제가 주어지고, 각 주제
당 90개의 문서를 요약하도록 함. 평
가자로 하여금 요약문을 읽게 하고,
주어진 질문에 얼마나 정확히 대답하
는지 측정해서 시스템의 성능 척도로
삼음. 요약문의 길이에 영향을 받음.
시스템 성능은 최고 45%, 최저 20%
정도였음
한국외국어대학교 언어인지과학과 [email protected]
471
 Appendix 1
 자동 색인의 이해
 인쇄물 서적의 <Index>의 생성 문제
 온라인 웹문서의 색인 문제
 정보검색 사이트의 성능 테스트






복합어 키워드
중의성 명사 키워드
외래어 표기 문제 키워드
관용표현 키워드
명사 외의 품사 키워드
동의어, 상하위어 관련 키워드
한국외국어대학교 언어인지과학과 [email protected]
472
XV. Information
Extraction
한국외국어대학교 언어인지과학과 [email protected]
474
 1. 정보 검색 vs. 정보 추출
 정보검색(IR: Information Retrieval)
 키워드 중심의 pattern matching
 색인이 반드시 요구됨
 정확한 색인이 중요함
 정보추출(IE: Information Extraction)
 보다 다양한 의미 정보의 추출이 가능
 의미 정보를 인식할 수 있는 엔진
 통계적 방식
 언어학적 기술 방식
 향후 보다 발전된 정보검색, QA 시스템
등과 연관
한국외국어대학교 언어인지과학과 [email protected]
475
 정보 추출(Information Extraction) 주요 영역
 도메인(domain) <인명(Named Entity)>
관련 정보 추출
 함께 수반되는 어휘 성분이 분야별로
차이를 보임
 형성되는 문형/문맥 패턴에도 차이를
보임
 패턴 및 동반 어휘에 있어 유한한(finite)
속성을 보임
 도메인 <이벤트(Event)> 관련 정보 추출
 일반적인 육하원칙에 대응
 예: “누가/언제/어디서/무엇/왜/어떻게”
 보다 복잡한 문형 정보 기술 및 추출이
요구됨
한국외국어대학교 언어인지과학과 [email protected]
‹#›
 2. 이름 인식(Name Identification)
 전통적으로 언어학 연구에서 다음과 같
은 영역에 대한 연구는 소홀하게 다루어
짐
 고유명사(Proper Name) 연구
 주소(addresses) 연구
 수를 표현하는 구(quantity phrases)
연구
 언어분석의 전형적인 특징
 사전을 참조하고,
 <Noun> <Verb> <Adjective> 등의
형태에 집중하여 논의를 진행함
한국외국어대학교 언어인지과학과 [email protected]
477
 반면, 실제 텍스트의 특징
 엄청난 양의 고유명사, 이름 등이 등장
 따라서 이러한 형태들을 언어학적 단
위들로 올바르게 인식해내지 못할 경
우 텍스트분석은 성공하기 어려움
 여러 유형의 이름들 등장
 Chemistry 분야: 화학 관련 이름들
 Biology 분야: species, proteins,
genes 등의 이름들
 일반 신문기사의 경우
 인명(names of People)
 조직명(Organization)
 지명(Locations)
한국외국어대학교 언어인지과학과 [email protected]
478
 고유명사 이름 분류 프로세싱의 결과
 일반적으로 SGML mark-up 방식으로
제시됨
 즉 이름 앞에 <NAME TYPE = xx>와
같은 형식을 삽입하고, 이름 끝에
</NAME>과 같은 형식을 삽입함
 원문의 예:
[1] Capt. Andrew Ahab was appointed
vice president of the Great White Whale
Company of Salem, Massachusetts.
 태깅된 예
[2] Capt. <NAME TYPE=PERSON> Andrew
Ahab</NAME> was appointed vice president
of the <NAME TYPE=ORGANIZATION>Great
White Whale Company</NAME> of <NAME
TYPE=LOCATION>Salem</NAME>, <NAME
TYPE=LOCATION>Massachusetts</NAME>.
한국외국어대학교 언어인지과학과 [email protected]
479
Name Tagger
 기본 아이디어(Main Idea)
 일련의 유한 상태 패턴(finite-state
patterns, regular patterns)을 기술함
 각 패턴은 이름(names)들의 일련의
서브셋(subset)들을 포착하고 분류할
수 있게 하는 형태들임
 이 패턴들의 요소들은 특정 토큰
(token)이나 특정 자질(feature)을 가
진 토큰 클라스들을 인식하게 함
한국외국어대학교 언어인지과학과 [email protected]
480
 예: 표준 정규표현(standard regularexpression) 표기법을 사용하여 다음과
같은 패턴을 기술함
 여기서 ‘+’는 한 요소(elements)의
한번 이상의 출현을 의미함
capitalized-word+ ‘Corp.’
 위의 정규표현은 하나 이상의 대문
자가 실현되고 뒤에
‘Corp.’(Corporation)라는 어휘열이
뒤따른 패턴을 의미하는 것으로
 모든 <회사이름(Company names)>
을 인식하게 함
  이렇게 인식된 결과는
<Organization name>으로 분류될
수 있음
한국외국어대학교 언어인지과학과 [email protected]
481
 다음 패턴은 ‘Mr.’로 시작하는 시퀀스를
인식하기 위한 것
 그 인식 결과는 사람이름(Person
names)으로 분류될 수 있음
‘Mr.’ capitalized-word+
 완성된 형태의 분류기(complete
classifier)를 구축하기 위해
  Tokenizer(토큰 단위로 분류, 정규
화 등 전처리해주는 모듈)를 사용할
수 있음
  이렇게 전처리된 문서에 가능한 모
든 패턴들을 매칭하기 위해 시도
  성공하면 그 패턴에 따른 유형으로
분류(classified)됨
  그리고 그 다음 단계로 계속 진행
됨
한국외국어대학교 언어인지과학과 [email protected]
482
 만일 한 단계에서 여러 패턴이 적용될 수
있으면
  최적의 매치(match)를 위한 일정 규
칙들이 삽입되어야 함
  가령 <최장일치법(the longest
match)>을 이용하거나
  아니면 여러 다른 규칙들 중에 우선
순위(priorities)를 부여함으로써 최적의
후보를 선택함
한국외국어대학교 언어인지과학과 [email protected]
483
 A high-quality classifier의 구축
 [1] 수작업으로 Name 태그가 붙여진
충분한 양의 코퍼스를 준비
 [2] 이 수작업 코퍼스와 프로그램에 의
해 자동 태깅된 결과물을 비교
 [3] 즉 처음에는 간단한 패턴을 구성하
여 비교를 한 후 거기서 발견되는 패턴
들을 추가함 (예를 들어 다음 패턴)
capitalized-word+ ‘,’ number-below-100 ‘,’
 위의 패턴은 예를 들어 “Fred
Smith,42, was appointed chief
dogcatcher.”와 같은 문장에 실현된
대문자열을 인명으로 인식하게 하는
패턴이 됨
한국외국어대학교 언어인지과학과 [email protected]
484
 Cf. 요구되는 언어자원 및 규칙
 일련의 word list
 유명한 회사명(IBM, Ford) 목록
 공통되는 first names(Fred, Susan)
 ‘Fred Smith’와 ‘Mr.Smith’가 한 문서에
나타날 때 동일인임을 알게 하는 일련
의 mechanism을 포함해야함
 특히 태깅 중의성이 있는 경우에 유
용함
 예: ‘Robert Smith Park’가 인명이거
나 지명(공원)일 수 있을때
  뒤에 ‘Mr.Park’가 실현되면 이를
인명으로 인식함
한국외국어대학교 언어인지과학과 [email protected]
485
 3. 자동학습(Automated Training)
 현재 신문기사 텍스트에 적용한 영어의
네임태거 성능:
 특정 주제에 대해 train된 텍스트에 기
반하여 그 분야의 텍스트를 테스트할
때 약 96%의 성공율을 보임
 하나의 topic에 대해서만 train한 뒤 그
외 다른 topic에 대해 테스트를 한 경
우 93%의 성공율 보임
 그러나 위와 같이 수작업을 대신하는 자
동학습의 필요성
 위처럼 수동코퍼스와 비교해서 패턴을
추가해가는 방법을 위해서는 숙련된
전문가가 요구됨
 또한 다양한 언어와 다양한 영역(즉
domain에 따라 등장하는 고유명사 유
형이 다름)에서 이러한 태거가 요구됨
한국외국어대학교 언어인지과학과 [email protected]
486
 자동 태거를 개발하기 위한 시도
 일반적으로 수작업된(hand-annotated)
텍스트 코퍼스에 기반
 통계적 모델(statistical model)이나 수학
적 규칙(symbolic rules)을 이용함
 예: People’s names을 태깅하고자 함
 모든 토큰은 다음5가지 경우의 하나
[1] 인명의 처음(start of a name)
[2] 인명의 중간(middle of a name)
[3] 인명의 끝(end of a name)
[4] 단일 인명(one-token name)의
처음이면서 동시에 끝
 [5] 인명의 일부를 이루지 않음




 모든 단어 wi는 위의 5가지 태그 tagi
의 한 경우에 해당할 것임
한국외국어대학교 언어인지과학과 [email protected]
487
 학습코퍼스에 기반하여 각 단어가 이중
하나의 태그를 가질 확률값 P(tagi|wi)을
구함
 예: 만일 wi=John이라면 이것이 [1]의
경우거나 [4]의 경우일 확률이 높을 것,
wi=eat라면 위의 확률값이 거의 제로
에 가까울 것임
 이때 새로운 문장이 주어지면, 실제 어휘
토큰과 무관하게 P(tagi)값을 구할 수있음
  그 다음 Viterbi 알고리즘을 이용하여
최적의 태그 연쇄를 찾아내도록 함
 이 결과에 따라 문장의 이름들을 태깅하
는 작업이 수행됨
한국외국어대학교 언어인지과학과 [email protected]
488
 그런데 이렇게 각 단어에 대한 태깅 확률
만을 구하는 것은 충분하지 않음
 예: ‘Mr.’는 그 다음 오는 단어가 인명일
지 아닐지에 대한 좋은 clue가 됨.
 마찬가지로 ‘says’는 앞의 단어가 인명
일지에 대한 좋은 clue가 됨
  더 정교한 모델이 가능해짐:
 즉 태깅 확률이 <전-현재-후> 단어
들에 의존적(즉 P(tagi|wi-1, wi, wi+1))
이라는 가정
 그러나 실제로 이러한 모델은 아주 현
실적이지 않음
  학습코퍼스에서 이러한 3단어 조
합들을 모두 발견할 수 없음
  보다 많은 정보, 많은 데이터가 요
구됨
  따라서 많은 데이터없이 가능한
계산을 위한 여러 방법론들이 제안됨
한국외국어대학교 언어인지과학과 [email protected]
489
 [1] Decision-tree name tagger
 Sekine, Grishman, Shinnou 1998
 각 토큰에 일련의 테스트를 하여 태그
확률값을 계산함
  학습 코퍼스로부터 이러한 확률 결
정트리들이 자동으로 생성됨 (트리는
확률값과 ‘대문자’같은 일련의 조건들
을 결합하여 생성)
 그러나 모든 조건들이 계산되는 것이
아니라 코퍼스에 나타난 일정 수의 의
미있는 조건들만이 고려됨
  이렇게 확률값이 계산되면 Viterbi
알고리즘을 이용하여 가장 유력한 방법
을 찾게 됨
한국외국어대학교 언어인지과학과 [email protected]
490
 [2] Maximum-entropy(ME) model
 Borthwick et al. 1998, Mikheev & Grover
1998
 각 조건, 확률값들을 각각(separately) 계
산해낸 뒤 다양한 방식으로 이들을 서로
결합하는 방식
  각각의 clue들이 학습코퍼스에서 혼
자 등장하였으나 나중에 함께 실현되기
도 하는 경우 유용하게 사용됨
 예: ‘Mitkov’을 학습코퍼스에서 family
name으로 관찰하였고,
 또한 ‘person says’ 패턴이 있었던 경우,
 만일 현재 데이터에서 ‘Mitkov’가 나타
나고,
 뒤에 ‘says’가 온다면
 현재 단어를 인명으로 분석할 확률을
높여주게 됨
한국외국어대학교 언어인지과학과 [email protected]
491
 만일 텍스트에서 ‘Mitkov says’를 발견하
게 되면
  이러한 연쇄는 인명을 인식하는 확
률값 계산에 영향을 주게 됨
 앞의 <Decision-Tree> 방식에서는 만일
‘Mitkov says’라는 조합 자체를 학습코퍼
스에서 가지지 못한 경우
 이러한 연쇄를 인식하지 못할 것이
므로
 현재의 ME 방식보다 한계를 가지게
됨
 ME 모델은 자동으로 학습되지 않은 몇가
지 조건들이나 규칙들을 직접 패턴으로
구축하여 이를 자동 학습을 위한 자원으
로 사용할 수 있음
  따라서 자동 학습뿐 아니라 이와 같
이 수동으로 만들어진 패턴들을 통해
서 ME 결과가 향상될 수 있음
한국외국어대학교 언어인지과학과 [email protected]
492
 [3] Hidden Markov Models (HMMs)
 Bikel et al. 1997 – Name recognition
에 사용함
 기본 아이디어
 각 이름(name) 유형(즉 인명, 조직명,
지명 등)에 각각 분리된 통계적 모델
을 구성
 이름이 아닌 단어열에 대한 통계적
모델을 구성’
 그다음 이러한 확률값들을 결합하여
하나의 combined model을 구성함
 그후 Viterbi 알고리즘을 이용해 최
적의 후보열을 찾아냄
한국외국어대학교 언어인지과학과 [email protected]
493
 이상의 자동학습 방법론의 공통점
 결과의 성능이 좋으려면 엄청난 크기의
학습 코퍼스가 반드시 요구됨
 실제로 많은 코퍼스에는 상당수의
name들이 있으므로 이러한 이름 태
그들은 상대적으로 빠르게 주석되어
질 수 있음
한국외국어대학교 언어인지과학과 [email protected]
494
 반자동 vs. 자동화 시스템
 [1] 반자동 시스템
 사용자가 일반화된 패턴들을 검사하
여 최종 판단을 내림
  PET 시스템(Yangarber &
Grishman 1997)
 사용자가 삭제하거나 또는 임의적인
것 표시, 의미계층구조를 고려하여
NP를 생성하거나 함
 가령 <인명>을 찾을때 ‘Newsweek
reported that’과 같은 부분은 삭제
하게 됨
 [2] 자동화 시스템
 다양한 주석코퍼스를 이용하여 이를
일반화함
  수학적 계산과 통계를 이용하여
일반규칙을 추출해냄
한국외국어대학교 언어인지과학과 [email protected]
495
 자동 학습 방법은 Semi-structured text
에서 효과적임
 Classified ads
 Announcements
 Other materials with a regular,
repetitive structure
 Cf. 그외의 더 복잡한 언어현상의 텍
스트에서는 수동으로 개발한 시스템
에 비해서 아직 그 효율성이 현저히
떨어짐
한국외국어대학교 언어인지과학과 [email protected]
496
 A Bootstrapping Approach
 위와 같은 자동학습이 아닌, 실제의 최
소한의 수동 태깅 작업만으로도
(bootstrapping 방법을 적용하여) 충분
히 만족스러운 결과를 보이는 태거의
개발이 가능함
 즉, 잘 알려진 names들에 대한 작은
집합과 큰 용량의 원시 코퍼스를 가지
고 시작함
 출발점이 된 이러한 알려진 name들을
통해 name에 고유한 자질들을 포착함
 또한 이들이 텍스트에 나타난 결과를
보고 그 문맥 정보(contextual clues)를
인식해냄
한국외국어대학교 언어인지과학과 [email protected]
497
 Bootstrapping 방법론
 위의 clue들을 사용하여 추가적인
name들을 찾아내고,
 이들은 다시 추가적인 clue들을 찾아
내는 도구가 됨
  bootstrapping approach 방법론
 Strzalkowski & Wang 1996
 Cucerzan & Yarowsky 1999
 Collins & Singer 1999
 Cf. Local-Grammar Graph(LGG)
 M. Gross (1999)
 부트스트랩 방식 방법론의 소개
 Cf. www-igm.univ-mlv.fr/~unitex
한국외국어대학교 언어인지과학과 [email protected]
498
 4. Name tagger의 활용
 모든 텍스트에는 많은 수의 name들이
나오므로, Name tagger는 많은 언어 분
석 시스템의 중요한 첫 단계가 됨
 Event Extraction
 Parsing
 Machine Translation 등
 기계번역에서 인명을 제대로 인식
하지 못하고 이들 ‘번역’해내는 오
류가 매우 빈번하게 나타남
한국외국어대학교 언어인지과학과 [email protected]
499
 <Term-based Document Retrieval>에서
도 매우 유용함
 일반적으로 사용자의 정보검색 질의문
유형은 ‘a pair of words’로 이루어짐
  일반적으로 문서에서 검색을 할때
이들을 각각 검색을 하게 되나,
 만일 이 전체가 하나의 name인 경우
이들이 함께 실현된 경우를 요구하게
될 것임
  네임태거는 이러한 경우를 위한
(partial) index를 구성하는 데 유용하게
사용됨
 중요한 색인어의 많은 경우는 names임
한국외국어대학교 언어인지과학과 [email protected]
500
 더욱이 이러한 names들이 <people>
<organizations> <Locations> 등으로 분
류되어 있다면 더욱 유용할 것임
 예를 들어 어느날 일간지 뉴스에 등장한
모든 회사이름들을 색인화할 수 있다면
이런 목적으로 뉴스를 빠르게 scan하려는
사용자에게는 매우 유용한 정보가 될 것
 이 문제는 일반적으로 다음과 같은 복합
어(또는 multi-word units (MWU) 유형)과
공통되는 문제임




복합명사 (특히 NN유형)
관용구
이메일, 주소, 전화번호 등의 패턴
수사 체계의 복합 표현 등
한국외국어대학교 언어인지과학과 [email protected]
501
 정보 검색과 복합형 키워드 필요성에 대해
생각해 보기
 현재의 정보검색시 사용자가 키워드로
‘ab cde fg’와 같은 문자열 연쇄를 삽입
하면 검색엔진은 우선 이들이 모두 연이
어 나타난 문서부터 찾아주므로 사용자
는 왜 이러한 복합어 인식이 필요할까
생각하게 된다.
 즉 그냥 이들이 연이어 나타난 모든 문
자열(즉 최장일치에 의한 결과)을 우선
찾으면 되는데 하는 생각이 들 수 있음
 문제는 여기 있는 것이 아니라, 이러한
검색을 위해서 시스템은 반드시 모든 텍
스트들을 미리 <색인(indexing)>해야
한다는 점에 있다. 즉 사용자를 위한 실
제 소요 시간과 속도 등의 문제 해결을
위해.
한국외국어대학교 언어인지과학과 [email protected]
502
 이 경우 문서의 양이 기하급수적으로 증
가할 때,
 가령 1개의 문장이 모두 10개의 단어
(또는 명사나 형용사 등과 같은
content word로만 한정한 경우에도)로
구성되어 있다면
 이를 위한 모든 가능한 색인을 위해서
는
 어마어마한 경우의 수의 단어열 조합들
을 색인어로 등재해야 한다는 점
 최소의 경우는 그냥 각각의 낱낱의 단어
만을 색인어로 등재하는 방법
  아니면 2개씩, 3개씩, 4개씩(n개까지)
등등의 모든 조합의 가능성을 고려해서
색인 목록에 추가해야 함
한국외국어대학교 언어인지과학과 [email protected]
503
 5. 사건추출(Event Extraction)
 앞서보다 더 복잡한 프로세싱이 요구됨:
텍스트에서 특정 유형의 관계
(relationship)나 사건(event)의 모든
instances들을 추출(extracting)하고자 함
 예1: <세미나 공지를 위한 파일을 가
지고 있고, 다음과 같은 정보들을 리스
트로 가진 table을 구축하고자 함>
 Speaker
 Title
 Date
 Time
 Location of each seminar
 이것은 사실 매우 단순한 작업임  매
우 반복적인 패턴이 될 것이기 때문
한국외국어대학교 언어인지과학과 [email protected]
504
 예2: <신문기사들을 scan하여 인사이동
(executives starting or leaving
management positions)에 대한 정보를
추출하고자 함>
 다음과 같은 텍스트가 주어진 경우,
[1] Harriet Smith, vice president of
Ford Motor Corp., has been
appointed president of
DaimlerChryslerToyota.
한국외국어대학교 언어인지과학과 [email protected]
505
 다음과 같은 2개의 database records를
생성하고자 함
 IE: 텍스트로부터 2개의 filled
templates (database entries)를 생성
하고자 함)
Person
Harriet Smith
Position
Vice president
Company
Ford Motor Corp.
Start/leave job
Leave job
Person
Harriet Smith
Position
President
Company
DaimlerChryslerToyota
Start/leave job Start job
한국외국어대학교 언어인지과학과 [email protected]
506
 Event Regonizers
 이를 위해 앞서 name tagging의 방식
을 사용
  일련의 정규표현들(regular
expressions)을 구성함
 즉 관심있는 사건들을 포착할 수 있
는 형태를 구성
 예: 다음과 같은 패턴을 만들어서 아
래의 template와 연결시킴
capitalized-word+1, ‘appointed’
capitalized-word+2 ‘as’ ‘president’3
Person
Position
Company
2
3
1
Start/leave job
Start job
한국외국어대학교 언어인지과학과 [email protected]
507
 위의 template에서 번호가 붙은 items
은 앞서 정의된 패턴 구조에서 동일한
번호가 붙어있는 단어들로 채워지게
됨
  위의 패턴은 가령 다음과 같은 문장
을 인식하게 하며, 이를 통해 위의 템
플릿이 채워짐
[2] Ford appointed Harriet Smith as president
한국외국어대학교 언어인지과학과 [email protected]
508
 가능한 문장 변이의 범위 (Possible Variation
of Sentence Structures)
 위와 같은 방식으로 실제 텍스트를 인식하
는 것은 쉽지 않음
  실제 가능한 문장 변이들이 너무나 다양
하기 때문
 아래 몇 가지 문장 변이의 예
 [1] Company names이 등위접속된 경우
 Abercrombie and Fitch appointed
Harriet Smith as president
 [2] Company descriptors와 수식어 등이
결합하는 경우
 IBM, the famous computer
manufacturer, appointed Harriet
Smith as president
한국외국어대학교 언어인지과학과 [email protected]
509
 [3] Sentence Modifiers가 등장하는 경우
 IBM unexpectedly appointed Harriet
Smith yesterday as president
 [4] Tense의 변화
 IBM has appointed/will appoint
Harriet Smith as president
 [5] Clause structure 변화(수동문,관계절..)
 Harriet Smith was appointed by IBM
 Harriet Smith, who was appointed
president by IBM,…
 [6] Nominalization(명사구 변형)
 IBM announced the appointment of
Harris Smith as president
한국외국어대학교 언어인지과학과 [email protected]
510
 [7] Position name(직위명)의 변화
 IBM appointed Harriet Smith as
executive vice president for
networking
 [8] Conjunction(문장의 연결-복문)
 IBM declared a special dividend
and appointed Harriet Smith as
president
 [9] Anaphoric reference(대명사화 문제)
 IBM has made a major
management shuffle; the company
appointed Harriet Smith as
president this week
 [10] Need for inference(추론의 필요성)
 Thomas J. Watson resigned as
president of IBM, and Harriet Smith
succeeded him
한국외국어대학교 언어인지과학과 [email protected]
511
 Anaphoric References의 문제
 Anaphora resolution mechanism을 연
동시켜야 함
 예를 들어 템플릿안에 대명사의 선
행사를 할당하기 위하여 동일 type
의 가장 가까운 item을 찾아 이를
(‘it’, ‘the company’)와 같은 형태로
채워넣을 수 있어야 함
 Inference Mechanism의 문제
 앞서 ‘succeed’와 같은 문장에 대한 추
론(inference) 메카니즘을 위해서는,
<직위 변동>정보가 하나의 분리된 문
장으로부터 추출되는 것이 아니라 여러
개의 문장으로부터 취해지는 것이라는
것이 가정되어야 함
  대부분의 정보추출 시스템에서 추론
은 거의 다루어지지 못하고 있으며, 대
체로 위의 대명사 해결방안에 의존적인
매우 특정한 규칙들에 의해 처리되고
있는 실정임
한국외국어대학교 언어인지과학과 [email protected]
512
 실제로 위의 문제들은 이벤트 패턴들을
추가함으로써 거의 해결될 수 있음
 위의 anaphora와 inference문제를 제외
하고는.
 그러나 그 결과는 매우 복잡한 패턴들이
될 것임
 이러한 복잡도는 사실상 이 문제들이 근
본적으로 보다 일반적인 언어학적 현상의
문제들과 닿아있다는 인식을 통해 해결될
수 있음
한국외국어대학교 언어인지과학과 [email protected]
513
 6. 부분파싱(Partial Parsing)
 위의 문제들을 해결하기 위해, 패턴을 구성
할때, 일정 type의 문장 구성성분들을 사용
하는 방식
 [1] <NP>의 부분파싱
 예를 들어 people이나 organization의
last name이나 <Noun Phrase(NP)>,
<Sentence Modifier>등을 우선 인식함
 Name은 네임태거를 이용하여 인식
 일반적 NP을 인식하는 문제는 훨씬 어
려운 문제 유형
  따라서 제한된 유형의 NP만으로
한정하여 이를 인식하는 방식 채택
 예를 들어 왼쪽에 수식어를 취하는
NP 유형이나 위의 [2]처럼 오른쪽에
동격절을 가지는 NP유형은 상대적
으로 인식이 용이함
 NP 인식 문제는 partial(또는 shallow)
parsing의 한 예가 됨
한국외국어대학교 언어인지과학과 [email protected]
514
 [2] <VP>의 부분파싱
 Tense의 변이현상은 동사구(verb group)
의 모든 경우들을 고려함으로써 포착하는
것이 가능
 예: appointed, has appointed, will
appoint 등
 따라서 유한한 패턴으로 인식이 가능
 즉, 이러한 과정을 통해 단순한 <pattern
matching>방식이 아닌 일련의 ‘cascade
of pattern matching’이 되어,
 각 패턴매칭 단계를 통해 그 다음 단계를
위한 구성성분 구조로 생성되어 감
 Appelt et al. 1993
한국외국어대학교 언어인지과학과 [email protected]
515
 패턴 적용 단계에서 하나 이상의 토큰에
대하여 하나의 constituent를 구성할 수
있음
  이 constituent 은 1개의category와
1개 이상의 feature를 가질 수 있음
  그 다음 단계에서 위의 constituents
들과 다시 매칭되는 패턴들이 포착됨
  이러한 방식으로 마지막 단계에 이르
면 events를 인식하고
 이때 앞서 살핀 바와 같은 DB 템플릿에
대응되는 feature들을 가진 event
constituents들을 생성하게 됨
한국외국어대학교 언어인지과학과 [email protected]
516
 위의 단계별 방식은 순차적으로 다음과
같이 작동함
[3] Ford Motor Company has appointed
Harriet Smith, 45, as president.
한국외국어대학교 언어인지과학과 [email protected]
517
 [1] Name tagging은 다음 박스안의
constituent을 생성하게 됨
Ford Motor Company has appointed Harriet Smith, 45, as president.
Name type=org
Name type=person
 [2] NP 분석은 다음을 생성함
Ford Motor Company has appointed Harriet Smith, 45, as president.
Name type=org
Name type=person
np head=president
한국외국어대학교 언어인지과학과 [email protected]
518
 [3] VP 분석은 다음을 생성함
Ford Motor Company has appointed Harriet Smith, 45, as president.
Name type=org
Name type=person
np head=president
vg head=appoint
 [4] 최종적으로 전체 Event는 다음과 같이
인식됨
Ford Motor Company has appointed Harriet Smith, 45, as president.
Event person=Harriet Smith
position=president
company=FordMotorCompany start/leave job=start job
한국외국어대학교 언어인지과학과 [email protected]
519
 7. 평가(Evaluation) 및 활용
(Applications)
 US 정부지원 평가
 이 분야의 발달에 크게 기여함
 MUCs(Message Understanding
Conferences)
 <Named entity task> MUC-6
(1995)
 네임태깅은 상당 수준에 이르렀으나,
event 추출 기술은 아직 많이 미흡한
수준
 이 부분은 언어학적으로 더욱 복잡한
패턴들과 언어학적 분석이 요구되기 때
문, 또한 경우에 따라 추론이 요구되기
도함
 현재 여러 이벤트 타입에 대한 평가 결
과를 보면 약 60% 이하의 수준에 머물
러있음 (=위의 슬롯들을 채우는 데에
있어 recall과 precision의 평균값)
한국외국어대학교 언어인지과학과 [email protected]
520
 활용될 수 있는 현실적 시나리오
 [1] 현재 수동으로 텍스트에서 정보를 추
출하는 상황
 [2] 자동으로 정보를 추출하고 싶지만,
이를 위해서는 텍스트가 일정 구조화된
데이터베이스로 변환되어야 하는 상황
 예1: 공장에서 부속품이 수리된 경우
에 대한 리포트들을 가지고 있는데 이
때 문제들의 패턴을 찾아내기 위하여
이 리포트를 분석하고자 할 때
 예2: 사업이나 국제무역 관계 종사자
들이 수많은 뉴스를 모아서 이로부터
people, companies, government
activities 등에 대한 데이터를 정리하
고자 할 때
 이런 경우 이들이 일정 <tabular
databases> 형태로 변환된다면 이러
한 검색 작업은 보다 용이해질 것임
한국외국어대학교 언어인지과학과 [email protected]
521
 [3] 의료기록(medical records)의 리뷰
 Sager et al. (1987)
 병원에서 생산되는 엄청난 양의 환자
데이터의 대부분은 text form으로 되
어 있음
 환자 치료를 위한 연구와 모니터링에
서는 이러한 데이터들의 분석이 요구
됨
 즉 증상(diagonosis)과 처방(treatment)
사이의 관계나 처방과 그 회복
(outcome) 사이의 관계를 고찰하기 위
하여
 이를 위해서는 텍스트 데이터에 대한
엄청난 수동 리뷰를 필요로 하게 됨
 만일 이러한 텍스트를 자동으로 정형
화된 포맷으로 변환하고, medical
criteria에 기반한 범주들로 분류할수
있다면 이러한 수동 노력을 줄일 수 있
게됨
한국외국어대학교 언어인지과학과 [email protected]
522
 [4] 재난재해 위험 및 전조 알림 시스템
 텍스트에 나타나는 재난 전조 관련 패
턴을 찾아내어 정형화함
 [5] 특허문서의 특허 관련 검색 시스템
 특허 패턴을 정형화함
 [6] 리뷰 오피니언 분류 시스템
 맛집, 영화, 호텔 등에 대한 사용자 후
기글의 <긍정> 및 <부정> 평가에 대
한 자동 분류를 위한 패턴 추출
한국외국어대학교 언어인지과학과 [email protected]
523
 IE References
 MUC-6 (1995), MUC-7
 AAAI-99 Workshop on Machine
Learning for Information Extraction
 http://www.isi.edu/~muslea/RISE/ML4IE
 References
 Appelt,D., J.Hobbs, J.Bear, D.Israel,
M.Kameyama, and M.Tyson, 1993,
‘FASTUS: a finite-state processor for
information extraction from realworld text’ Proceedings of the 13th
International Joint Conference on
Artificial Intelligence (IJCAI’93)
Chambery, 1172-8
 Collins,M., Y.Singer 1999,
‘Unsupervised models for named
entity classification’ Proceedings of
the 1999 Joint SIGDAT Conference
on Empirical Methods in Natural
Language Processing and Very Large
Corpora (college Park,Md.),100-10.
한국외국어대학교 언어인지과학과 [email protected]
524
 Cowie,J., and W.Lehnert, 1996,
‘Information Extraction’ Communications
of the ACM, 39(1), 80-91
 Cucerzan,S., and D.Yarowsky, 1999,
‘Language independent named entity
recognition combining morphological
and contextual evidence’ Proceedings of
the 1999 Joint SIGDAT Conference on
Empirical Methods in Natural Language
Processing and Very Large Corpora
(college Park,Md.), 90-9.
 Grishman,R., and B.Sundheim, 1996,
‘Message Understanding Conference-6: a
brief history’ Proceedings of the 16th
International Conference on
Computational Linguistics(COLING’ 96)
(Copenhagen), 466-71
한국외국어대학교 언어인지과학과 [email protected]
525
 Mikheev,A., and C.Grover, 1998, ‘LTG:
description of the NE recognition system
as used for MUC-7’ Proceedings of the
7th Message Understanding Conference
(MUC-7), http://www.itl.nist.gov/
iaui/894.02/ related_projects/muc
 Strzalkowski,T. and J.Wang, 1996, ‘A selflearning universal concept spotter’
Proceedings of the 16th International
Conference on Computational
Linguistics(COLING’ 96)(Copenhagen),
931-6
 Yangarber,R., and R.Grishman, 1997,
‘Customization of information extraction
systems’ Proceedings of the International
Workshop on Lexically Driven
Information Extraction (Frascati).
 Yangarber,R., R.Grishman, P.Tapanainen,
and S.Huttunen, 2000, ‘Automatic
acquisition of domain knowledge for
Information extraction’ Proceedings of
the 18th International Conference on
Computational Linguistics(COLING 2000)
(Saarbruchen), 940-6
한국외국어대학교 언어인지과학과 [email protected]
526
XVI. Exercise:
Opinion Classification
한국외국어대학교 언어인지과학과 [email protected]
528
한국외국어대학교 언어인지과학과 [email protected]
529
한국외국어대학교 언어인지과학과 [email protected]
530