본문 바로가기

DL/modules4

FLOPs FLOPs는 다양한 딥러닝 모델들의 논문을 볼 때 연산량을 나타내는 지표로써 많이 사용된다. FLOPs를 포함한 연산량과 관련된 지표를 간단히 정리하면 다음과 같다. FLOPs는 FLoating point Operations의 약자로, 부동소수점 연산을 의미한다. FLOPs의 연산은 산칙연산을 포함해 Root, log, exp 등의 연산도 포함되며, 각각을 1회의 연산으로 계산한다. FLOPS는 Floating point Operations Per Second로, 초당 부동소수점 연산을 의미함으로, 하드웨어의 퍼포먼스 측면을 확인하는 지표이다. MAC은 현대 하드웨어들이 tensor의 연산을 할 때 사용되는 명령어 셋인 FMA가 a*x+b를 하나의 연산으로 처리하여 이 연산이 몇 번 실행되었는지 세는 것.. 2024. 1. 25.
BPE(Byte Pair Encoding), WordPiece Tokenization BPE에 대해 정리하기 전에 Tokenization에 대해 간단히 정리를 하고 넘어간다. Tokenization Tokenization은 Text를 임의로 지정한 단위, 즉 token으로 나누는 작업이다. NLP 모델을 학습시킬 때 토큰화된 단어의 개수가 모델 성능에 다양한 영향을 미치며, 여기서 특히 Out-of-Vocabulary(OOV)는 큰 문제다. Tokenization은 크게 3가지 유형으로 분류한다. 1. Word based Tokenizer : 말 그대로 단어 단위로 토큰화를 한다. - 하지만 단어 단위로 토큰화를 하면 신조어를 처리하지 못하거나 OOV와 같은 문제가 있다. 2. Character based Tokenizer : 영어 기준 알파벳, 한국어 기준 초성 중성 종성 혹은 음절 단.. 2024. 1. 25.
Loss function Loss function Loss function이란 손실 함수로써 모델의 Output이 얼마나 틀렸는지 나타내는 척도이다. 즉, Loss가 작을 수록 좋은 것인데, 모델의 학습과정에서 이 Loss의 미분값을 통해 Back Propagation을 진행한다. Loss function은 관점에 따라 Cost function이나 Objective Function으로도 부르는데, 구분할 필요가 있다. Loss function : 하나의 데이터에 대한 오차를 최소화하기 위해 정의된 함수 Cost function : 모든 오차를 일반적으로 최소하하기 위해 정의된 함수 Objective Function : 어떤 값을 최대화 혹은 최소화하기 위해 정의된 함수. 따라서 "Loss function ⊂ Cost functi.. 2024. 1. 22.
Normalization의 종류 Normalization & Standardization & Regularization 데이터과학, 머신러닝 등을 공부하다 보면 정규화라는 단어를 자주 접할 수 있는데, Normalization, Standardization, Regularization 세 가지 영어표현을 모두 정규화라고 하는 것은 문제가 있다. Normalization의 종류에 대해 알아보기 전에 세 가지 method의 차이에 대해 짚고 넘어간다. 1. Normalization & Standardization 둘 다 데이터의 분산을 줄이기 위해 값의 범위를 축소하는 rescaling 과정이다. scale의 범위가 크다면 노이즈 데이터가 생성될 가능성이 커지고, Overfitting이 될 가능성이 높아지고, 활성화 함수의 의미가 희미해진.. 2024. 1. 16.