DeepLearning 9

[DeepLearning] 딥러닝의 기초와 메모리 최적화 기법 복습

오늘은 복습겸 딥러닝의 기초과 되는 핵심 원리와 기법에 대해 간단하게 얘기하고자 합니다. 1. 딥러닝의 학습 과정1) 순전파입력 데이터가 모델의 각 층을 거쳐 예측값을 생성합니다. 이 과정에 각 층의 계산 결과와 상태값이 메모리에 저장됩니다. 2) 손실 계산모델의 예측값과 실제 정답 간의 차이 즉, 손실을 계산합니다. 이 손실은 모델의 정확도를 측정하는 지표가 됩니다. 3) 역전파계산된 손실을 기준으로 각 층을 거슬러 올라가며 가중치가 손실에 미치는 영향 즉, 그래디언트를 계산합니다. 이때 순전파에서 저장해둔 상태값들이 활용됩니다. 4) 가중치 업데이트계산된 그래디언트를 바탕으로 옵티마이저가 모델의 가중치를 조정합니다. 이 과정을 통해 모델은 점점 더 정확한 예측을 할 수 있게 됩니다. 2. 딥러닝의 핵..

DeepLearning 2025.04.16

[Transformer] 인코더와 디코더

1. 인코더인코더는 입력 텍스트를 이해하고 의미를 추출하는 역할을 합니다. 기본적으로 여러 개의 동일한 층이 반복되는 구조로 되어 있습니다. 1) 인코더의 주요 구성 요소층 정규화(Layer Normalization): 데이터의 분포를 조정하여 학습을 안정화멀티 헤드 어텐션(Multi-Head Attention): 입력 시퀀스의 다양한 관계를 파악피드 포워드 층(Feed Forward Layer): 비선형 변환을 통해 표현력 강화 2) 잔차 연결잔차 연결은 이미지에 보이는 것처럼 원래 입력값을 각 하위 층의 출력에 더해주는 방식을 말합니다. 그래디언트 소실 문제 해결: 깊은 네트워크에서 학습 신호가 손실되는 문제 방지학습 안정화: 층이 많아져도 안정적인 학습 가능정보 보존: 원본 정보가 네트워크를 통과..

DeepLearning 2025.04.15

[Transformer] 어텐션 연산과 핵심 구성 요소

1. 어텐션 연산우리는 글을 읽을 때 모든 단어에 동일한 중요도를 부여하지 않습니다. 어떤 단어들은 특별히 주목하고, 다른 단어들은 상대적으로 덜 집중하며 전체 맥락을 파악합니다. 트랜스포머 모델의 핵심인 어텐션 연산은 이러한 인간의 읽기 방식을 모방한 연산입니다. 1) 어텐션이란 무엇인가?어텐션은 단어들 사이의 관계를 파악하여 문맥을 이해하는 방식으로, 다음과 같은 과정으로 작동합니다:단어와 단어 사이의 관계를 계산하여 관련성의 깊이를 판단관련이 깊은 단어는 더 많이, 관련이 적은 단어는 더 적게 맥락에 반영이 연산은 모델이 문장 내에서 단어 간의 복잡한 관계를 이해하고, 문맥에 따라 단어의 의미를 적절히 해석할 수 있게 합니다. 2. QKV(쿼리, 키, 값) 모델 이해하기트랜스포머 아키텍처를 개발한 ..

DeepLearning 2025.04.14

[Text Embedding] 텍스트를 임베딩하는 3단계

딥러닝 모델이 텍스트를 이해하려면 먼저 문자 기반의 텍스트 데이터를 숫자 기반의 벡터로 변환해야 합니다. 이 과정을 임베딩(embedding)이라고 부르며, 보통 다음의 세 가지 단계를 거칩니다.1. 토큰화 (Tokenization)텍스트를 모델에 넣기 위해 가장 먼저 해야 할 일은 텍스트를 잘게 나누는 것, 즉 토큰화입니다. 이때 각 토큰에 고유한 숫자 ID를 부여하며, 이 정보를 사전(dict)에 기록합니다.토큰화 방법은 다양하지만, 크게 다음 두 가지 방식이 있습니다:큰 단위 토큰화: 예를 들어 단어 단위로 자르는 방식입니다. 의미 보존에 유리하지만, 새로운 단어가 등장했을 때 처리할 수 없는 OOV(Out-Of-Vocabulary) 문제가 발생합니다.작은 단위 토큰화: 예를 들어 글자 단위로 자르..

DeepLearning 2025.04.11

[Transformer] RNN과 트랜스포머 아키텍처의 이해

딥러닝 기반 자연어 처리 기술은 최근 몇 년간 혁신적인 발전을 이루었습니다. 이 발전의 중심에는 RNN(순환신경망)에서 트랜스포머 아키텍처로의 패러다임 전환이 있었습니다. 이번 글에서는 두 모델의 특징과 차이점, 그리고 트랜스포머가 어떻게 기존 RNN의 한계를 극복했는지 알아보겠습니다.1. 순환신경망(RNN)의 구조와 한계RNN은 시퀀스 데이터를 처리하기 위한 초기 딥러닝 모델로, 텍스트를 순차적으로 하나씩 처리하는 특징을 가집니다.  1) RNN의 작동 방식텍스트의 각 토큰(단어)을 하나씩 순차적으로 입력이전 토큰 처리 결과를 다음 토큰 처리에 활용이런 순환 구조가 시퀀스 데이터 처리에 적합2) RNN의 한계점 순차적 처리로 인한 비효율병렬 처리가 불가능해 학습 속도가 느림긴 시퀀스 처리 시 계산 시간..

DeepLearning 2025.04.10

[DeepLearning] 메모리 효율적인 딥러닝

딥러닝 모델, 특히 대규모 언어 모델(LLM)이 발전함에 따라 모델 크기와 필요한 계산 자원도 크게 증가했습니다. 하지만 모델 성능이 향상됨에 따라 모델의 크기와 요구되는 계산 자원 또한 기하급수적으로 증가하고 있습니다. 수십억에서 수백억 개의 파라미터를 가진 모델을 학습하고 추론하려면, 단순히 고성능 하드웨어만으로는 한계가 있습니다. 메모리 효율성과 연산 최적화 없이는 현실적인 운영이 어려워지기 때문이죠. 이번 글에서는 대규모 딥러닝 모델을 효율적으로 다루기 위한 핵심 기술들을 정리해보겠습니다. 특히 메모리 관점에서 모델을 어떻게 경량화하고 최적화할 수 있는지를 중심으로 다뤄보겠습니다.1. 데이터 타입에 따른 메모리 사용량딥러닝 모델은 본질적으로 수많은 파라미터(가중치)를 포함한 거대한 행렬 연산의 집..

DeepLearning 2025.04.08

[DeepLearning] 언어 모델 최적화 개념 정리

언어 모델을 효과적으로 활용하려면 모델을 최적화하고 경량화하는 과정이 중요합니다. 이번 포스트에서는 모델의 추론 과정, KV 캐시, 양자화, 지식 증류 등의 개념을 직관적으로 정리해보겠습니다.1. 언어 모델이 텍스트를 생성하는 방식1.1 언어 모델이 텍스트 생성을 마치는 이유EOS(End of Sequence) 토큰 생성문장이 끝났음을 알리는 특수 토큰을 생성할 경우 텍스트 생성을 종료합니다.최대 길이 도달사용자가 설정한 최대 토큰 길이에 도달하면 텍스트 생성을 종료합니다.1.2 자기 회귀적(Auto-Regressive) 모델언어 모델은 입력된 텍스트를 기반으로 다음 토큰을 하나씩 순차적으로 예측합니다. 즉, 이전에 생성된 토큰들을 다시 모델 입력으로 넣어 다음 토큰을 예측하는 과정을 반복합니다.2. 중..

DeepLearning 2025.02.14

[DeepLearning] 용어 정리

공부하면서 생소한 용어나 원활한 플로우 이해를 돕기 위한 포스팅 공간을 마련하였습니다. 계속 수정해가면서 내용이 추가될 예정입니다. 파라미터(Parameter)모델의 파라미터는 머신러닝 모델이 학습을 통해 조정하는 값들로, 모델의 예측 성능을 결정하는 중요한 요소입니다. 파라미터는 모델의 구조에 따라 다르며, 주로 가중치(weights)와 편향(biases)으로 구성됩니다.가중치(Weights)입력 데이터의 각 특징(feature)에 곱해지는 값입니다. 가중치는 모델이 입력 데이터의 중요도를 학습하는 데 사용됩니다.편향(Biases)모델의 출력에 더해지는 상수 값입니다. 편향은 모델이 데이터를 더 잘 맞추기 위해 조정됩니다.예시: 선형 회귀 모델[ y = w_1 x_1 + w_2 x_2 + b ] ( w..

DeepLearning 2025.02.12

[DeepLearning] 제목 기반 카테고리 예측 모델 개발

본 내용은 하단 참고자료에 작성된 책에 대한 내용을 기반으로 다시한번 정리한 내용입니다. 예제를 통해 연합뉴스 기사의 제목을 바탕으로 카테고리를 예측하는 딥러닝 모델을 개발하는 과정을 정리하였습니다. 이를 위해 데이터셋 로드부터 모델 학습 및 평가까지의 전체 과정을 단계별로 설명하며, 주요 개념과 코드 실행 결과를 함께 살펴보도록 하겠습니다. 1. 모델 학습에 사용할 연합뉴스 데이터셋 다운로드모델 학습을 위해 KLUE 데이터셋의 YNAT 서브셋을 사용합니다. datasets 라이브러리의 load_dataset 함수를 이용하여 데이터를 로드합니다.from datasets import load_datasetklue_tc_train = load_dataset('klue', 'ynat', split='train..

DeepLearning 2025.02.09
728x90