
[LLM] Easy Soft prompt 개발 2탄 (마지막)
2024. 2. 4. 02:14
개인 공부/프로젝트
1탄(https://jjongyn.tistory.com/35)에 이어서 본격적으로 아래와 같은 목표를 달성해 보기 위해 베이스 코드의 구조를 수정해 보자. 1. Method들이 자신들의 코드를 자유자재로 추가할 수 있어야 함 -> 각 메서드마다 파일 하나에서 모든 것이 동작하도록 수정 2. 각 method들에 대한 하이퍼 파라미터를 설정하는 게 쉬워야 함 -> 메서드별로 하이퍼 파라미터를 수정하는 Configure 파일을 만들도록 수정 3. 모델을 Freeze 할 때, 일일이 변수명을 추가해 줄 필요가 없어야 함 -> 기존과 같이 'prefix'의 변수명으로 해당 파라미터를 freeze 하는 게 아닌 prompt라는 객체를 선언 후 그 자체를 freeze 함으로써 모든 메서드들이 각자의 파라미터를 일일이..

[LLM] Easy Soft prompt 개발 1탄
2024. 1. 14. 22:30
개인 공부/프로젝트
내가 이걸 만들게 된 계기는 관심을 가지는 분야 중 하나인 Soft prompt tuning에 대한 통합적인 코드가 없었고 베이스 모델인 T5 안에서 프롬프트가 동작하기에 메서드를 한눈에 알아보기가 어려웠다! 그래서 베이스라인 코드를 잡고 거기서 일부 코드를 수정해서 사용성을 조금 더 올라가게 만들어 보고자 개발을 했다 (사실 내 연구하려고 약간 수정한 거임). 기존 Soft prompt 방법들 중 대표적인 방법은 Prefix tuning (https://arxiv.org/pdf/2101.00190.pdf)으로 위와 같이 Prefix라고 하는 파인튜닝을 위한 토큰을 맨 앞에 추가함으로써 기존의 Fine-tuning보다 더 효율적으로 학습하는 것을 의미한다. 뭐.. 이런 게 시초가 되어서 인풋 임베딩 레이..