• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (Department of Electronics and Computer Engineering, Seokyeong University, Korea.)



Dynamic Rating System(DRS), Distributed Temperature Sensor(DTS), Conductor Temperature Monitoring System(CTS), Correction Factor

1. 서 론

딥러닝은 컴퓨터 비전 및 학습 분야에서 뛰어난 성능을 인정받아 널리 사용되고 있다(1,2). 한편, 계산 비용이 많이 드는 딥 모델에 대한 경량화가 임베디드시스템 및 모바일시스템에 요구되고 있다(3). 지식증류(Knowledge Distillation, KD) 기법은(4) 규모가 크고 학습된 Teacher(선생) 네트워크에서 규모가 작고 학습되지 않은 Student(학생) 네트워크로 출력 벡터에 대한 분포의 차이를 줄여나감으로써 지식을 전달한다. 전형적인 응용은 큰 네트워크의 능력을 작은 네트워크로 전달하여 성능은 최대한 유지하면서 네크워크 규모를 축소하는 것이다. KD에는 Teacher-Student(이하 T-S) 구성이 널리 쓰이고(4),, 동등한 두 네트워크로 구성된 상호협력 모델인 (Deep Mutual Learning, DML) 방식(5)도 제시되고 있다.

기존 KD에서는 선생 모델과 학생 모델간의 KL(Kullback Leibler) divergence(발산)에만 의존하여 지식의 전달에 오류 또는 비효율성이 존재한다. 즉, 학생이 선생의 KL 분포를 최대한 따라가는 방식으로, 선생 지식의 정확도에 따라 결과가 달라 질 수 있고, 학생 모델이 선생 모델에 과적합화되는 현상이 일어 날 수 있다. 최근 연구(6,7)에서 KD는 정규화(Resgularization) 작용을 내재하고 있기 때문에, 학생 모델의 과적합 문제를 개선할 수 있다는 근거를 보인 바 있다. 그러나 KL 발산 정보만으로는 선생으로부터 전달되는 지식의 유용성을 직접적으로 판단하기 어렵다. 즉, KL 발산의 차이만을 줄이다 보면 선생의 오류 또는 불확실성이 높은 지식까지 학생에게 그대로 전달되는 문제점이 발생한다. 이 문제를 해결하기 위해서 유용한 지식의 전달 비율을 높이도록 전달되는 지식을 제어한다. 구체적으로 KL divergence를 학생의 예측 정확도와 결합하여 의미가 향상된 확장된 지표를 정의한다. KL divergence와 학생의 예측 정확도로 표현되는 2차원 공간상의 지식들을 분할하여 집단의 특성에 따라 전달 비율을 조정한다. 이를 통해 기존 KD 보다 지식 전달의 정확성을 향상시킬 수 있다.

본 논문은 사전 연구인 (8)를 확장한 것으로, 제안된 기법을 CIFAR100와 CUB-200-2011 데이터셋에 대해서 ResNet, MobileNet, WRN 등 다양한 모델에 적용하여 실험하고 HKD 및 DML 기법과 비교한다.

2. 지식 증류 기법

2.1 전통적 지식 증류

지식증류(Knowledge Distillation) 기법은 규모가 크고 학습된 선생 네트워크(또는 모델)와 규모가 작고 학습되지 않은 학생 네트워크 사이의 출력 벡터에 대한 분포의 차이를 줄여나감으로써 지식을 전달한다. 여기서, 지식의 의미는 각 학습 데이터에 대한 선생의 출력 정보이다. 이 때 선생의 지식을 효과적으로 전달하기 위해 출력 벡터 값을 온도 $\tau$로 조정한다. 이를 통해 정답 클래스에 해당하는 특정 정보만이 아니라 그 이외의 클래스에 대한 예측 정보까지 함께 전달한다. 이것은 불순물로부터 물질을 추출하기 위해 온도를 조절하는 것과 같은 원리이다. 이런 과정을 통해 다양한 정보를 전달 받은 학생 네트워크는 더욱 좋은 성능을 기대할 수 있다. 지식 증류에 대한 손실함수가 식 (1)에 나와 있다.

(1)
$L = -\dfrac{1}{m}\sum_{i=1}p(z_{i},\:\theta)\log\dfrac{p(z_{i},\:\theta)}{p(\hat z_{i},\:\theta)}$

(2)
$p(z_{i},\:\theta)= soft\max(z_{i}/\tau)$

여기서, m은 미니-배치 사이즈, $z_{i}$는 선생의 출력값, $\hat z_{i}$는 학생의 출력값, $\theta$는 모델의 파라미터, $\tau$는 네트워크의 출력 분포를 조정해주는 상수이다.

2.2 기존 지식 증류의 문제점

기존의 지식 증류에서는 식 (1)의 손실함수에서 보듯이, 모든 지식이 미니-배치 크기인 m으로 나뉘어져 동일한 반영 비율을 가지고 있다. 즉, 각 입력 데이터에 대해서 선생의 정확도나 학생의 예측 정확도와는 상관없이 선생과 학생간의 KL 발산에만 의존하여 지식이 전달하기 때문에 오류지식이 전달될 수가 있다. 또한 KL 발산의 크기에도 영향이 있는데, 이에 대한 고려가 없다.

3. 확장된 지식 증류

3.1 지식의 확장된 표현

학생 네트워크와 teacher 네트워크간의 출력값 간의 KL divergence값을 줄이기 위해 평균값을 사용하는 기존의 KD 기법들과는 달리, 지식 표현의 확장을 통해 지식을 여러 그룹으로 나누어 각 그룹의 특성에 따른 반영 비율을 결정한다. 확장된 지식 표현을 위해 학생네트워크의 예측 정확도에 대한 새로운 축을 추가한다. 그림 1의 우측에서 볼 수 있듯이, 재표현된 지식들은 2차원 공간상에 나타난다. 즉, x축은 학생 네트워크의 예측 정확도, y축은 KL 발산이다. 구체적으로 우측 영역은 학생의 예측 정확성이 낮기 때문에 좌측 영역에 비해 오차의 반영 비율을 더 높인다. 하지만, 우상 영역에서는 선생의 정확성이 높기 때문에 우하 영역에 비해 반영 비율을 더 높인다. 좌측 영역 또한 이와 동일한 가정을 적용한다. 따라서 각 영역의 반영비율에 대한 크기 순서는 좌하 -> 좌상 -> 우하 -> 우상이다. 확장된 지식 표현을 통해 학생 네트워크의 관점에서 선생 네트워크로부터의 지식들을 중요도가 높은 지식과 그렇지 않은 지식으로 구별하여 가중치를 재조정함으로써 학생이 효과적으로 선생을 모방하도록 학습할 수 있다.

그림 1 확장된 지식 표현

Fig. 1 Extended knowledge representation

../../Resources/kiee/KIEE.2022.71.2.431/fig1.png

3.2 손실 함수

제안된 지식증류를 위한 새로운 손실 함수는 교차 엔트로피(Cross Entropy)와 두 네트워크의 출력 분포의 차이를 줄이는 함수로 나뉜다. 교차 엔트로피는 다음과 같이 정의된다.

(3)
$L_{CE}= -\sum_{i=1}^{C}t_{i}\log(y_{i})$

여기서, $t_{i}$는 원-핫 인코딩된 정답 레이블을, $y_{i}$는 네트워크의 예측값을 의미한다. 이에 더해, 확장된 지식 표현과 경계선을 통해 분할된 각 영역의 지식들은 아래와 같은 손실함수를 계산하는 데 사용된다.

(4)
$L_{KD}=\sum_{r=1}^{R}\alpha^{r}\beta^{r}\acute L^{r}$

(5)
$\acute L^{r}=\dfrac{1}{n^{r}}\sum_{i=1}p(z_{i}^{r},\:\theta)\log(\dfrac{p(z_{i}^{r},\:\theta)}{p(z_{i}^{r},\:\theta)})$

(6)
$\beta^{r}=\begin{cases} 1 -\dfrac{n^{r}}{m},\:&R\ge 2\\ 1,\:&R = 1 \end{cases}$

여기서, $z_{i}^{r}\subset z_{i},\: z_{i}^{1}\cup z_{i}^{2}\cup z_{i}^{3}\cup\cdots\cup z_{i}^{R}= z_{i}$, R은 영역의 개수, $n^{r}$은 각 영역에 속한 지식의 개수, $\alpha$는 우리의 가정에 따라 각 영역마다 차등적으로 부여된 계수를 의미한다. $\alpha 와\beta$ 계수들로 인해 재가중된 각 영역의 지식들끼리 KL 발산을 구하고, 이를 모두 더해줌으로써 지식 증류를 위한 손실함수가 계산된다. 우리의 실험에서 $R$ 은 4, $\alpha$는 {0.6, 0.8, 1.2, 1.4}를 사용했다.

종합적인 손실함수는 교차 엔트로피 함수와 새롭게 정의된 지식 증류를 위한 손실함수를 더함으로써 계산되고 다음과 같이 정의된다.

(7)
$L_{\text {total }}=(1-\lambda) L_{C E}+\tau^{2} \lambda L_{K D}$

여기서, $\lambda$는 두 손실함수의 균형을 유지하는 상수이다.

3.3 확장된 표현 기반 지식 제어

확장된 표현 기반 지식 제어의 전체 수행 과정은 다음 알고리즘 1에 나와 있다. 그리고 제안 기법의 전체 파이프라인 구조가 그림 2에 나와있다. 그림 2의 좌측부터 중앙까지의 부분은 기존의 KD 과정을 나타낸다. 2차원으로 확장시킨 우측 부분이 제안된 지식 제어 과정을 나타낸다. 기존의 KD에서 구한 KL 발산의 분포를 2차원으로 재구성하여 세분화된 지식을 전달하며, 각 영역의 전달 비율을 3.1절에서 설명한 방식으로 제어한다.

알고리즘 1 확장된 표현 기반 지식 제어

알고리즘 1 확장된 표현 기반 지식 제어

입력 : 학습 데이터

출력 : 학습된 CNN 모델

과정 :

1) 학습 데이터에서 mini-batch size만큼의 데이터를 샘플링하여 teacher와 학생네트워크에 각각 입력하고 출력 벡터를 얻는다.

2) 1)에서 얻은 출력 벡터들을 이용해 지식들을 2차원 공간에 표현한다.

3) 재표현된 지식들을 각 영역별로 구분하고 재가중을 위한 계수값들을 구한다.

4) 재표현된 지식들을 이용하여 수식 (7)을 계산하고 이에 대한 미분값을 구한다.

5) 전체 학습 데이터에 대해 1)-4) 과정을 반복한다.

그림 2 확장된 표현 기반 지식 제어

Fig. 2. Control scheme of KD based on extended knowledge representation

../../Resources/kiee/KIEE.2022.71.2.431/fig2.png

4. 실험 및 결과 분석

4.1 실험 준비

제안된 기법을 CIFAR100와 CUB-200-2011 데이터셋에 대해서 적용한다. CIFAR100은 차량, 곤충, 꽃 등 20개 슈퍼 클래스 각각에 5개의 서브클래스로 구성된 32x32의 RGB 이미지 데이터이며 50,000개의 학습 데이터, 10,000개의 테스트 데이터로 구성된다. CUB-200-2011은 200 종류의 새에 관한 데이터로 5,994개의 학습 데이터, 5,794개의 테스트 데이터로 구성된다. 실험은 RTX-2080 GPU 2대에서 수행되었으며 파이토치(Pytorch Framework)를 사용하여 구현하였다. 학습 파라미터 설정이 표 1에 나와있다.

표 1 학습 파라미터 설정

Table 1 Settings of training hyper-parameters

Dataset

batch

size

epoch

learning

rate

decay epoch

CIFAR100

128

200

0.1

[60, 120, 180]

Cub-200-2011

32

200

0.1

[100, 150]

4.2 단방향 지식 증류 실험

제안하는 기법을 단방향 지식 증류 방법에 대해 실험한다. 단방향 지식증류는 HKD(4)에서 처음 도입되었으며, 사전 학습된 대규모의 선생 네트워크가 소규모의 학생 네트워크에게 일방적으로 지식을 전달한다. CIFAR100과 Cub-200-2011 데이터셋에 대한 HKD와의 비교 결과가 표 2, 3에 각각 나타나 있으며, 모든 경우에서 제안된 기법이 HKD에 비해 우수함을 알 수 있다. 특히, CIFAR100에 대해 ResNet 110, ResNet 56의 조합에서는 1.42%, Cub-200-2011에 대해 ResNet 50, ResNet 34의 조합에서는 1.45%의 매우 큰 성능 향상을 보여준다. 따라서 단방향 지식 증류에서 제안하는 기법이 HKD보다 효과적이라는 것을 알 수 있다.

표 2 단방향 지식 증류에서의 CIFAR100 데이터셋에 대한 top-1 정확도(%)

Table 2 Top-1 accuracy(%) on CIFAR100 for One-way KD

Teacher: baseline

Student

baseline

HKD

Ours

ResNet110: 73.12

ResNet32

70.61

71.48

72.50

ResNet56

71.06

72.31

73.73

ResNet18: 77.93

MobileNetV2

69.33

71.05

72.11

ShuffleNet V2

70.02

71.26

71.93

WRN22-10: 79.55

WRN40-2

72.28

72.59

73.85

WRN40-4

74.9

76.56

77.69

표 3 단방향 지식 증류에서의 Cub-200-2011 데이터셋에 대한 top-1 정확도(%).

Table 3 Top-1 accuracy(%) on Cub-200-2011 for One-way KD

Teacher: baseline

Student

baseline

HKD

Ours

ResNet50: 75.30

ResNet18

70.47

73.47

74.11

ResNet34

74.52

76.42

77.87

4.3 양방향 지식 증류 실험

제안하는 기법을 양방향 지식 증류에 실험한다. 양방향 지식 증류는 DML(5)에서 처음 도입되었다. 선생 네트워크는 변하지 않고 일방적으로 지식을 전달하는 단방향 지식 증류와는 달리, 양방향 지식 증류에서는 선생과 학생이 서로 지식을 상호 전달하는 방식으로 협력 학습(Colabolative Learning)이 수행되며, 두 네트워크의 가중치가 모두 업데이트 된다. 표 4, 5는 CIFAR100와 Cub-200-2011 데이터셋에 대해서 최신 대표적인 연구인 DML(5)과의 비교 결과를 보여준다. 결과 표에서 Net2가 학생 네트워크를 의미하며 주 비교 대상이다. 단방향 실험 결과와 마찬가지로, 모든 경우에서 제안된 기법이 DML에 비해 우수함을 알 수 있다. 특히, CIFAR100에 대해서 MobileNet, ResNet32의 조합에서는 DML에 비해 0.45%, 1.99% 더 우수함을 나타낸다. 또한 Cub-200-2011에 대해서 ResNet50, ResNet18의 조합인 경우에서도 0.89%, 1.66%의 성능 향상을 보여준다. 따라서 제안하는 기법은 분류 문제에 대해서 단방향 뿐만 아니라 양방향 지식 증류에도 효과적으로 적용될 수 있다는 것을 알 수 있다.

표 4 양방향 지식 증류에서의 CIFAR100 데이터셋에 대한 top-1 정확도(%).

Table 4 Top-1 accuracy(%) on CIFAR100 for Two-way KD

Network Types

Baseline

DML

Ours

Net1

Net2

Net1

Net2

Net1

Net2

Net1

Net2

MobileNet

ResNet32

73.65

70.61

76.13

71.10

76.58

73.09

WRN22-10

ResNet32

79.55

70.61

80.37

70.79

80.93

71.43

WRN22-10

MobileNet

79.55

73.65

80.52

74.08

80.94

76.20

WRN28-10

MobileNet

80.04

73.65

80.82

74.34

81.38

76.18

WRN28-10

WRN22-10

80.04

79.55

80.93

80.74

81.42

81.07

표 5 양방향 지식 증류에서의 Cub-200-2011 데이터셋에 대한 top-1 정확도(%).

Table 5 Top-1 accuracy(%) on Cub-200-2011 for Two-way KD

Network Types

Baseline

DML

Ours

Net1

Net2

Net1

Net2

Net1

Net2

Net1

Net2

ResNet50

ResNet18

75.30

70.47

77.17

74.95

78.06

76.61

ResNet50

ResNet34

75.30

74.52

77.68

76.40

78.15

77.46

4.4 분석

4.2와 4.3절의 수치적 성능 비교 외에 KD 과정에서의 KL 발산 값들의 분포를 분석한 결과가 그림 3에 나와있다. x축은 진행 횟수이고, y축은 noisy knowledge의 수로서 선생과 학생의 KL 발산값이 큰 것을 의미한다. 즉, noisy knowledge의 수가 많을수록 선생에 대한 학생의 모방이 떨어지는 것을 나타낸다. 그림 3은 양방향 지식 증류 방식에서 HKD와 제안 기법에 대해서 높은 KL 발산 값을 갖는 샘플의 개수를 보여준다. HKD는 120 Epoch까지 10,000개 이상의 샘플이 존재하는 반면, 제안 기법에서는 거의 존재하지 않고 또한 평균 KL 발산 값이 낮은 것을 볼 수 있다. 이를 통해 제안 기법에서 학생이 선생을 기존 기법에 비해 명확한 차이로 잘 모방함을 알 수 있다.

그림 3 높은 KL 발산 값에 대한 히스토그램(a: HKD, b: Ours)

Fig. 3 Histogram of knowledge with high KL divergence values

../../Resources/kiee/KIEE.2022.71.2.431/fig3.png

5. 결 론

본 논문에서는 확장된 지식표현 방법을 새롭게 제시하고, 유용한 지식의 전달 비율을 높이도록 전달되는 지식을 효율적으로 제어하는 지식증류 기법을 제안하였다. 제안 기법을 검증하기 위해서 CIFAR100과 Cub-200-2011 데이터셋에 대해서 다양한 네트워크의 조합을 통해 대표적인 기법인 HKD 및 DML과의 비교 실험을 수행했고, 모든 경우에 대해서 기존 기법보다 우수한 결과를 얻었다. 또한, KD 과정의 KD 발산값들을 조사하여 제안 기법의 효율성을 확인하였다.

향후, 지식 전달의 내부 특성을 심층적으로 분석하여, 전달 메카니즘을 정교화할 예정이며, 다양한 데이터셋과 네크워크에 대해서 확장된 실험이 필요하다.

Acknowledgements

References

1 
Y. LeCun, Y. Bengio, G. Hinton, 2015, Deep learning, Nature, Vol. 521, pp. 436-444DOI
2 
A. Krizhevsky, I. Sutskever, G. Hinton, 2012, Imagenet classification with deep convolutional neural networks, Advances in neural information processing systems 25,, pp. 1097-1105Google Search
3 
S. Han, H. Mao, W. Dally, 2015, Deep compression: Compressing deep neural networks with pruning, trained quantization and huffman coding, arXiv preprint arXiv:1510.00149Google Search
4 
G. Hinton, O. Vinyals, J.Dean, 2014, Distilling the knowledge in a neural network, Neural Information Processing Systems (NIPS)Google Search
5 
Y. Zhang, T. Xiang, T. Hospedales, H. Lu, 2018, Deep mutual learning, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 4320-4328Google Search
6 
J. Tang, R. Shivanna, Z. Zhao, D. Lin, A. Singh, E. Chi, S. Jain, 2020, Understanding and improving knowledge distillation, arXiv preprint arXiv:2002.03532Google Search
7 
L. Yuan, F. Tay, G. Li, T. Wang, J. Feng, 2020, Revisiting knowledge distillation via label smoothing regularization, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 3903-3911Google Search
8 
K. Kang, K. Seo, 2021, Knowledge Distillation Using The Distribution Characteristics of Knowledge, in Proceedings of Information and Control Symposium ICS’2021, pp. 170-171Google Search

저자소개

강성재 (Sungjae Kang)
../../Resources/kiee/KIEE.2022.71.2.431/au1.png

He received B.S. degrees from Electronics Engineering from Seokyong University, Seoul, Korea, in 2020.

He is currently pursuing his MS degree in Electronics and Computer Engineering at Seokyong University, His research interests include deep learning, computer vision.

이향범 (Hyang-beom Lee)
../../Resources/kiee/KIEE.2022.71.2.431/au2.png

He received the BS, MS, and Ph.D degrees in Electrical Engineering from Yonsei University, Seoul, Korea, in 1986, 1988, and 1993 respectively.

He joined Genetic Algorithms Research and Applications Group (GARAGe), Michigan State University from 1999 to 2002 as a Research Associate.

He was also appointed Visiting Assistant Professor in Electrical & Computer Engineering, Michigan State University from 2002 to 2003.

He was a Visiting Scholar at BEACON (Bio/computational Evolution in Action CONsortium) Center, Michigan State University from 2011 to 2012.

He is currently Professor of Electronics Engineering, Seokyeong University.

His research interests include deep learning, evolutionary computation, computer vision, and intelligent robotics.