머신러닝/약간 덜매운맛(3)
-
구현체를 통해 PEFT lora 를 알아보자
기존에 썼던 짧은 lora config글과 통합하여, Lora를 근본적으로 이해하기 위해서 새로운 글을 시작한다. lora가 어떤 원리인지 구현체를 통해서 이해해 보고, huggingface peft lora를 사용할 때 어떤 config를 "왜" 조정해야 하는지 알아보자. 0. 정말 간단한 요약 모델이 너무 무겁다. 이걸 어떻게 다 학습하나. 그래서 학습할 때 일부 layer들에 대해서(transformer에선 주로 attention block에 대해서만 적용하고 있다) weight를 따로 똑 떼어내서 학습하고자 한다. 아래 그림을 보면, 기존 모델을 그대로 학습한다면 모든 weight를 다 학습에 사용한다. 반면에 lora를 학습에 이용한다면 기존 weight는 학습에서 freeze시키고 lora a..
2024.03.17 -
sklearn SVM(Support Vector Machine) 가이드
오늘은 Support Vector Machine (SVM)을 사용하는 데 있어서 알아두면 좋을 하이퍼파라미터들과 간단한 수식들을 정리해 본다. svm은 대게 분류모델의 시작점으로 사용하기 유용하며, sklearn에서 모델을 제공하기 때문에 사용하기 용이하다. 라이브러리 버전은 1.3을 기준으로 작성한다. 참고 1 : https://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html sklearn.svm.SVC Examples using sklearn.svm.SVC: Release Highlights for scikit-learn 0.24 Release Highlights for scikit-learn 0.22 Classifier comparis..
2023.07.23 -
transformer 구현, pytorch 공식 코드로 알아보기
오늘은 지난 시간 Multi Head Attention의 pytorch 구현체를 까본 것에 이어 transformer를 분해해 보겠다. pytorch의 torch.nn.modules.transformer를 기준으로 한다. 참고 : https://pytorch.org/docs/stable/_modules/torch/nn/modules/transformer.html#Transformer torch.nn.modules.transformer — PyTorch 2.0 documentation Shortcuts pytorch.org 1. class Transformer nn.modules.transformer에서 import 하는 라이브러리들은 다음과 같다. import copy from typing import ..
2023.07.15