본문 바로가기

전체 글101

Backpropagation 본 포스팅은 유튜버 혁펜하인님의 Backpropagation 강의를 정리한 포스팅입니다. 더 정확한 설명을 들으실 분들은 아래 동영상을 참고해주세요. 먼저 위 그림과 같은 hidden layer가 2개인 DNN model이 있다고 가정해봅시다. activation function은 특정한 함수를 상정하지 않고 그냥 $g(x)$ 라고 가정합니다. 각 layer별 가중치는 $w^l_{i,j} $ 라고 가정합니다. $l$은 layer의 번호를 나타내고 왼쪽부터 layer 0, 1, 2, 3 입니다. $i$는 해당 layer의 몇 번째 뉴런인지를 나타냅니다. $j$는 해당 가중치가 다음 layer의 몇 번째 뉴런과 연결되는지를 나타냅니다. 이전 layer의 output에 가중치가 곱해진 결과를 $S^l-1$라고.. 2021. 9. 25.
10.4 연습문제 2번. 초창기 인공 뉴런을 사용해 A xor B 를 계산하는 인공 신경망을 그려보세요. 10.1 에서 말했다시피 인공뉴런 1개로는 xor문제를 풀 수 없다. 하지만 위와 같이 세 개의 뉴런을 통해서는 xor문제를 풀 수 있다. 하나의 뉴런은 or 연산을 시행하고, 다른 하나의 뉴런은 NAND(Not and) 연산을 수행한다. output 뉴런은 AND연산을 시행한다. 이를 표로 나타내면 다음과 같다. x1 x2 OR NAND AND 0 0 0 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 0 0 3번. 고전적인 퍼셉트론(즉, 퍼셉트론 훈련 알고리즘으로 훈련된 단일 TLU)보다 로지스틱 회귀 분류기를 일반적으로 선호하는 이유는? 퍼셉트론을 로지스틱 회귀 분류기와 동등하게 만들기 위한 방법은? 분류문.. 2021. 9. 24.
10.3 신경망 하이퍼 파라미터 튜닝하기 scikit learn wrapping함수 만들기 import tensorflow as tf from tensorflow import keras fashion_mnist=keras.datasets.fashion_mnist (X_train_full, y_train_full), (X_test, y_test) = fashion_mnist.load_data() #validation set 생성 및 픽셀 값을 0~1사이의 값으로 정규화 X_valid, X_train = X_train_full[:5000] / 255., X_train_full[5000:] / 255. y_valid, y_train = y_train_full[:5000], y_train_full[5000:] X_test = X_test/255. cl.. 2021. 9. 24.
10.2 케라스로 다층 퍼셉트론 구현하기 In [2]: from IPython.core.display import display, HTML display(HTML("")) In [1]: import tensorflow as tf from tensorflow import keras In [39]: fashion_mnist=keras.datasets.fashion_mnist (X_train_full, y_train_full), (X_test, y_test) = fashion_mnist.load_data() In [40]: X_train_full.shape Out[40]: (60000, 28, 28) In [41]: X_train_full.dtype Out[41]: dtype('uint8') In [42]: #validation set.. 2021. 9. 22.