분류 전체보기

이번 포스팅의 내용은 https://mari970.tistory.com/61 블로그의 내용과 이어진다. dataset 가 source 와 target 으로 이루어져 있을 때 p(y|x) 방식으로 학습시킬 수 있는 방안에 대한 방법론이다. https://github.com/huggingface/transformers/issues/1464 위 링크가 내가 생각했던 문제와 매우 비슷해서 정리한다. (2019 글) 위 issues 에서 화자가 생각하는 question 주제는 모델에 input (”source seq가 포함되어 있는” 이라고 되어있는데, 그건 target 도 같이 넣는다는 의미로 해석) 을 forward 시킬 때 source token 에 대한 loss 는 0 으로 만들어야 하나? 이다. = 이는..
(IA)3 paper 등에서 제시한 Prompt Tuning 의 문제점 : Prompt network 의 initialization 이 성능에 매우 큰 영향을 미친다. 이 문제점이 가장 처음 제기된 논문이다. 기존 Prompt Tuning 의 문제점 모델 capacity 가 증가할수록 프롬프트 튜닝이 파인튜닝에 성능이 근접해간다. 하지만 11B 이하 작은 모델로는 이 두 방법론의 성능 사이에 큰 차이가 존재한다. 이를 해결하기 위해 Source task 로 학습된 프롬프트를 Transfer 에 이용하여 Target task 의 성능을 높일 것을 제안한다. Method (right Fig.) 1개 이상의 source task 에 대해 (frozen model에서) prompt 를 학습하고 이 프롬프트를 초..
Noisy Embedding Fine TUNing : noise 를 추가하는 매우 간단한 방법으로 (instruction) fine-tuning 하는 방법이다. 방법 방법은 위의 알고리즘과 같다. 위의 sudo code 은 학습 과정(fine-tuning) 을 나타낸 것이다. 데이터셋 input 을 X_i 라고 하고 이를 Embedding layer 에 통과시킨 embedded input 을 X_emb 라고 한다. 이 X_emb representation 에 noise e를 Scaling 하여 추가한 후 (나머지) model 에 넣어준다. 이 때 e 는 위의 알고리즘에서 uniform 에서 샘플링한다. 이후 나머지 forward 과정과 back propagation 등은 똑같이 진행된다. 위 과정과 같이..
요즘 LLM 이 유행하면서 빠질 수 없는 기술인 Parallelism 에 대해 정리해보도록 하자! 여러 GPU deivce 를 사용하는 Parallelism (병렬화)은 데이터 parallel 과 모델 parallel 로 나뉘어진다.Parallelism 은 여러 GPU 를 사용해서 하나의 학습과정을 더 빨리 끝내거나 모델이 너무 커서 하나의 GPU에 다 올라가지 않을 때 분할학습을 할 수 있도록 하는 기술이다.전자는 Data Parallel 류의 방법을 사용하고 후자의 경우에는 Model Parallel 류의 방법을 사용한다.(실제로 크게 DP MP 로 나뉘고 그 아래 DDP 나 PP, TP 등 advanced 방법이 포함되어있지는 않지만 그냥 이해를 편하게 하기 위해 이렇게 기재하였다) Data Par..
섬섬옥수수
'분류 전체보기' 카테고리의 글 목록 (6 Page)