본문 바로가기

딥러닝/컴퓨터 비전

[컴퓨터 비전] 딥러닝

반응형

img

딥러닝?

Deep learning (also known as deep structured learning or hierarchical learning) is part of a broader family of machine learning methods based on learning data representations, as opposed to task-specific algorithms.

>wiki

http://blogs.nvidia.co.kr/wp-content/uploads/sites/16/2016/08/postfiles8.naver_.png

AI는 인간의 지능과 유사한 특성을 가진 복잡한 컴퓨터를 만드는 광범위한 영역을 가리킨다. 머신 러닝은 알고리즘을 이용해 데이터를 분석하고, 분석을 통해 학습하며, 학습한 내용을 기반으로 판단이나 예측을 하는, AI 분야의 한 부분이다. 딥 러닝은 머신 러닝의 한 분야로 다계층 구조를 이용해 스스로 데이터 속에서 유용한 특징을 찾아 판별해내는 알고리즘이다. 기존 머신러닝과는 다르게 인간 고유의 영역, 이미지 분석, 언어 인식과 같은 직관적이고 고차원적인 사고를 요하는 분야에 강점이 있다.

딥러닝은 머신러닝의 한 분야인 인공 신경망(Artificial Neural Network) 기술의 집합이다. ANN은 인간의 뇌를 모델로 하여 정보를 서로 전달하는 노드들의 연결로 구성된다. 이제 딥러닝에서 사용되는 용어를 알아보고 딥러닝이 어떻게 기능하는지 알아보자.

퍼셉트론

뇌세포의 전기적인 행동에서 힌트를 얻어 단순하게 만든 모델이다. 신경망최소 단위의 구성요소라고도 할 수 있는 중요한모델이다.

perceptron

퍼셉트론은 그림처럼 입력층과 출력층만으로 구성된 회로이다. 여러개 입력된 정보에 대해 가중치를 부여하고 그 합을 계산하여 출력 정보를 생성한다. 여기서 퍼셉트론의 가중치는 훈련 과정에서 결정되며 훈련 데이터를 기반으로 결정된다. 결국 학습이란 것은 이 퍼셉트론의 가중치를 구해 원하는 함수를 얻어내는 것이다.

활성화 함수

활성화 함수를 통해 퍼셉트론 신호 출력 여부를 결정한다.
이러한 활성화 함수의 비선형 동작은 심층 신경망이 복잡한 함수를 학습하게 해준다. 대

시그모이드 함수

시그모이드는 미분 가능한 매끈한 형태의 계단 함수이다. 모든 값을 확률로 변환하는 데 유용하며 이진 분류에 사용할 수 있다.

sigmoid

다음 그래프에서 볼 수 있는 것 처럼 입력 값에 따라 0에서 1 사이의 출력 값이 발생한다. X에 대한 Y 값의 변화가 작기 떄문에 기울기가 소실될 것이다. 따라서 학습을 계속 진행하다 보면 변화가 점점 작아질 수 있다. 이러한 문제점을 해결하기 위해 ReLU 함수를 사용한다.

ReLU 함수

ReLU는 일부 뉴런을 무효화하며, 해당 뉴런은 신호를 출력하지 않는다.

relu

위의 그래프에서 보는것 처럼 입력 x에 따라 max(0, x)를 출력한다. 즉 입력이 0보다 작으면 0을, 그 이상일 경우 입력값을 그대로 출력한다. 또한 단순하기 떄문에 계산비용이 적으며 대부분의 광범위한 문제에 대해 효과적으로 동작한다.

소프트맥스

소프트맥스를 통해 신경망 출력의 총합이 1이 되도록 한다. 그렇게 함으로써 소프트맥스 함수의 출력 값을 확률 분포의 일부로 해석 가능하다. 이러한 점은 다중 클래스 분류 문제에 유용하다 .소프트맥스는 출력 값의 총합이 1이 되는 특징을 가진 활성화 함수이다. 출력을 모든 값의 합으로 나눠서 확률로 변환한다. 최적화를 위해 소프트맥스 확률과 one-hot 이코딩 사이에서 유클리드 거리를 계산할 수 있다.

출처
컴퓨터 비전과 딥러닝 : 텐서플로와 케라스를 사용한 전문 가이드 / 라쟈링가파 샨무갸마니 지음 ; 테크 트랜스 그룹 T4 옮김 / 에이콘 / 9791161752006
참고 블로그

반응형