티스토리 뷰

ML&DL

인공지능에 빠질 수 없는 미분

jiwon.dev 2020. 4. 30. 12:29

인공지능 공부에 '미분'은 가장 기초가 되는 공부라 생각된다. 그래서 간략하게 공부한 내용을 잊어버리지 않기 위해 정리해보았다.

 

미분이 중요한 이유? 왜 중요한데?

 

각 변수(variable)의 미분(derivative)는 전체 표현식에서 어느 부분의 영향을 받는지, sensitivity를 나타내주기 때문에 중요하다.

 

이 말의 뜻을 정확히 알기 위해 '미분의 정의'에 대해 이야기 해보고자 한다.

 


미분의 정의

 

$$x의 y에 대한 변화율 = \frac{x의 변화량}{y의 변화량} = \frac{dx}{dy}$$

 

$$\frac{df(x)}{dx} = \lim_{h \to 0}\frac{f(x+h) - f(x)}{h}$$

 

미분의 가장 정확한 정의는 '순간변화율' 이다. 변화율을 말하기 위해서는 무엇에 대한 변화율인지 기준이 있어야하고, 이 기준에 따라 변화율 값이 의미하는 바가 달라진다. (ex. 얼굴에 느는 주름살의 개수를 나이로 미분하면 나이대별 노화 진행율이 나온다.)

 


인공지능에 어떻게 적용되는데?

 

gradient descent...인공지능을 조금이라도 공부를 했다면 많이 들어봤을 용어이다.

gradient 자체가 '기울기'를 의미하기에 '미분'의 개념을 기본적으로 알고 있어야 이해할 수 있는 내용이다.

 

 

gradient 값을 구하기 위해서는 편미분(partial derivatives)를 해줘야하고, 우리는 다음과 같은 식을 얻을 수 있다. 

 

$$\nabla f = [\frac{\partial f}{\partial x}, \frac{\partial f}{\partial y}] = [y,x]$$

 

보통 우리가 "x의 gradient를 구하려고 한다"는 말은 "x에 대해 편미분을 해줘" 라는 말과 같다고 표현할 수 있다.

 

 

 


 

 

그럼 우리는 또 다른 식을 유도해볼 수 있다.

 

$$f(x,y) = x + y  →   \frac{\partial f}{\partial x} = 1 , \frac{\partial f}{\partial y} = 1 $$

 

즉, x, y의 미분은 x, y 값이 무엇이든 관계 없이 '1'이다. 

x, y를 증가시키면 f의 출력이 증가하고, 그 증가율은 x,y의 실제 값과 무관하다는 것을 알 수 있다.

 

 

 

 


 

 

예를 들어, f(x,y)가 다음과 같다고 해보자. $$f(x,y) = xy이고, x = 4, y = -3$$ $$f(x,y) = -12$$

위의 식을 미분하면 다음의 식을 얻을 수 있다.

$$x\frac{\partial f}{\partial x} = -3$$

 

 

이 결과는 우리가 x 변수의 값을 조금씩 증가시킨다는 것은 음수 부호(x를 편미분한 결과가 음수)로 인해 전체 식에 미치는 영향이 3배 만큼 감소한다는 것이다.

 

 

 

반대로 다음과 같이 y로 미분을 해보자.

$$\frac{\partial f}{\partial y} = 4 $$   

이 결과를 통해 y의 값을 증가시키면 increase한 output을 얻을 수 있을 것으로 예상할 수 있다.

 

the derivatives tell us nothing about the effect of such large changes on the inputs of a function; They are only informative for tiny, infinitesimally small changes on the inputs, as indicated by the $$\lim_{h \to 0}$$in its definition.

 

 

이해하기 위해 참고한 자료

https://darkpgmr.tistory.com/45

 

미분 적분 제대로 알자

미분과 적분, 줄여서 미적분... 미적분이 중요하다고는 하지만 과연 얼마나 많은 이들이 미분 적분의 의미를 제대로 이해하면서 사용하고 있을지 모르겠다. 이 글은 미분 적분에 대한 가장 기본적인 개념에 대한..

darkpgmr.tistory.com

https://www.khanacademy.org/math/ap-calculus-ab/ab-differentiation-1-new/ab-2-1/v/derivative-as-a-concept

 

Derivative as a concept (video) | Khan Academy

Introduction to the idea of a derivative as instantaneous rate of change or the slope of the tangent line.

www.khanacademy.org

https://cs231n.github.io/optimization-2/

 

CS231n Convolutional Neural Networks for Visual Recognition

Table of Contents: Introduction Motivation. In this section we will develop expertise with an intuitive understanding of backpropagation, which is a way of computing gradients of expressions through recursive application of chain rule. Understanding of thi

cs231n.github.io

 

'ML&DL' 카테고리의 다른 글

Machine Learning 소개  (0) 2020.03.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글