본문 바로가기

A.I.

(7)
Decoding Strategies | greedy approach, beam search, random sampling · Decoding strategies · Greedy Approach · Beam Search · Random sampling · random sampling with temperature · Top-k random sampling · Top-p random samplilng (= Nucleus sampling) Decoding strategies $$ P(x_i|x_{1:i-1}) = \sum_jexp(u_i)/exp(u_j) $$ ($x$: 타임 스텝 $i$의 토큰, $u$: vocabulary에 있는 모든 토큰을 나타내는 벡터) 디코딩 하는 동안 각 타임 스텝에서 representation vector에 softmax 함수를 적용하여 각 단어에 대한 확률 배열로 변환한다. 이때 ‘토큰을 어떤 방식..
Entropy, Cross Entropy, KL-divergence 정보량 정보량 = 놀람의 정도 = 불확실성의 정도 즉, 정보량이 많을수록 불확실성이 높고, 불확실성이 높을수록 정보량이 많다. 발생 확률이 높을수록 짧은 길이(정보량)를 가지도록, 발생 확률이 낮을수록 긴 길이를 가져도 몇 번 등장하지 않기 때문에, 이렇게 정보를 표현하면 효율적으로 표현할 수 있다. 정보를 효율적으로 어떻게 표현하는가? → Bit를 사용. 0 or 1로 표현 Entropy 엔트로피 entropy: 정보를 표현하는데 필요한 최소 평균 자원량 = 표현하기 위해 사용되는 0 or 1의 평균 길이 = 평균 정보량 (모든) 발생 확률에 따른 최소 평균 자원량, 엔트로피를 나타내기 위해 기댓값 $$ entropy = \sum(사건\ 발생\ 확률)·log_2(1/사건\ 발생\ 확률) \\ = \su..
[Paper Review] Efficient Estimation of Word Representations inVector Space ② | Word Representation ③ Word2Vec 목차 Abstract 1. Introduction 2. Model Architectures 3. New Log-linear Models 3.1 Continuous Bag-of-Words Model (CBOW) 3.2 Continuous Skip-gram Model (Skip-gram) 4. Results 5. Examples of the Learned Relationships 6. Conclusion 7. Follow-Up Work 이번 포스팅은 Word2Vec으로 잘 알려진 논문 리뷰이다. (사실은 그냥 해석하고 요약..) 포스팅 ② 편은 위와 같은 목차에서 3절, CBOW와 Skip-gram에 대해 작성되었다. 3. New Log-linear Models 대부분의 계산량은 non-linear hidd..
[Paper Review] Efficient Estimation of Word Representations inVector Space ① | Word Representation ③ Word2Vec 목차 Abstract 1. Introduction 1.1 Goals of the Paper 1.2 Previous Work 2. Model Architectures 2.1 Feedforward Neural Net Language Model (NNLM) 2.2 Recurrent Neural Net Language Model (RNNLM) 2.3 Parallel Training of Neural Networks 3. New Log-linear Models 4. Results 5. Examples of the Learned Relationships 6. Conclusion 7. Follow-Up Work 이번 포스팅은 Word2Vec으로 잘 알려진 논문 리뷰이다. (사실은 그냥 해석하고 요약..) 포스팅 ① ..
N-gram Language Model Language Model 언어 모델 Language Model 이란 단어 시퀀스에 확률을 할당하는 모델이다. (단어 시퀀스는 단어들로 이루어진 시퀀스, 즉 문장을 말한다.) 단어 시퀀스에 확률을 할당하기 위해 사용되는 방법은 ① 이전 단어들이 주어졌을 때 다음에 올 단어를 예측, ② 주변 (양쪽) 단어들로부터 가운데 단어를 예측하는 방법이 주로 사용된다. 이번 포스팅에서는 ① 이전 단어들($w_1, w_2, …, w_{n-1}$)이 주어졌을 때 다음에 올 단어($w_n$)를 예측하는 언어 모델에 대해서 이야기한다. 이 방법을 확률로 표현하면 아래와 같다. $$ P (w_n|w_1, w_2, w_3,..., w_{n-1}) $$ 단어 시퀀스 $W$의 확률은 아래와 같다. $$ P(W) = P(w_1, w..
Word Representation ② Local Representation 컴퓨터가 자연어를 이해하고 처리할 수 있도록, 단어를 숫자로 표현해야 한다. 이번 포스팅에서는 표현하고 싶은 단어에만 집중해서 특정값에 매핑하는 Local Representation에 대해 이야기한다. 목차 1. One-hot vector 원-핫 벡터 2. Count Based Representation 빈도수 기반 단어 표현 2.1. Bag of Words (BoW) 2.2. Document-Term Matrix (DTM) 2.3. Term Frequency - Inverse Document Frequency (TF-IDF) 1. One-hot vector 원-핫 벡터 one-hot encoding 각 단어에 고유한 정수를 부여한다. → 정수 인코딩 단어의 고유한 정수를 인덱스로 간주하여 해당 인덱스면..
Word Representation ① Thesaurus 시소러스 자연어 처리, Natural Language Processing 말 그대로 자연어를 컴퓨터가 처리하는 분야이다. 이를 위해 사람이 쓰는 부드러운 언어를 컴퓨터가 이해할 수 있는 방식으로 변형시켜야 한다. 사람이 쓰는 ‘말’의 의미는 ‘단어’로 구성된다. 그래서 컴퓨터에게 자연어를 이해시키기 위해서는 단어의 의미를 이해시키는 것이 중요하다. 단어를 표현하는 방법에 대해서 thesaurus, Local representation, Continuous representation 순서로 포스팅을 해보려고 한다. 이번 포스팅은 본격적인 설명에 앞서 시소러스와 이후 있을 포스팅의 개요에 대해 작성되었다. 1. Thesaurus 시소러스 사람이 직접 단어의 의미를 정의하는 방식 시소러스란 유의어 사전으로, 자연어에서..