본문 바로가기

STUDY/부스트코스 - AI 엔지니어 기초 다지기

[AI 엔지니어 기초 다지기] 17일차

[24.02.14]

5주차 21차시 - 딥러닝 기초(2)

 

 

 

Neural Networks

 : 처음엔 인간의 뇌가 동작하는 방식을 모방한 컴퓨팅 시스템이었으나, 요즘 들어서는 인간 뇌의 동작 방식과 굉장히 많이 달라져 있음. 즉, 다시 정의하자면, 이 정도로 정의할 수 있겠다.

 

Neural networks are function approximators that stack affine transformations followed by nonlinear transformations.

가장 간단한 NN을 보자면, Linear Neural Networks가 있을 수 있다.

 

 

Linear Neural Networks

선형회귀 문제. w와 b를 업데이트 해야 한다(경사하강법)
w의 편미분
b의 편미분

 

w와 b 업데이트. step size가 중요한 요소다.

 

 

이런 신경망Neural Network을 여러 층을 쌓는 것이 딥러닝Deep Learning인데, 그냥 NN만 무작정 쌓는다고 다 DL인가?

=> 아니다! NN만 무작정 쌓는 것은, 결국 그냥 여러 행렬의 곱으로 표현되는 하나의 NN과 다를 바 없다.

여러개의 신경망? 하나의 신경망?

 

그럼 어떻게 쌓아야 하는가??

=> 만들고자 하는 network의 표현력이 최대화되게끔

=> 한번의 선형변환 후(신경망을 쌓은 후), 활성화 함수Activation function를 통해 비선형으로 바꿔 준 후(nonlinear transformation),

=> 이렇게 얻어진 벡터를 다시 선형변환 하고, 다시 비선형 변환 하고, ...

=> 위의 과정을 반복하는 것이다.

여러 활성화 함수들.

 

 

 

Multi-Layer Perceptron(MLP)

: 2층 이상의 신경망을 쌓은 것

2층짜리 MLP

 

물론 3층, 4층, ... 쌓을 수 있다.

MLP