AI/DEEP LEARNING

[DEEP LEARNING] 1. 딥러닝이란 무엇인가 ?

개발자 만두 2021. 10. 13. 02:06
728x90
반응형

✅ Deep learning이란 ?

[Deep learning > Representation Learning > machine learning > AI]

 

 

Deep learning은 머신러닝(machine learning)의 안에 들어가는 개념이다. 머신러닝(machine learning)은 쉽게 말해서 기계를 학습시키는 것이며 여기서의 학습은 인간 학습과는 다르다.

 

mitchell은 "한 컴퓨터 프로그램이 어떤 과제류 T에 속하는 과제들을 수행하며 그 수행의 성과를 측정한 측도가 P라고 할 때, 만일 어떤 경험 E 때문에 T의 성과 측도 P가 개선되었다면, 그 컴퓨터 프로그램은 경험 E로부터 학습한다고 말할 수 있다."라고 말했다.

 

즉 학습은 수학 수식을 개선하는 활동이라는 것이다. 그중에서도 Deep learning은 심층학습이라고도 하며 인간의 신경망을 수학 수식으로 구현한 것이라고 할 수 있다.

 

 

Deep learning 과정에는 Input Layer, Hidden Layer, Output Layer가 존재한다. Hidden Layer는 Black Box라고도 하며 인간은 그 안에서 어떤 과정이 일어나는지 유추하기 힘들다.

 

Input Layer부터 Output Layer까지 이어지는 계산식을 뉴런 또는 유닛, 계산관이라고 부른다.

 

이 모든 식은 y = wx + b의 꼴로 이루어져 있으며 w와 b값을 자동으로 찾아주는 것이 바로 Deep learning이다.

 

학습을 반복할수록 오차가 줄어들고 각각의 값이 정확해진다.

 

통계학적 지식인 최소제곱법을 사용해도 w와 b값을 구할 수 있지만 Deep learning 과정을 거치면 더 복잡한 계산을 할 수 있고 더 복잡한 패턴을 찾을 수 있다.

 

 

실제 과정은 데이터셋 선택에서부터 시작한다. 선택한 후 데이터를 전처리하고 목적에 맞게 데이터를 변환한다. 그 작업까지 거치고 나서야 비로소 Deep learning을 시작할 수 있다. 이 과정은 KDD분석 절차라고 검색하면 더 자세히 알 수 있고 여기서는 더 다루지 않기로 한다.

 

Deep learning을 시작하면 일단 모델을 생성하는데 이는 Input Layer, Hidden Layer, Output Layer 각각의 개수와 구조를 설정하는 일을 의미한다.

 

Hidden Layer는 1개 ~ 4개를 쌓아보고 정확도를 측정해 가장 성능이 좋은 개수를 사용하고, 노드는 100개 ~ 200개를 쌓아보고 같은 과정을 반복한다. 이렇게 하는 이유는 Hidden node의 설계에 대해 실무 지침이 될만한 결정적인 이론이 나오지 않았기 때문이다.

 

이후에 학습을 반복시키면서 오차를 줄여나가면 된다. 

 

 

모든 것에는 단점이 존재한다. Deep learning의 단점은 5가지 정도로 정리해볼 수 있다.

 

일단 많은 데이터가 필요하고 그 데이터가 신뢰할 수 있는 데이터인지 꼼꼼히 따져봐야 한다.

 

재현하기 힘들기 때문에 재활용이 힘들다.

 

그 외에도 충분히 투명하지 않고, 인과관계와 상관관계의 구분이 어려우며, 신뢰성 있는 엔지니어링이 어렵다는 단점이 있다.

728x90
반응형