Index


Figures


Tables

Kong† , Ko†† , and Ko†††: Performance Improvement Method of Convolutional Neural Network Using Agile Activation Function

Na Young Kong† , Young Min Ko†† and Sun Woo Ko†††

Performance Improvement Method of Convolutional Neural Network Using Agile Activation Function

Abstract: The convolutional neural network is composed of convolutional layers and fully connected layers. The nonlinear activation function is used in each layer of the convolutional layer and the fully connected layer. The activation function being used in a neural network is a function that simulates the method of transmitting information in a neuron that can transmit a signal and not send a signal if the input signal is above a certain criterion when transmitting a signal between neurons. The conventional activation function does not have a relationship with the loss function, so the process of finding the optimal solution is slow. In order to improve this, an agile activation function that generalizes the activation function is proposed. The agile activation function can improve the performance of the deep neural network in a way that selects the optimal agile parameter through the learning process using the primary differential coefficient of the loss function for the agile parameter in the backpropagation process. Through the MNIST classification problem, we have identified that agile activation functions have superior performance over conventional activation functions.

Keywords: Convolutional Neural Network , Agile Activation Function , Backpropagation , Learning

공나영† , 고영민†† , 고선우†††

민첩한 활성함수를 이용한 합성곱 신경망의 성능 향상

요 약: 합성곱 신경망은 합성곱층과 완전연결층으로 구성되어 있다. 합성곱층과 완전연결층의 각 층에서는 비선형 활성함수를 사용하고 있다. 활성함수 는 뉴런 간에 신호를 전달할 때 입력신호가 일정 기준 이상이면 신호를 전달하고 기준에 도달하지 못하면 신호를 보내지 않을 수 있는 뉴런의 정보전달 방법을 모사하는 함수이다. 기존의 활성함수는 손실함수와 관계성을 가지고 있지 않아 최적해를 찾아가는 과정이 늦어지는 점을 개선하기 위해 활성함수를 일반화한 민첩한 활성함수를 제안하였다. 민첩한 활성함수의 매개변수는 역전파 과정에서, 매개변수에 대한 손실함수의 1차 미분계 수를 이용한 학습과정을 통해 최적의 매개변수를 선택하는 방법으로 손실함수를 감소시킴으로써 심층신경망의 성능을 향상시킬 수 있다. MNIST 분류문제를 통하여 민첩한 활성함수가 기존의 활성함수에 비해 우월한 성능을 가짐을 확인하였다.

키워드: 합성곱 신경망, 민첩한 활성함수, 역전파, 학습

1. 서 론

합성곱 신경망은 그 성능이 입증된 심층신경망의 한 방법 으로 이미지분류, 이미지 속에 포함되어 있는 특정 대상물의 탐지, 대상물의 위치 등을 파악하는데 사용되고 있다.

합성곱 신경망은 고양이의 시각피질이 작동하는 방식에 대 한 허블과 비셀의 연구에서 이미지의 특정 부분이 시각 뉴런 의 특정 부분을 활성화한다는 연구결과에 아이디어를 얻어 만들어진 것이다[1]. Fig. 1은 일반적인 합성곱 신경망을 나 타낸 것으로 합성곱층과 완전연결층으로 구성되어 있다. 1개 의 이미지 입력층, K개의 합성곱층, M개의 은닉층을 갖는 완 전연결층과 출력층을 가진 합성곱 신경망이다.

합성곱층은 입력층의 입력 I의 특성을 추출하는 합성곱 연 산을 수행하는 k개의 층을 거쳐 특성맵 [TeX:] $$P^{(K)}$$ 를 추출한다. 최 종 특성맵인 [TeX:] $$P^{(K)}$$ 를 1차원 벡터로 변환하여 완전연결층의 입 력값으로 사용한다. 완전연결층의 입력데이터는 M개의 은닉 층을 거치면서 입력으로부터 출력층으로 연결되는 모든 노드 간의 가중치를 이용하여 최종출력 [TeX:] $$\hat{y}_{i}^{(\text {out })}, i=1, \ldots, n_{\text {out }}$$ 을 계산 한다. 이때 K개의 합성곱층과 M개의 완전연결층에서 활성함

Fig. 1.

Structure of Convolutional Neural Network
1.png

수를 사용하고 각 합성곱층과 완전연결층에서 비선형 함수인 Re LU의 사용이 권장되고 있다[2]. Re LU 활성함수가 속도와 정확도 면에서 다른 활성함수보다 탁월한 성능을 발휘한다고 알려져 있다. 계산속도가 빠른 Re LU 활성함수를 사용하게 되면 더 깊은 층을 가지는 네트워크 모델을 더 많이 학습시킬 수 있다 는 점에서 다른 활성함수들을 거의 대체한 상태이다[3].

활성함수에 대한 서베이논문으로 Nwankpa et.al[4]이 있 으며 활성함수별 특성을 자세히 설명하고 있어서, 실제 문제 해결 적용시에 어떤 활성함수를 선택할 것인가에 대한 지침 이 될 수 있다.

본 논문은 합성곱층과 완전연결층에서 사용되고 있는 활성 함수의 의미를 살펴보고 활성함수의 성능을 향상시킬 수 있 는 민첩한 활성함수를 제안한다.

2. 활성함수

2.1 활성함수의 종류

활성함수로 다양한 함수를 사용하고 있다[3]. 일반적으로 널리 사용되는 비선형 변환의 활성함수로는 다음 Equation (1)의 Re LU, Equation (2)의 Sigmoid가 있다.

(1)
[TeX:] $$R e L U \text { 활성함수: } z=\left\{\begin{array}{l} x, x \geq 0 \\ 0, x<0 \end{array}\right.$$

(2)
[TeX:] $$\text { Sigmoid 활성함수: } z=\frac{1}{1+e^{-x}}$$

Fig. 2는 비선형 활성함수 중에 대표적인 Sigmoid 활성함 수와 Re LU 활성함수를 나타낸 것이다.

Sigmoid 활성함수는 1차 미분값의 최대값이 0.25이므로 심층신경망에서 은닉층의 깊이가 깊어질수록 기울기가 소멸 (Gradient vanishing)되는 문제가 발생할 수 있다. 이러한 기울기 소멸 문제를 해결하고 빠른 연산속도를 보장하는 Re LU 활성함수가 널리 사용되고 있다.

이러한 활성함수의 성능을 개선하기 위해 심층신경망에서 기존 활성함수의 적용결과가 손실함수를 감소하는 방향과 무 관하다는 관점에서 활성함수를 매개변수를 이용하여 일반화

Fig. 2.

(a) Activation Function Re LU

(b) Activation Function Sigmoid

2.png

하고 매개변수를 학습하는 방법을 제안하였다[5].

2.2 합성곱 신경망과 활성함수의 기능

활성함수는 뉴런의 정보전달과정을 모사한 것으로 뉴런으 로 입력되는 정보의 크기에 따라 출력으로 내보낼 것인지, 출 력으로 내보낸다면 어떤 크기로 내보낼 것인지를 결정하는 함수이다.

합성곱층의 활성함수는 각 합성곱층에서 계산되는 합성곱 연산의 결과인 특성맵을 활성화시키기 위해 사용되고, 완전 연결층의 활성함수는 각 은닉층의 선형 모델에 의해 추정된 결과를 활성화시키기 위해 사용한다. 각 합성곱층에서 특성 맵을 활성화한다는 의미와 완전연결층에서 선형 모델의 추정 치를 활성화한다는 의미는 서로 다르다.

[TeX:] $$l^{t h}$$ 합성곱층의 특성맵은 Equation (3)과 같이 구해진다.

(3)
[TeX:] $$M_{(k),(i, j)}^{(l)}=P_{(i, j)}^{(l-1)} \otimes F_{k}^{(l)} \\ =\sum_{j=-\left[f_{l} / 2\right]}^{[f / 2]} \sum_{i=-\left[f_{l} / 2\right]}^{\left[f_{l} / 2\right]} P_{(i, j)}^{(l-1)} F_{(k)}^{(l)},\left(\left[f_{v} / 2\right]+1+i,[f / 2]+1+j\right)$$

[TeX:] $$P^{(l-1)}$$[TeX:] $$l^{t h}$$ 합성곱층의 입력데이터이고, 필터 [TeX:] $$F_{(k)}^{(l)}$$[TeX:] $$l^{t h}$$ 합성곱층의 [TeX:] $$k^{t h}\left(k=1, \ldots, n_{l}\right)$$ 필터로 [TeX:] $$f_{l} \times f_{l}$$ 행렬이다.

Equation (3)의 합성곱 연산은 Fig. 3과 같이 필터에 대응 하는 입력 영역을 일정 간격씩 이동해 가며 계산된다. 합성곱 연산의 결과는 [TeX:] $$P^{(l-1)}$$ 의 특정 영역에 필터 [TeX:] $$F_{(k)}^{(l)}$$ 의 검출속성과 일치하는 패턴이 존재할 때 큰 값을 가진다.

Fig. 3.

Process of Convolution
3.png

합성곱층의 활성함수는 필터의 속성과 일치하는 입력이 존 재하는 경우 이를 출력으로 내보내고 필터의 속성과 일치하 지 않아 합성곱 결과가 작을 때 출력을 내보내지 않거나 작은 값을 내보내는 역할을 한다.

완전연결층의 활성함수는 Equation (4)와 같이 계산되는 은닉층의 선형 모델의 추정치 [TeX:] $$\hat{y}_{i}^{(m)}$$ 를 활성화하기 위해 사용된다.

(4)
[TeX:] $$\hat{y}_{i}^{(m)}=\sum_{i=1}^{n_{m}} \hat{w}_{i j}^{(m)} z_{i}^{(m)}$$

[TeX:] $$z_{i}^{(m)}$$[TeX:] $$m^{t h}$$ 은닉층에서 입력값이고 [TeX:] $$\hat{w}_{i j}^{(m)}$$[TeX:] $$m^{t h}$$ 은닉층에서 [TeX:] $$z_{i}^{(m)}$$[TeX:] $$\hat{y}_{j}^{(m)}$$ 를 연결하는 가중치의 추정치이다.

선형 모델만으로 해결할 수 없는 문제의 경우, 즉 선형 모 델 등만을 이용하여 추정한 최종 결과치 [TeX:] $$\hat{y}_{i}^{(M)}$$ 가 참값인 [TeX:] $$t_{i}$$에 충분히 접근하지 못하는 경우, 모델의 성능 향상을 위해서 다 음과 같은 3가지 방법을 이용하여 모델의 성능을 향상시킬 수 있다.

1) 선형 모델 대신 비선형 모델을 사용하는 방법[6]

2) 커널 함수를 이용하여 차원을 높이는 방법[7]

3) 비선형 변환함수인 활성함수를 사용하는 방법[5] 등을 사용한다.

비선형 모델을 사용할 경우 y와 X의 관계를 나타내는 모 델 [TeX:] $$y=f(X, w)$$ 에서 추정해야하는 파라미터 w의 원소 수가 급 격히 증가하는 문제와 파라미터 추정치의 분산이 증가할 위 험이 있다. 커널 함수를 이용하여 데이터의 차원을 높이는 방 법을 이용해 문제를 해결하는 방법은 최적의 파라미터를 찾 기 위한 탐색 공간의 차원을 높이는 방법을 사용하기 때문에 희소 데이터집합(sparse dataset)의 문제 뿐 아니라 계산에 필요한 메모리의 크기가 급격히 증가하는 문제가 발생한다. 심층신경망에서는 비선형 문제 풀이를 위해 선형 모델과 선 형 모델로 추정된 결과값 [TeX:] $$\hat{y}_{i}^{(m)}$$ 에 비선형 활성함수를 반복 적 용하여 사용한다. Fig. 4는 선형 모델로는 해결할 수 없는 XOR문제를 은닉층에서 비선형 활성함수를 이용하여 XOR 문제를 해결하는 과정을 그림으로 도식화한 것이다.

Fig. 4.

Nonlinear Problem(XOR) Solution Process using Activation Function
4.png

Fig. 4에서 좌측상단의 [TeX:] $$\hat{y}_{1}^{(1)}$$ 의 그림은 선형 모델 [TeX:] $$y_{1}^{(1)}= w_{01}^{(1)}+w_{11}^{(1)} z_{1}^{(1)}+w_{21}^{(1)} z_{2}^{(1)}+\epsilon_{1}^{(1)}$$ 에서, 파라미터 [TeX:] $$w_{01}^{(1)}, w_{11}^{(1)}, \quad w_{21}^{(1)}$$들 을 최소제곱법으로 추정을 사용했다면 오차항 [TeX:] $$\epsilon_{1}^{(1)}$$ 의 제곱합 을 최소화하는 [TeX:] $$w_{01}^{(1)}, w_{11}^{(1)}, \quad w_{21}^{(1)}$$ 의 추정치를 이용하여 추정한 [TeX:] $$\hat{y}_{1}^{(1)}$$ 의 초평면을 나타낸 것이다. 이렇게 추정된 초평면 [TeX:] $$\hat{y}_{1}^{(1)}$$ 를 비선형 활성함수를 적용하여 구한 [TeX:] $$z_{1}^{(2)}$$ 초평면이 우측 상단의 그림이다. [TeX:] $$z_{1}^{(2)}$$ 초평면은 비선형 활성함수 적용에 의해 휘어진 곡면이다. 하단의 2개의 그림도 같은 방법에 의해 구해진 것 이다. 이렇게 구해진 2개의 휘어진 곡면의 선형 결합을 통해 [TeX:] $$y^{(O U T)}$$ 이 구해지고 XOR문제를 해결할 수 있다. 이와 같이 비 선형 활성함수는 비선형 모델을 이용해야 해결할 수 있는 문 제를 선형 모델과 간단한 비선형 함수를 이용하여 해결하는 방법을 제시한 것이다.

3. 합성곱 신경망과 민첩한 활성함수

3.1 기존 활성함수의 문제점

합성곱층과 완전연결층에서 사용되는 활성함수 적용 시 문 제점은 손실함수의 최소화와 어떤 관계도 없는 비선형 변환 이라는 점이다.

Fig. 1의 각 합성곱층에 존재하는 필터들 [TeX:] $$k=1, \ldots, n_{k}$$ 와 완전연결층의 노드간의 가중치 [TeX:] $$i=1, \ldots, n_{m}$$ 들은 순전파 과정과 역전파 과정을 통해 Equation (5)과 Equation (6)과 같이 경사하강법을 통해 최적화된다.

(5)
[TeX:] $$F_{(k),(i, j)}^{(l)}=F_{(k),(i, j)}^{(l)}-\rho_{1} \nabla L\left(F_{(k),(i, j)}^{(l)}\right)$$

(6)
[TeX:] $$w_{(i, j)}^{(l)}=w_{(i, j)}^{(l)}-\rho_{2} \nabla L\left(w_{(i, j)}^{(l)}\right)$$

여기서 [TeX:] $$\rho_{1} \text { 과 } \rho_{2}$$ 는 학습률이고 [TeX:] $$\nabla L\left(F_{(k),(i, j)}^{(l)}\right)$$ 는 필터 파라미 터 [TeX:] $$F_{(k),(i, j)}^{(l)}$$ 에서 손실함수 의 미분계수이고 [TeX:] $$\nabla L\left(w_{(i, j)}^{(l)}\right)$$ 는 가 중치 [TeX:] $$w_{(i, j)}^{(l)}$$ 에서 손실함수 L의 미분계수이다. Equation (5)와 (6)의 최적화 과정은 손실함수 L이 볼록함수일 때, Equation (5)와 (6)을 이용한 최적화 과정에서 손실함수 값 을 지속적으로 감소시키게 된다.

Fig. 5는 합성곱층 또는 완전연결층에서 파라미터(필터 또 는 가중치)의 최적화 과정과 활성함수의 적용과정을 손실함 수 관점에서 나타낸 것이다.

Fig. 5.

Loss Value Changes According to Parameter Optimization and Activation Function Application
5.png

Fig. 5에서 [TeX:] $$w^{(0)}$$ 는 파라미터(합성곱층의 필터 또는 완전연 결층의 노드간 가중치)의 초기 값을 의미하고 [TeX:] $$w^{(0)},(p, 0)$$ 는 파 라미터 초기 값에서 파라미터를 Equation (5) 또는 Equation (6)을 이용하여 최적화한 결과이고 [TeX:] $$w^{(0)},(p, a)$$ 는 파 라미터 최적화 이후 활성함수를 적용한 결과이다. 하지만 기존 의 활성함수는 손실함수 과 어떤 함수관계도 가지지 않기 때 문에 기존 활성함수 적용이 손실함수를 감소시킨다는 어떤 보 장도 없는 비선형 변환일 뿐 이다. Fig. 5에서 [TeX:] $$w^{(0)},(p, 0)$$ 에서 [TeX:] $$w^{(1)}=w^{(0),(\mathrm{pa})}$$ 로의 변환과정은 활성함수를 적용한 결과를 의미하 고 손실함수 값이 증가한 경우를 예시한 것이다. 이와 같이 기 존의 활성함수는 특성맵의 각 원소 또는 완전연결층의 각 은닉 층에서 선형 함수를 이용한 추정값을 활성화 시킨다는 관점에 서는 타당하지만 손실함수를 증가시킬 수 있다는 점에서 개 선이 필요하다.

3.2 활성함수를 일반화한 민첩한 활성함수의 개발

활성함수는 입력값을 비선형적으로 변환시키는 함수이다. 활성함수는 크기와 위치변화에 따라 입력값을 다양하게 변환 할 수 있다. Fig. 6은 Re LU와 Sigmoid 함수의 크기와 위치변 화를 통해 다양한 변환을 할 수 있음을 보여준다.

Fig. 6.

Various Transformations Depending on Size and Position of the Activation Function
6.png

즉, 기존의 활성함수들은 Equation (7)과 (8)의 예와 같이 크기 및 위치를 변화시킬 수 있는 매개변수를 사용하여 입력 값들을 보다 다양한 값으로 변환할 수 있는 민첩한 활성함수 로 일반화 할 수 있다.

(7)
[TeX:] $$\text { 민첩한 Sigmoid 함수: } z=\frac{a}{1+e^{-(x-b)}}$$

(8)
[TeX:] $$\text { 민첩한 } \operatorname{ReLU} \text { 함수: } z=\left\{\begin{array}{l} a(x-b), x \geq b \\ 0, & x<b \end{array}\right.$$

이때 와 는 임의의 실수값이다. 는 민첩한 활성함수의 크기를 결정하는 매개변수이고 는 민첩한 활성함수의 위치 를 결정하는 매개변수이다.

즉, 민첩한 활성함수를 사용하면, 합성곱층의 합성곱 연산 의 결과인 특성맵의 (i,j)원소 [TeX:] $$M_{(k),(i, j)}^{(l)}$$ 를 활성화하여 활성화 맵의 (i,j)원소 [TeX:] $$A_{(k),(i, j)}^{(l)}$$를 계산할 때 보다 다양한 변환의 자 유도를 확보할 수 있고 완전연결층의 선형 모델의 추정치를 활성화할 때 변환의 자유도를 확보할 수 있게 된다.

3.3 민첩한 활성함수의 학습

민첩한 활성함수가 손실함수와 연계되기 위해서는, 민첩한 활성함수의 매개변수 a와 b에 대한 손실함수의 변화율 [TeX:] $$\partial L / \partial a$$[TeX:] $$\partial L / \partial b$$ 을 계산하여 역전파 과정에서 a와 b를 갱신할 새로운 a와 b값을 찾는 방법을 사용할 수 있다.

Fig. 7은 [TeX:] $$l^{t h}$$ 활성곱층에서 [TeX:] $$k^{t h}$$ 필터를 이용해 구한 특성맵 [TeX:] $$M_{(f)}^{(l)}$$ 에 민첩한 활성함수를 적용한 것으로 특성맵 [TeX:] $$M_{(f)}^{(l)}$$ 의 각 원소 (i,j)에 대해 적용된다.

Fig. 7.

Activation of the Characteristic Map Applying the [TeX:] $$k^{t h}$$ Filler of the [TeX:] $$l^{t h}$$ Convolutional Layer
7.png

Fig. 7은 [TeX:] $$l^{t h}$$ 활성곱층에서 [TeX:] $$k^{t h}$$ 필터를 이용해 구한 특성맵 [TeX:] $$M_{(f)}^{(l)}$$ 를 Equation (7)의 민첩한 Sigmold 활성함수를 이용하여 변환하는 경우로 변환한 값 [TeX:] $$A_{(k),(i, j)}^{(l)}$$은 다음 식과 같다.

(9)
[TeX:] $$A_{(f),(i, j)}^{(l)}= \ \frac{a_{f}^{(l)},(i, j)}{1+e^{-\left(M_{(f),(i j)}^{(\eta)}-b_{(f),(i j)}^{(l)}\right)}}$$

[TeX:] $$A_{(f),(i, j)}^{(l)}$$ 에 대한 [TeX:] $$M_{(f),(i, j)}^{(l)}, a_{(f),(i, j)}^{(l)}, b^{(l)},_{f^{\prime}, j, j}$$ 의 미분은 다음과 같다.

(10)
[TeX:] $$\frac{\partial A_{(f)}^{(l)},(i, j)}{\partial M_{(f)}^{(l)},(i, j)} \ =M_{(f),(i, j)}^{(l)}\left(1-\frac{M_{f f}^{(l)},(i, j)}{a_{(f),(i, j)}^{(l)}}\right)$$

(11)
[TeX:] $$\frac{1}{\left.1+e^{-\left(M_{(f),(i j)}^{(l)}-b_{f j}^{(l)},(i j)\right.}\right)}$$

(12)
[TeX:] $$\frac{\partial A_{(f),(i, j)}^{(l)}}{\partial b_{(f),(i, j)}^{(l)}}= \ A_{(f),(i, j)}^{(l)}\left(1-\frac{A_{(f),(i, j)}^{(l)}}{a_{(f),(i, j)}^{(l)}}\right)$$

손실함수 L에 대한 [TeX:] $$a_{(f),(i, j)}^{(l)}, \quad b_{(f),(i, j)}^{(l)}$$ 의 미분계수는 연쇄법 칙을 이용하여 Equation (13)과 (14)를 같이 구할 수 있다.

(13)
[TeX:] $$\frac{\partial L}{\partial a_{(k),(i, j)}^{(l)}}=\frac{\partial A_{(k),(i, j)}^{(l)}}{\partial a_{(k),(i, j)}^{(l)}} \times \frac{\partial L}{\partial A_{(k),(i, j)}^{(l)}} \\ =\frac{1}{1+e^{-\left(M_{(f)}^{(1)},(i, j)\right.}-b_{(f)}^{(l)},(i, j)} \times \frac{\partial L}{\partial A_{(f),(i, j)}^{(l)}}$$

(14)
[TeX:] $$\frac{\partial L}{\partial b_{(k),(i, j)}^{(l)}}=\frac{\partial A_{(k),(i, j)}^{(l)}}{\partial b_{(k),(i, j)}^{(l)}} \times \frac{\partial L}{\partial A_{(k),(i, j)}^{(l)}} \\ =A_{(f),(i, j)}^{(l)}\left(1-\frac{A_{(f),(i, j)}^{(l)}}{a_{(f),(i, j)}^{(l)}}\right) \times \frac{\partial L}{\partial A_{(k),(i, j)}^{(l)}}$$

합성곱층에서의 민첩한 활성함수의 매개변수 [TeX:] $$a_{(f),(i, j)}^{(l)}$$[TeX:] $$b_{(f),(i, j)}^{(l)}$$ 는 Equation (15)와 (16)과 같이 손실함수 L에 대한 미분계수를 이용하여 역전파 과정에서 손실함수 L을 감소시 키는 방향으로 갱신시킬 수 있다.

(15)
[TeX:] $$a_{(k),(i, j)}^{(l)}=a_{(k),(i, j)}^{(l)}-\rho_{1}\left(\frac{\partial L}{\partial a_{(k),(i, j)}^{(l)}}\right) \\ =a_{(l),(i, j)}^{(l)}- \ \rho_{1}\left(\frac{z_{j}^{(K+1)}\left(z_{j}^{(K+1)}-1\right)}{a_{j}^{(K)}}\right. \ \times \frac{\partial L}{\partial z_{j}^{(K+1)}}$$

(16)
[TeX:] $$b_{(k),(i, j)}^{(l)}=b_{(k),(i, j)}^{(l)}-\rho_{2}\left(\frac{\partial L}{\partial b_{(k),(i, j)}^{(l)}}\right) \\ =b_{j}^{(K)}-\rho_{2}\left(\frac{z_{j}^{(K+1)}\left(z_{j}^{(K+1)}-1\right)}{a_{j}^{(K)}} \times \frac{\partial L}{\partial z_{j}^{(K+1)}}\right.$$

완전연결층에서 사용되는 활성함수에 대해서도 민첩한 활 성함수로 대체하여 사용할 수 있다. 민첩한 활성함수를 이용 하여 각 은닉층의 선형 모델의 추정치 [TeX:] $$\hat{y}_{i}^{(m)}\left(m^{t h}\right.$$ 은닉층의 [TeX:] $$i^{t h}$$ 선형 모델의 추정치)를 활성화하고 동시에 손실함수를 감소 시킬 수 있다. 민첩한 활성함수를 만드는 방법은 활성곱층에 서와 같이 활성함수에 크기(a)와 위치(b)를 변화시킬 수 있는 매개변수를 도입하고 도입된 매개변수는 역전파 과정에서 학 습시킴으로써 손실함수 L을 감소시킬 수 있다.

Fig. 8은 [TeX:] $$m^{t h}$$ 은닉층의 [TeX:] $$i^{t h}$$ 출력값의 추정치 [TeX:] $$\hat{y}_{i}^{(m)}$$를 Equation (7), (8)과 같은 민첩한 활성함수를 이용하여 변환 하는 경우를 도식화한 것이다.

Fig. 8.

Application of Agile Activation Function to the Estimate [TeX:] $$\hat{y}_{i}^{(m)}$$ of the [TeX:] $$i^{t h}$$ Linear Model of the [TeX:] $$m^{t h}$$ Hidden Layer
8.png

Fig. 8의 [TeX:] $$m^{t h}$$ 은닉층의 [TeX:] $$i^{t h}$$ 출력값의 추정치 [TeX:] $$\hat{y}_{i}^{(m)}$$ 를 Equation (7)의 민첩한 Sigmoid 활성함수를 이용하여 변환하 는 경우 변환한 값 [TeX:] $$z_{i}^{(m+1)}=$$

(1)
[TeX:] $$z_{i}^{(m+1)}=\frac{a_{i}^{(m)}}{1+e^{-\left(\hat{y}_{i}^{(m)}-b_{i}^{(m)}\right)}}$$

[TeX:] $$z_{i}^{(m+1)}$$에 대한 [TeX:] $$\hat{y}_{i}^{(m)}, a_{i}^{(m)}, b_{i}^{(m)}$$의 미분은 다음과 같다.

(18)
[TeX:] $$\frac{\partial z_{i}^{(m+1)}}{\partial \hat{y}_{i}^{(m)}}=\hat{y}_{i}^{(m)}\left(1-\frac{\hat{y}_{i}^{(m)}}{a_{i}^{(m)}}\right)$$

(19)
[TeX:] $$\frac{\partial z_{i}^{(m+1)}}{\partial a_{i}^{(m)}}=\frac{1}{1+e^{-\left(\hat{y}_{i}^{(m)}-b_{i}^{(m)}\right)}}$$

(20)
[TeX:] $$\frac{\partial z_{i}^{(m+1)}}{\partial b_{i}^{(m)}}=-\frac{z_{i}^{(m+1)}\left(z_{i}^{(m+1)}-1\right)}{a_{i}^{(m)}}$$

손실함수 L에 대한 [TeX:] $$a_{i}^{(m)}, \quad b_{i}^{(m)}$$의 미분계수는 연쇄법칙을 이용하여 Equation (21), (22)와 같이 구할 수 있다.

(21)
[TeX:] $$\frac{\partial L}{\partial a_{i}^{(m)}}=\frac{1}{1+e^{-\left(\hat{y}_{i}^{(m)}-b_{i}^{(m)}\right)}} \times \frac{\partial L}{\partial z_{i}^{(m+1)}}$$

(22)
[TeX:] $$\frac{\partial L}{\partial b_{i}^{(m)}}=\frac{z_{i}^{(m+1)}\left(z_{i}^{(m+1)}-1\right)}{a_{i}^{(m)}} \times \frac{\partial L}{\partial z_{i}^{(m+1)}}$$

Equation (23)과 (24)를 이용하여 민첩한 활성함수의 매 개변수를 학습시켜 각 학습단계마다 손실함수를 감소시킬 수 있다.

(23)
[TeX:] $$a_{i}^{(m)}=a_{i}^{(m)}-\rho_{3}\left(\frac{\partial L}{\partial a_{i}^{(m)}}\right) \\ =a_{i}^{(m)}-\rho_{3}\left(\frac{1}{1+e^{-\left(\hat{y}_{i}^{(m)}-b_{i}^{(m)}\right)}} \times \frac{\partial L}{\partial z_{i}^{(m+1)}}\right)$$

(24)
[TeX:] $$b_{i}^{(m)}=b_{i}^{(m)}-\rho \frac{\partial L}{\partial b_{i}^{(m)}} \\ =b_{j}^{(K)}-\rho\left(\frac{z_{j}^{(K+1)}\left(z_{j}^{(K+1)}-1\right)}{a_{j}^{(K)}} \times \frac{\partial L}{\partial z_{j}^{(K+1)}}\right.$$

Fig. 9.

Loss Value Changes According to Parameter Optimization and Agile Activation Function Application
9.png

Fig. 9는 합성곱 신경망에서 합성곱층의 필터 파라미터와 완전연결층의 가중치 파라미터 최적화과정과 민첩한 활성함 수의 파라미터를 최적화시킨 경우 손실함수 값의 변화를 나타 낸 것이다. Fig. 5와 비교할 때 활성함수를 적용한 단계에서 항상 손실함수를 감소시키는 방향으로 이동하게 된다.

Fig. 1과 같은, 입력층으로 1개의 이미지, K개의 합성곱 층, M개의 은닉층을 갖는 완전연결층과 출력층을 가진 합성 곱 신경망에 대해 훈련데이터훈련과정을 마친 후 시험데이터에 대해 적용하는 방법은 다음과 같다.

(Step 1) 최적 필터 [TeX:] $$F_{(k),(i, j)}^{(l)^{*}}$$ 를 구한다. 여기서 [TeX:] $$l=1, \ldots, K$$는 각 합성곱층을 나타내고 [TeX:] $$k=1, \ldots, n_{k}$$는 각 합성곱층에 적용한 필터를 의미한다. Equation (5)의 경사하강법을 통해 합성곱층의 최적필터를 구한다.

(Step 2) 최적특성맵 [TeX:] $$M_{(f)}^{(l)^{*}}=P^{(l-1)^{*}} \otimes F_{(f)}^{(l)^{*}}$$ 을 구한다. [TeX:] $$P^{(l-1)^{*}}$$[TeX:] $$l^{t h}$$ 각 합성곱층의 입력이고 [TeX:] $$F_{(k)}^{(l) *}$$[TeX:] $$l^{t h}$$ 합성곱층의 [TeX:] $$k^{t h}$$ 촤적필터를 합성곱하여 구한다. 이때 [TeX:] $$P^{(0)^{*}}$$는 입력 이미지 I 이다.

(Step 3) [TeX:] $$A_{(f),(i, j)}^{(l) *}=\sigma_{1}\left(M_{(f),(i, j)}^{(l) *}, a_{(f),(i, j)}^{(l) *}, b_{(f),(i, j)}^{(l) *}\right)$$를 계산한다. 여기서 [TeX:] $$\sigma_{1}$$는 적용한 활성함수를 나타낸다(Fig. 7 참조).

(Step 4) 풀링을 통해 [TeX:] $$P^{(l)^{*}}$$를 구한다.

(Step 5) [TeX:] $$P^{(l)^{*}}$$를 벡터화하여 심층신경망의 입력값 [TeX:] $$z^{(1)}=\left(z_{1}^{(1)}, z_{2}^{(1)}, \ldots, z_{n_{1}}^{(1)}\right)$$으로 변환한다. 이때 [TeX:] $$n_{1}$$[TeX:] $$P^{(l)^{*}}$$의 원소의 개수이다.

(Step 6) [TeX:] $$\hat{y}_{i}^{(m)}=z^{(m)} \hat{w}_{i}^{(m)^{*}}, m=1, \ldots, M$$를 계산한다. [TeX:] $$\hat{w}_{(i, j)}^{(l)^{*}}$$ 는 Equation (6)을 이용하여 구한 최적 가중 치이다. [TeX:] $$m=M$$ 이면 즉, [TeX:] $$\hat{y}_{i}^{(M)}=\hat{y}_{i}^{(O U T)}$$ 이 되고 최종출력값이 된다.

(Step 7) [TeX:] $$z_{i}^{(m+1)^{*}}=\sigma_{2}\left(\hat{y}_{i}^{(m)}, a_{i}^{(m+1)^{*}}, b_{i}^{(m+1)^{*}}\right)$$는 Equation (23)과 (24)을 통해 구한 최적 활성함수의 가중치이다.

(Step 8) [TeX:] $$\hat{y}_{i}^{(O U T)}, i=1, \ldots n_{O U T}$$을 이용하여 미리 정해진 [TeX:] $$\text { Loss(mean square error 또는 crossentropy) }$$를 평가한다.

Re LU 등 다른 활성함수에 대해서도 활성함수를 일반화시 킬 수 있는 매개변수를 이용하고 매개변수들을 학습시켜 합 성곱 신경망의 성능을 향상시킬 수 있다.

4. MNIST를 이용한 민첩한 활성함수의 성능 실험

[TeX:] $$28 \times 28 \text { MNIST }$$ 데이터 5,000개를 각 숫자별로 균등하게 표본추출하여 민첩한 활성함수의 성능을 평가하였다. 평가를 위해 사용한 합성곱 신경망은 Fig. 10과 같다. 입력데이터의 배치크기는 100, 필터 개수가 16, 8, 4인 3개의 합성곱층과 은닉층의 노드수가 30인 1개은 은닉층, 최종 출력수가 10이 고 손실함수는 크로스엔트로피를 사용하였다.

활성함수의 성능 평가를 위한 실험을 Table 1과 같이 12 개 조건에서 실시하였다. 실험한 12개 조건에서 완전연결층 이 Sigmoid인 경우를 배제하였는데 그 이유는 완전연결층만 고려한 실험인 Fig. 11에서와 같이 민첩한 Sigmoid의 성능이 항상 우월했기 때문이다.

Fig. 10.

CNN for Agile Activation Function Performance Evaluation
10.png

Fig. 11.

Performance Comparison of Sigmoid and Agile Sigmoid in Fully Connected Layer [TeX:] $$28 \times 28 \text { MNIST }$$
11.png

Table 1.

Activation functions for Performance Evaluation
n Convolutional Layer Fully Connected Layer Loss Value Iteration Counts
1 Sigmoid Re LU 0.18850 5030
2 Sigmoid Agile Re LU 0.16094 5045
3 Sigmoid Agile Sigmoid 0.14456 9908
4 Agile Sigmoid Re LU 0.16259 5036
5 Agile Sigmoid Agile Re LU 0.16684 4317
6 Agile Sigmoid Agile Sigmoid 0.15600 7808
7 Re LU Re LU 0.18127 1187
8 Re LU Agile Re LU 0.17529 1187
9 Re LU Agile Re LU 0.16031 3400
10 Agile Re LU Re LU 0.17666 1050
11 Agile Re LU Agile Re LU 0.18261 809
12 Agile Re LU Agile Sigmoid 0.15027 3261

Fig. 12.

Loss Function Values in Each Activation Function Combination
12.png

Fig. 12는 합성곱층과 완전연결층에서 사용한 활성함수의 12개 조합에서 시험손실(test loss)이다. Fig. 13은 12개 조 합 중 상대적으로 성능이 좋은 5개의 조합을 선택하여 손실 값을 비교한 것이다.

Fig. 13.

Loss Function Values in the Top 5 Activation Functions
13.png

민첩한 Re LU-민첩한 Sigmoid 조합이 가장 우수한 성능을 보이고 있음을 알 수 있다. Sigmoid-민첩한 Sigmoid 조합은 계산속도는 느리지만 최저 손실함수 값을 가지고 있다. 가장 우수한 성능을 보인 활성함수 조합에서 각 매개변수의 값이 얼마나 변동하고 있는가를 나타낸 것이 Fig. 14이다. 가로 축 은 활성함수의 크기 파라미터 a의 최대값과 최소값을 나타낸 것이고 세로 축은 활성함수 위치변화를 나타내는 매개변수 의 최대값과 최소값을 나타낸 것이다.

민첩한 활성함수는 순전파 과정과 역전파 과정에서 합성곱 층과 완전연결층의 민첩한 활성함수의 매개변수를 손실함수 를 최소화하는 방향으로 끊임없이 최적화함으로써 인공지능 망의 성능을 향상시키고 있다.

Fig. 14.

Variable Range of Parameters in Agile Re LU-agile Sigmoid
14.png

5. 결론 및 향후 연구

합성곱 신경망은 합성곱층과 완전연결층에서 활성함수를 사용한다. 합성곱 신경망에서 사용하고 있는 기존의 활성함 수를 민첩한 활성함수로 확장하여 심층신경망의 성능을 향상 시킬 수 있었다.

민첩한 활성함수는 활성함수로의 입력 데이터를 다양한 형 태로 변환할 수 있는 자유도를 부여하는 매개변수를 도입하 여 확장한 함수이다. 도입된 매개변수에 대한 손실함수의 미 분계수를 계산하고 역전파 계산 과정에서 매개변수를 손실함 수 값을 감소시키는 방향으로 최적화함으로써 민첩한 활성함 수의 성능을 보장하도록 하였다.

[TeX:] $$28 \times 28 \mathrm{MNIST}$$ 데이터를 이용하여 제안된 민첩한 활성함 수의 성능을 확인하였다. 실험에 사용한 합성곱 신경망은 합 성곱층 3개, 완전연결층 1개, 각 합성곱층의 필터 수는 16, 8, 4를 사용하였고 완전연결층의 노드 수는 30개이다.

민첩한 활성함수는 신경망의 순전파 및 역전파 계산과정에 서 각 계산 단계마다 손실함수 값을 지속적으로 감소시키는 방향으로 매개변수의 값을 최적화함으로써 손실함수와 어떤 관계도 갖지 않는 기존 활성함수들에 비해 우수한 성능을 보 임을 확인 할 수 있다.

제안한 민첩한 활성함수는 단지 Re LU, Sigmoid 뿐 아니라 다양한 활성함수에 확장 적용할 수 있다.

합성곱 신경망은 심층심경망과 함께 다양한 문제를 해결하 는 기본 신경망으로 적용 범위가 광범위하고 다른 신경망과 연계하여 사용할 수 있는 기본 신경망이다.

민첩한 활성함수를 일반화하는 방법으로 크기와 위치를 다 양하게 변화시킬 수 있는 매개변수를 도입하여 활성함수를 일반화하였을 뿐 아니라 도입한 매개변수를 순전파 과정과 역전파 과정에서 최적화시킴으로써 손실함수를 빠르게 감소 시킬 수 있다.

Biography

공 나 영

https://orcid.org/0000-0002-0245-7827

e-mail : lindsey0@hanmail.net

1988년 이화여자대학교 전자계산학과(학사)

1994년 이화여자대학교 전자계산학과(석사)

2017년~현 재 전주대학교 문화기술학과 박사과정

관심분야 : Data Science & Artificial Intelligence

Biography

고 영 민

https://orcid.org/0000-0003-2779-3170

e-mail : gjtrj55@naver.com

2020년 전주대학교 경영학과(학사)

2020년~현 재 전주대학교 인공지능학과 석사과정

관심분야 : Data Science & Artificial Intelligence

Biography

고 선 우

https://orcid.org/0000-0002-6328-5440

e-mail : godfriend0@gmail.com

1985년 고려대학교 산업공학과(학사)

1988년 한국과학기술원 산업공학과(석사)

1992년 한국과학기술원 산업공학과(박사)

2005년~현 재 전주대학교 스마트미디어학과 교수

관심분야 : Data Science & Artificial Intelligence

References

  • 1 D. Hubel, T. Wiesel., "Receptive Fields of Single Neurons in the cat's Striate Cortex," The Journal of Physiology, vol. 124, no. 3, pp. 574-591, 1959.custom:[[[-]]]
  • 2 A. Krizhevsky, I. Sutskever, G. Hinton, "Imagenet Classification with Deep Convolution Neural Networks," in NIPS Conference, 2012;pp. 1097-1107. custom:[[[-]]]
  • 3 Charu C. Aggarwal, "Neural Networks and Deep Learning: A Textbook," Springer International Publishing AGSpringer International Publishing AG. custom:[[[-]]]
  • 4 Chigozie Enyinna Nwankpa, Winifred Ijomah, Anthony Gachagan, Stephen Marshall, "Activation Functions: Comparison of Trends in Practice and Research for Deep Learning," arXiv:1811.03378v1 (cs.LGarXiv:1811.03378v), 2018.custom:[[[-]]]
  • 5 N. Y. Kong, S. W. Ko, "Agile Activation Functions in Deep Neural Networks," Working Paper, 2020.custom:[[[-]]]
  • 6 Nello Cristianini, John Shawe-Taylor, "An introduction to Support Vector Machines: and other kernel-based learning methods," Cambridge University PressNew York, NY, USA, 2000.custom:[[[-]]]
  • 7 Bekir Karlik, A Vehbi Olgac, "Performance Analysis of Various Activation Functions in Generalized MLP Architectures of Neural Networks," International Journal of Artificial Intelligence And Expert Systems (IJAE), vol. 1, no. 4, 2011.custom:[[[-]]]

Statistics


Related Articles

CNN 기반 위장관 랜드마크 분류기를 이용한 위장관 교차점 추정
H. W. Jang, C. N. Lim, Y. Park, G. J. Lee, J. Lee
결합된 파라메트릭 활성함수를 이용한 합성곱 신경망의 성능 향상
Y. M. Ko, P. H. Li, S. W. Ko
1D CNN과 기계 학습을 사용한 낙상 검출
I. Kim, D. Kim, S. Noh, J. Lee
랜덤 포레스트와 딥러닝을 이용한 노인환자의 사망률 예측
J. Park and S. Lee
효율적인 이미지 검색 시스템을 위한 자기 감독 딥해싱 모델의 비교 분석
K. S. In, J. Y. Jin, L. S. Bum, K. W. Gyum
CNN 기반 감성 변화 패턴을 이용한 가짜뉴스 탐지
T. W. Lee, J. S. Park, J. G. Shon
멀티모달 방식을 통한 가스 종류 인식 딥러닝 모델 개발
S. H. Ahn, G. Y. Kim, D. J. Kim
딥러닝 기반 카메라 모델 판별
S. H. Lee, D. H. Kim, H. Lee
CAM 기반의 계층적 및 수평적 분류 모델을 결합한 운전자 부주의 검출 및 특징 영역 지역화
S. Go and Y. Choi
특성맵 차분을 활용한 커널 기반 비디오 프레임 보간 기법
D. Seo, M. Ko, S. Lee, J. Park

Cite this article

IEEE Style
N. Y. Kong, Y. M. Ko, S. W. Ko, "Performance Improvement Method of Convolutional Neural Network Using Agile Activation Function," KIPS Transactions on Software and Data Engineering, vol. 9, no. 7, pp. 213-220, 2020. DOI: https://doi.org/10.3745/KTSDE.2020.9.7.213.


ACM Style
Na Young Kong, Young Min Ko, and Sun Woo Ko. 2020. Performance Improvement Method of Convolutional Neural Network Using Agile Activation Function. KIPS Transactions on Software and Data Engineering, 9, 7, (2020), 213-220. DOI: https://doi.org/10.3745/KTSDE.2020.9.7.213.