본문 바로가기
반응형

Bigdata77

Python - Gaussian Error Linear Unit (GELU) 수식 - 코드 Gaussian Error Linear Unit (GELU)의 activation 수식Gaussian Distribution을 다음 수식으로 위 수식의 복잡도를 낮추어 아래와 같이 근사(Approximation) 수식을 활용한게 된다.근사(Approximation) 수식을 코드로 구현하면 다음과 같다.import mathimport tensorflow as tfcdf = 0.5 * (1.0 + tf.tanh( (math.sqrt (2 / math.pi) * (x + 0.044715 * tf.pow(x, 3))))) 2024. 8. 11.
LLM - fine-tuning GPT 계열 공식 이해 LLM의 경우 확률 모델로 보통 GPT 계열인 경우 다음 단어를 맞추는 Autoregressive 한 모델이라고 할 수 있다.(순차적으로 계속적으로 다음 단어의 확률을 맞추기 때문에 점진적으로 연결되는 자동 회귀 같다고 하여 Autoregressive라고 한다.)그리고 아래 공식은 LLM의 Full fine-tuning 을 일반화한 공식이다.x,y 는 전체 데이터를 의미하며,  t는 타임으로 단어 전, 후와 같은 순서를 의미한다. 는 단어별 예측을 할때 다음 단어 작은 앞쪽 단어에 대한 x, y와 예측을 하겠다는 의미로 보면 된다.P는 학습이 된 파라메터(Parameter)로 표현했다.log로 감싼 이유는 값의 표현의 간략화 하는 작업이라고 할 수 있다. 식의 계산 결과가 들어가며, 복잡한 단위의 계산을.. 2024. 8. 11.
PEFT(Parameter Efficient Fine-Tuning) - LoRA, QLoRA LoRA는 GPT와 같은 Large Language Models(LLM)을 특정 task에 fine-tuning(미세조정)하는 데 있어서 time, resource cost가 너무 크다는 단점을 해결하기 위해 제안된 방법으로 기존 모델의 Pre-trained weights는 그대로 두고 Dense layer의 Weight을 Low rank로 Decomposition한 Matrices만을 Optimization하는 것이라고 할 수 있다.이를 통해 학습 시간과 하드웨어의 비용을 크게 절약할 수 있다.성능을 유지하면서 최소한의 인프라로 모델을 미세 조정할 수 있는 PEFT(Parameter Efficient Fine-Tuning)라는 효율적인 기술에 최근 관심이 깊어지고 있다. 특히 기존에는 기업에서만 LLM.. 2024. 8. 11.
딥러닝 - 텐서(Tensor)란? 텐서(Tensor)는 기본적으로 가장 임베딩전 특정 인덱스(Index)로 만들어진 다차원의 배열(array)로 이루어진 데이터 형태를 말한다.여기에서 인덱스란 데이터를 컴퓨터가 이해할 수 있도록 변환된 값과 매칭되는 키라고 할 수 있다.텐서는 배열을 표현하는 방식을 수학적으로 접근하여 얘기하는 것이고, 이를 프로그램 입장에서는 다차원(여러 차원)을 가진 배열이라고 할 수 있다.그리고 텐서는 배열의 형태에 따라 다음과 같이 불리울 수 있다.Rank Type(타입)0 scalar(스칼라):     [1]1 vector(벡터):       [1,1]2 matrix(메트릭스): [[1,1],[1,1]]3 3 tensor:            [[[1,1],[1,1]],[[1,1],[1,1]]]n N tensor.. 2024. 8. 11.
RNN 단점 - 기울기 소실(vanishing gradient)과 장기 의존성 문제(long-term dependency problem) RNN의 단점으로 지적되는 기울기 소실, 장기 의존성 문제은 Sigmold Activation Function과 관계가 있고 RNN에서 닥 시계열 데이터를 입력할 때 기울기를 위해 Sigmoid Activation을 진행하는데, 아래 그림과 같이 올라가거나 내려갈수록 점점 1혹은 0과 큰 차이가 없어진다는 것이다. 기울기 소실(vanishing gradient): RNN은 입력과 출력 사이의 연결이 순환 구조로 되어 있기 때문에, 역전파를 통해 가중치를 업데이트할 때 기울기가 점차 소실되었어. 기울기가 소실되면, 가중치가 제대로 업데이트되지 않아 학습이 어려워 진다장기 의존성 문제(long-term dependency problem): RNN은 과거의 정보를 기억하고 이를 바탕으로 현재의 정보를 처리하기.. 2024. 8. 11.
머신러닝 - 결정계수와 과대/과소적합 결정계수(R)머신러닝에서 결정계수는 대표적인 회귀 문제의 성능 측정 으로 사용된다.결정계수를 사용하는 이유는,  회귀의 테스트를 진행할 때 정확 한 숫자를 맞추기는 어렵기 때문에, 예측값과 목표값의 평균을 통해 예측값이 목표값에 얼마나 가까운지를 확인하여 평가하게 된다. 공식은 복잡해 보이지만, 예측값과 실제 값의 차이를 1과 0 사이의 값으로 표현한 것이라고 이해하면 좋을 듯 하다.1에 가까울 수록 좋고, 0에 가까울 수록 성능이 나쁜 모델이라고 할 수 있다.과대/과소적합과대적합과 과소적합은, 훈련 세트와 테스트 세트간 문제점을 얘기할 때 많이 사용되는 용어이다.과대적합은 학습 데이터가 복잡해지면 발생할 수 있는데, 이유는 학습 데이터의 모든 세부 사항을 학습하게 되는데, 이렇게 되면 학습 데이터의 노.. 2024. 8. 11.
반응형