Loading...
2022. 4. 15. 23:50

attention 구조는 NLP를 어떻게 바꾸었는가

1. backpropagation attention의 가중치(attention distribution, attention모듈에는 가중치가 없는데? 근데 이놈들은 결국 encoder의 가중치랑 decoder의 가중치에 영향을 받겠지)를 잘 학습하도록 backpropagation에 의한 gradient가 attention module로도 흘러들어감 gradient vanishing 문제를 어느정도 완화시켰다. 직관적으로 attention구조가 없다면 gradient는 위 그림에서 먼 단어까지 가는데 굉장히 멀어서 잘 안흘러가겠다는 것을 느낄 수 있는데 attention구조에 의해 마치 빠른 길로도 gradient가 흘러들어가는 모습이다.. 2. 다양한 attention mechanism attention 구..

2022. 4. 14. 01:17

예시로 이해하는 attention의 기본 아이디어

encoder의 기본 진행은 다음과 같다. 위에서 나온 4개의 encoder의 hidden vector $h_{1}^{(e)}$, $h_{2}^{(e)}$, $h_{3}^{(e)}$, $h_{4}^{(e)}$와 첫번째 step의 decoder output hidden vector $h_{1}^{(d)}$가 있는데 원래라면 첫번째 단어 생성을 위해서 $h_{1}^{(d)}$가 output layer로 들어가서 예측을 수행했을 것 그러나 attention은 첫번째 단어 생성을 위해 어떤 단어에 더욱 집중해야하는지 알기 위해 $h_{1}^{(d)}$와 $h_{1}^{(e)}$ ,$h_{2}^{(e)}$ ,$h_{3}^{(e)}$ ,$h_{4}^{(e)}$과의 내적 연산을 수행하여 각 vector에 대하여 sc..

2022. 2. 6. 21:55

Word2Vec의 기본 알고리즘

1. idea I study math라는 입력문장을 unique한 단어들의 vocabulary로 변환하면 {‘I’, ‘study’,’math’} 사전의 각 단어는 vocab size만큼 차원을 갖는 one hot vector이다. ‘I’는 [1,0,0] ‘study’는 [0,1,0] ‘math’는 [0,0,1] sliding window라는 기법은 한 단어를 중심으로 앞 뒤로 나타난 단어들과 (중심단어,주변단어) 입출력쌍을 구성하는 기법이다. 이 단어 쌍에서 중심단어를 input으로 두고 주변단어를 output으로 두는 예측 task를 수행하는 2-layer neural network를 구성한다. one hot vector의 차원이 3차원이니 input과 output layer의 차원은 3차원 hidde..

2022. 1. 7. 00:08

벡터의 내적의 기하학적 의미

1. 내적의 기하학적 의미 1-1) 정사영(projection) 위의 그림에서 벡터 a를 x의 정사영이라고 부른다 (projection) 1-2) 정사영의 길이 삼각함수 cos을 이용하여 위와 같이 정사영의 길이를 쉽게 구할 수 있다. 1-3) 두 벡터의 유사도 그렇다면 x,y의 내적은 x의 정사영벡터 크기에 벡터 y의 길이를 곱한 것이 된다. 그러므로 우리는 내적을 두 벡터 x,y의 유사도 측정에 사용할 수 있을 것 같다. 두 벡터가 비슷할수록 정사영의 길이가 커서 내적도 크다 두 벡터가 비슷할수록 두 벡터가 이루는 각의 크기가 작다(cosine 값이 크다) 두 벡터의 내적이 클수록 두 벡터가 그만큼 유사하다는 것 내적이 크다는 것은 두 벡터가 이루는 각이 작아야한다는 뜻임 두 벡터는 두개의 데이터로 ..

2022. 1. 6. 00:26

두 벡터 사이의 거리와 각도

1. 두 벡터 사이의 거리 벡터의 뺄셈을 이용 두 벡터 $x$ , $y$의 거리는 두 벡터의 뺄셈 $x-y$의 norm과 같다 2. 두 벡터 사이의 각도 L2 norm 에서만 정의됨 2-1) n차원에서 정의한 the law of cosines 위 그림에서 아래 등식이 성립하는데 코사인 법칙이라고 부른다. 참고로 우리나라만 제1,2코사인법칙을 나눈다 세계적으로는 위와 같은 등식을 코사인법칙이라 한다 2-2) 두 벡터의 내적(dot product) 대응하는 성분의 곱의 합 cosine을 이용하여 구할 수도 있다. 그림2에서 c의 값은 두 벡터 a와 b의 뺄셈 a-b의 norm으로 구할 수 있고 코사인법칙과 \[a\cdot b = \left\| a \right\|\left\| b \right\|cos\thet..