Natural Language Processing with PyTorch
  • 소개글
  • 서문
  • Index
  • 딥러닝을 활용한 자연어 처리 개요
    • 자연어 처리란 무엇일까?
    • 딥러닝 소개
    • 왜 자연어 처리는 어려울까?
    • 무엇이 한국어 자연어 처리를 더욱 어렵게 만들까?
    • 자연어 처리의 최근 추세
  • 기초 수학
    • 서문
    • 랜덤 변수와 확률 분포
    • 쉬어가기: 몬티 홀 문제
    • 기대값과 샘플링
    • Maximum Likelihood Estimation
    • 정보 이론
    • 쉬어가기: MSE 손실 함수와 확률 분포 함수
    • 마치며
  • Hello 파이토치
    • 딥러닝을 시작하기 전에
    • 설치 방법
    • 짧은 튜토리얼
    • 쉬어가기: 윈도우즈 개발 환경 구축
  • 전처리
    • 전처리란
    • 코퍼스 수집
    • 코퍼스 정제
    • 분절
    • 병렬 코퍼스 정렬
    • 서브워드 분절
    • 분절 복원
    • 토치텍스트
  • 유사성과 모호성
    • 단어의 의미
    • One-hot 인코딩
    • 시소러스를 활용한 단어 의미 파악
    • 특징
    • 특징 추출하기: TF-IDF
    • 특징 벡터 만들기
    • 특징 유사도 구하기
    • 단어 중의성 해소
    • Selectional Preference
    • 마치며
  • 단어 임베딩
    • 들어가며
    • 차원 축소
    • 흔한 오해 1
    • Word2Vec
    • GloVe
    • Word2Vec 예제
    • 마치며
  • 시퀀스 모델링
    • 들어가며
    • Recurrent Neural Network
    • Long Short Term Memory
    • Gated Recurrent Unit
    • 그래디언트 클리핑
    • 마치며
  • 텍스트 분류
    • 들어가기
    • 나이브 베이즈를 활용하기
    • 흔한 오해 2
    • RNN을 활용하기
    • CNN을 활용하기
    • 쉬어가기: 멀티 레이블 분류
    • 마치며
  • 언어 모델링
    • 들어가며
    • n-gram
    • 언어 모델의 평가 방법
    • SRILM을 활용한 n-gram 실습
    • NNLM
    • 언어 모델의 활용
    • 마치며
  • 신경망 기계번역
    • 들어가며
    • Sequence-to-Sequence
    • Attention
    • Input Feeding
    • 자기회귀 속성과 Teacher Forcing 훈련 방법
    • 탐색(추론)
    • 성능 평가
    • 마치며
  • 신경망 기계번역 심화 주제
    • 다국어 신경망 번역
    • 단일 언어 코퍼스를 활용하기
    • 트랜스포머
    • 마치며
  • 강화학습을 활용한 자연어 생성
    • 들어가며
    • 강화학습 기초
    • 정책 기반 강화학습
    • 자연어 생성에 강화학습 적용하기
    • 강화학습을 활용한 지도학습
    • 강화학습을 활용한 비지도학습
    • 마치며
  • 듀얼리티 활용
    • 들어가며
    • 듀얼리티를 활용한 지도학습
    • 듀얼리티를 활용한 비지도학습
    • 쉬어가기: Back-translation을 재해석하기
    • 마치며
  • NMT 시스템 구축
    • 파이프라인
    • 구글의 NMT
    • 에딘버러 대학의 NMT
    • MS의 NMT
  • 전이학습
    • 전이학습이란?
    • 기존의 사전 훈련 방식
    • ELMo
    • BERT
    • GPT-2
    • XLNet
    • 마치며
  • 이 책을 마치며
  • 참고문헌
Powered by GitBook
On this page
  1. 단어 임베딩

마치며

5장에서는 단어 임베딩 방법에 관해 이야기했습니다. 이전 장에서는 특징 백터를 TF-IDF 방식으로 구성하여 사용했지만 여전히 굉장히 희소했고, 단어를 대표하는 값으로 사용하기에는 문제가 있었습니다. 따라서 이번 장에서는 차원 축소에 대해 살펴보았습니다. 기존의 선형적인 차원 축소 방법에 비해서, 신경망은 비선형적인 차원 축소를 통해 특징을 효율적으로 추출합니다. 우리는 이것이 바로 딥러닝이 기존의 머신러닝 알고리즘에 비해서 월등한 성과를 내는 이유라고 추측합니다.

하지만 이런 딥러닝의 비선형적인 차원 축소는 계산 비용이 매우 비싸고 최적화가 어려운 단점이 있었습니다. word2vec은 비선형적인 방법을 사용하지 않고도 매우 좋은 단어 임베딩을 구현했으며, 자연어 처리 분야에 새 지평을 열었습니다. 나아가 GloVe는 더 빠르고 정확한 단어 임베딩 방법을 제시했습니다. 이러한 방법들을 사용하여 단어 간의 유사도를 데이터 기반으로 효과적이면서도 정확하게 계산할 수 있게 되었습니다.

하지만 앞으로 소개할 텍스트 분류나 자연어 생성과 같은 기법에서는 이번에 설명한 단어 임베딩 알고리즘을 쓰는 것보다, 단순히 임베딩 계층을 사용하는 편이 더 정확하고 효율적인 방법이라고 이야기했습니다. 이후 장에서는 문장 단위로 자연어 처리를 하는 방법들을 본격적으로 소개하고자 합니다.

PreviousWord2Vec 예제Next시퀀스 모델링

Last updated 5 years ago