본 포스트는 '트랜스포머를 이용한 자연어 처리 - 한빛미디어'를 읽고 정리한 글입니다. 트랜스포머에 대한 글은 추후 서술하겠습니다.쿼리(Query)쿼리는 우리가 찾고자 하는 키를 벡터로 표현한 것입니다. 얘를 들어 메뉴판에서 고르고자 하는 메뉴가 쿼리가 됩니다. 키(Key)키는 메뉴판에 있는 모든 메뉴를 벡터로 표현한 것입니다. 값(Value)값은 키에 대응하는 값입니다. 예를 들면 펩시의 가격이 1500원일 때, 'Key가 펩시고 Value가 1500과 같다'라는 맥락으로 이해하시면 됩니다. 동작 방식BERT와 같은 모델에선 각 토큰에 대해 768차원의 벡터로 매핑되어, 쿼리, 키, 값은 모두 토큰의 개수만큼의 768차원의 벡터가 모여 $(token, 768)$ 크기의 행렬로 구성됩니다.이제, 쿼리와..
AI
본 포스트는 '트랜스포머를 이용한 자연어 처리 - 한빛미디어'를 읽고 리뷰한 글입니다.토큰화(Tokenization)딥러닝 모델은 숫자가 아닌 Apple과 같은 문자열을 그대로 이해하지 못합니다. 따라서 토큰화를 이용하여 문자열을 모델이 이해할 수 있는 숫자 리스트로 변환합니다. 이때 토큰은 더 이상 쪼갤수 없는 단위(리스트에 있는 각 요소)를 일컫으며, 토큰화는 토큰으로 문자열을 쪼개는 것을 의미합니다. 숫자로 바꾸는 과정을 수치화(Numericalization)이라 합니다. 조금 수식으로 단순화 해보자면, Input이 $S$라면 $f(S)$를 구하는 겁니다.문자 토큰화(Character Tokenization)문자 토큰화는 문자열 $S$에 있는 각 문자 $S_i$를 토큰으로 사용하는 토큰화 방법입니다..
선형 회귀란 말 그대로, 어떤 임의의 데이터 집합 $S$에 대해 직선과 데이터간의 차이가 최소인 일차 함수 직선을 찾는 과정입니다. 예를 들어, $y=3x + 7$과 같은 일차 함수가 데이터 $S$의 추세등을 잘 표현해 주는 그래프가 될 수 있습니다. 다중 선형 회귀란 한 데이터에 정보가 여러개이고, $x_i$가 서로 독립적인 데이터일때, (예를 들어, 기상 시간과 아침에 씻는 시간 등) $y$와 데이터간의 오차가 최소인 $y = w_1 x_1 + w_2 x_2 + \cdots + w_n x_n$의 꼴로 표현되는 방정식을 찾는 것을 의미합니다. 비선형 회귀란 어떤 한 데이터에 대해서 선형 회귀에서 표현할 수 없는 $n$차 다항함수와 같은 곡선을 찾는 과정을 의미합니다. 이때의 회귀 곡선은 $y = a_0..
본 글은 공부하는 과정에서 요약한 것이므로 오류가 있을 수 있습니다. 오차 함수란, 어떤 특정 데이터의 정답과 실젯값등을 비교할때 어느정도의 차이가 있는지를 수치적으로 나타내는 함수입니다. 단순히 차이를 계산하는 오차 함수는 예시로, $(2, 4)$ 좌표와 $y=2x-7$의 오차는 $4 - (-3) = 7$이 계산됩니다. 오차 함수에는 여러 가지가 있으며 이 중 대표적인 몇 가지 오차 함수를 소개하고자 합니다. Squared Error (SE) Squared Error는 예측값$(\hat y)$와 실제 데이터의 정답값$(y)$가 있을 때, 다음과 같이 계산됩니다. $$SE(W, b) = \sum_{i \in S} (\hat {y_i} - y_i)^2$$ 즉, 큰 오차값을 확대하여 일반적인 $\hat {y..