본문 바로가기

개념 이론 수학

[인공 지능] 머신 러닝과 딥러닝의 차이

https://blogs.nvidia.co.kr/2016/08/03/difference_ai_learning_machinelearning/

Artificial Intelligence; AI

인공지능은 기계가 인간의 지능을 구현하는것, 

인간의 감각, 사고력을 지닌 채 인간처럼 생각하는 인공 지능을 ‘일반 AI(General AI)’라고 하지만, 현재의 기술 발전 수준에서 만들 수 있는 인공지능은 ‘좁은 AI(Narrow AI)’의 개념에 포함된다.

좁은 AI는 소셜 미디어의 이미지 분류 서비스나 얼굴 인식 기능 등과 같이 특정 작업을 인간 이상의 능력으로 해낼 수 있는 것을 특징으로 한다.

 

Machine Learning; ML

인공 지능을 구현하는 구체적 접근 방식으로 머신 러닝은 기본적으로 알고리즘을 이용해 데이터를 분석하고, 분석을 통해 학습하며, 학습한 내용을 기반으로 판단이나 예측을 하는 것. 궁극적으로는 의사 결정 기준에 대한 구체적인 지침을 소프트웨어에 직접 코딩해 넣는 것이 아닌, 대량의 데이터와 알고리즘을 통해 컴퓨터 그 자체를 ‘학습’시켜 작업 수행 방법을 익히는 것을 목표로 한다.

알고리즘 방식에는 의사 결정 트리 학습, 귀납 논리 프로그래밍, 클러스터링, 강화 학습, 베이지안(Bayesian) 네트워크 등이 포함된다.

머신 러닝 시스템의 한계로는 머신 러닝 시스템을 기반으로 정지 표지판의 이미지를 인식할 경우, 개발자는 물체의 시작과 끝 부분을 프로그램으로 식별하는 경계 감지 필터, 물체의 면을 확인하는 형상 감지, ‘S-T-O-P’와 같은 문자를 인식하는 분류기 등을 직접 코딩으로 제작해야 합니다. 이처럼 머신 러닝은 ‘코딩’된 분류기로부터 이미지를 인식하고, 알고리즘을 통해 정지 표지판을 ‘학습’하는 방식으로 작동된다. 

 

Deep Learning; DL

완전한 머신 러닝을 실현하는 기술로 딥 러닝은 인공 신경망(artificial neural network)에서 발전한 형태의 인공 지능이며, 뇌의 뉴런과 유사한 정보 입출력 계층을 활용해 데이터를 학습한다. 그러나 물리적으로 근접한 어떤 뉴런이든 상호 연결이 가능한 뇌와는 달리, 인공 신경망은 레이어 연결 및 데이터 전파 방향이 일정합니다.

(슈퍼컴퓨터를 기반으로 딥 러닝 개념을 증명하는 알고리즘을 병렬화하는데 성공했습니다. 그리고 병렬 연산에 최적화된 GPU의 등장은 신경망의 연산 속도를 획기적으로 가속하며 진정한 딥 러닝 기반 인공 지능의 등장)

 

ML과 DL의 차이

1. 데이터 의존도; Data dependecies

데이터 양에 따른 성능의 차이를 보인다. 머신러닝보다 딥러닝이 데이터에 대한 의존도가 높으며 작은 데이터의 양으로는 충분한 학습이 불가능하다.

2. 하드웨어 의존도; Hadware dependencies

일반 컴퓨터나 구글의 클라우드 기반 코랩을 사용했을경우 머신러닝의 경우 큰 문제가 없다, 딥러닝의 경우 고성능을 요하며 GPU가 필수(requirements) 이다. 딥러닝 알고리즘은 많은 양의 핼렬 곱셈(Matrix Multiplication)을 하는것이  기본이기 때문에 GPU;숫자계산을 담당하는 HW

 

3. 전처리 과정; Feature engineering

머신러닝의 경우 대부분의 feature는 전문가가 식별한 다음 직접 손으로 코딩하여 전처리 하는 과정을 필수로 요한다. 이 과정에 의해서 예측되는 값의 정확도가 크게 좌우됨.

반면 딥러닝 알고리즘은 High-level features를 학습하기 때문에 새로운 변수 추출이라는 작업을 줄여준다. 이는 머신 러닝 보다 좀 더 앞서 있는 특징이다.

 

4.문제 해결 방식; Problem Solving approch

머신러닝 = 문제를 여러개의 파트로 나눈후 각각에 대한 답을 구하고 그결과를 합치는 방법을 주로 채택

딥러닝 = 머신러닝과는 반대로 end-to-end 방식으로 문제 해결

 

5. 소요 시간; Execution Time

딥러닝 알고리즘은 train이 굉장히 오래걸린다. 반면 test에서의 시간은 훨씬 적은 시간이 소요됨.

반면 머신러닝에서 k-nearest neighbors와 같은 알고리즘의 경우 테이터가 클수록 테스트 시간이 길어진다. 보통의 머신러닝은 수 초 혹은 수 시간 정도로 비교적 적은 시간이 걸린다.

 

6. 해석력; Interpretability 

ML의 경우 decision tree와 같은 알고리즘을 통해서 예측 결과 값이 왜 채택되었는지 명확한 rule이 보여지고 제공되어 지기 때문세 해석하기 쉽고, '해석'이 특별히 필요한 부분에서는 Decision tree혹은 Linear regression, Logistic regression같은 알고리즘이 활용된다. 

DL의 경우 문제 해결은 한명의 사람이 한것과 유사할 정도로 뛰어 나지만, 왜 이 결과값이 채택 되었는지 알 수 없다. 수학적으로 어떤 노드가 활성화 되었는지는 알 수 있지만, 거기에 어떤 뉴런이 만들어 지고 이 렝어가 무엇을 하는지 알지 못한다(그래서 Hidden layers).

따라서 결과를 '해석'하는 분야에는 ML을 사용하는것이 좋고, 결과값이 일정하며 정확해야 하는경우 DL을 사용한다.

 

 

ref.

https://blogs.nvidia.co.kr/2016/08/03/difference_ai_learning_machinelearning/

 

인공 지능과 머신 러닝, 딥 러닝의 차이점을 알아보자 - NVIDIA Blog Korea

인공 지능과 머신 러닝, 딥 러닝의 차이점을 알아보자   세기의 바둑대전에서 구글 딥마인드의 인공지능 ‘알파고(AlphaGo)’ 프로그램이 한국의 이세돌 9단을 꺾었을 때, 알파고의 승리 배경을

blogs.nvidia.co.kr

 

https://brunch.co.kr/@itschloe1/8

 

딥러닝, 머신러닝의 차이점은?

딥러닝과 머신러닝은 이런 점이 다르다. | 개요 머신러닝(Machine learning)과 딥러닝(Deep learning)은 화두다! 언제부터인지 주위에 이 단어들을 쓰는 사람들을 굉장히 많이 보았을 것이고 들어봤을 것

brunch.co.kr