전체 글(94)
-
데이터 분석 (data analysis)
보호되어 있는 글입니다.
2024.09.16 -
[NLP] Transformer
Transformer는 long-term dependency 문제를 해결하기 위해 RNN의 순환 구조를 버리고 attention 기법을 적극 활용한 모델이다. Encoder-Decoder AttentionRNN의 순환구조는 최근 입력 embedding vector에 치중된 context vector만 디코더로 넘겨준다. Attention 기법은 각 출력 시점마다 필요한 입력 embedding vector를 파악하고 이들로 context vector를 생성해 디코더로 전달한다. 구체적으로, 각 출력 시점마다 각 입력 embedding vector가 얼마나 중요한지를 파악(by dot product & softmax)하고, 중요도가 높은 입력 embedding vector에 더 큰 가중치를 부여하는 방식(..
2024.08.19 -
[AI Tech] Week 1. PyTorch
학습 내용contiguity-like conditiontensor를 slicing을 사용하거나 tensor의 축/모양을 바꿔 새로운 tensor를 생성할 때, contiguity-like condition 조건에 따라 메모리 추가 할당 여부를 결정한다. 다시 말해, 새로운 `tensor`의 element를 따로 저장하지 않는다는 의미다.참고로, tensor의 모든 element가 일정한 stride(=간격)으로 메모리에 할당된 경우 contiguity-like condition을 만족한다고 한다.이처럼, PyTorch는 새로운 `tensor`를 생성할 때 함부로 메모리를 추가 할당하지 않는다.torch.view vs torch.reshape두 함수 모두 기존 `tensor`의 모양을 바꿔 새로운 `ten..
2024.08.07 -
[NLP] LoRA: Low-Rank Adaptation of Large Language Models
AbstactLoRA는 pre-trained 모델로 downstream task를 학습할 때 pre-trained weight 전체를 학습시키는 대신 각 transformer layer마다 rank decomposition matrix를 추가하여 학습시키는 기법으로 학습 파라미터 개수를 크게 줄여준다. LoRA는 기존 fine-tuning 기법에 비해 학습 파라미터 개수가 적고 학습 처리량이 높음에도 불구하고 동등하거나 더 나은 성능을 보인다. 그 뿐만 아니라, 타 adaptation 기법과 다르게 추론 지연이 없다.Introduction기존에는 pre-trained 모델을 fine-tuning할 때 pre-trained weight를 모두 학습하는 비효율적인 방식을 사용했다.효율을 높이기 위해 일부 파..
2024.05.29 -
[RL] 8.1. DPO(Direct Preference Optimization): Your Language Model is Secretly a Reward Model
Preview RLHFpreview PPO Reward Model Loss function$$\begin{matrix} \mathbb (r_\phi, \mathcal D) = - \mathbb E_{(x, y_w, y_l) \sim \mathcal D} \left[ \log \sigma(r_\phi(x, y_w) - r_\phi(x, y_l))\right] \\ \text{where } \mathcal D = \{x^{(i)}, y_w^{(i)}, y_l^{(i)}\}_{i=1}^N\end{matrix}$$ RLHF Objective function$$\begin{matrix} \text{objective} (\theta) &=& \mathbb E_{x \sim \mathcal D, y \sim \pi_..
2024.05.23 -
[RL] 8. PPO: Proximal Policy Optimization
Actor-Critic은 온-정책(on-policy) 알고리즘이기 때문에, 경험 데이터를 한 번만 사용할 수 있다. 다시 말해, 재사용이 불가하다. PPO(Proximal Policy Optimization)는 이러한 한계점을 개선한 알고리즘이다. 이전에 살펴본 Actor-Critic 수식을 advantage function으로 표현하면 다음과 같다.$$\begin{matrix} \nabla_\theta J(\theta) &=& \mathbb E_{\tau \sim \pi_\theta} \left[ \sum_{t=0}^T (R_t + \gamma V_w(s_{t+1})-V_w(s_t)) \nabla_\theta \log \pi_\theta(a_t|s_t)\right] \\ &=& \mathbb E_{\..
2024.05.21