deep-learning
an archive of posts in this category
-
왜 하필 Cross Entropy인가: BCE에서 KL Divergence까지
분류 문제에 MSE 대신 Cross Entropy를 쓰는 이유를 정보량과 엔트로피에서 출발해 BCE, MLE, KL Divergence까지 하나의 흐름으로 정리.
-
ROUGE
Recall-Oriented Understudy for Gisting Evaluation
-
임베딩 모델에 새로운 단어 가르치기
Hugging Face sentence-transformer 모델에 새 어휘를 추가하고 fine-tuning한 뒤 LangChain에서 쓰는 단계별 가이드.
-
llama.cpp로 로컬 LLM 띄우기: 빌드, 모델 다운로드, 서빙, 벤치마크
GGUF 모델을 내 장비에서 직접 돌리기 위한 llama.cpp 최소 워크플로우. cmake 빌드부터 OpenAI 호환 서버, llama-bench까지.
-
Pydantic과 llm.with_structured_output — 함정과 안전장치
Pydantic 모델과 LangChain의 with_structured_output을 깔끔하게 조합하기 — 프롬프트 충돌, 검증 에러, 무한 평가 루프 피하기.
-
Self-Attention과 Transformer - 순차 연결을 끊고 직접 참조하다
RNN이 이전 상태 통해 문맥을 누적 전달했다면, Transformer는 필요한 토큰을 직접 찾아본다. Self-Attention이 어떻게 순차 구조를 없애고, Attention Seq2Seq와 어떻게 연결되는지 살펴본다.
-
Decoder의 남은 문제 - 출력 문맥도 여전히 누적된다
Attention은 Encoder의 정보 병목을 해결했다. 하지만 Decoder 자체는 여전히 이전 상태에 의존하는 순차 구조다. 이 문제가 왜 Transformer 등장의 마지막 동기가 되는지 살펴본다.
-
Attention Seq2Seq - 마지막 상태만 보지 말고 직접 보자
Vanilla Seq2Seq의 병목을 어떻게 해결할까? Decoder가 Encoder의 모든 hidden state를 "필요에 따라" 직접 참고하는 방식.
-
Vanilla Seq2Seq - 마지막 상태에 의존하던 구조
Seq2Seq의 기본 구조를 이해하려면 먼저 "입력 정보를 하나의 벡터로 압축한다"는 사실부터 받아들여야 합니다. 마지막 hidden state에 모든 정보를 담는 방식, 그리고 그 구조가 가진 근본적 한계.
-
Softmax와 Cross Entropy
softmax의 Jacobian 행렬과 Cross Entropy의 기울기를 유도하고, 둘을 합치면 왜 예측값 빼기 정답으로 무너지는지.