본문 바로가기

머신러닝

(2)
딥러닝 - 어텐션 메커니즘(Attention Mechanism) 어텐션 메커니즘 시퀀스-투-시퀀스(seq2seq) 모델 같은 경우는 인코더에서 입력 시퀀스를 컨텍스트 벡터(context vector)라는 하나의 고정된 크기의 벡터 표현으로 문장 시퀀스를 압축하고, 디코더는 해당 컨텍스트 벡터를 이용해 출력 시퀀스를 만들어낸다. 하지만, 이러한 RNN에 기반한 seq2seq 모델에는 아래와 같은 문제점이 있다. 하나의 고정된 크기의 벡터에 문장 시퀀스 정보 모두를 압축하려 하기에 정보 소실이 발생한다. RNN의 고질적인 문제인 기울기 소실(vanishing gradient)문제가 존재한다. 즉, 위와 같은 문제로 기계번역 같은 분야에서 입력된 문장의 길이가 길어지게 되면 번역 성능이 크게 줄어든다. 하지만 어텐션이라는 아이디어로 긴 입력 시퀀스에 대한 품질이 떨어지는 ..
자연어 처리 개요 해당 포스팅은 위 이미지의 책의 챕터3을 읽은 리뷰입니다. :) 자연어 처리 개요 단어 표현 텍스트를 자연어 처리를 위한 모델에 적용할 수 있게 언어적인 특성을 반영해서 단어를 수치화하는 방법을 찾는 것이다. 보통 단어를 수치화할 때는 주로 벡터로 표현한다. 따라서 단어 표현은 "단어 임베딩(word embedding)" 또는 "단어 벡터(word vector)"로 표현한다. 단어 임베딩 기법 원-핫 인코딩(one-hot encoding) : 단어를 하나의 벡터로 표현하며 각 단어는 벡터 값 가운데 하나만 1이라는 값을 가지고 나머지는 모두 0값을 가짐. 분포 가설(Distributed hypothesis) 카운트 기반 방법 : 어떤 글의 문맥 안에 단어가 동시에 등장하는 횟수를 세는 방법(동시 등장 횟..