Deep Learning 20

AE(Auto Encoder), VAE(Variational Auto Encoder)이란?

AE(Auto Encoder)input 데이터를 latent space로 압축한 후 원본 데이터와 유사하게 reconstruction한 output 데이터 출력Encoder: 입력 데이터를 저차원(latent space)으로 압축Latent Space: 중요한 특징만을 보존한 저차원 표현Decoder: Latent Space에서 원래 입력과 유사한 데이터를 복원 VAE(Variational Auto Encoder)input 데이터를 확률 분포로 변환해 더 일반화된 latent space를 학습하고, 이를 샘플링하여 새로운 데이터 생성 가능KL Divergence를 이용해 정규분포를 따르게 하여 일반화가 잘 되도록 한다.덕분에 새로운 샘플을 뽑더라도 자연스럽고 의미있는 데이터를 추출할 수 있다.

Deep Learning 2024.12.22

베이지안 이론(Bayesian Theroy)이란?

빈도확률(Frequentist probability)10번 주사위를 던져 1이 나올 확률과 같은 빈도수를 측정하여 계산할 수 있는 확률 베이지안확률(Bayesian probability)빈도수를 파악하기 힘들 때, 특정 명제가 참일 확률사후확률(posterior probability) P(A|B): B(결과)가 발생하였을 때 A(원인)가 발생했을 확률우도확률(Likelihood probability) P(B|A): A(원인)이 발생하였을 때 B(결과)가 발생할 확률사전확률(prior probability) P(A): B(결과)가 나타나기 전에 결정되어 있는 A(원인)의 확률 From GPT사전 확률 P(A)를 바탕으로 새로운 데이터 B가 주어졌을 때 사후 확률 P(A|B)을 계산한다.이 사후 확률 P(A..

Deep Learning 2024.12.18

Preicision, Recall, F1-Score, Sensitivity, PR Curve, ROC Curve, AUPR, AUROC, Confusion Matrix

Confusion Matrix PositiveNegativePositiveTP(True Positive)FP(False Positive)NegativeFN(False Negative)TN(True Negative) TP(True Positive): 실제 Positive를 Positive로 예측FP(False Positive): 실제 Negative를 Positive로 예측FN(False Negative): 실제 Positive를 Negative로 예측TN(True Negative): 실제 Negative를 Negative로 예측 MatrixPrecision: Positive라고 예측했을 때 실제 Positive 비율 Recall(=Sensitivity=TPR): 실제 Positive 중에 Positive..

Deep Learning 2024.12.17

Discriminative Learning, Generative Learning이란?

Discriminative Learning입력(Data) X가 주어지면 출력(Label) Y가 나타날 확률 p(X|Y)를 직접 반환그림과 같이 Discision Boundary를 잘 학습하는 것이 목표Supervised Learning대표적인 예: Linear Regression, Logistic Regression 등데이터가 충분할 경우 좋은 성능을 보이지만 데이터를 구분하는 것이 목표이므로 데이터의 본질을 파악하기 힘들다. Generative Learning데이터 X">X가 생성되면서 pp(Y)">(Y), pp(X">(X|Y)">Y)으로 학습하고, Bayesian을 사용해 pp(X">(Y|XY)">)값을 간접적으로 도출그림과 같이 Joint Probability Distribution (p(X, Y)..

Deep Learning 2024.12.16

L1 Norm, L2 Norm / L1 Loss, L2 Loss 이란?

📌 Norm벡터의 크기를 측정하는 방법두 벡터 사이의 거리를 측정하는 방법 📌 L1 NormNorm 식에서 p가 1인 Norm으로 벡터의 요소에 대한 절댓값의 합Manhattan(맨허튼) norm이라고도 한다.L2보다 outlier(이상치)에 robust(덜 민감)하다. 📌 L2 NormNorm 식에서 p가 2인 Norm으로 피타고라스 정리를 활용했다.Euclidean(유클리드) norm이라고도 한다.제곱의 형태이기 때문에 outlier(이상치)에 예민하나 더욱 일반화된 모델을 생성한다. 📌 L1 Norm, L2 Norm 비교L1은 초록색 외의 선들로 여러가지 path를 가지지만L2는 초록색 선으로 unique shortest path를 가진다.  Loss도 Norm과 유사하게 계산된다.📌 L1..

Deep Learning 2024.12.11

Entropy, Cross entropy loss란?

[밑바닥부터시작하는딥러닝1] Chapter 4. 신경망 학습 [밑바닥부터시작하는딥러닝1] Chapter 4. 신경망 학습학습 : 훈련 데이터로부터 가중치 매개변수의 최적값을 자동으로 획득하는 것 4.1. 데이터에서 학습한다!✔️ 데이터 주도 학습1. 그림을 분류하는 알고리즘을 사람이 직접 설계2. 이미지에서heejudeveloper.tistory.com위 글에서 알아봤던 크로스엔트로피가 확실하게 정의되지 않은 것 같아서 간단하게 한번 더 정리해보려 한다. 📌 Entropy불확실성의 척도엔트로피가 높다는 것은 정보가 많고 확률이 낮다는 것(분류가 잘 되어있지 않다는 것) 📌 Cross-Entropy실제 분포 q를 모를 때 q분포를 예측하는 것쉽게 말해 모델이 예측한 확률값과 실제값을 비교했을 때 틀리는..

Deep Learning 2024.04.28

[밑바닥부터시작하는딥러닝2] Chapter 8. 어텐션

8.1. 어텐션의 구조✔️ seq2seq의 문제점seq2seq에서 Encoder의 출력은 '고정 길이의 벡터'였다.고정길이벡터는 입력 문장의 길이에 관계없이(아무리 길어도) 항상 같은 길이의 벡터로 변환한다는 뜻이다.이렇게 되면 필요한 정보가 벡터에 모두 담기지 못하게 된다. ✔️ Encoder 개선Encoder의 출력 길이는 입력 문장의 길이에 따라 바꿔주는게 좋다.이를 위해 그림 8-2처럼 시각별 LSTM 계층의 은닉 상태 벡터를 모두 이용한다.각 시각별 LSTM 계층의 은닉 상태이기 때문에 hs 행렬은 각 단어에 해당하는 벡터들의 집합이라고 볼 수 있다. ✔️ Decoder 개선(1)Decoder의 LSTM 계층의 '첫' 은닉 상태는 Encoder LSTM 계층의 '마지막' 은닉상태이다.즉 그림 8..

Deep Learning 2024.04.23

[밑바닥부터시작하는딥러닝2] Chapter 7. RNN을 사용한 문장 생성

7.1. 언어 모델을 사용한 문장 생성그림 7-1과 같이 LSTM 계층을 이용한 언어 모델이 'you say goodbye and I say hello' 라는 말뭉치를 학습했다고 가정해보자. 그림 7-2처럼 'I'라는 단어를 주었을 때 다음 단어를 새로 생성하려면 어떻게 해야 할까?1. 확률이 가장 높은 단어를 선택하는 방법(결과가 일정한 '결정적'인 방법)2. 후보단어의 확률에 맞게 선택하는 방법,즉 확률이 높은 단어는 선택되기 쉽고 확률이 낮은 단어는 선택되기 어렵다.(결과가 매번 다른 '확률적'인 방법) 확률적으로 'say'라는 단어가 선택된 후 그림 7-4처럼 두 번째 단어를 샘플링한다. 이와 같은 작업을 원하는 만큼 반복한다.(or 같은 종결 기호가 나타날 때까지 반복한다.) 문장 생성 구현은 ..

Deep Learning 2024.04.22

[밑바닥부터시작하는딥러닝2] Chapter 6. 게이트가 추가된 RNN

6.1. RNN의 문제점BPTT에서 기울기 소실 혹은 기울기 폭발이 일어나기 때문에 시계열 데이터의 장기 의존 관계를 학습하기 어렵다.그림 6-5에서 시간방향 기울기에 주목하면 'tanh', '+', 'MatMul(행렬곱)' 연산을 통과하는 것을 알 수 있다.여기서 +는 기울기를 그대로 하류로 흘려보내기 때문에 기울기가 변하지 않지만 나머지 두 연산은 기울기를 변화시킨다. 그림 6-6에서 tanh(x)의 미분인 점선을 보면 값이 1 이하이고 x가 0으로부터 멀어질수록 작아진다.이는 역전파에서 기울기가 tanh노드를 지날 때마다 작아진다는 뜻이다. MatMul(행렬곱)을 보면 그림 6-7처럼 상류로부터 dh라는 기울기가 계속 흘러온다고 가정하자.이 때 MatMul 노드의 역전파는 dhWh^T라는 행렬곱으로..

Deep Learning 2024.04.21

[밑바닥부터시작하는딥러닝2] Chapter 5. 순환 신경망(RNN)

피드포워드(feed forward) : 흐름이 단방향인 신경망 (예. word2vec 등)입력신호가 다음 층(중간층)으로 전달되고 그 신호를 받은 층은 그 다음 층으로 전달하는 식으로 한 방향으로만 신호가 전달된다.구성이 단순하여 구조를 이해하기 쉽기 때문에 많은 문제에 응용할 수 있다.그러나 시계열 데이터를 잘 다루지 못한다.이를 해결하기 위해 순환 신경망(Recurrent Neural Network, RNN)이 등장한다. 5.1. 확률과 언어 모델언어모델(Lanugage Model)은 단어 나열에 확률을 부여한다.특장 단어의 시퀀스에 대해 그 시퀀스가 일어날 가능성이 어느 정도인지(얼마나 자연스러운 단어 순서인지)를 확률로 평가한다. m개 단어로 된 문장을 생각했을 때, 단어가 w1, ..., wm ..

Deep Learning 2024.04.20