안녕하세요

딥러닝 EXPRESS 06장 연습문제 본문

Study_exam/딥러닝 EXPRESS 연습문제

딥러닝 EXPRESS 06장 연습문제

godxxy1229 2024. 4. 28. 23:24

01. 신경망에서는 다양한 활성화 함수가 사용된다. 어떤 활성화 함수들이 사용되는가? 각 활성화 함수들의 특징은 무엇인가?

 

 


02. 본문에서 오차함수가 y=x²-6x+4일 때 경사 하강법을 사용하여 오차함수 y의 최저값을 계산하는 절차를 설명한 바 있다. 이것을 다음과 같이 그래프로 그릴 수 있는가? 맵플롯립을 사용해보자. 학습률을 변화시키면서 점을 그려보자. 어떻게 점들이 그려지는가? 학습률을 아주 크거나 작게 설정해서 점들을 그려보자.

 

 

 

03. 구글의 플레이그라운드를 사용하여 다음과 같은 MLP를 생성한다. 활성화 함수를 "linear"로 설정하였 을 때, 입력을 올바르게 분류하는가? 활성화 함수를 "ReLU"로 변경하면 어떻게 되는가? 활성화 함수 가 "Sigmoid"와 "ReLU"일 때도 성능을 비교해보자.

 

 

 

04. 어떤 경우에는 구체적으로 계산을 해보는 것이 이해하는 데 도움이 된다. 다음과 같이 2개의 입력과 하나의 출력을 가지는 MLP에서 원하는 출력값이 0이라고 할 때, 각 뉴론의 출력값과 오차를 계산해보자. 활성화 함수는 계산을 간단히 하기 위하여 ReLU 함수라고 가정한다. 순방향 패스와 오차값만을 계산해보자.

 

 

 

05. 4번의 신경망에서 오차가 역전파되는 과정을 한 단계만 계산해보자. 활성화 함수는 계산을 간단히 하 기 위하여 ReLU 함수라고 가정한다.

 

 


06. 본문의 MLP 파이썬 프로그램을 참조하여 4번의 신경망을 구현해보자. 활성화 함수는 ReLU 함수라고 가정한다.

 

 


07. 본문의 MLP 파이썬 프로그램에서 다양한 활성화 함수를 사용하여서 학습이 어떻게 달라지는 지를 살 펴보자. ReLU 함수와 Tanh 함수를 사용해보자.

 

 

 

08. 본문의 MLP 파이썬 프로그램에서 XOR를 학습시킬 때, 가중치가 어떻게 변화하는지를 조사해보자. 즉 한 문장씩 실행하면서 가중치를 추적해보자. 또 바이어스 값은 어떻게 변경되는가?

 

 


09. 우리는 앞장에서 퍼셉트론을 이용하여 아이리스 데이터를 분류해 본 바 있다. MLP을 사용하여 이것을 다시 시도해보자. 다음의 코드를 참조한다. sklearn이 제공하는 MLP를 사용해도 좋다.

import numpy as np
from sklearn.datasets import load_iris
from sklearn.linear_model import Perceptron

iris load_iris()
X = iris.data[:, (0, 1)]
y = (iris.target == 0).astype(np.int)

percep = Perceptron(random_state=32)
percep.fit(X, y)
percep.score(X, y)