본문 바로가기

NLP9

NLTK 패키지 활용한 텍스트 전처리 (3) 불용어 제거 Stopword (불용어) : 큰 의미가 없는 즉 불필요한 용어를 의미합니다. ex(I, and 등) Stopword(불용어)를 제거하지 않게되면 자주 등장하는 단어들로 인해서 분석에 부정적인 영향을 미칠 수 있습니다. 예를들어 너무 자주 등장하는 단어로 인해서 다른 단어들의 빈도수를 파악하기 어려운 문제등이 발생할 수 있습니다. NLTK 패키지에서 제공하는 gutenberg data를 통해서 불용어 제거 예제를 해보도록 하겠습니다. 위 처럼 그냥 글자 개수많으로도 불필요한 단어들이 많이 제거되는 것을 확인할 수 있습니다. 그렇다면 길이가 짧은 단어들은 어떠한 종류들이 있었는지 확인해 볼 필요가 있습니다. 한번 확인 해보도록 합시다. 다음과 같은 단어들이 있었습니다. 이렇게 숫자로도 제거를 해볼 수 있지.. 2020. 10. 7.
NLTK 패키지 활용한 텍스트 전처리 (2) 텍스트 정규화 NLTK 패키지를 활용해서 어간 추출(Stemming), 표제어 추출(Lemmatization)에 대해 정리해보도록 하겠습니다. 우리는 텍스트 전처리를 통해서 말뭉치로부터 복잡한 부분들을 제거해주는 다시 말하자면 텍스트 정규화 작업이 필요합니다. 그 방법이 바로 어간 추출(Stemming)과 표제어 추출(Lemmatization)입니다. eat을 예시로 들면 eats. eating등과 같이 어떠한 조건에 대해서 단어는 다양하게 변화합니다. 바로 여기서 play를 찾는 방법이라고 생각하면 되겠습니다. 어간 추출(Stemming) : 문맥정보를 고려하지 않고 어근을 찾는다. Stemming은 단어 그 자체만을 고려합니다. NLTK 패키지에서는 PorterStemmer, LancasterStemmer를 사용해.. 2020. 10. 7.
NLTK 패키지 활용한 텍스트 전처리 (1) 토큰화 NLTK는 Natural Language ToolKit의 약자로 자연어 처리 및 분석을 위한 파이썬 패키지입니다. NLTK는 토큰생성하기, 형태소 분석, 품사 태깅하기 등 다양한 기능을 제공하고 있습니다. 문장 토큰화 (Sentence Tokenization) import nltk text = "I am a college student. I'm 23 years old. I like to read books." sentences = nltk.sent_tokenize(text) print(sentences) ['I am a college student.', "I'm 23 years old.I like to read books."] 줄바꿈 문자를 기준으로 나누기(LineTokenizer) # 줄바꿈을 기준으로.. 2020. 10. 7.
Sentence Embedding Summary 한국어 임베딩을 읽으며 NLP를 위한 임베딩 중에서 핵심 포인트를 요약한 포스팅입니다. 이 글은 임베딩 기법 중 문장-수준 임베딩에 대해서 요악하였습니다. Reference http://www.yes24.com/Product/Goods/78569687 한국어 임베딩 자연어 처리 모델의 성능을 높이는 핵심 비결, 『한국어 임베딩』임베딩(embedding)은 자연어를 숫자의 나열인 벡터로 바꾼 결과 혹은 그 일련의 과정 전체를 가리키는 용어다. 단어나 문장 각각을 www.yes24.com 2020. 8. 23.