M.L (p.141)

MNIST 데이터를 가지고 미니배치 학습을 구현한 코드이다. 훈련데이터와 테스트 데이터로 나누었고 정규화와 one_hot_encoding을 하였다. 앞서 만들었던 TwoLayerNet(신경망) 을 사용하여 학습한다. iters_num= 10,000이므로 for문을 10,000번…

M.L (p.137)

2층 신경망을 하나의 클래스로 구현한 것이다. class name은 TwoLayerNet으로 구성요소를 하나씩 알아보자. def __init__함수로 input_size, hidden_size, output_size, weight_init_std=0.01로 초기화한다. self.params로 W1,b1,W2,b2 (weight,bias) 을 입력값에…

M.L (p.134)

(2,3) 같은 다차원배열일 경우의 기울기를 구한다. simpleNet은 입력 값 x와 normal distribution로 초기화한 W 값(가중치) 를 행렬곱하여 (xW) 그 값을 softmax 값으로 변환하고 정답레이블(t)와…

M.L (p.131)

gradient_descent method 로 경사법 수식  ,  (eta) 는 갱신하는 양을 나타내고 신경망에서는 이를 학습률(learning rate)라 부른다.  이 parameter는 사용자가 정의하며 learning rate * 편미분…

M.L (p.127)

편미분을 간단히 하나의 함수로 나타내기 위한 코드 function_2 =  x[0]^2 + x[1]^2  식을 가지고 있고, numerical_gradient 를 보면 for문을 이용해 각 인덱스의 중앙차분을 구하여…

M.L (p.125)

편미분 (둘 이상의 변수)  식 f(x0,x1) = x0^2 + x1^2 같은 간단한 식 구현 편미분을 구할 때는 구하려는 변수 외의 다른 변수 값은 상수로…

M.L (p.121)

경사법에서는 기울기 값을 기준으로 나아갈 방향을 정하는데 기울기 값을 미분으로 구할 수 있다. (기울기 값이 0에 가까워지는 지점이 최적 값을 나타내기때문에 ) 하지만 컴퓨터…

M.L (p.116)

mini batch : 거대한 데이터셋을 다 계산해보는 건 시간적, 비용적으로 부담이 크기 때문에 적절히 어느정도 양의 데이터를 골라  그 값을 이용해 근사치를 구한다. 예를…

M.L (p.112)

mean squared error로 신경망을 학습시키는 방법으로 그 값이 작을수록 Error가 적다는 뜻으로 해석할 수 있다.

다음 코드는 cross entropy error로 위의 함수이며 p(x)…

M.L (p.105)

np.argmax() 함수는 axis = 값에 따라 그 차원에 해당하는 값 중 최고 값을 return 하는 함수로 신경망에서는 softmax에서 가장 확률이 높은 값이 어떤 건지…