NLP 10

Transformer 내부 작동 원리: Self-Attention를 중심으로

안녕하세요, 제이덥입니다! 기술 면접을 준비하면서 기초 개념들을 하나씩 정리하고 있는데요. 오늘은 Transformer에 대해 다뤄보려 합니다. 이번 글에서는 Transformer의 탄생 배경이 된 Long-Term Dependency 문제를 간단히 소개하고 논문 Attention Is All You Need에서 제안된 Transformer의 작동 원리를 정리해보겠습니다. 특히 그중에서도 핵심 개념인 Self-Attention에 집중해 개념과 수식을 중심으로 깊이 있게 설명드릴 예정입니다.0️⃣ 탄생 배경 : Long-Term Dependency이전 포스팅에서 Vanilla RNN의 BPTT를 소개하면서 RNN의 Long-Term Dependency 문제에 대해서 다뤘습니다. 이 문제는 이후 Transf..

NLP 2025.03.30

BLEU Score

안녕하세요, 제이덥입니다! 기술 면접을 준비하면서 기초 개념들을 하나씩 정리하고 있는데요. 오늘은 기계 번역 등 생성 모델 평가에 널리 사용되는 BLEU Score에 대해 다뤄보려고 합니다.본격적으로 BLEU Score를 살펴보기 전에, 먼저 Precision, Recall, F1 Score와 같은 전통적인 평가 방법이 번역 품질 평가에 어떻게 활용되는지 간단히 짚고 넘어가겠습니다. 이후, 이러한 지표들의 한계를 보완하기 위해 BLEU Score가 어떤 방식으로 발전했는지 정리해 보겠습니다. 0️⃣ 언어 모델에서 생성한 문장은 어떻게 평가해야할까?언어 모델이 생성한 문장, 특히 번역된 문장은 어떻게 평가하는 것이 좋을까요? 번역 태스크에는 특이한 특징이 있습니다. 바로 생성된 문장의 단어 수나 단어 위치..

NLP 2025.03.16

Greedy Decoding vs. Beam Search vs. Exhaustive Search: 텍스트 생성 알고리즘 비교

안녕하세요, 제이덥입니다! 기술 면접을 준비하면서 기초 개념들을 하나씩 정리해보고 있는데요. 오늘은 Text Generation모델의 텍스트 생성 알고리즘에 대해서 다뤄보려고 합니다. 대표적인 텍스트 알고리즘 중 가장 대표적이며 학습자/실무자 쉽게 접할 수 있는 Greedy Decoding, Exhaustive Search, Beam Search 3가지 알고리즘의 정의/장점/한계에 대해 정리하여 포스팅합니다.  0️⃣ 문장을 생성할 때 학습만 하면 다 된 것 아니야?Sequence to Sequence Model with Attention(이하, Seq2Seq 모델), 즉 자연어 생성모델에서 디코더는 다음 토큰에 대한 확률 값을 계산하여 문장을 출력합니다. 하지만, 매 타임 스텝마다 다음 단어 중 가장 ..

NLP 2025.03.02

Sequence to Sequence Model with Attention Mechanism

안녕하세요, 제이덥입니다! 기술 면접을 준비하면서 기초 개념들을 하나씩 정리해보고 있는데요. 오늘은 Sequence to Sequence 모델과 Encoder-Decoder 구조를 시작으로, “Attention is All You Need” 이전의 Attention 메커니즘을 알아보고, 마지막으로 이를 활용한 Seq2Seq 모델까지 함께 정리해보려고 합니다. 1️⃣ Sequence to Sequence Model 초기 Sequence to Sequence 모델(이하 Seq2Seq 모델)은 NMT(Neural Machine Translation)와 같은 문장 번역이나 문장 생성과 같은 Many-to-Many 태스크를 해결하기 위해 활용되었습니다. 이는 입력과 출력을 모두 시퀀스 형태로 처리하는 데 특화되어..

NLP 2025.02.16

LSTM, GRU

안녕하세요! 제이덥입니다. 최근에 기술 면접을 준비하며, 기초적인 내용부터 하나씩 정리하고 있는데요. 이전 글에서는 Vanilla RNN이 겪는 Long-Term Dependency 문제를 다뤘는데요. 이번 포스팅에서는 이를 해결하기 위해 등장한 LSTM과 GRU의 탄생 배경과 작동 원리를 정리해보겠습니다. 1️⃣  RNN의 한계(Long-Term Dependency Problem) 지난 포스팅에서 Vanila RNN에서 Long-Term Dependency 문제에 대해서 다뤘습니다. 이를 간단히 설명하면 학습에 일어나는 Gradient Vanishing/Exploding 문제로 인해 상대적으로 오래된 시점의 정보가 유실되는 문제를 말합니다. 이를 해결하기 위해 Truncated BPTT를 이용해 개선했..

NLP 2025.02.02

[NLP] Recurrent Neural Network (Vanilla RNN)

안녕하세요! 제이덥입니다. 최근에 기술 면접을 준비하며, 기초적인 내용부터 하나씩 정리하고 있는데요. 오늘은 RNN이란 무엇이며 어떤 문제를 해결할 수 있는지, 어떻게 작동하는지에 대해서 종합적으로 정리하여 포스팅합니다.  1️⃣ RNN(Recurrent Neural Network)의 탄생 배경탄생 배경: 피드 포워드 신경망(FFNN)은 입력의 길이가 고정되어 자연어와 같이 입력이 가변적인 길이를 가진 시퀀스 데이터를 처리하는데 한계가 있었습니다. 이러한 한계를 극복하기 위해, 다양한 입출력 길이를 다룰 수 있는 인공신경망이 필요하게 되었고 여러 연구가 진행되었습니다. 그 결과 '순환 신경망이라고 불리는 Recurrent Neural Network(이하 RNN)이 등장했습니다.  2️⃣ RNN의 작동원리..

NLP 2025.01.19

[NLP] Backpropagation through time(BPTT)의 방법과 Long-Term Dependency 문제

안녕하세요! 제이덥입니다. 최근에 기술 면접을 준비하며, 기초적인 내용부터 하나씩 정리하고 있는데요. 오늘은 Backpropation through time(BPTT)가 이루어지는 방법과 이 때 발생하는 Long-Term-Dependency문제에 대해서 정리해보았습니다.  1️⃣ Backpropagation through time(BPTT)란?Backpropagation througth time(이하 BPTT)는 RNN에서 특정 Timestamp 구간마다 학습 과정 중에 Truncation을 적용하여 학습과정에서 이루어지는 Backpropagation을 말합니다. 일반적으로 딥러닝 모델은 순전파(forward propagation) 이후 예측값과 실제 값(Ground Truth)의 차이를 이용해 손실 함..

NLP 2025.01.05

[NLP] Word Embedding (Word2Vec, Glove)

안녕하세요! 제이덥입니다. 최근에 기술 면접을 준비하며, 기초적인 내용부터 하나씩 정리하고 있는데요. 오늘은 Word Embedding이 무엇인지, 대표적인 Word Embedding 기법인 Word2Vec, GloVe에 대한 내용을 포스팅해보았습니다.  1️⃣ Word Embedding이란?자연어(Natural Language)란 우리가 일상적으로 사용하는 언어를 말합니다. 그리고 언어의 의미를 파악하는데에는 순서가 중요하기에 자연어 데이터는 단어를 기반으로 한 순서가 있는 데이터(Sequence Data)라고 볼 수 있습니다. Word Embedding은 자연어의 기본이 되는 단어를 하나의 점, 벡터로 매핑(mapping)해주는 기법입니다. 그리고 이러한 Word Embedding은 하나의 머신러닝,..

NLP 2024.12.22

[NLP] Bags of Words & Naive Bayes Classifier for Document Classification

안녕하세요! 제이덥입니다. 최근에 기술 면접을 준비하며, 기초적인 내용부터 하나씩 정리하고 있는데요. 오늘은 텍스트 마이닝에서 사용하는 방법들 2가지를 정리해봤습니다. 첫 번째는 텍스트를 숫자로 표현하는 기법인 Bag Of Words(BoW) 표현형과 이를 활용한 Naive Bayes Classifier에 대해 정리해봤습니다.  1️⃣ Bag of Words (BoW)자연어를 다루는 분야를 NLP(Natural Language Processing; 자연어처리), Text Mining(텍스트 마이닝), Information Retrieval(정보 검색)으로 나눌 수 있는데요. Bag of Words는 딥러닝 기술이 적용되기 이전 텍스트 마이닝에서 자주 사용되던 기법입니다. Bag of Words는 단어들의..

NLP 2024.11.10

HuggingFace 모델에 RAG 적용하기(Feat. langchain)

안녕하세요! 제이덥입니다. 오늘은 오픈소스인 HuggingFace Hub에서 LLM을 다운받아 LangChain 라이브러리를 이용해 RAG를 적용해보는 방법에 대해 포스팅합니다. RAG, HuggingFace, LangChain에 대해서 간략한 개념 설명과 함께, 실습 코드를 올려두었으니 LLM 모델의 성능 향상에 대해 고민하고 있는 분들께 도움이 되었으면 하네요.0️⃣ RAG란 무엇인가요? 언제 사용할까요?.LLM(Large Language Model)은 방대한 양의 언어 데이터로 학습되어, 다양한 분야에 대한 지식과 추론 능력을 갖춘 거대한 언어 모델입니다. ChatGPT, Gemini, Copilot 같은 서비스는 이러한 LLM을 기반으로 출시되어 뛰어난 성능을 보여줍니다. 그러나 도메인 특화된 영..

NLP 2024.03.17