NLP 5

[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