머신 러닝 및 딥 러닝


11

"Machine Learning"과 "Deep Learning"이라는 용어의 차이점으로 인해 약간 혼란스러워합니다. 나는 그것을 구글 검색하고 많은 기사를 읽었지만 여전히 나에게 명확하지 않습니다.

Tom Mitchell의 기계 학습에 대한 알려진 정의는 다음과 같습니다.

컴퓨터 프로그램은 경험으로부터 배울라고 E 일부 작업 클래스에 대한 T 및 성능 계수 P 의 태스크에서 성능 경우, T는 에 의해 측정되는, P , 경험으로 향상 E .

개와 고양이를 taks T 로 분류하는 이미지 분류 문제를 취하면 이 정의에서 ML 알고리즘에 개와 고양이의 이미지를 많이 제공하면 (경험 E ) ML 알고리즘이 방법을 배울 수 있음을 이해합니다 새 이미지를 개 또는 고양이로 구분합니다 (성능 측정 P 가 잘 정의 된 경우).

그런 다음 딥 러닝이 제공됩니다. 본인은 딥 러닝이 머신 러닝의 일부이며 위의 정의가 적용됨을 이해합니다. 작업 T 에서의 성능은 경험 E로 향상됩니다 . 지금까지는 괜찮아

이 블로그 는 머신 러닝과 딥 러닝에 차이가 있다고 말합니다. Adil에 따르면 차이점은 (전통) 기계 학습에서 기능을 직접 제작해야하는 반면에 딥 러닝에서는 기능을 학습한다는 것입니다. 다음 그림은 그의 진술을 명확하게합니다.

여기에 이미지 설명을 입력하십시오

(전통) 기계 학습에서 기능을 수작업으로 만들어야한다는 사실에 혼란스러워합니다. Tom Mitchell의 위 정의에서 이러한 기능은 경험 E 와 성능 P 에서 배울 수 있다고 생각합니다 . 기계 학습에서 무엇을 배울 수 있습니까?

딥 러닝에서는 경험을 통해 기능과 성능을 향상시키기 위해 기능과 서로 관련되는 방법을 배웁니다. 기계 학습 기능에서 수작업으로 제작해야하며 기능의 조합이 무엇을 배운다는 결론을 내릴 수 있습니까? 아니면 다른 것을 놓치고 있습니까?


2
이것은 Goodfellow Deep Learning 책 에서 잘 다루고 있습니다. 첫 번째 장에서 (소개).
hbaderts 2012 년

답변:


4

Himanshu Rai가 말한 것 외에도 딥 러닝은 신경망의 사용을 포함하는 하위 필드이며, 이러한 신경망은 레이어 간의 가중치를 수정하여 기본 분포를 배우려고합니다. 이제 딥 러닝을 사용한 이미지 인식의 경우를 생각해 봅시다. 신경망 모델은 계층으로 나뉘어져 있으며,이 계층은 가중치라는 링크로 연결되어 있으며, 훈련 과정이 시작될 때 각 계층은 가중치를 조정하여 각 계층이 일부 기능을 감지하려고 시도합니다. 주목할 요점은 레이어, 가장자리, 눈, 코 또는 얼굴을 감지하는 법을 배우도록 명시 적으로 지시하지 않는 것입니다. 모델은 기존 기계 학습 모델과 달리 그 자체를 학습합니다.


8

머신 러닝은 인공 지능의 하위 필드이므로 연구 분야에서 딥 러닝은 실제로 머신 러닝의 하위 필드입니다.

1) 비지도 기능 학습

개념적으로 " 전통적인 "(또는 " 얕은 ") 기계 학습과 딥 러닝 의 첫 번째 주요 차이점은 비지도 기능 학습입니다.

이미 알고 있듯이 " 전통적인 "기계 학습 모델 (예 : SVM, XGBoost ...) 교육 은 데이터에서 의미있는 정보를 선택하기 위해 적절한 사전 처리 및 신중한 기능 추출 후에 만 ​​가능합니다. 즉, 양호한 피처 벡터에는 레이블이 서로 다른 데이터 요소간에 고유하고 동일한 레이블이있는 데이터 요소간에 일관성있는 피처가 포함됩니다. 따라서 피처 엔지니어링은 전문가의 수동 피처 선택 프로세스입니다. 이것은 수행하는 데 매우 중요하지만 지루한 탁입니다!

비지도 기능 학습은 모델 자체가 교육을 통해 기능을 자동으로 선택하는 프로세스입니다. 서로 연결된 레이어로 구성된 신경망의 토폴로지는 낮은 수준의 데이터 표현을 높은 수준의 표현으로 매핑하는 훌륭한 속성을 갖습니다. 따라서 교육을 통해 네트워크는 데이터의 어느 부분이 중요하고 어떤 부분이 중요하지 않은지 를 " 결정 " 할 수 있습니다 . 이는 강력한 기능을 수동으로 선택하거나 엔지니어링하기가 어려운 Computer Vision 또는 Natural Language Processing에서 특히 흥미 롭습니다.

비지도 기능 학습, 학점 : Tony Beltramelli (사진 제공 : Tony Beltramelli)

예를 들어 고양이 그림을 분류한다고 가정 해 봅시다. Deep Neural Net을 사용하면 첫 번째 레이어에서 가중치 세트에 매핑되는 원시 픽셀 값을 입력 한 다음 마지막 레이어에서 일부 가중치를 허용 할 때까지이 가중치는 두 번째 레이어에서 다른 가중치에 매핑됩니다. 문제를 나타내는 숫자로 매핑하십시오. (예 :이 경우 고양이를 포함하는 그림의 확률)

Deep Neural Networks가 비지도 기능 학습을 수행 할 수 있다고해도 문제를 더 잘 표현하기 위해 기능 엔지니어링을 직접 수행 할 수 있습니다. 비지도 기능 학습, 기능 추출 및 기능 엔지니어링은 상호 배타적이지 않습니다!

출처 :

2) 선형 분리 성

Deep Neural Networks는 피처 공간을 구부려 피처를 선형으로 분리 할 수 ​​있도록 비선형 적으로 분리 할 수없는 일부 문제를 해결할 수 있습니다. 다시 한 번, 입력을 새로운 데이터 표현에 매핑하는 계층으로 구성된 네트워크 토폴로지 덕분에 가능합니다.

숨겨진 레이어는 데이터를 선형으로 분리 할 수 ​​있도록 표현을 학습합니다. Christopher Olah (사진 제공 : Christopher Olah)

출처 : http://colah.github.io/posts/2014-03-NN-Manifolds-Topology/

3) 통계적 불일치

마지막으로 심층 신경망은 일부 아키텍처에서 통계적 불변성을 보여주기 때문에 일부 도메인에서 기존 머신 러닝 알고리즘을 능가합니다 (예 : 컨볼 루션 신경망에 따른 공간적 통계 불일치 및 반복적 인 신경망에 대한 시간적 통계 불일치)

자세한 내용은이 Udacity 비디오를 확인하십시오 : https://www.youtube.com/watch?v=5PH2Vot-tD4


4

아인슈타인에서 영감을 얻은 "6 살짜리 아이에게 설명 할 수 없다면 스스로 이해하지 못한다."

위의 모든 대답은 잘 설명되어 있지만 기억하기 쉬운 추상적 차이를 찾고 있다면 내가 아는 가장 좋은 것이 있습니다.

주요 차이점은 머신 러닝은 데이터 만 요약하고 딥 러닝은 데이터를 생성하고 향상시킬 수 있다는 것입니다. 그것은 예측적일뿐만 아니라 생성 적이기도합니다.

출처. 물론 더 많은 것이 있지만 초보자에게는 너무 혼란 스러울 수 있습니다.


-3

좋아, 이렇게 생각해 선형 회귀 또는 임의 포리스트와 같은 기계 학습 알고리즘에서 알고리즘에 기능 세트와 대상을 제공 한 다음 비용 함수를 최소화하려고 시도하므로 새로운 기능을 배우지 않고 가중치 만 학습합니다. 이제 딥 러닝을 할 때 설정된 수의 단위를 가진 적어도 하나의 숨겨진 레이어가 있습니다. 이것은 이야기되고있는 기능입니다. 따라서 딥 러닝 알고리즘은 가중치 집합을 배우는 것이 아니라 그 과정에서 사용자가 제공 한 사소한 데이터의 복잡한 고급 기능인 숨겨진 단위의 값도 학습합니다. 따라서 바닐라 머신 러닝을 연습하는 동안 알고리즘 자체는 학습이 아니기 때문에 기능을 엔지니어링하는 능력에 많은 전문 지식이 있습니다. 나는 당신의 질문에 대답하기를 바랍니다.


또 다른 질문 : 예를 들어 CNN에서 기능 (또는 필터)이 가중치와 동일하지 않습니까?
user2835098

아니요, 컨볼 루션 레이어의 가중치이지만 컨벌루션에서 얻은 제품, 즉 피쳐 맵은 피쳐입니다.
Himanshu Rai

동의하지 않습니다. 숨겨진 변수는 임의의 포리스트 및 증폭 알고리즘에도 있습니다. 그리고 여전히 딥 러닝의 기능을 엔지니어링합니다. 2017 년 최고의 이미지 인식 알고리즘 중 하나에서 자르기 영역과 같은
keiv.fly
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.