2 1 Regular Expressions

https://youtu.be/zfH2ADGtzJQ

image
image
image

| 는 ‘또는’을 의미한다.

image

u?의 경우 u는 있어도 되고 없어도 된다는 의미이다. o+는 적어도 o가 한번 이상나와야 한다. o*는 0번또는 그 이상 여러번 나올수 있다. 점 . 는 어떤 캐릭터도 될수 있다. 

image

여기서 ^는 시작을 의미한다. $는 마침을 의미한다. 

2 3 Word Tokenization
https://youtu.be/f9o514a-kuc

image

모든 nlp에서 데이터는 기본적으로 token 단위로 나누어야 한다. 

image

같은 어원, 어근을 가지는 단어들을 어떻게 처리할것인지 단수, 복수처럼 상황에 따라 단어의 형태가 조금 바뀌는 경우 같은 단어로 볼것인지 아닌지를 결정해야 한다.

image

 token은 중복되는 것을 상관하지 않고 각각 따로 갯수를 센다. type의 경우 동일한 단어는 갯수에서 제외한다.

image

각 tokens의 갯수가 types보다 큰것을 알수 있다.

image

tokens, types단위로 나눌때 흔히 발생하는 문제를 보여주고 있다.

image

각 언어별 특성에 따른 문제점들을 보여주고 있다.

image
image

중국어나 일본어처럼 띄어쓰기가 없는 경우 사용할수 있는 방법으로 maxium matching word segmentation algorithm이 있는데 이를 보여주고 있다.

2 4 Word Normalization and Stemming
https://youtu.be/ZhyLgPnOeh0

아래에 단어를 여러방법으로 정리하는 것을 보여주고 있다. 

image
image

case를 한 방향으로 통일하는 방법이다.

image

한 lemma를 기반으로 하는 단어들을 하나로 통일해준다. 

image

어근과 접미, 접두의 합으로 표현할수도 있다.

image
image

영어 단어를 정리하는데 porter algorithm을 많이 사용한다.

image

영어에서 ing 를 정리할때 모음이 있는 경우만 제거한다.

2 5 Sentence Segmentation
https://youtu.be/UL4Ez56AMVo

문장단위로 데이터를 잘라서 처리하는 방법을 보여주고 있다.

!와 ?를 기준으로 문장을 구분하는 것은 불확실하다. 점 .를  기준으로 나누는 경우도 단어의 약자나 숫자에 사용되는 . 때문에 어려움이 있다. 그래서 추가 작업이 필요하다. 이때 사용할수 있는 것이 hand-written rules, regular expression, machine learning 등등이 있다.

문장의 끝을 확인하는 간단한 방법으로 decision tree를 이용하는 것이 있다. 

dot 앞뒤에 대문자가 사용된경우 약자에 사용된 dot일 확률이 높다. dot 뒤에 대문자가 오는 경우 dot이 문장 끝일가능성이 높다. 단어 the 앞에 dot 이 사용된 경우 dot이 문자의 끝일 확률이 높다. 

Comments are closed.

Post Navigation