hmk run dev

딥러닝의 개념 본문

Deep Learning

딥러닝의 개념

hmk run dev 2022. 5. 13. 09:07

인공지능 : 컴퓨터가 인간과 같이 생각할 수 있도록 만드는 기법을 연구하는 학문

 

머신러닝 : 데이터에 기반한 학습을 통해 인공지능을 구현하는 기법들을 지칭합니다.

 

딥러닝 : 머신러닝 기법 중 하나인 인공신경망(Artificial Neural Networks) 기법의 은닉층을 깊게 쌓은 구조를 이용해 학습하는 기법

 

 

 

머신러닝의 정의

 

명시적인 프로그래밍 없이 데이터를 이용해 컴퓨터가 어떤 지식이나 패턴을 학습하는 것

 

어떤 문제 T(task)에 관련된 경험 E(experience)으로부터 성과 측정 지표 P(performance measure)를 가지고 학습 L(learn)을 진행하는 컴퓨터 프로그램을 말한다.

 

 

ex) 어떤 이메일이 스팸인지 아닌지 분류하는 프로그램을 머신러닝 기법으로 만드는 상황으로 예시를 들어보자

 

T : 이메일이 스팸인지 아닌지 분류한다.

F : 스팸 필터가 레이블링 한 이메일이 스팸인지 아닌지를 관찰한다.

P : 이메일이 스팸인지 아닌지 정확히 분류한 개수 혹은 비율

 

 

딥러닝의 정의

머신러닝 기법 중 하나인 인공신경망(Artificial Neural Networks) 기법의 은닉층을 깊게 쌓은 구조를 이용해 학습하는 기법

 

딥러닝 기법의 장점 

 

데이터의 특징을 단계별로 추상화를 높여가면서 학습할 수 있습니다. 얕은 은닉층은 점, 선, 면 같은 추상화 단계가 낮은 특징을 학습하고, 깊은 은닉층은 얼굴의 눈, 코, 입 추상화 단계가 높은 특징을 학습합니다. 사람의 경우, 추상화 단계가 높은 특징을 사용해서 판단하기 때문에 딥러닝을 사용할 경우 사람과 같은 고차원적 인지활동을 수행할 수 있습니다.

 

- 데이터의 특징을 단계별로 학습하기 때문에 딥러닝을 표현 학습(Represntation Leaning) 이라고도 부릅니다.

 

- 데이터의 특징을 잘 나타낼 수 있는 표현을 학습하는 것은 딥러닝뿐만 아니라 모든 머신러닝 알고리즘의 핵심

데이터의 특징을 잘 학습하면 학습한 특징을 이용해 알고리즘이 더 좋은 성능을 낼 수 있습니다.

 

- 머신러닝 외에 다른 정통적인 기법들은 데이터의 특징들을 연구자들이 고민을 통해서 제안한 알고리즘을 통해 추출

이렇게 추출한 특징을 연구자들의 손으로 추출했다고 하여 Hand-Crafted Feature(손으로 정제한 특징)라고 부릅니다.

 

- 이에 반해 머신러닝 알고리즘으로 추출한 특징은 학습과정에서 자동으로 특징이 추출되기 때문에 Learned Feature(학습된 특징)이라고 합니다.

 

 

딥러닝 알고리즘이 잘 동작하는 영역

이미지, 자연어 음성 등의 비 정형화된 대량의 데이터로부터 인식(Recognition)을 수행하는 문제 영역에 잘 동작.

 

 

지도 학습

- 정답 데이터가 존재하는 상황에서 학습하는 알고리즘.

> 입력 데이터 x와 그에 대한 정답 레이블 y의 쌍 (x, y)를 이용해서 학습하는 알고리즘

 

 

비지도 학습

- 정답 없이 인풋 데이터 x, y를 이용해 학습하는 알고리즘

 

- 지도 학습처럼 어떤 값에 대한 예측을 수행하는 것이 아닌 데이터의 숨겨진 특징을 찾아내는 것에 목적

 

- 비지도 학습으로 파악한 데이터의 숨겨진 특징을 원본 데이터 대신 지도 학습의 인풋 데이터로 활용해 지도 학습의 성능을 더욱 끌어올리는 용도로 많이 활용

 

- 대표적인 비지도 학습의 방법론으로는 주성분 분석이 있고 딥러닝에서 비지도 학습을 위해 많이 이 사용되는 구조는 오토 인코더입니다.

 

 

강화 학습

- 위 두 개의 학습 방법이 이미 주어진 정적인 상태에서 학습을 진행했다면 강화 학습은 에이전트가 주어진 환경에서 어떤 행동을 취하고 이에 대한 보상을 얻으면서 학습을 진행한다.

 

ex) 알파고 프로그램을 만들 때 바둑을 플레이하는 에이전트를 만들고 바둑에서 이기면 +1 지면 -1의 보상을 주면서 학습하는 경우

 

시뮬레이션을 할 수 있는 환경에서 직접 에이전트가 행동을 하고 동적인 상태에서 데이터를 수집하는 과정

'Deep Learning' 카테고리의 다른 글

딥러닝 이해하기  (0) 2022.05.15
Tensorflow 가설 정의, 손실함수 정의, 최적화 정의  (0) 2022.05.14
Comments