우리가 일상 생활에서 사용하는 언어를 말합니다.
자연어처리란 이러한 자연어의 의미를 분석하여 컴퓨터가 처리할 수 있도록 하는 일을 말합니다.
자연어처리는 음성 인식, 내용 요약, 번역, 사용자의 감성분석, 텍스트 분류 작업(스팸 메일 분류, 뉴스 기사 카테고리 분류), 질의 응답 시스템, 챗봇과 같은 곳에서 사용되는 분야 입니다.
최근 딥 러닝의 뛰어난 성능이 괄목할만한 성과를 얻으면서, 인공지능이 IT분야의 중요 키워드로 떠오르고 있습니다.
자연어처리는 기계에게 인간의 언어를 이해 시킨다는 점에서 인공지능에서 가장 의미있는 연구 분야이면서도 아직도 정복 되어야 할 산이 많은 분야 입니다.
이 책에서는 자연어 처리에 필요한 전처리 방법, 딥 러닝 이전 주류로 사용되었던 통계 기반의 언어 모델, 그리고 자연어 처리의 비약적인 성능을 이루어낸 딥 러닝을 이용한 자연어 처리에 대한 전반적인 지식을 다룹니다.
이번 챕터는 자연어 처리 공부를 시작하기에 앞서 기본적인 셋팅 방법과 앞으로 공부하게 될 머신 러닝에 대한 전체적인 워크 플로우에 대해서 다룹니다.
아나콘다를 설치했다면 기본적으로 Numpy, Pandas, Jupyter notebook, scikit-learn, matplotlib, seaborn, nltk 등이 이미 설치되어져 있습니다. 그래서 아나콘다에 포함되어있지 않은 tensorflow, keras, gensim과 같은 패키지만 별도로 pip를 통해 설치합니다.
텐서플로우는 구글이 2015년에 공개한 머신 러닝 오픈소스 라이브러리입니다. 머신 러닝과 딥 러닝을 직관적이고 손쉽게 할 수 있도록 설계되었습니다
pip install tensorflow
케라스는 딥러닝 프레임워크인 텐서플로우에 대한 추상화 된 API를 제공합니다. 케라스는 벡엔드로 텐서플로우를 사용하며, 좀 더 쉽게 딥 러닝을 사용할 수 있게 해줍니다.
쉽게 말해, 텐서플로우 코드를 훨씬 간단하게 작성할 수 있습니다.
pip install keras
젠심은 머신 러닝을 사용하여 토픽 모델링과 자연어 처리 등을 수행할 수 있게 해주는 오픈 소스 라이브러리입니다.
이 책에서도 젠심을 사용하여 Word2Vec 등 다양한 모델들을 학습해볼 것 입니다.
pip install gensim
사이킷런은 파이썬 머신러닝 라이브러리입니다. 사이킷런을 통해 나이브 베이즈 분류, 서포트 벡터 머신 등 다양한 머신러닝 모듈을 불러올 수 있습니다. 또한, 사이킷런에는 머신러닝을 연습하기 위한 아이리스 데이터, 당뇨병 데이터 등 자체 데이터 또한 제공하고 있습니다. 사이킷런은 위 패키지들과 달리 아나콘다로 자동 설치되지만 아나콘다를 설치하지 않았다면 아래의 컨맨드로 Scitkit-learn을 별도 설치 할 수 있습니다.
pip install scikit-learn
주피터 노트북은 웹에서 코드를 작성하고 실행할 수 있는 오픈소스 웹 어플리케이션입니다.
이책의 모든 코드들은 기본적으로 본인의 컴퓨터에 설치된 주피터 노트북 또는 주피터 노트북과 실습환경이 유사한 구글의 코랩을 사용한다고 가정합니다. 주피터 노트북도 아나콘다를 설치하면 자동으로 설치되어져 있습니다.
pip install jupyter
설치가 완료 되었으면 프롬프트에서 다음 명령어를 통해 주피터 노트북을 실행 할 수 있습니다.
jupyter notebook