목록DL/NLP (28)
rueki
본문은 https://wikidocs.net/22592 를 참고해서 작성한 글입니다. 문장에서 자주 등장은 하지만, 큰 의미가 없는 단어들은 제거해야 문장 분석이 잘 이루어진다. 이에 대한 예로 I, My, ME, Mine과 같은 경우는 수백수천번이 나와도 실질적인 의미가 없어서 문장 분석에 별 도움이 안된다. 이를 불용어(Stopword)라 하며, NLTK에서는 약 100여개의 영단어의 불용어 패키지가 있다. from nltk.corpus import stopwords nltk.download('stopwords') stopwords.words('english')[:10] ['i', 'me', 'my', 'myself', 'we', 'our', 'ours', 'ourselves', 'you', "you..
본문은 https://wikidocs.net/22592 를 참고해서 작성한 글입니다. 이번에는 코퍼스(말뭉치)에 있는 단어의 개수를 줄일 수 있는 어간추출과 표제어 추출에 대해 알아보자. 1. 표제어 추출(Lemmatization) 표제어는 쉽게 말해 '기본 사전형 단어'이다. 단어들로 부터 표제어를 찾는 과정을 표제어 추출이라 하며 단어들이 서로 다른 형태를 가지더라도, 그 뿌리 단어를 찾아가서 단어의 개수를 줄일 수 있는지 판단한다. 그래서 우선적으로 단어의 형태학적 파싱을 진행해야한다. 형태소(의미를 가진 가장 작은 단위) 종류 1) 어간(stem) : 단어의 의미를 담고 있는 단어의 핵심 부분 2) 접사(affix) : 단어에 추가적 의미를 주는 부분 예를 쉽게 들어서 말하면 복수형태의 단어에서 ..
본문은 https://wikidocs.net/22592 를 참고해서 작성한 글입니다. 이전 시간에서는 토큰을 분류하는 토큰화에 대해 알아보았다. 이번에는 텍스트 데이터를 용도에 맞게 정제 및 정규화하는 것을 알아보자. 정제(Cleaning) : 노이즈 데이터 제거 정규화(Normalization) : 표현 방법이 다른 단어들을 통합시켜 같은 단어로 만들어준다. 이제 정규화하는 기법에 대해 알아보자. 1. 규칙 기반의 표기가 다른 단어 통합 정규 표현식의 규칙에 따라, 같은 의미의 단어지만 표기가 다른 언어들을 하나의 언어로 정규화한다. Ex) USA == US 2. 대소문자 통합 영어문장에서는 글 작성이 대문자와 소문자로 구분되어 작성되고, 주로 소문자로 작성이 이루어지기 때문에 대문자에서 소문자로 변환..
본문은 https://wikidocs.net/22592 를 참고해서 작성한 글입니다. 기계가 Text를 이해하도록 하기위해서는 텍스트 정제를 해주어야하는데 이에 앞어 텍스트 전처리를 말해보도록 하겠다. 1. 토큰화 2. 정규화 3. 어근화 / 어근 추출 및 표제어 추출 4. 불용어 5. 정규표현식 현재로서는 5가지로 나누어봤지만 그 외의 방법도 엄청 많다는 것을 찾아보면서 발견했다. 그래서 이번 게시글에서는 토큰화만 다루어보겠다. 토큰화(Tokenization) 위의 예시는 띄어쓰기를 기준으로 토근화 했지만 한국어 문장의 경우에 위와 같이 토큰화를 진행했을 때 단어 토큰을 구분하기 힘들 것이다. 한국어에는 '어절'이라는 띄어쓰기 단위가 있는데 어절 토큰화와 단어 토큰화가 같지가 않다. 영어와 다르게 한국..