본문 바로가기

Study/DL15

GAN - 2편 (DCGAN, cGAN) IndexDeep Convolutional GAN (DCGAN)GAN에 CNN을 적용한 모델로, generator가 vector arithmetic 속성을 가지고 있는게 특징인데, G의 input으로 사용되는 latent vector 안에서 연산을 함으로서 output으로 생성할 이미지를 어느정도 조정할 수 있다는 뜻이다.즉 어느정도 특정 요구사항에 맞춘 generate가 가능한 모델이다. G는 fractionally-strided 혹은 transposed convolution 방식을 활용해서 up-sampling을 진행한다. D는 Maxpooling 대신 stride를 통해 down-sampling 하고, FC Layer는 사용하지 않는다. (분류문제가 아니기 때문)G,D 모두 batch normali.. 2023. 7. 2.
GAN - 1편 (GAN 구조,학습,어려움) IndexGenerative Adversarial Network (GAN)Generative : 새로운 데이터를 생성해낸다. VAE는 기존의 input과 유사한 데이터를 생성했다면 GAN른 기존에 없는 새로운 데이터를 생성해낸다. Adversarial : Generator 와 Discriminator가 서로 경쟁적으로 G는 D를 속이기위한 데이터를 생성, D는 G의 fake 데이터를 골라내기위해 학습 즉 GAN은 이름 그대로 적대적인 생성 신경망으로 G와D가 적대적이면서도 서로를 보완해가며 새로운 질좋은 데이터를 만들어 내는, 대표적인 비지도학습이다. G는 생성한 fake sample이 real data에서 나온 척해서 D가 잘못판단할 확률을 maximize 하도록 학습한다.D는 Generator가 생성.. 2023. 7. 1.
Variational Auto Encoder (VAE) IndexAE의 목적은 Input을 대변할 수 있는 low dimension latent vector를 추출하는 것이라면, VAE는 input의 많은 variations를 generating 하는, generaing 모델이다.  VAE 모델 구조Encoder 가 직접적으로 Latent vector를 추출하는 대신 아래와 같은 절차를 거친다. mean(μ), standard deviation(σ) 2개의 latent vector를 생성한다.μ,σ 에 해당하는 Gaussian 분포로 input의 분포를 approximate한다 - Latent distributionGassian을 따르는 Latent distribution으로부터 sample을 추출하여 sampled latent vector 생성 Decode.. 2023. 7. 1.
Auto Encoder IndexAuto Encoder 구조 오토인코더는 대표적인 Unspervised Learning 으로 Data Reconstruction을 목적으로 하는 인코더-디코더 결합모델Input data를 lower dimension vector (=Latent vector)로 압축(다운샘플링)한뒤 다시 Input의 모습과 비슷한 output으로 reconstruction(업샘플링)하는 과정. 즉, Input 이 Target이 된다. AE의 목적은, 'Dimensionality Reduction' : Input 정보를 최대한 잃지 않는 선에서 저차원 Latent vector를 찾는것 AE의 주요 특징 두가지는 ① Data-Specific ② LossyData-Specific : 학습할 Input data끼리, 그.. 2023. 7. 1.
Attention Mechanism IndexAttention mechanism은 인간이 주의를 집중하는 방식과 유사하게 특정 정보와 가장 관련있는 입력 데이터의 특정 부분에 집중할 수 있는 기능을 위한 매커니즘이다. Attention mechanism이 CNN(visual image)측면과, LSTM(sequence)측면에서 어떻게 활용되는지를 정리해본다.  Attention for Image dataCNN 에서의 Attention (Visual Attention) 활용구조를 보기전에, CNN-LSTM 결합모델을 통한 Image Captioning (이미지를 보고 설명문장을 써주는) 과정을 그려보면 아래와 같다. CNN - LSTM model for Image CaptioningImage로 부터 feature를 학습/추출하기 위해 CNN.. 2023. 7. 1.
RNN - 2편 (LSTM) IndexLSTM (Long Short Term Memory)LSTM은 Long-term dependency를 capture하면서도 RNN의 vanishing/exploding grdaient problem을 극복하는 목적Simple RNN과 다르게 LSTM은 Memory를 위해 Cell state c(t) 와 Hidden state h(t) 2개의 벡터를 가지는데, 개괄적으로는 Cell state가 Long term, Hidden state가 Short term 메모리를 담당하고, 이 둘을 합쳐 Memory cell이라고 한다. Cell State 의 구성Input gate: 어떤 input을 cell state에 얼만큼 저장할지Forget gate: Memory unit (Cell state)에거 얼.. 2023. 7. 1.
RNN - 1편 (RNN구조, RNN의 Backpropagation) Index TDNN (Time Delayed Neural Network)RNN이 개발되기 전에는 temporal pattern을 갖는 문제를 해결하기 위해 기존의 DNN 구조에 input 으로 시계열 데이터를 시퀀스를 가지고 투입하는 TDNN 이 활용되었다. 특정 사이즈(n)의 window를 sliding 시켜가며 시계열 input data를 받는다. (마치 1stride 1D Convolution 같이) Input 데이터 안에 window size 만큼의 데이터간에는 순서,dependency가 있을 수 있지만, Input끼리는 independent하다. 즉 input(t) 와 input(t-1)은 shuffle 가능하다. 단점window size 가 너무 작으면 longer dependency 포착을 .. 2023. 7. 1.
CNN - 3편 (Up-sampling, U-Net) IndexUp-Sampling앞서 convolution - maxpooling 과정은 dimension reduction 즉 down-sampling 이라고 했다. Up-sampling (≒Decoing)은 Down-sampling (≒Encoding) 의 반대방향 변환이다.CNN 관점에서 Up-sampling은 압축된 low resolution feature map으로 high resolution image를 generate하는 것이다. UP-sampling의 대표적인 non-learnable한 방식이 interpolation(보간) 기법이다. 반면, 대표적인 Convolution을 이용한 learnable 방법이 ①Transpose convolution ②Fractionally-strided-conv.. 2023. 6. 30.