직선(또는 평면, 초평면 등)의 형태로 정의되는 러닝 모델을 특별히 선형 모델(linear model)이라고 부르며, 이는 가장 단순한 러닝 모델에 해당
이미지 인시 분야에서 선형모델을 쓰지 않는 이유
선형 모델은 가장 단순하고 (선형 모델로 학습이 가능한 데이터 집합에 한해서) 학습 속도가 빠르며 인간이 이해하기 쉬운 대신, 원 데이터 자체가 수많은 픽셀로 이루어져 있는 이미지와 같은 데이터의 경우에는 데이터의 복잡성을 선형 모델에 충분히 반영하는 것이 불가능하다.
그래서, 실제 이미지 인식 분야에서는 선형 모델 대신 인공신경망(artificial neural networks)과 같은 복잡성이 높은 러닝 모델을 사용한다. 이렇게 복잡성이 높은 신경망(neural networks) 구조를 러닝 모델로 사용하는 머신러닝 패러다임을 ‘딥러닝(deep learning)‘이라고 한다
퍼셉트론이란
입력 벡터 x=(x1,x2,...,xd)를 받아들인 뒤 각 성분에 가중치를 곱하는 선형 모델을 거쳐, 그 결과를 모두 합산한 후 활성화함수 σ(⋅)을 적용한 함수로 이루어진 모델이다. 전체 과정을 수행하는 이 선형 모델을 하나의 함수 h(⋅)로 나타낼 수 있으며, 이를 퍼셉트론(perceptron)이라고 부른다.
즉, 퍼셉트론은 선형 함수와 그 결과를 비선형 함수 활성화 함수까지 거치는 합성 함수라고 할 수 있다
활성화 함수
활성화 함수(Activation function)이란 입력된 데이터의 가중 합을 출력 신호로 변환하는 함수
다층 퍼셉트론이란
퍼셉트론은 세 개의 층으로 이루어진다. 입력 벡터가 자리잡는 층을 입력층(input layer), 최종 출력값이 자리잡는 층을 출력층(output layer), 입력층과 출력층 사이에 위치하는 모든 층을 은닉층(hidden layer)이라고 한다.
이 때 퍼셉트론을 기본 빌딩 블록으로 하여, 이런 패턴에 따라 2차원적으로 연결되어 구성되는 인공신경망의 일종을 특별히 다층 퍼셉트론(MLP: multi-layer perceptron)이라고 한다.
심층 신경망
다층 퍼셉트론에서 은닉층의 개수가 많아질수록 인공신경망이 ‘깊어졌다(deep)’고 부르며, 이렇게 충분히 깊어진 인공신경망을 러닝 모델로 사용하는 머신러닝 패러다임을 바로 딥러닝(Deep Learning)이라고 한다.
이 때 딥러닝을 위해 사용하는 충분히 깊은 인공신경망을 심층 신경망(DNN: Deep neural network)이라고 한다.
딥러닝 모델과 특징
모델 3가지 : 완전 연결 신경망, 컨볼루션 신경망, 순환 신경망
컨볼루션 신경망은 주로 이미지 처리
순환 신경망은 주로 자연어 처리에 사용
딥러닝의 강정
딥러닝은 ‘요인 표현 학습(feature representation learning)’ 능력을 가지고 있으며, 이는 원본 데이터로부터 최적의 성능을 발휘하는 데 사용될 수 있는 요인 표현 방법을 스스로 학습하고, 이를 기반으로 최적의 성능을 발휘하는 가중치를 더욱 효과적으로 찾는 능력을 말한다.
컨볼루션 신경망의 특징
컨볼루션 신경망의 낮은 층에 해당할수록, 이미지 상의 각 세부 영역에서의 경계, 명암, 색상 변화 등 저수준(low-level)의 특징들을 요인 표현으로 포착하는 경향을 보인다. 이렇게 위치 별 저수준 요인은, 컨볼루션 신경망의 높은 층으로 올라가면서 서로 가까운 것들끼리 조합되고, 좀 더 넓은 영역에서 고수준(high-level)의 특징들을 요인 표현으로 포착하는 경향을 보인다.
이렇게 낮은 층에서는 점, 선, 면과 같은 간단한 요인들을 추출하고, 점점 높은 층에 다다를수록 복잡한 요인들을 추출하며 최종적으로 이미지를 인식해나간다.
딥러닝의 약점
딥러닝 모델이 효과적으로 학습하기 위해서는 굉장히 많은 데이터가 필요하며, 학습 연산량이 매우 높아 학습 시간이 오래 걸린다는 것