-
Notifications
You must be signed in to change notification settings - Fork 0
1. 단어의 구조 찾기
Lucy Park edited this page Nov 27, 2014
·
1 revision
언어(language)는 복잡하다. 따라서 그것을 통째로 놓고 이해하려 하기보다는 단어와 같은 세밀한 단위로 나누고, 그들 간 관계를 보는 것이 좋다. 이 때, 단어의 구조를 찾는 것을 우리는 **형태소 분석(morphological parsing)**이라고 한다.
언어를 보는 다양한 관점
- morphology: 단어의 다양한 형태와 기능을 살펴봄
- syntax: phrase, clauses, sentence등의 배치를 탐구함
- phonology: 발음법
- orthography: 철자법
- semantics: 언어표현의 의미 구조
- etymology/lexicology: 단어의 변천
형태소 분석은 얼마나 어려울까? 케바케다. 어떤 언어는 whitespace를 기준으로 단어가 나뉘지만(ex: 대부분의 영어), 그렇지 않은 언어도 많다.(ex: CJK) 어떤 언어는 단어의 형태가 변하지 않지만, context에 따라 단어의 형태가 변하는 경우도 많다.
- 단어(words): 최소의 의미 단위
- 형태소(morphemes): 단어를 구성하는 더 작은 구성물
- 자소(grapheme) 또는 음소(phoneme)로 표현됨
- 단어, 형태소, 구문(phrase) 간의 구분은 항상 논란거리
- 아랍어, 희랍어: Token(clitic)들이 합쳐져서 구문을 이룸
- 중국어, 일본어, 태국어: whitespace를 사용하지 않음
- 한국어: 단어보단 크고 구문보다는 작은 "어절" 사용.
생각할거리
- 합성어(ex: newspaper, 데이터마이닝)
- Text normalization: "won't" -> "will not"
- 어절 vs 토큰?
- "lexeme" = 단어(word)의 언어적 형태와 의미의 집합
- lexeme inflection: 단어의 형태를 바꾸는 것 (ex: mouse, mice, mouses)
- lexeme derivation: 단어의 lexical category를 바꾸는 것 (ex:receiver, receive)
- "lexeme"은 다시 동사, 명사, 형용사, 부사 등의 lexical category - 품사(POS) - 로 구분됨
- "morpheme": 단어의 의미를 구성하는 의미 단위
- ex: dis-agree-ment-s
- "allomorphs": 형태소가 여러 형태를 가지는 경우 (normalization 필요)
- ex: 봤=보았
생각할거리
- stemming vs morpheme analysis
구분 | 설명 | 언어 |
Isolating (analytic) | 대부분 하나의 단어가 하나의 형태소 | 중국어, 베트남어, 태국어, 영어(?) |
Agglutinative | 하나의 형태소는 한 번에 하나의 기능을 함 | 한국어, 일본어, 핀란드어, 타밀어 |
Fusional | 하나의 형태소가 한 번에 하나 이상의 기능을 함 | 아랍어, 체코어, 라틴어, 산스크리트어, 독일어 |
- Agglutinative, Fusional은 합쳐서 Synthetic language라고도 부름(한 단어에 한 개 이상의 형태소가 있는 경우)
- 그 외에도 단어의 구성법에 따라 Concatenative, Nonlinear 언어가 있음
-
Irregularity
트위터 트렌드에 "계란말" 이란게 떠 있는데, 이거 설마 "계란말이"에서 "이"를 조사로 인식한건가? pic.twitter.com/WbchgoYojz
— 디버거 (@debuggerD) October 15, 2014 -
Ambiguity
-
Unknown words: special terms, foreign names, mixed languages/dialects
- 사전 탐색
- Finite-state morphology
- Unification-based morphology
- Functional morphology
- Morphology induction
- 형태소는 1) 구성물을 찾는 관점 2) 단어가 어떤 기능을 하는지 찾는 관점에서 볼 수 있다.
- 형태소를 분석적, 발생적/unsupervised 관점에서도 볼 수 있다.
- 한국어 등 agglutinative 언어는 형태소 수준에서 단어를 분리할 수 있는 반면, 체코어, 아랍어 등 fusional 언어는 그게 어렵다.
위 내용은 2014년, 서울대학교 데이터마이닝 센터의 내부 스터디 때 작성된 자료이며, 스터디는 Multilingual Natural Language Processing 책을 중심으로 이루어졌습니다. 내용은 CC-BY 4.0 라이센스에 따라 자유롭게 수정, 배포하실 수 있습니다.