자연어 처리 쿡북 with 파이썬
파이썬으로 NLP를 구현하는 60여 가지 레시피
최고의 플랫폼인 파이썬과 자연어 툴킷(NLTK)을 이용해 자연어 처리(NLP)를 수행하는 다양한 방법을 알려주는 독창적인 레시피가 담긴 책이다. 자연어 이해(NLU), 자연어 처리, 구문 분석 등 다양한 주제를 포함해 자연어를 다루는 데 사용할 수 있는 60여 개의 레시피를 접할 수 있다. 자연어 처리에 입문하면서 궁금한 부분이 생기면 레시피를 찾아보듯이 필요한 부분을 꺼내볼 수 있게 구성했다. 실용적인 감정 분석부터 최신 딥러닝 기술의 적용 방법까지 배울 수 있다. 이 책을 마치면 파이썬으로 NLP를 구현하는 데 필요한 모든 지식을 얻게 될 것이다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
■ NLTK에서 사용할 수 있는 다양한 말뭉치 탐색과 워드넷 말뭉치 사용법
■ HTML, RSS, PDF, 워드 문서 등과 같은 원시 텍스트 관리와 처리
■ 토큰화, 형태소 분석, 철자 검사기 등과 같은 기술을 사용해 원시 텍스트를 전처리하는 방법과 정규표현식을 사용한 구현
■ 정규표현식을 사용한 텍스트 분석의 패턴 일치 기본 사항
■ 품사 태거와 문법을 사용해 직접 만드는 방법
■ 개체명(NE) 추출 방법과 RD, 시프트 감소, 차트 파서 등의 파서
■ LSTM을 사용한 셰익스피어 소설에서의 텍스트 생성
■ BABI 데이터셋과 LSTM을 사용한 에피소드 모델링
■ 딥러닝을 통해 생성(generative) 방식으로 개발하는 챗봇
★ 이 책의 대상 독자 ★
NLP를 사용해 고급 텍스트 분석을 구현하고자 기존 기술을 업그레이드하려는 데이터 과학자, 데이터 분석가를 대상으로 한다. 자연어 처리에 대한 몇 가지 기본 지식이 있으면 좋다.
★ 이 책의 구성 ★
1장, '말뭉치와 워드넷'에서는 NLTK에서 기본 제공하는 말뭉치와 빈도 분포에 접근하는 방법을 소개한다. 워드넷이 무엇인지 알아보고 그 기능과 사용법을 탐구할 것이다.
2장, '원시 텍스트, 소싱, 정규화'에서는 다양한 형식의 데이터 소스에서 텍스트를 추출하는 방법을 보여준다. 웹상에서 원시 텍스트를 추출하는 방법도 배우게 된다. 이러한 이질적인 소스로부터 원시 텍스트를 정규화하고, 텍스트를 말뭉치로 조직화할 것이다.
3장, '전처리'에서는 토큰화, 스테밍, 원형 복원, 편집 거리와 같이 몇 가지 중요한 사전 처리 단계를 소개한다.
4장, '정규표현식'에서는 가장 기본적이고 간단하지만 가장 중요하면서 강력한 도구 중 하나를 다룬다. 텍스트 분석을 수행하는 방법으로 패턴 매칭의 개념을 배우게 되며, 이를 위해 정규표현식보다 더 좋은 도구는 없다.
5장, '품사 태깅과 문법'에서는 품사 태깅은 구문 분석의 기초를 형성하며 문법은 품사 태그 및 청크를 사용해 형성되고 변형될 수 있다. 자체 품사 태거 및 문법을 사용하고 또 작성하는 법을 배운다.
6장, '청킹, 문장 구문 분석, 의존성'에서는 기본 제공 청커를 사용하는 방법을 배우고 자체 청커(의존성 파서)를 학습/작성하는 데 도움을 준다. 훈련된 모델을 평가하는 방법을 배우게 된다.
7장, '정보 추출과 텍스트 분류'에서는 개체명 인식에 대해 자세히 알려준다. 내장된 개체명을 사용하거나 딕셔너리를 사용해 개체명을 생성할 것이다. 기본 제공되는 텍스트 분류 알고리즘과 애플리케이션 주변의 간단한 레시피를 사용하는 방법을 배워보자.
8장, '고급 NLP 레시피'에서는 지금까지 모든 수업을 결합하고 실제 응용 문제에 쉽게 적용할 수 있는 응용 가능한 레시피를 만드는 방법에 관한 것이다. 텍스트 유사도, 요약, 감정 분석, 표현 합성, 대용어 처리 등과 같은 레시피를 작성한다.
9장, 'NLP에서의 딥러닝 적용'에서는 이메일 분류, CNN 및 LSTM의 감정 분류, 마지막으로 저차원 공간에서의 고차원 단어 시각화와 같은 NLP 문제의 애플리케이션을 사용하는 딥러닝에 필요한 다양한 기본적인 사항을 전달한다.
10장, 'NLP 분야에서 딥러닝의 고급 응용'에서는 딥러닝을 이용한 최첨단 문제 해결 방법을 설명한다. 단편적인 사건들로 이뤄진 데이터에 대한 답변, 다음 최상의 단어를 예측하기 위한 언어 모델링 그리고 생성 기법을 사용하는 챗봇(chatbot) 개발을 포함한다.
[역자의 말]
이 책의 원제는 『Natural Language Processing with Python Cookbook』이다. 제목에서 알 수 있듯이 파이썬보다는 자연어 처리에 초점 맞춰져, 파이썬은 도구로 사용하는 셈이다. 파이썬은 다양한 라이브러리가 잘 갖춰져 있어 텐서플로(TensorFlow)를 비롯한 '딥러닝'용 언어로 주목받는 것은 물론, 프로그래밍 초보자나 학생들의 코딩 입문용에 이르기까지 전천후로 쓰이는 언어다. 바꿔 말해, 자연어 처리를 배우기에 적합한 언어인 것이다. 파이썬 언어의 문법을 모르더라도 책에 나오는 레시피를 차근차근 따라 해보며 동작 원리를 파악할 수 있지만, 구문(syntax)을 세세하게 설명하지 않으므로 파이썬의 기본적인 이해는 필요하다. 만약 파이썬을 처음 접한다면 입문서를 읽어보거나 간단한 강의를 먼저 경험해볼 것을 추천한다.
이 책은 짤막한 레시피 형태의 구성으로 언제든 필요한 부분을 펼쳐볼 수 있게 돼 있다. 다만 이전 레시피가 다음 레시피에 활용되는 경우가 많으니 처음 한 번은 순서대로 읽어보고, 이후 코드 실습과 함께 원하는 부분을 다시 찾아볼 것을 권한다. 이 책에서는 자연어 처리와 관련된 전반적인 영역에 걸쳐 부품이자 재료들을 제공하고 있으니, 두 가지 혹은 그 이상의 레시피를 다양한 방식으로 조합한다면 다채로운 애플리케이션을 만들어볼 수 있을 것이다.
번역과 관련해 한마디 덧붙인다면 항상 용어의 선택이 가장 어렵다. 실무 현장에서는 갈수록 대부분의 IT 용어와 프로그래밍 용어가 원어(영어) 그대로 쓰이는 듯하다. 딥러닝을 심층 학습이라고 부르지 않는 것이 한 예다. 그렇지만 NLP는 '자연 언어 처리'라는 고유 영역이 있어 이 분야에서 통용되는 우리말이 있는 경우는 우리말로 옮겼다. 가령 'POSpart of speech'는 품사로 통일했고 'corpus', 'copora'는 '코퍼스'가 아니라 '말뭉치'로 적었다. 단, '브라운 코퍼스'와 같이 고유명사처럼 쓰이는 단어만 일부 예외를 뒀음을 참고하길 바란다.
목차
목차
__소개
__내장 말뭉치 액세스
__외부 말뭉치 다운로드, 로드하고 액세스하기
__브라운 코퍼스에서 세 가지 장르의 wh 단어 모두 세기
__웹 및 채팅 텍스트 자료 파일 중 하나에서 빈도 분포 작업 탐색
__모호한 단어를 가지고 워드넷을 사용해 모든 의미 탐구
__두 개의 구별되는 동의어 집합을 선택하고 워드넷을 사용해 상위어와 하위어 개념 탐색
__워드넷으로 명사, 동사, 형용사, 부사의 다의어 평균 계산
2장. 처리 전 텍스트, 소싱, 정규화
__소개
__문자열 연산의 중요성
__문자열 연산 심화
__파이썬에서 PDF 파일 읽기
__파이썬에서 워드 문서 읽기
__PDF, DOCX, 일반 텍스트 파일을 가져와 사용자 정의 말뭉치 생성
__RSS 피드에서 내용 읽기
__BeautifulSoup를 사용한 HTML 파싱
3장. 전처리
__소개
__토큰화-NLTK 내장 토크나이저 사용법
__스테밍-NLTK 내장 스테머 사용법
__원형 복원-NLTK WordnetLemmatizer 사용법
__불용어-불용어 말뭉치 사용법과 불용어가 만들어내는 차이점 확인
__편집 거리-두 문자열 간의 편집 거리를 찾기 위한 알고리즘 작성
__두 단문 처리와 둘 사이의 공통 어휘 추출
4장. 정규표현식
__소개
__정규표현식-*, +, ? 사용법
__정규표현식-$와 ^, 단어의 시작과 끝이 아닌 단어를 사용하는 방법
__여러 개의 리터럴 문자열과 하위 문자열 검색
__날짜 정규표현식과 문자 집합 또는 문자 범위 집합 만들기
__문장에서 모든 다섯 글자 단어를 찾고 약어 만들기
__자체 정규식 토크나이저 작성법
__자체 정규식 스테머 작성법
5장. 품사 태깅과 문법
__소개
__내장 태거 탐구
__자체 태거 작성
__자체 태거 학습
__자체 문법 작성 학습
__확률적 문맥 무관 문법-CFG 작성
__재귀 CFG 작성
6장. 청킹, 문장 구문 분석, 의존성
__소개
__내장 청커 사용
__간단한 청커 작성
__청커 학습
__재귀 하향 구문 분석
__시프트 변환 구문 분석
__의존 문법과 투사 의존성 구문 분석
__차트 구문 분석
7장. 정보 추출과 텍스트 분류
__소개
__내장 개체명 인식 기능 사용
__딕셔너리 생성, 반전, 사용
__피처셋 선택
__분류기를 사용한 문장 분할
__문서 분류
__문맥 기반 품사 태거 작성
8장. 고급 NLP 레시피
__소개
__NLP 파이프라인 생성
__텍스트 유사도 문제 해결
__주제 식별
__텍스트 요약
__대용어 해결
__단어 의미 명확화
__감정 분석 수행
__고급 감정 분석 탐색
__대화형 비서 또는 챗봇 만들기
9장. NLP의 딥러닝 적용
__소개
__TF-IDF 생성 후 심층 신경망을 이용한 이메일 분류
__합성곱망 CNN 1D를 이용한 IMDB 감정 분류
__양방향 LSTM을 이용한 IMDB 감정 분류
__신경 단어 벡터 시각화를 사용해 고차원의 단어를 2차원으로 시각화
10장. NLP 분야에서 딥러닝의 고급 응용
__소개
__LSTM을 사용해 셰익스피어의 저서에서 고급 자동 텍스트 생성
__메모리 네트워크를 사용해 에피소드 데이터에 대한 질의 응답
__순환 신경망을 사용해 다음 단어를 예측하는 언어 모델링-LSTM
__딥러닝 순환망을 사용하는 생성 챗봇 개발-LSTM
저자
저자
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.

