Data Science/NLP

Text Preprocessing (텍스트 전처리)

준나이 2018. 11. 25. 19:40

[Text Preprocessing]



Tokenising / stemming / lemmatising / pos tagging / stop words

분석의 정확성을 높이고, 단어 수를 줄여 계산 복잡성을 감소시키기 위해 사용



1. Tokenising : 


tokenising : text의 본문을 토큰(token/word) 단위로 쪼개는 것


Tokenising 전 :

['Hello Mr. Smith, how are you doing today?', 'The weather is great, and Python is awesome.', 'The sky is pinkish-blue.', "You shouldn't eat cardboard."]


Tokenising 후 :

 ['Hello', 'Mr.', 'Smith', ',', 'how', 'are', 'you', 'doing', 'today', '?', 'The', 'weather', 'is', 'great', ',', 'and', 'Python', 'is', 'awesome', '.', 'The', 'sky', 'is', 'pinkish-blue', '.', 'You', 'should', "n't", 'eat', 'cardboard', '.']


state-of-the-art vs state of the art

tokenising 결과에 따라 state of the art라는 단어가 등장했을 때, 예술의 국가(혹은 상태)로 볼 것인가? 아니면 최신식이라는 의미로 볼 것인가? 하는 문제가 존재




2. Morphological Analysis (text normalisation)


1) stemming : token을 축약형으로 바꾸는 가정

2) lemmatising : token을 품사 정보가 보존된 기본형으로 바꿈

Word

Stemming

Lemmatisation

Love

Lov

Love

Loves

Lov

Love

Loved

Lov

Love

Loving

Lov

Love

Innovation

Innovat

Innovation

Innovations

Innovat

Innovation

Innovate

Innovat

Innovation

Innovates

Innovat

Innovate

Innovative

Innovat

Innovate


3. Part-Of-Speech Tagging (POS) : 


pos tagging : token의 품사 정보를 할당 (형태소 분석)


하지만 조사, 어미가 발달한 한국어의 경우 정확한 분석이 정말 어렵습니다. 한국어는 교착어 성질을 지니는 언어이기 때문입니다. 즉 어근에 파생접사나 어미가 붙어서 단어를 이룹니다. 바꿔 말하면 한국어를 분석할 때 어근과 접사, 어미를 적절하게 나누어야 하는데, 이게 쉽지 않다는 얘기입니다. 




3. Stopwords :

stopwords : 너무 자주 등장하여 feature로써의 역할을 하지 못하는 것들


We would not want these words taking up space in our database, or taking up valuable processing time. As such, we call these words "stop words" because they are useless, and we wish to do nothing with them.


english stop words:

['ourselves', 'hers', 'between', 'yourself', 'but', 'again', 'there', 'about', 'once', 'during', 'out', 'very', 'having', 'with', 'they', 'own', 'an', 'be', 'some', 'for', 'do', 'its', 'yours', 'such', 'into', 'of', 'most', 'itself', 'other', 'off', 'is', 's', 'am', 'or', 'who', 'as', 'from', 'him', 'each', 'the', 'themselves', 'until', 'below', 'are', 'we', 'these', 'your', 'his', 'through', 'don', 'nor', 'me', 'were', 'her', 'more', 'himself', 'this', 'down', 'should', 'our', 'their', 'while', 'above', 'both', 'up', 'to', 'ours', 'had', 'she', 'all', 'no', 'when', 'at', 'any', 'before', 'them', …]