페이지

2022년 9월 3일 토요일

24.1 Sphere 함수

 Sphere 함수를 수식으로 표현하면 z =  x **  2 + y ** 2 입니다. 단순히 두 개의 입력 변수를 제곱하여 더하는 함수죠. 우리가 할 일은 그 미분(dz/dx와 dz/dy)을 계산하는 것입니다. 이번 절에서는 (x, y) = (1.0, 1.0)인 경우를 미분해보겠습니다. 코드는 다음과 같습니다.

import numpy as np

from dezero import Variable


def sphere(x, y):

    z = x ** 2 +  y ** 2

    return 


x = Variable(np.array(1.0))

y = Variable(np.array(1.0))

z = sphere(x, y)

z.backward()

print(x.grad, y.grad)

코드에서 보듯 원하는 계산을 z = x ** 2  + y ** 2로 표현할 수 있습니다. 그리고 x와 y에 대한 미분 모두 2.0이라고 나옵니다. 수식으로 확인하면 dx/dy = 2x, dz/dy = 2y가 되므로 ( x, y) = (1.0, 1.0)의 미분 결과는 (2.0, 2.0)입니다. 앞의 실행 결과와 일치하는 군요.

댓글 없음: