2018년 1월 25일 목요일

정보 - AI, 머신러닝, 딥러닝




‘머신러닝-딥러닝’, 뭐가 다를까



지난해 ‘알파고 쇼크’ 이후 인공지능(AI)에 대한 관심이 커진 가운데, 자주 언급되는 AI 관련 용어가 바로 ‘기계학습’(머신러닝)과 ‘심층학습’(딥러닝)이다.
​
하지만 머신러닝과 딥러닝의 차이를 잘 모르거나, 혼동하는 사람이 적지 않다. 이에 두 기술 용어의 차이를 공학용 소프트웨어 ‘MATLAB’의 개발원인 매스웍스가 쉽게 해설한 유튜브 동영상이 관심을 모으고 있다.
​
머신러닝이나 딥러닝 모두 학습 모델을 제공해 데이터를 분류하는 데 사용되는 기술이다. 그 기능을 설명하는 데 있어 자주 사용되는 것이 개와 고양이 이미지를 분류하는 예시인데, 매스웍스가 공개한 동영상에서도 이 같은 방법을 들어 머신러닝과 딥러닝을 설명한다.
​
사람이 개와 고양이 이미지를 봤을 때 판별할 수 있는 것은 해당 이미지를 뇌에서 분석하고 특징을 확정 지은 뒤, 지식과 경험에 따라 판단하는 능력이 갖춰져 있기 때문이다.
이 같은 일을 컴퓨터로 처리하는 것이 머신러닝과 딥러닝의 목적이다. 하지만 둘 사이에는 접근의 차이가 존재한다.
​
머신러닝의 경우 주어진 소재를 우선 인간이 먼저 처리한다. 이미지의 경우 사람이 트레이닝 데이터를 알맞게 분류하는 등 컴퓨터가 인식할 수 있도록 해야 한다. 그 다음 컴퓨터가 데이터에 포함된 특징을 분석하고 축적하는 과정을 거친다. 마지막으로 컴퓨터가 축적된 데이터를 바탕으로 이미지의 특징을 종합해 답을 이끌어 내는 것이 머신러닝이다.
​
물체를 인식할 때나 정경을 인식해 물체를 검출할 때 머신러닝 기술을 사용할 수 있다.
​
즉 기계학습의 흐름을 보면 각 그림의 특징을 기계(컴퓨터)에 인식시키고 학습시킴으로써 문제를 해결하는 것이다.
​
딥러닝의 경우 인간이 하던 작업이 생략된다. 바탕이 되는 데이터를 그대로 주고, 딥러닝 알고리즘이 회선 신경망(Convolutional Neural Network, CNN)을 이용해 스스로 분석한 후 답을 내는 방식이 딥러닝이다.
​
CNN은 이미지를 이해하고 이로부터 높은 수준의 추상화된 정보를 추출하거나, 새로운 질감을 가진 그림을 그리는 등 다양한 영상처리, 컴퓨터 비전 분야에서 많이 연구되고 있는 인공신경망의 한 종류.
​
여기서 알아야 할 점은 딥러닝은 넓은 의미에서 머신러닝 개념에 포함된다는 것이다.
회선 신경망 작동 원리.
회선 신경망 작동 원리.
​
그렇다면 머신러닝과 딥러닝은 어떻게 다르게 사용될까.
​
딥러닝은 방대한 양의 데이터에 대한 계산 처리를 위해 연산 능력이 높은 GPU 등의 하드웨어가 필요하다. 따라서 하드웨어 영향이 있고 데이터양이 많은 경우에는 딥러닝을, 그렇지 않은 경우에는 머신러닝을 채용하는 것이 좋다.
​
머신러닝을 선택한 경우 학습 시킬 때 수많은 등급 분류를 사용할 수 있다는 옵션이 있다. 또 최적의 답을 도출하기 위해 어떤 특징을 이용하거나 하는 등의 선택을 할 수도 있다. 머신러닝의 경우 목적에 따라 접근 방식을 달리 선택할 수 있는 장점도 있다.
우수한 하드웨어와 많은 양의 데이터가 있다면 딥러닝을, 그렇지 못하다면 머신러닝을 선택하는 것이 좋다.
우수한 하드웨어와 많은 양의 데이터가 있다면 딥러닝을, 그렇지 못하다면 머신러닝을 선택하는 것이 좋다.
​
머신러닝의 경우는 자신의 연구를 포함시킬 여지가 남아 있고 처리 시간이 짧은 반면, 딥러닝은 이용자의 많은 지식과 노력 없이도 높은 정밀도를 얻을 수 있는 특징이 있다.
​
그러나 딥러닝의 경우 높은 시스템 성능이 요구되고 처리 시간이 오래 걸린다는 단점이 있다. 또 딥러닝을 높은 정밀도로 학습하기 위해서는 방대한 데이터가 필요할 뿐만 아니라, 내부의 알고리즘을 인간이 이해할 수 없기 때문에 오류수정(디버깅)이 사실상 불가능 하다.
​
즉 머신러닝과 딥러닝은 엄격하게 같은 머신러닝에 포함돼 있는 것이며 그 구분은 처리하는 데이터의 양, 하드웨어 성능, 그리고 구하고 싶은 결과의 내용에 따라 선택해야 하는 것이다.(▶관련동영상 보기)
머신러닝과 딥러닝 비교.
머신러닝과 딥러닝 비교.
딥러닝은 머신러닝 개념에 포함된다.
딥러닝은 머신러닝 개념에 포함된다.
​


출처 : http://www.zdnet.co.kr/news/news_view.asp?artice_id=20170807140504



댓글 없음:

댓글 쓰기

MSSQL - Cursor vs Temp Table

#테이블 변수사용의 예 use pubs go declare @tmptable table (     nid int identity(1,1) not null,     title varchar (80) not null ) -- 테이블 변수 선언 inse...