NLP 작업은 보통 텍스트 전처리, 모델 구현/훈련, 훈련된 모델을 이용한 추론의 단계로 나뉘어집니다. 그리고 또 각 단계는 세부적으로 많은 작업들을 필요로 합니다. 다행히도 이 작업들 중 많은 것들은 오픈소스 라이브러리로 공유되고 있어서 새로운 NLP 작업을 진행할 때 이 모든 세부작업들을 처음부터 구현할 필요가 없습니다. 이 페이지에서는 유용한 오픈소스 NLP 도구들을 공유함으로써 NLP를 시작하는 이들에게 도움을 주고자 합니다.

한국어용 오픈소스 NLP 도구

  • KoNLPy: 한국어 정보처리를 위한 파이썬 패키지. 한국어 NLP에서 형태소 단위로 분리하는 데이터 전처리(토크나이징)에 많이 사용 (한국어문서)
  • KoGPT2: 부족한 한국어 성능 극복을 위해 40GB 이상의 텍스트로 학습된 한국어 디코더 언어모델
  • KoBERT: 구글 BERT base multilingual cased의 한국어 성능 한계를 극복하기 위해 SKTBrain팀이 만든 한국어용 NLP도구
  • Soynlp
  • Kiwi: 세종 품사 태그 체계를 기반으로, 빠른 속도와 범용적인 성능을 지향하는 한국어 형태소 분석기 라이브러리

한국어 말뭉치

다국어용 오픈소스 NLP 도구

  • BERT
  • spaCy
  • Gensim
  • NLTK : 말뭉치, 토큰 생성, 형태소 분석, 품사 태깅 기능을 제공하는 자연어 처리 및 문서 분석용 파이썬 패키지.
  • OpenNLP
  • PORORO
  • GPT-2 : OpenAI의 단방향 언어모델. 문장 생성에 최적화
  • Transformers: State-of-the-art NLP 도구 모음 라이브러리(RoBERT,GPT,T5 등 pre-trained모델 제공)

NLP 도구 사용법