딥러닝
딥러닝(deep learning)은 사물이나 데이터를 군집화하거나 분류하는데 사용하는 기술이다. 딥러닝은 머신러닝(machine learning)과 비교가 된다. 머신러닝은 많은 데이터를 컴퓨터에 입력하고 비슷한 것끼리 분류하는 기술이다. 딥러닝은 인공신경망(artificial neural network)의 한계를 극복하기 위해 고안된 기계학습 기법이다.
목차
개요[편집]
4차 산업혁명과 관련하여 인공지능, 로봇 등과 함께 자주 언급되는 용어로 머신러닝, 딥러닝이 있다. 개념적으로 보면 인공지능⊃머신러닝⊃딥러닝으로 표현할 수 있다. 인공지능은 인간의 학습능력, 추론능력, 지각 능력, 자연언어 이해 능력 등을 컴퓨터 프로그램으로 실현한 기술로 컴퓨터가 인간의 지능·행동을 모방할 수 있도록 한 것이다. 머신러닝(Machine Learning)은 기계학습이라고도 한다. 이는 인공지능을 가능케 하는 방법 가운데 하나이다. 컴퓨터가 데이터를 분석하고 스스로 학습하는 과정을 거치면 패턴을 인식할 수 있는 능력을 갖추는데, 이때 컴퓨터는 입력하지 않은 정보도 판단·결정을 한다. 이것이 기계학습이며 이러한 학습은 컴퓨터에 사람이 데이터를 입력해 학습을 하는 것이다. 사람이 학습을 시키는 머신러닝과는 달리 딥러닝은 스스로 학습하는 컴퓨터이다. 컴퓨터가 사람처럼 생각하고 배울 수 있도록 하는 기술이다. 주요 연구 결과로 2012년 구글의 딥러닝 프로젝트에서는 16,000개의 컴퓨터 프로세서와 10억 개 이상의 뉴런 네트워크와 심화신경망(DNN; deep neural networks)을 이용해 유튜브에 업로드 되어 있는 천만 개 넘는 비디오 중 고양이 인식에 성공했다.[1]
등장 배경[편집]
딥러닝은 1980년대에 캘리포니아 대학 심리학자와 컴퓨터 관련 학자들의 신경망 연구를 요약한 <PDP>라는 저서가 등장하면서 처음 제안됐다. 2004년 제프리 힌튼 교수가 새로운 딥러닝 기반의 학습 알고리즘 제한 볼츠만 머신(RBM; Restricted Boltzmann Machine)을 제안하면서 제대로 주목 받기 시작했다. 이어 드롭아웃이라는 알고리즘도 등장하여 고질적으로 비판받는 과적합 등을 해결할 수 있었다. [2]
인공신경망[편집]
딥러닝은 인공신경망의 한계를 극복하기 위해 제안된 기계학습법이다. 인간의 뇌에서는 감각기관에서 받아들인 정보가 뉴런을 통해 뇌에 전달된다. 이후 뇌는 종합, 판단해 다시 명령을 내린다. 이 과정에서 여러 개의 뉴런이 연결되면서 복잡한 연산 등을 수행한다. 이와 같은 두뇌의 정보처리 과정을 모방해서 만든 알고리즘이 인공신경망이다. 인공신경망은 인간이 사고하는 것처럼 개체의 대략적인 특징값을 산출하며 이를 반복하면 기계는 스스로 특징값을 산출해 정보를 늘려간다. 또한 세세한 규칙을 지정해 줄 필요 없이 스스로 특징들을 학습하기에 인간의 번거로움을 덜어준다.[3]
딥러닝의 종류[편집]
기존의 딥러닝은 과적합이라는 문제점이 있었다. 중간층을 늘려 정답의 정확도를 높일 수는 있었지만 중간층을 마구잡이로 늘렸을 경우 미지의 데이터에 대한 정확도가 떨어지는 현상이 발생했다. 이는 범용성의 부재를 낳았으며, 딥러닝의 정체기를 가져왔다.
합성곱 신경망[편집]
딥러닝의 과적합 문제의 해결책으로 합성곱 신경망이 제안되었다. 회선 신경망(CNN(Convolutional Neural Network))이라고도 불린다. 중간층이 많아지면서 아무 관계 없던 정보들 사이의 결합이 늘어나게 되어 과적합이 생겼다. 합성곱 신경망은 오차역전파법을 사용하여 과적합을 해결했다. 오차역전파법은 컴퓨터가 내놓은 답이 사용자가 기대했던 수치와 동떨어진 경우 그 오차를 역방향으로 분석해 오류를 정정해 오류를 줄이는 방법이다. 합성곱 신경망은 이미지를 이해해 높은 수준의 추상화된 정보를 추출하거나 새로운 질감을 가진 그림을 그리는 등의 다양한 영상 처리, 컴퓨터 비전 분야에서 많이 연구되고 있다.[3]
순환 신경망[편집]
최근에는 합성곱 신경망 대신 순환신경망(RNN; Recurrent Neural Network)이 주목받고 있다. 기존의 신경망은 움직임이 없거나 적은 데이터인 정적 데이터를 취급하는데 용이했다. 그러나 현재 우린 동적 데이터 취급이 필요해졌으며 순환 신경망은 시간적 분석을 가능하게 만들어준다. 이는 동적 데이터와 호환되는 딥러닝이다.[3]
머신러닝과 딥러닝의 차이[편집]
예시[편집]
예시를 들어 사람이 개와 고양이 이미지를 보고 판단할 수 있는 능력을 컴퓨터가 처리한다고 생각했을 때 머신러닝과 딥러닝 그 접근의 차이를 구분할 수 있다.
- 머신러닝의 경우
머신러닝의 경우 주어진 소재를 인간이 먼저 처리한다. 이미지의 경우 사람이 학습 데이터를 알맞게 분류를 하는 등 컴퓨터가 인식할 수 있도록 사전 작업과정을 거친다. 컴퓨터는 사람이 입력한 데이터를 축적하고 이를 바탕으로 이미지의 특징을 종합해 답을 도출한다. 즉 머신러닝은 각 그림의 특징을 인간이 사전 데이터 작업처리를 해 컴퓨터에 인식시키고 학습시킴으로서 문제를 해결해 나가는 기술이다.
- 딥러닝의 경우
딥러닝의 경우 머신러닝과 달리 인간이 사전 데이터 작업 처리하는 과정이 생략된다. 개와 고양이를 분석하기 위해 딥러닝 알고리즘 중 합성곱 신경망을 이용해 이 알고리즘에 데이터(이미지)를 주면 스스로 분석한 후 답을 도출한다. [4]
사용법의 차이[편집]
- 딥러닝은 많은 양의 데이터를 계산 처리하는 연산 능력이 높은 GPU 등의 하드웨어가 필요하다. 그렇지 않은 경우에는 머신러닝을 선택하면 된다.
- 머신러닝은 학습시킬 때 수많은 등급 분류를 사용할 수 있다. 또한 최적의 답을 도출하기 위해 어떤 특징을 이용하는가에 대한 선택도 가능하며 목적에 따라 접근 방식을 달리 선택할 수 있는 장점이 존재한다. 머신러닝은 자신의 연구를 포함할 수 있으며 처리 시간이 짧다.
- 딥러닝은 이용자의 많은 지식과 노력 없이도 높은 정밀도를 얻을 수 있다. 그러나 높은 시스템 성능이 요구되고 처리 시간이 오래 걸린다. 이와 더불어 딥러닝은 높은 정밀도로 학습되기 위해서는 방대한 데이터가 필요하며 인간은 내부의 알고리즘을 이해할 수 없기 때문에 오류수정이 사실상 불가능하다.[4]
활용[편집]
- 딥러닝은 2016년 이세돌 9단과 바둑 대결을 펼쳤던 알파고에 적용됐다. 알파고는 스스로 바둑 기보를 보고 바둑 전략을 학습했다. 알파고들끼리 서로 바둑을 두며 바둑의 원리를 배우고 과거 바둑 경기들을 스스로 학습해 나가면서 배워나갔다.
- 현재의 딥러닝은 주로 데이터양이 방대하고 정확성을 요구하는 사진, 동영상, 음성 정보 등을 분류할 때 활용되고 있다.
- 페이스북은 딥러닝 기술을 적용해 2014년 딥페이스라는 얼굴 인식 알고리즘을 개발했다.
- MS는 2014년 개 품종을 컴퓨터가 분류하는 딥러닝 기술을 공개했다.
- 국내 기업 네이버는 음성 인식을 비롯해 뉴스 요약, 이미지 분석 등에 딥러닝 기술을 적용하고 있다.[4]
각주[편집]
- ↑ 김길호, 〈딥러닝이란 무엇인가/(1)〉, 《SUALAB》, 2017-10-10
- ↑ 오원석, 〈딥러닝〉, 《블로터》, 2014-08-14
- ↑ 3.0 3.1 3.2 늘하늘가, 〈엔지니어+인공지능 #5-인공지능의 학습기술/머신러닝/신경망/딥러닝〉, 《네이버 블로그》, 2017-10-25
- ↑ 4.0 4.1 4.2 한국동서발전, 〈머신러닝-딥러닝 차이 이해가 쏙!〉, 《네이버 블로그》, 2018-11-05
참고자료[편집]
- 오원석, 〈딥러닝〉, 《블로터》, 2014-08-14
- 김길호, 〈딥러닝이란 무엇인가/(1)〉, 《SUALAB》, 2017-10-10
- 백봉삼 기자, 〈‘머신러닝-딥러닝’, 뭐가 다를까〉, 《ZDNetKorea》, 2017-08-07
- 한국동서발전, 〈머신러닝-딥러닝 차이 이해가 쏙!〉, 《네이버 블로그》, 2018-11-05
- 늘하늘가, 〈엔지니어+인공지능 #5-인공지능의 학습기술/머신러닝/신경망/딥러닝〉, 《네이버 블로그》, 2017-10-25
- 월급쟁이, 〈딥러닝의 30가지 적용 사례〉, 《brunch》, 2018-10-28
같이 보기[편집]