밑바닥부터 시작하는 딥러닝3 - STEP 3
2021. 3. 10. 22:49ㆍ개인 공부 공간/딥러닝
Exp 함수 구현
$y=e^x$ 계산을 하는 함수를 구현한다(여기서 e는 자연로그의 밑).
class Exp(Function):
def forward(self, x):
return np.exp(x)
step 2에서 생성한 Sqaure
클래스와 연산만 다르고 수행하는 기능은 동일하다.
함수 연결
Function
클래스의 __call__
메서드는 입력과 출력이 모두 Variable 인스턴스이므로 함수들을 연결해서 사용 가능하다. Exp
와 Sqaure
를 연결시키는 코드는 다음과 같다.
A = Square()
B = Exp()
C = Square()
x = Variable(np.array(0.5))
a = A(x)
b = B(a)
y = C(b)
print(y.data)
실행 결과
1.648721270700128
여기서 A,B,C는 함수이고 x,a,b,y는 모두 변수이다. 이와 같이 여러 함수를 연결해 구성한 함수를 합성 함수라고 한다.
출처:- 사이토 고키, 『밑바닥부터 시작하는 딥러닝3』, 개앞맵시, 한빛미디어(2020)
'개인 공부 공간 > 딥러닝' 카테고리의 다른 글
밑바닥부터 시작하는 딥러닝3 - STEP 6 (1) | 2021.03.10 |
---|---|
밑바닥부터 시작하는 딥러닝3 - STEP5 (0) | 2021.03.10 |
밑바닥부터 시작하는 딥러닝3 - STEP 4 (0) | 2021.03.10 |
밑바닥부터 시작하는 딥러닝3 - STEP 2 (0) | 2021.03.10 |
밑바닥부터 시작하는 딥러닝3 - STEP 1 (0) | 2021.03.10 |