상세정보
미리보기
한국어 임베딩
- 저자
- 이기창 저/NAVER Chatbot Model 감수
- 출판사
- 에이콘출판사
- 출판일
- 2019-12-27
- 등록일
- 2023-11-10
- 파일포맷
- PDF
- 파일크기
- 52MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
자연어 처리 모델의 성능을 높이는 핵심 비결, 『한국어 임베딩』임베딩(embedding)은 자연어를 숫자의 나열인 벡터로 바꾼 결과 혹은 그 일련의 과정 전체를 가리키는 용어다. 단어나 문장 각각을 벡터로 변환해 벡터 공간에 '끼워 넣는다(embed)'는 취지에서 임베딩이라는 이름이 붙었다. 컴퓨터가 자연어를 처리할 수 있게 하려면 자연어를 계산 가능한 형식인 임베딩으로 바꿔줘야 한다. 임베딩은 컴퓨터가 자연어를 이해하도록 하는 첫 관문으로 매우 중요한 기능을 한다. 자연어 처리 모델의 성능은 임베딩이 좌우한다고 해도 과언이 아니다. 이 책에서는 다양한 임베딩 기법을 일별하고 한국어 데이터 전처리, 임베딩 구축에 이르는 전 과정을 튜토리얼 방식으로 소개한다. Word2Vec 등 단어 수준 기법부터 ELMo, BERT 등 문장 수준 임베딩까지 다룬다.
저자소개
서울대학교 국어국문학과를 졸업하고 고려대학교 대학원에서 공학 석사 학위(산업경영공학)를 취득했다. 문장 범주 분류에 큰 영향을 미치는 단어들에 높은 점수를 주는 기법에 대한 논문(SCI 저널 게재)에 1저자로 참여했다. 현재 네이버에서 대화 모델을 개발하고 있다. 주요 업무는 임베딩 학습 및 구축이다. 문장 생성(text generation)에 관심이 많다. 자연어 처리를 주제로 블로그(http://ratsgo.github.io)를 운영하고 있다. 딥러닝과 자연어 처리의 무궁무진한 가능성을 믿는다.
목차
1장. 서론1.1 임베딩이란1.2 임베딩의 역할1.2.1 단어/문장 간 관련도 계산1.2.2 의미/문법 정보 함축1.2.3 전이 학습1.3 임베딩 기법의 역사와 종류1.3.1 통계 기반에서 뉴럴 네트워크 기반으로1.3.2 단어 수준에서 문장 수준으로1.3.3 룰 → 엔드투엔드 → 프리트레인/파인 튜닝1.3.4 임베딩의 종류와 성능1.4 개발 환경1.4.1 환경 소개1.4.2 AWS 구성1.4.3 코드 실행1.4.4 버그 리포트 및 Q&A1.4.5 이 책이 도움받고 있는 오픈소스들 1.5 이 책이 다루는 데이터와 주요 용어 1.6 이 장의 요약 1.7 참고 문헌2장. 벡터가 어떻게 의미를 가지게 되는가2.1 자연어 계산과 이해2.2 어떤 단어가 많이 쓰였는가2.2.1 백오브워즈 가정2.2.2 TF-IDF2.2.3 Deep Averaging Network2.3 단어가 어떤 순서로 쓰였는가2.3.1 통계 기반 언어 모델2.3.2 뉴럴 네트워크 기반 언어 모델2.4 어떤 단어가 같이 쓰였는가2.4.1 분포 가정2.4.2 분포와 의미 (1): 형태소2.4.3 분포와 의미 (2): 품사2.4.4 점별 상호 정보량2.4.5 Word2Vec2.5 이 장의 요약2.6 참고 문헌3장. 한국어 전처리 3.1 데이터 확보 3.1.1 한국어 위키백과3.1.2 KorQuAD3.1.3 네이버 영화 리뷰 말뭉치3.1.4 전처리 완료된 데이터 다운로드3.2 지도 학습 기반 형태소 분석3.2.1 KoNLPy 사용법3.2.2 KoNLPy 내 분석기별 성능 차이 분석3.2.3 Khaiii 사용법3.2.4 은전한닢에 사용자 사전 추가하기3.3 비지도 학습 기반 형태소 분석3.3.1 soynlp 형태소 분석기3.3.2 구글 센텐스피스3.3.3 띄어쓰기 교정3.3.4 형태소 분석 완료된 데이터 다운로드3.4 이 장의 요약3.5 참고 문헌4장. 단어 수준 임베딩4.1 NPLM4.1.1 모델 기본 구조4.1.2 NPLM의 학습4.1.3 NPLM과 의미 정보4.2 Word2Vec4.2.1 모델 기본 구조4.2.2 학습 데이터 구축4.2.3 모델 학습4.2.4 튜토리얼4.3 FastText4.3.1 모델 기본 구조4.3.2 튜토리얼4.3.3 한글 자소와 FastText4.4 잠재 의미 분석4.4.1 PPMI 행렬4.4.2 행렬 분해로 이해하는 잠재 의미 분석4.4.3 행렬 분해로 이해하는 Word2Vec4.4.4 튜토리얼4.5 GloVe4.5.1 모델 기본 구조4.5.2 튜토리얼4.6 Swivel4.6.1 모델 기본 구조4.6.2 튜토리얼4.7 어떤 단어 임베딩을 사용할 것인가4.7.1 단어 임베딩 다운로드4.7.2 단어 유사도 평가4.7.3 단어 유추 평가4.7.4 단어 임베딩 시각화4.8 가중 임베딩4.8.1 모델 개요4.8.2 모델 구현4.8.3 튜토리얼4.9 이 장의 요약4.10 참고 문헌5장. 문장 수준 임베딩5.1 잠재 의미 분석5.2 Doc2Vec5.2.1 모델 개요5.2.2 튜토리얼5.3 잠재 디리클레 할당5.3.1 모델 개요5.3.2 아키텍처5.3.3 LDA와 깁스 샘플링5.3.4 튜토리얼5.4 ELMo5.4.1 문자 단위 컨볼루션 레이어5.4.2 양방향 LSTM, 스코어 레이어5.4.3 ELMo 레이어5.4.4 프리트레인 튜토리얼5.5 트랜스포머 네트워크5.5.1 Scaled Dot-Product Attention5.5.2 멀티헤드 어텐션5.5.3 Position-wise Feed-Forward Networks5.5.4 트랜스포머의 학습 전략5.6 BERT5.6.1 BERT, ELMo, GPT5.6.2 프리트레인 태스크와 학습 데이터 구축5.6.3 BERT 모델의 구조5.6.4 프리트레인 튜토리얼5.7 이 장의 요약5.8 참고 문헌6장. 임베딩 파인 튜닝6.1 프리트레인과 파인 튜닝6.2 분류를 위한 파이프라인 만들기6.3 단어 임베딩 활용6.3.1 네트워크 개요6.3.2 네트워크 구현6.3.3 튜토리얼6.4 ELMo 활용6.4.1 네트워크 개요6.4.2 네트워크 구현6.4.3 튜토리얼6.5 BERT 활용6.5.1 네트워크 개요6.5.2 네트워크 구현6.5.3 튜토리얼6.6 어떤 문장 임베딩을 사용할 것인가6.7 이 장의 요약6.8 참고 문헌부록부록 A. 선형대수학 기초1.1 벡터, 행렬 연산1.2 내적과 공분산1.3 내적과 사영1.4 내적과 선형변환1.5 행렬 분해 기반 차원 축소 (1): 주성분 분석(PCA)1.6 행렬 분해 기반 차원 축소 (2): 특이값 분해(SVD)부록 B. 확률론 기초2.1 확률변수와 확률 분포2.2 베이지안 확률론부록 C. 뉴럴 네트워크 기초3.1 DAG로 이해하는 뉴럴 네트워크3.2 뉴럴 네트워크는 확률모델이다3.3 최대우도추정과 학습 손실3.4 그래디언트 디센트3.5 계산 노드별 역전파3.6 CNN과 RNN부록 D. 국어학 기초4.1 통사 단위4.2 문장 유형4.3 품사4.4 상과 시제4.5 주제4.6 높임4.7 양태4.8 의미역4.9 피동4.10 사동4.11 부정부록 E. 참고 문헌