본문 바로가기

Archived(IT)/배경지식_기술

Deep Learning(딥러닝)

Deep Learning 이란?
여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계 학습 알고리즘의 집합으로 정의되며, 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야

딥러닝의 사전적 정의는 위와 같다. 위와 같이 딥러닝은 머신러닝의 부분집합이다. 사실 기존 머신러닝 이론에서 크게 새로울 것이 없다고도 한다. 그럼에도 불구하고 딥러닝은 층(Layer)란 개념의 중요성이 확장된다. 층 또는 단계를 의미하는 Layer는 수학적 의미의 차원과 비교될 수 있다.

 이와 같은 클래스 A와 B는 하나의 직선으로 표현된다(엄밀히 말하면 한 직선의 연장선상에 다 표현할 수 있다). 이 때 두 클래스를 구분하려면 2차원의 새로운 식이 필요하게 되고 그러한 식이 다음과 같은 함수가 되는 것이다.

 딥러닝은 이와 같이 층(layer)이라고 표현되는 차원을 많이 만들어 보다 정확한 규칙을 만들어 나가는 것을 의미한다. 이런 방법을 층 기반 표현 학습(layered representation learning) 또는 계층적 표현 학습(hierarchical) 이라고도 할 수 있다. 이렇게 다중적으로 쌓인 층들을 신경망(Neutral Network)이라고 표현하며 이것이 딥러닝의 핵심이 되는 것이다. 

 

신경망(Neural Network, NN)

신경망이란 인간의 뇌가 가지는 생물학적 특성 중 뉴런의 연결 구조를 가리키며, 이러한 신경망을 본떠 만든 네트워크 구조를 인공신경망(Artificial Neural Network, ANN)이라고 부른다(AI 분야에서는 이를 그냥 신경망이라고도 표현한다).

 

인간의 뇌에는 약 1,000억 개의 수많은 뉴런 즉 신경세포가 존재하며, 하나의 뉴런은 다른 뉴런에게서 신호를 받고 또 다른 뉴런에게 신호를 전달하는 단순한 역할만을 수행한다. 하지만 인간의 뇌는 이러한 수많은 뉴런이 모여 만든 신호의 흐름을 기반으로 다양한 사고를 할 수 있게 되며, 이것을 컴퓨터로 구현하도록 노력한 것이 바로 인공신경망이다.

 

    

인공신경망은 여러 뉴런이 서로 연결되어 있는 구조의 네트워크이며, 입력층(input layer)를 통해 학습하고자 하는 데이터를 입력받게 된다. 이렇게 입력된 데이터들은 여러 단계의 은닉층(hidden layer)을 지나면서 처리가 이루어져 출력층(output layer)을 통해 최종 결과가 출력된다. 이러한 신경망을 3개 이상 중첩한 구조를 깊은 신경망(Deep Neural Network, DNN)이라고 부르며 이 개념이 딥러닝의 핵심 요소가 된다.

 

퍼셉트론(perceptron)

퍼셉트론(perceptron)이란 1957년 미국의 심리학자 프랑크 로젠블라트(Frank Rosenblatt)에 의해 고안된 인공신경망 이론을 설명한 최초의 알고리즘이다. 로젠블라트는 가장 간단한 퍼셉트론으로 입력층과 출력층만으로 구성된 단층 퍼셉트론(single layer perceptron)의 개념을 제안했다.

 

    

단층 퍼셉트론(single layer perceptron)이 동작하는 방식은 다음과 같다.

1. 각 노드의 입력치와 가중치를 서로 곱하여 모두 합한다.
2. 이렇게 합한 값을 활성화 함수가 가지고 있는 임계치(선택의 기준이 되는 값)와 서로 비교한다.
3. 만약 그 값이 임계치보다 크면 뉴런은 활성화되고, 만약 임계치보다 작으면 뉴런은 비활성화 된다.

이러한 단층 퍼셉트론에서 가중치와 임계치를 적절히 변경하면, 상황에 맞는 적절한 의사결정을 내릴 수 있게 된다. 또한, 단층 퍼셉트론을 여러 개 조합하면 더욱 복잡한 문제도 판단할 수 있게 되며, 이를 다층 퍼셉트론(MultiLayer Perceptron, MLP)이라고 부른다. 다층 퍼셉트론은 단층 퍼셉트론을 사용해서는 풀지 못하는 비선형 문제까지도 풀 수 있다. 일반적으로 인공신경망이란 이와 같은 다층 퍼셉트론의 조합이라 할 수 있다.

 

출처: TCP School, Keras, SUALAP