• 검색 결과가 없습니다.

9. GAN(생성적 적대 신경망)3강. 합성곱 계층 GAN 구현

N/A
N/A
Protected

Academic year: 2022

Share "9. GAN(생성적 적대 신경망)3강. 합성곱 계층 GAN 구현"

Copied!
12
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

9. GAN(생성적 적대 신경망) 3강. 합성곱 계층 GAN 구현

학습목표

- 필기체를 생성하는 합성곱 계층 GAN을 구현할 수 있다.

- Fashion-MNIST 데이터를 생성하는 합성곱 계층 GAN을 구현할 수 있다.

학습내용

- 필기체를 생성하는 합성곱 계층 GAN 구현

- Fashion-MNIST 데이터를 생성하는 합성곱 계층 GAN 구현

1. 필기체를 생성하는 합성곱 계층 GAN 구현 (1) 합성곱 계층을 이용한 GAN 구현하기

∙ Generative: 생성(Generation) 모델

∙ Adversarial: 두 개의 모델을 적대적(Adversarial)으로 경쟁시키며 발전

∙ Network: 인공신경망(Artificial Neural Network)

∙ GAN은 입력한 필기체를 보고 배워 새로운 유사 필기체를 생성

① 이미지 처리용 툴을 다루는 PIL과 케라스 서브패키지를 불러옴

(2)

∙ 신경망의 출력이 스칼라나 벡터가 아니라 다차원일 경우에는 해당 차원에 맞 는 손실 함수가 필요

∙ 4차원 데이터를 이용하는 손실 함수를 케라스 백엔드와 Tensorflow로 구현

② 합성곱 계층 GAN 모델링

∙ GAN에 포함된 2가지 신경망(생성망, 판별망)을 모델링 - 클래스 초기화 함수 구현

- 생성망을 정의하는 함수 구현

(3)

- 입력된 이미지가 실제 이미지인지 생성망으로 만든 이미지인지를 판별하는 판별망 모델을 생성하는 판별망 함수 구현

- 학습용 생성망 함수 구현

- 무작위 신호를 만드는 함수 구현

- 모델들의 학습을 수행하는 함수 구현

(4)

③ 합성곱 계층 GAN 학습 수행

∙ GAN의 모델링과 학습용 클래스를 사용해서 실제로 GAN을 학습하는 코드 구현

(5)

④ 합성곱 계층 GAN 수행

∙ 각 배치마다 사용할 학습 데이터의 길이인 epochs과 배치 사이즈 등 파라미 터 지정 후 GAN 수행

∙ 합성곱 계층 GAN 모델 summary 출력 결과

∙ 학습 시 출력된 학습 진행사항을 나타내는 결과

(6)

2. Fashion-MNIST 데이터를 생성하는 합성곱 계층 GAN 구현 (1) 합성곱 계층을 이용한 GAN 구현하기

∙ GAN을 이용한 이미지 생성은 학습에 오랜 시간이 걸리고 파라미터를 이용한 조절이 중요하기 때문에 함수형으로 변수로 수정이 쉽게 구현하는 것이 좋음

① 이미지 처리용 툴을 다루는 PIL과 Tensorflow, 케라스 서브패키지 등을 불러옴

∙ 신경망의 출력이 스칼라나 벡터가 아니라 다차원일 경우에는 해당 차원에 맞 는 손실 함수가 필요

∙ 4차원 데이터를 이용하는 손실 함수를 케라스 백엔드와 Tensorflow로 구현

② 합성곱 계층 GAN 모델링

∙ GAN에 포함된 2가지 신경망(생성망, 판별망)을 모델링 - 클래스 초기화 함수 구현

(7)

- 생성망을 정의하는 함수 구현

- 입력된 이미지가 실제 이미지인지 생성망으로 만든 이미지인지를 판별하는 판별 망 모델을 생성하는 판별망 함수 구현

- 학습용 생성망 함수 구현

(8)

- 무작위 신호를 만드는 함수 구현

- 모델들의 학습을 수행하는 함수 구현

③ 합성곱 계층 GAN 학습 수행

∙ GAN의 모델링과 학습용 클래스를 사용해서 실제로 GAN을 학습하는 코드 구현

(9)

④ 합성곱 계층 GAN 수행

∙ 각 배치마다 사용할 학습 데이터의 길이인 epochs과 배치 사이즈 등 파라미 터 지정 후 GAN 수행

(10)

∙ 합성곱 계층 GAN 모델 summary 출력 결과

∙ 학습 시 출력된 학습 진행사항을 나타내는 결과

(11)

평가하기

1. Maxpooling으로 줄어든 데이터를 다시 확장시키는 함수를 고르시오.

① Dense

② Flatten

③ UpSampling

④ Batch Normalization

- 정답 : ③번

해설 : UpSampling 함수는 Pooling 연산으로 인해 줄어든 이미지를 다시 원래의 이미지 크기로 확장시키는 함수이다.

2. Numpy 패키지의 함수로, 기존 데이터는 유지하고 차원과 형상을 바꿔주는 함수를 고르 시오.

① Reshape

② Shape

③ Random

④ add

- 정답 : ①번

해설 : Reshape 함수는 기존 데이터를 유지하고 차원과 형상을 변경해주는 함수이다.

(12)

학습정리

1. 필기체를 생성하는 합성곱 계층 GAN 구현

∙ 필기체 이미지를 생성하는 합성곱 계층 GAN 구현

2. Fashion-MNIST 데이터를 생성하는 합성곱 계층 GAN 구현

∙ 옷, 신발 등 의류 이미지를 생성하는 합성곱 계층 GAN 구현

다음 주 예고

“10. 심층 강화학습” 에 대해 학습하겠습니다.

참조

관련 문서

 토큰 버스에서 토큰의 역할과 프레임 구조를 이해한다..  토큰 링의 프레임 구조와

 양방향 통신을 지원하는 슬라이딩 윈도우 프로토콜을 알아본다..  HDLC 프로토콜을 통해 프로토콜을

• 은닉층에서 은닉층으로의 가중치를 나타내는

BERT: Pre-training of Deep Bidirectional Transformers for Language

[r]

전체 인터넷은 수백만의 컴퓨터를 연결하는 블랙박스 네트워크.

딥러닝은 심층 신경망을 사용하는 기계학습의 한 분야 히든 층이 2개 이상인 인공 신경망,

 데이터베이스를 통제하는데 이용되며, 주로 데이터 베이스 관리자의 사용자에 대한 권한 설정을 위한 명령어이다.  예: