Optimizer

    Keras optimizer 종류|Tensorflow

    Keras optimizer 종류|Tensorflow

    이번 투고에서는 머신러닝 모델에서 옵티마이저의 역할에 대해 알아보고자 합니다. 또한, 이러한 함수의 이면에 있는 기초적인 수학에 대해서 이해하며, 활용사례와 장점, 단점에 대해서 알아봅시다. 옵티마이저란 무엇인가?? 여러분들은 손실 함수(loss function)는 모델에 제공된 데이터에 대한 성능의 좋고 나쁨을 파악하기 위해 사용된다는 것을 알고 있을 겁니다. 손실 함수는 기본적으로 주어진 훈련 표본에 대한 예측 값과 계산된 값 사이의 차이를 합한 것입니다. 더 좋은 성능을 위해 뉴럴 네트워크가 손실을 최소화하도록 훈련하기 위해, 모델과 손실 함수에 관련된 가중치와 매개변수를 조정할 필요가 있습니다. 이때, 옵티마이저가 굉장히 중요한 역할을 하게 됩니다. 예를 들어봅시다. 길 모르는 언덕을 내려오는 사..

    Segmentation map-도로 이미지 만들기|Pix2Pix

    Segmentation map-도로 이미지 만들기|Pix2Pix

    프로젝트 수행 프로젝트를 진행하면서 필수로 수행해야 할 사항은 아래와 같다. 데이터에 한 가지 이상의 augmentation 방법을 적용하여 학습(어떠한 방법을 사용했는지 기재.) 이전에 구현했던 두 개의 Generator 중 Encoder와 Decoder 간에 skip connection이 있는 U-Net Generator를 사용 모델 학습 후, 학습된 Generator를 이용해 테스트한다. 테스트 데이터는 다운로드했던 "val" 폴더 내 이미지를 사용. 1개 이상의 이미지에 대해 테스트 과정을 거친 후 그 결과를 스케치, 생성된 사진, 실제 사진 순서로 나란히 시각화. 모델을 충분히 학습하기에 시간이 부족할 수 있다. 적어도 10 epoch 이상 학습하며 중간 손실 값에 대한 로그를 남기기. 1. S..

    [Part5]Sketch2Pokemon-학습 및 테스트하기|Pix2Pix

    [Part5]Sketch2Pokemon-학습 및 테스트하기|Pix2Pix

    데이터 준비하기 Generator 구성하기 Generator 재구성하기 Discriminator 구성하기 학습 및 테스트하기(현재 page) Generator와 Discriminator 학습 및 테스트 이번 스탭에서는 구현된 Generator와 Discriminator를 학습시켜보고, 스케치를 입력으로 채색된 이미지를 생성해봅시다. 먼저 학습에 필요한 손실 함수부터 정의하도록 하자. 논문의 여러 실험 결과 중 손실 함수 선택에 따른 결과의 차이는 아래와 같습니다. 레이블 정보만 있는 입력에 대해 여러 손실 함수를 사용해 실제 이미지를 만들어 낸 결과는, 일반적인 GAN의 손실 함수에 L1을 추가로 이용했을 때 가장 실제에 가까운 이미지를 생성해 내었습니다. 이번 실험에서도 두 가지 손실 함수를 모두 사용..

    [Part 2]CIFAR-10 을 활용한 이미지 생성기

    [Part 2]CIFAR-10 을 활용한 이미지 생성기

    루브릭¶ 제목 내용 1. GAN의 두 모델 구조를 통해 이미지를 성공적으로 생성하였다. 오브젝트 종류를 육안으로 구별할 수 있을 만한 이미지를 생성하였다. 2. 생성 이미지 시각화 및 학습 그래프를 통해 GAN 학습이 바르게 진행되었음을 입증하였다. gif를 통해 생성이미지 품질이 서서히 향상되는 것과, fake accuracy가 추세적으로 0.5를 향해 하향하고 있음을 확인하였다. 3. 추가적인 GAN 모델구조 혹은 학습과정 개선 아이디어를 제안하고 이를 적용하였다. 제출 아이디어를 제출 프로젝트에 반영하고, 그 결과가 아이디어 적용 이전보다 향상되었음을 시각적으로 입증하였다. 결과 정리¶ ▶ Model One generator training history ▶ Model Two generator tr..

    [Part 1]CIFAR-10 을 활용한 이미지 생성기

    [Part 1]CIFAR-10 을 활용한 이미지 생성기

    ⭐ DCGAN 을 활용한 CIFAR-10 이미지 생성하기 ⭐¶ ▶ 없던 데이터를 만들어 내는 생성 모델링¶✅ 생성 모델링은 지금까지 접해 보았던 기본적인 딥러닝 모델과는 조금 다르다고 하는데, 무엇이 다른 걸까❓❓❓ 만약 직접 가위, 바위, 보에 해당하는 사진을 찍어 데이터셋을 만들고, 각 이미지를 알맞는 카테고리로 분류 할 수 있도록 학습했다고 가정해보자. 이러한 모델은 판별 모델링(Discriminative Modeling) 이라고 부른다. 말 그대로 입력받은 데이터를 어떤 기준에 대해 판별하는 것이 목표인 모델링인 것 이다. 반면, 생성 모델링(Generative Modeling) 은 말 그대로 없던 데이터를 생성 하는 것이 목표이다. 가위, 바위, 보에 대입해 본다면 다양한 가위, 바위, 보가 담..

    [Part 2]인공지능으로 새로운 패션을 만들 수 있다!

    [Part 2]인공지능으로 새로운 패션을 만들 수 있다!

    In [41]: from IPython.core.display import display, HTML display(HTML("")) ⛳ 새로운 패션 만들기 코드로 살펴보자 ⛳¶ 3-2. 코드로 살펴보자.¶사용할 데이터셋이 어떤 것인지 알았으니, 코드를 실행해보자. 필요한 패키지는 신경망 구성에 필요한 Tensorflow, 이미지와 GIF를 다루는 imageio, display, matplotlib, PIL 등 이 필요하다. In [1]: import os import glob import time import PIL import imageio import numpy as np import tensorflow as tf from tensorflow.keras import layers from IPython..