정리하기/NLP
NLP 공부하기 1 (Beginner)
디리릭
2022. 9. 4. 18:37
728x90
회사에서 한 프로젝트를 맡게 됐었는데(지금은 무산이 됐지만)
그때 NLP를 이용해서 나름 정제화를 해보자는 목표가 있었다.
그 프로젝트가 무산 된 이유는
첫번째로 팀에 리소스가 부족하기 때문에 장기적인 목표를 계속 끌고 나갈 수가 없었고
두번째는 다른 방식을 통해 그 문제를 풀어나가려고 했다. 이 이유가 가장 큰 포션을 갖었다.
그래도 프로젝트 진행했을 때 나름 재밌게 느껴졌고 나는 NLP중에서 NER만 해봤지만 이것 외에도 다양한 영역을 다룰 수 있을 것 같다. 그래서 이전에는 빠르게 결과를 보여야 했기 때문에 기초 없이 뭔가를 하려는 시도를 많이 했는데
이제 개인으로 공부하는 것이니 기초부터 차근차근 해볼 생각이다.
어느 글에서 NLP beginner는 우선 데이터 전처리를 해봐야한다고 한다.
데이터 전처리는 대학생때 빅데이터를 약간 발 담가볼까 했던적이 있는데, 그때도 전처리 과정이 거의 대부분의 시간을 잡아먹었던 기억이 있다. 그 만큼 데이터의 전처리 과정이 중요하고 data의 질에 따라 좋은 결과가 나올지 신뢰도 낮은 결과가 나올 수도 있는 기반이기 때문에 beginner는 데이터 전처리 부터 시작해야하나 보다.
데이터 전처리 단계는 다양하다.
- Converting uppercase to lowercase
- Punctuation Removal
- Stopwords Removal
- Frequent Words Removal
- Rare words Removal
- Stemming
- Lemmatization
- Emoji, Hashtags and URLs Removal
- Removal of HTML tags
- Spelling correction
- Tokenization
- Normalization
- Parts of Speech Tagging
모든 과정을 할 필요는 없지만 어떤 문제를 해결해야 하냐에 따라 적용되는 전처리 과정이 달라질 수 있으므로 위의 단계들은 한번씩 실습해보는 것이 좋을 것 같다.
728x90