딥러닝을 배워봅시다2

송명규·2022년 6월 28일
0

딥러닝을 배워봅시다#2

자 이제 딥러닝을 시작해보자.
이론적인 부분부터 배울 것이니 코딩은 상관이 없다.
고생한 Python은 잠시 꺼두자

자, 우리는 가장 쉬운 Yes or no 를 출력하게 하는 프로그램을 만들고 싶다.
예를 들어 '고양이인가?' 라는 질문에 사진을 input으로 넣으면 'Yes' 혹은 'no'가 나오는 프로그램을 만들고 싶은 것이다. 이것을 'binary Classification'이라고 한다.

그럼 어떻게 Yes or no를 판별하게 하는지 알아보자.
앞서 우리는

딥러닝은 Rule을 생각해 내는 녀석!

이라고 배웠다.

그럼 어떻게 Rule을 만들고 수정해 나가는가?

Cost function을 통해 수정해 나간다!
이때 logestic loss 를 이용하는데 Activation function 으로 sigomid function을 이용한다.

무슨소리인지 모르겠는걸 잘 안다. 하나하나 설명해 보자.

먼저 뉴런이 무엇인지 아는가?

대충 이렇게 생긴 녀석이다. 저 본체 같은 곳에서 많은 촉수로 전기신호를 받거나 출력한다. 이것이 대충 100억개정도 우리 머릿속에 있다.
이걸 본따서 만든 것이 딥러닝이다.

대충 이런 방식을 따른다.

  1. 먼저 Input Layer 에서 입력(고양이 사진 or 고양이가 아닌사진)을 받아주고,
  2. 두번째 Hidden Layer에서 특징들에 따라 Rule(이게 고양이인지 아닌지)을 세우고,
  3. 마지막 Output Layer 에서 최종적으로 판별(이사진은 고양이입니다! or 아닙니다!)한다

이때 잠시만 sigmoid fuction을 살펴보자.

sigmoid function

시그모이드 함수란 이렇게 생긴 녀석이다.

이런 물고기 같이 생긴 녀석의
범위는 0~1 사이 이며, 점대칭을 이루고 있고, x=0에 가까이 갈 수 록 기울기가 커진다.

이걸 어디에 사용하냐,

바로 저 Layer 사이에 화살표가 이 Activation function(sigmoid function)이다!(물론 다른 종류(Relu, tanh 등)많은 함수가 있지만 일단 시그모이드를 연습해보자)

profile
안녕하세요

0개의 댓글