yoooniverse
CS224N Lecture 1. Word Vectors 본문
CS224n: Natural Language Processing with Deep Learning
Stanford / Winter 2021
강의 페이지
https://web.stanford.edu/class/archive/cs/cs224n/cs224n.1214/
https://www.youtube.com/playlist?list=PLoROMvodv4rOSH4v6133s9LFPRHjEmbmJ
note) 자연어처리는 cs224n, 이미지 프로세싱은 cs231n으로 찾아가자
Lecture 1 - Intro & Word Vectors
The meaning of the word
language는 본디 social system의 결과물로, 사람에 의해 만들어지고, 이해된다.
즉 컴퓨터는 인간과 같은 방식으로 인간의 언어를 이해하는 것이 불가능하다는 것.
따라서 계산을 이용한 방법으로 언어를 이해하는 시스템을 구축하는 것이 중요한 포인트.
traditional common NLP solution : dictionary synonyms
cons) lack of nuance, difficulties in updating new meanings of the world
1 word = 1 one-hot vector 단어의 수가 늘어나는 것과 비례하게 처리해야 할 벡터의 양이 늘어난다.
😀 개선
new idea : representing words by their context (with word vector)
문맥을 고려한 벡터를 만들기 위해 사용되는 알고리즘에 대한 소개 : word2vec
word2vec : a framework for learning word vectors
(1) Data likelihood : how good at predicting words in the context of other words
앞에서 순서대로
product of each word as the center word
product of each word and a window around that of the probability of predicting that context word in the center word
likelihood에서 얻고자 하는 GOAL) maximize the likelihood of the context we see around center words
(2) objective function(목적 함수)
also known as cost function, loss function
: the average negative log likelihood
T : number of words in the corpus
the reason why using minus sign(-) : to minimize objective funtion
word2vec이 목표로 하는 것 : 중심 단어(c)가 주어졌을 때 주변 단어(o)가 등장할 조건부확률을 최대화 하기.
중심단어로 주변 단어를 잘 맞추는 것
수학적 이론에 대한 설명은 아래 링크 게시물을 보자. 너무 잘되어있는 설명!
https://ratsgo.github.io/from%20frequency%20to%20semantics/2017/03/11/embedding/
(아래는 나만 알아볼 수 있을듯한 필기..)