[ 몽총이 파이썬 딥러닝 공부 - 05 ] Two Layer Net ( 2층 신경망 )


[ 몽총이 파이썬 딥러닝 공부 - 05 ] Two Layer Net ( 2층 신경망 )

책의 예제인 Two Layer Net 즉 2층 신경망을 경사하강법과 오차역전파법 두가지를 비교해보면서 두 가지 방법의 차이점에 대해서 알아보고자 하여 코드를 분석하면서 어떤 역할을 하는지 천천히 집으며 넘어갔습니다. 각각에 대한 내용들은 주석으로 처리하여 코드 하나하나씩 보며 내용을 이해했습니다. 전체 코드 # 시그모이드 함수 def sigmoid(x): return 1 / np.exp(-x) # 소프트맥스 함수 def softmax(x): if x.ndim == 2: ''' x = (100,10) -> x.T = (10,100) np.max(x,axis=0) = (100,) -> axis=1 로 할경우 한개의 데이터가 아닌 ''' x = x.T # 행렬의 차원을 맞춰주기 위해서 transpose 해준다. x = x - np.max(x,axis=0) # np.max(x,axis=0) -> y = np.exp(x) / np.sum(np.exp(x), axis=0) return y.T ...



원문링크 : [ 몽총이 파이썬 딥러닝 공부 - 05 ] Two Layer Net ( 2층 신경망 )