파이토치로 배우는 자연어 처리 : 딥러닝을 이용한 자연어 처리 애플리케이션 구축

Book description

이 책은 자연어 처리 및 딥러닝 알고리즘 학습에 필요한 내용을 다룬다. 또한 파이토치를 사용해 자연어 처리 과정에서 직면할 수 있는 문제와 다양한 텍스트를 표현하는 애플리케이션을 구축하는 방법을 보여준다. 딥러닝 및 자연어 처리 기초부터 난도 시퀀스 모델링까지 쉽고 빠르게 익혀보자.

Table of contents

  1. 지은이·옮긴이 소개
  2. 추천사
  3. 옮긴이의 말
  4. 이 책에 대하여
  5. 감사의 말
  6. CONTENTS (1/2)
  7. CONTENTS (2/2)
  8. 1 소개
    1. 1.1 지도 학습
    2. 1.2 샘플과 타깃의 인코딩
      1. 1.2.1 원-핫 표현
      2. 1.2.2 TF 표현
      3. 1.2.3 TF-IDF 표현
      4. 1.2.4 타깃 인코딩
    3. 1.3 계산 그래프
    4. 1.4 파이토치 기초
      1. 1.4.1 파이토치 설치
      2. 1.4.2 텐서 만들기
      3. 1.4.3 텐서 타입과 크기
      4. 1.4.4 텐서 연산
      5. 1.4.5 인덱싱, 슬라이싱, 연결
      6. 1.4.6 텐서와 계산 그래프
      7. 1.4.7 CUDA 텐서
    5. 1.5 연습문제
    6. 1.6 요약
    7. 1.7 참고 문헌
  9. 2 NLP 기술 빠르게 훑어보기
    1. 2.1 말뭉치, 토큰, 타입
    2. 2.2 유니그램, 바이그램, 트라이그램, …, n-그램
    3. 2.3 표제어와 어간
    4. 2.4 문장과 문서 분류하기
    5. 2.5 단어 분류하기: 품사 태깅
    6. 2.6 청크 나누기와 개체명 인식
    7. 2.7 문장 구조
    8. 2.8 단어 의미와 의미론
    9. 2.9 요약
    10. 2.10 참고 문헌
  10. 3 신경망의 기본 구성 요소
    1. 3.1 퍼셉트론: 가장 간단한 신경망
    2. 3.2 활성화 함수
      1. 3.2.1 시그모이드
      2. 3.2.2 하이퍼볼릭 탄젠트
      3. 3.2.3 렐루
      4. 3.2.4 소프트맥스
    3. 3.3 손실 함수
      1. 3.3.1 평균 제곱 오차 손실
      2. 3.3.2 범주형 크로스 엔트로피 손실
      3. 3.3.3 이진 크로스 엔트로피 손실
    4. 3.4 지도 학습 훈련 알아보기
      1. 3.4.1 예제 데이터 만들기
      2. 3.4.2 모델 선택
      3. 3.4.3 확률을 클래스로 변환하기
      4. 3.4.4 손실 함수 선택
      5. 3.4.5 옵티마이저 선택
      6. 3.4.6 모두 합치기: 그레이디언트 기반의 지도 학습
    5. 3.5 부가적인 훈련 개념
      1. 3.5.1 모델 성능 올바르게 측정하기: 평가 지표
      2. 3.5.2 모델 성능 올바르게 측정하기: 데이터 분할
      3. 3.5.3 훈련 중지 시점 파악하기
      4. 3.5.4 최적의 하이퍼파라미터 찾기
      5. 3.5.5 규제
    6. 3.6 예제: 레스토랑 리뷰 감성 분류하기
      1. 3.6.1 옐프 리뷰 데이터셋
      2. 3.6.2 파이토치 데이터셋 이해하기
      3. 3.6.3 Vocabulary, Vectorizer, DataLoader 클래스 (1/2)
      4. 3.6.3 Vocabulary, Vectorizer, DataLoader 클래스 (2/2)
      5. 3.6.4 퍼셉트론 분류기
      6. 3.6.5 모델 훈련 (1/2)
      7. 3.6.5 모델 훈련 (2/2)
      8. 3.6.6 평가, 추론, 분석
    7. 3.7 요약
    8. 3.8 참고 문헌
  11. 4 자연어 처리를 위한 피드 포워드 신경망
    1. 4.1 다층 퍼셉트론
      1. 4.1.1 간단한 예: XOR
      2. 4.1.2 파이토치로 MLP 구현하기
    2. 4.2 예제: MLP로 성씨 분류하기
      1. 4.2.1 성씨 데이터셋
      2. 4.2.2 Vocabulary, Vectorizer, DataLoader
      3. 4.2.3 SurnameClassifier 모델
      4. 4.2.4 모델 훈련
      5. 4.2.5 모델 평가와 예측
      6. 4.2.6 MLP 규제: 가중치 규제와 구조적 규제(또는 드롭아웃)
    3. 4.3 합성곱 신경망
      1. 4.3.1 CNN 하이퍼파라미터 (1/2)
      2. 4.3.1 CNN 하이퍼파라미터 (2/2)
      3. 4.3.2 파이토치로 CNN 구현하기
    4. 4.4 예제: CNN으로 성씨 분류하기
      1. 4.4.1 SurnameDataset
      2. 4.4.2 Vocabulary, Vectorizer, DataLoader
      3. 4.4.3 CNN을 사용해 SurnameClassifier 구현하기
      4. 4.4.4 모델 훈련
      5. 4.4.5 모델 평가와 예측
    5. 4.5 CNN에 관한 추가 내용
      1. 4.5.1 풀링
      2. 4.5.2 배치 정규화
      3. 4.5.3 NiN 연결 (1x1 합성곱)
      4. 4.5.4 잔차 연결 / 잔차 블록
    6. 4.6 요약
    7. 4.7 참고 문헌
  12. 5 단어와 타입 임베딩
    1. 5.1 임베딩을 배우는 이유
      1. 5.1.1 임베딩의 효율성
      2. 5.1.2 단어 임베딩 학습 방법
      3. 5.1.3 사전 훈련된 단어 임베딩
    2. 5.2 예제: CBOW 임베딩 학습하기
      1. 5.2.1 프랑켄슈타인 데이터셋
      2. 5.2.2 Vocabulary, Vectorizer, DataLoader
      3. 5.2.3 CBOWClassifier 모델
      4. 5.2.4 모델 훈련
      5. 5.2.5 모델 평가와 예측
    3. 5.3 예제: 문서 분류에 사전 훈련된 임베딩을 사용한 전이 학습
      1. 5.3.1 AG 뉴스 데이터셋
      2. 5.3.2 Vocabulary, Vectorizer, DataLoader
      3. 5.3.3 NewsClassifier 모델
      4. 5.3.4 모델 훈련
      5. 5.3.5 모델 평가와 예측
    4. 5.4 요약
    5. 5.5 참고 문헌
  13. 6 자연어 처리를 위한 시퀀스 모델링 - 초급
    1. 6.1 순환 신경망 소개
      1. 6.1.1 엘만 RNN 구현하기
    2. 6.2 예제: 문자 RNN으로 성씨 국적 분류하기
      1. 6.2.1 SurnameDataset 클래스
      2. 6.2.2 데이터 구조
      3. 6.2.3 SurnameClassifier 모델
      4. 6.2.4 모델 훈련과 결과
    3. 6.3 요약
    4. 6.4 참고 문헌
  14. 7 자연어 처리를 위한 시퀀스 모델링 - 중급
    1. 7.1 엘만 RNN의 문제점
    2. 7.2 엘만 RNN의 문제 해결책: 게이팅
    3. 7.3 예제: 문자 RNN으로 성씨 생성하기
      1. 7.3.1 SurnameDataset 클래스
      2. 7.3.2 벡터 변환 클래스
      3. 7.3.3 ElmanRNN을 GRU로 바꾸기
      4. 7.3.4 모델 1: 조건이 없는 SurnameGenerationModel
      5. 7.3.5 모델 2: 조건이 있는 SurnameGenerationModel
      6. 7.3.6 모델 훈련과 결과 (1/2)
      7. 7.3.6 모델 훈련과 결과 (2/2)
    4. 7.4 시퀀스 모델 훈련 노하우
    5. 7.5 참조 문헌
  15. 8 자연어 처리를 위한 시퀀스 모델링 - 고급
    1. 8.1 시퀀스-투-시퀀스 모델, 인코더-디코더 모델, 조건부 생성
    2. 8.2 강력한 시퀀스 모델링: 양방향 순환 모델
    3. 8.3 강력한 시퀀스 모델링: 어텐션
      1. 8.3.1 심층 신경망의 어텐션
    4. 8.4 시퀀스 생성 모델 평가
    5. 8.5 예제: 신경망 기계 번역
      1. 8.5.1 기계 번역 데이터셋
      2. 8.5.2 NMT를 위한 벡터 파이프라인
      3. 8.5.3 NMT 모델의 인코딩과 디코딩 (1/3)
      4. 8.5.3 NMT 모델의 인코딩과 디코딩 (2/3)
      5. 8.5.3 NMT 모델의 인코딩과 디코딩 (3/3)
      6. 8.5.4 모델 훈련과 결과
    6. 8.6 요약
  16. 9 고전 모델, 최신 모델, 더 배울 것들
    1. 9.1 지금까지 배운 내용
    2. 9.2 전통적인 NLP 주제
      1. 9.2.1 대화 및 상호작용 시스템
      2. 9.2.2 담화 분석
      3. 9.2.3 정보 추출과 텍스트 마이닝
      4. 9.2.4 문서 분석과 문서 추출
    3. 9.3 최신 NLP 모델
    4. 9.4 NLP 시스템을 위한 디자인 패턴
    5. 9.5 더 배울 것들
    6. 9.6 참고 문헌
  17. A pororo를 사용한 한글 자연어 처리
    1. A.1 광학 문자 인식
    2. A.2 이미지 캡셔닝
    3. A.3 기계 번역
    4. A.4 텍스트 요약
    5. A.5 감성 분석
    6. A.6 자연어 추론
    7. A.7 제로샷 토픽 분류
  18. B 연습문제 정답 및 풀이
    1. B.1 1장 연습문제 정답 및 풀이
  19. INDEX (1/3)
  20. INDEX (2/3)
  21. INDEX (3/3)

Product information

  • Title: 파이토치로 배우는 자연어 처리 : 딥러닝을 이용한 자연어 처리 애플리케이션 구축
  • Author(s): 박해선, 델립 라오, 브라이언 맥머핸
  • Release date: June 2021
  • Publisher(s): Hanbit Media, Inc.
  • ISBN: 9791162244333