본문 바로가기

머신러닝, 딥러닝

초등학생도 이해하는 역전파

 

* 초등학생도 이해할 수 있도록 작성한 거라, 세세한 용어는 실제와 다를 수 있습니다.
  최대한 쉽게 개념을 잡을 수 있도록 작성했습니다.

 

 

사진을 주면 강아지인지, 고양이인지 학습하여 분류하는 장치가 있습니다.

이 장치는 여러 장의 사진을 바탕으로, 스스로 강아지의 특성을 학습합니다. 

먼저 강아지의 머리는 어떻게 생겼고, 몸통은 어떤 모양과 크기이고, 앞발은 어떤 모양이며, 
꼬리는 말려 있고, 코는 분홍색이다 ... 라는 특징을 학습합니다.


여기서 강아지만 가지는 특별한 특징이 있겠죠. 몸통이 얼만큼 길다던가, 
꼬리가 얼만큼 복슬복슬하다거나, 앞발이 어떻게 생겼다거나. 이런 특징 등에는 중요도를 매깁니다. 
(앞발바닥 까만색 - 조금 중요) (몸통 길이 50cm 이상 - 조금 중요)


장치는 다음으로 강아지의 얼굴 중에서 눈, 코, 입, 귀는 어떻게 생겼는지, 혀는 빼고 있는지, 다리의 길이는 얼마나 되는지, 앞발은 어떻게 생겼는지 등 세세한 특징을 학습합니다.

여기서 강아지만 가지는 특별한 특징인 눈이 까맣고 동그랗다거나, 주둥이가 튀어나왔다거나. 
이러한 특징등은 '발이 4개다' 라는 특징보다 좀 더 중요하게 여겨집니다.

이런 특징들에 중요도를 매깁니다. (눈이 까맣고 동그랗다면 강아지 - 조금 중요)
(주둥이가 튀어나왔다면 강아지 - 조금 중요)

이렇게 장치는 강아지의 특징을 나누어 학습했습니다. 


새 강아지 사진을 넣어 제대로 분류하는지 확인해볼까요? 

하지만 장치는 이 사진이 고양이라고 분류했습니다! 
실제 우리가 예상하는 정답인 강아지와 다르죠.


그럼 왜 이 장치가 사진을 고양이라고 분류했지? 라고 장치를 뜯어보겠습니다. 


'고양이다' 라고 결론을 내린 지점부터 사진을 넣은 때까지 거슬러 올라가며, 

학습된 특징(귀, 혀, 발 모양, 꼬리 모양)들을 다시 봅니다. 보면서 어떤 특징이 강아지를 고양이라고 분류하는 데 얼마만큼 영향을 미치는구나! 를 보고, 중요도를 수정합니다. 

(코가 까맣고 동그랗다면 강아지 - 조금 중요) (주둥이가 튀어나왔다면 강아지- 아주 중요). 

이렇게 각 특징을 거꾸로 확인해가며 중요도를 수정해, 
고양이랑 강아지를 더 잘 분류할 수 있도록 학습시키는 것이 역전파입니다.