1. 인공신경망의 이해
인공신경망의 용어 중에 input data, label, weight 라는 단어를 많이 접하게 됩니다.
input data 는 (3, 2), (1, 4), (5, 5), (8, 3) 우리가 수집한 데이터를 기계에 넣어주는 것이라고 이해하면 됩니다.
label 은 1, -3, 0, 5 정답을 알려주는 데이터 이고,
weight 는 기계가 스스로 학습을 통해 찾아내도록 하는 값인데, 여기서는 □, △ 를 가리키는 것 입니다.
즉, 인공신경망을 통해서 우리가 찾고자 하는 것인 weight 혹은 파라미터라고 부르기도 합니다.
기계는 어떻게 값을 찾을 수 있을까?
기계는 랜덤하게 정답을 찾을때까지 숫자를 넣어서 답에 가깝도록 찾습니다.
예를 들어 0.5, 0.5 넣어서 정답과 차이를 보고 차이를 반복하면서 점차 줄이는 것 입니다.
2. Perceptron
위에서 설명한것을 그림으로 다시 그려보면,
x1 ~ xn 까지 수많은 input data 가 있으며,
input data 와 weight 값을 곱해서 다 더 해주면 어떠한 값이 나옵니다.
그 값에서 activation function 조건을 붙여줘서 우리가 원하는 결과값 y 를 얻게 되는 과정 입니다.
지금 단계에서는 간단하게,
모든 값을 곱한 후 더해서 activation function 값을 통해서 y 값을 찾는다. 이정도 개념만 챙기면 됩니다.
간단한 예제를 보면,
퍼셉트론을 통해서 간단한 모델을 만들 수 있습니다.
위의 데이터를 통해서 다음날, 다음주에 판매량이 어떻게 될까? 라는 모델을 구할 수 있습니다.
다시 말하지만, weights 는 학습한 결과를 넣어서 모델이 완성 되는 것 입니다.
3. Deep Learning (딥러닝)
위의 예제에서 간단한 분류 작업을 통해서 이해를 했습니다.
위의 퍼셉트론을 겹치도록? 쌓으면 더 복잡한 문제를 해결할 수 있습니다.
아래 그림 처럼 퍼셉트론을 겹겹히 쌓아서 우리가 원하는 답을 얻을 수 있습니다.
위의 그림처럼 겹겹이 쌓은 형태의 퍼셉트론이 만들어지고, 우리는 아래와 같은 결과를 얻을 수 있습니다.
왼쪽 그림에서는 직선 형태의 분류밖에 되지 않았지만,
퍼셉트론을 겹겹히 쌓아서 오른쪽 같은 형태의 분류를 얻을 수 있습니다.
저는 딥러닝을 아래와 같이 정의하고 싶습니다.
퍼셉트론을 겹겹히 쌓은 것이 최소 2개 이상인 network 를 딥러닝이라고 정의 합니다.
그림에서 초록색 부분을 hidden layer 라고 하는데요. 단순히 1개층이 아닌 2개 히든 레이어를 더 쌓아서
강아지, 고양이를 분류하는 모델을 딥러닝이라고 말합니다.
'딥러닝 (Deep Learning) > [01] - 딥러닝 이란?' 카테고리의 다른 글
딥러닝 학습 순서 요약 (0) | 2024.08.09 |
---|---|
딥러닝 프레임워크 추천 (0) | 2023.01.01 |
딥러닝 이란? (1) | 2022.12.30 |
딥러닝은 학습을 어떻게 할까? (1) | 2022.02.20 |