Computer Security

#1 머신러닝과 딥러닝 차이점과 머신러닝이란? 본문

딥러닝&머신러닝

#1 머신러닝과 딥러닝 차이점과 머신러닝이란?

쿠리 Kuri 2022. 7. 3. 18:30

딥러닝 ⊂ 머신러닝 ⊂ 인공지능 포함관계로 한 번에 설명될 수 있다.
즉, 인공지능이 가장 넓은 개념이고 그 다음으로 머신러닝 딥러닝 순이다.

인공지능(Artificial Intelligence)

- 인공지능은 학습, 추론 능력, 패턴 인식 등과 같이 주로 인간 지능과 관련된 능력을 인공적으로 구현하는 컴퓨터 공학 분야다. 
- 기존 알고리즘은 사람이 직접 수신하는 입력값들에 대해서만 출력을 정의하는 규칙을 설정하는 반면, AI 알고리즘은 자체적으로 시스템을 구축할 수 있다.

머신러닝(Machine Learing)

- 인공지능에 속해 있는 머신러닝은 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야다.

-사람이 학습할 데이터를 직접 제공하지만 더 나은 예측을 위해 알고리즘을 통해 일일이 명시하지 않은 동작도 학습하고 실행한다.

딥러닝(Deep Learing)

- 인공신경망을 사용하여 머신러닝 학습을 수행하는 것이다.

-사람이 학습할 데이터를 직접 제공하지 않아도 스스로 학습하고 예측합니다.

 

머신 러닝이란?

기계 학습 또는 머신 러닝은 경험을 통해 자동으로 개선하는 컴퓨터 알고리즘의 연구이다. 

인공지능의 한 분야로 간주된다. 

컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이다.

가령, 기계 학습을 통해서 수신한 이메일이 스팸인지 아닌지를 구분할 수 있도록 훈련할 수 있다.

기계 학습의 핵심은 표현(representation)과 일반화(generalization)에 있다.

표현이란 데이터의 평가이며, 일반화란 아직 알 수 없는 데이터에 대한 처리이다.

이는 전산 학습 이론 분야이기도 하다.

다양한 기계 학습의 응용이 존재한다. 

 

 

머신러닝의 알고리즘 유형

 

지도 학습 (Supervised Learning)

훈련 데이터(Training Data)로부터 하나의 함수를 유추해내기 위한 기계 학습(Machine Learning)의 한 방법이다.

훈련 데이터는 일반적으로 입력 객체에 대한 속성을 벡터 형태로 포함하고 있으며 각각의 벡터에 대해 원하는 결과가 무엇인지 표시되어 있다.

이렇게 유추된 함수 중 연속적인 값을 출력하는 것을 회귀분석(Regression)이라 하고 주어진 입력 벡터가 어떤 종류의 값인지 표식하는 것을 분류(Classification)라 한다.

지도 학습기(Supervised Learner)가 하는 작업은 훈련 데이터로부터 주어진 데이터에 대해 예측하고자 하는 값을 올바로 추측해내는 것이다.

이 목표를 달성하기 위해서는 학습기가 "알맞은" 방법을 통하여 기존의 훈련 데이터로부터 나타나지 않던 상황까지도 일반화하여 처리할 수 있어야 한다.

사람과 동물에 대응하는 심리학으로는 개념 학습(Concept Learning)을 예로 들 수 있다.

 

 

비 지도 학습(Unsupervised Learning)

데이터가 어떻게 구성되었는지를 알아내는 문제의 범주에 속한다.

이 방법은 지도 학습(Supervised Learning) 혹은 강화 학습(Reinforcement Learning)과는 달리 입력값에 대한 목표치가 주어지지 않는다.

자율 학습은 통계의 밀도 추정(Density Estimation)과 깊은 연관이 있다.

이러한 자율 학습은 데이터의 주요 특징을 요약하고 설명할 수 있다.

자율 학습의 예로는 클러스터링(Clustering)을 들 수 있다. 또 다른 하나의 예로는 독립 성분 분석(Independent Component Analysis)이 있다.

 

 

준 지도 학습(영어: Semi-Supervised Learning)

기계 학습(Machine Learning)의 한 범주로 목표값이 표시된 데이터와 표시되지 않은 데이터를 모두 훈련에 사용하는 것을 말한다.

대개의 경우 이러한 방법에 사용되는 훈련 데이터는 목표값이 표시된 데이터가 적고 표시되지 않은 데이터를 많이 갖고 있다.

이러한 준 지도 학습은 목표값이 충분히 표시된 훈련 데이터를 사용하는 지도 학습과 목표값이 표시되지 않은 훈련 데이터를 사용하는 자율 학습 사이에 위치한다.

많은 기계 학습 연구자들이 목표값이 없는 데이터에 적은 양의 목표값을 포함한 데이터를 사용할 경우 학습 정확도에 있어서 상당히 좋아짐을 확인하였다.

이러한 훈련 방법이 사용되는 이유는 목표값을 포함한 데이터를 얻기 위해서는 훈련된 사람의 손을 거쳐야 하기 때문이고 그 비용이 감당할 수 없을만큼 클 수 있기 때문이다.

따라서 그러한 경우 준 지도 학습을 사용하여 결과를 향상 시킬 수 있다.

 

준 지도 학습의 예로는 상호 훈련을 들 수 있다.

이것은 두개 이상의 학습기 각각이 예제를 통해 훈련되는 방법이며 학습기가 사용하는 예제의 특성은 각각 다르며 독립적이다.

그 이외의 접근으로는 특징점과 목표값의 결합 분포를 모델링 하는 것이다.

목표값이 없는 데이터에 대해서는 목표값을 '잃어버린 데이터' 로 처리한다.

이러한 방법에서는 EM 알고리즘을 모델의 우도를 최대화 하기 위해 사용한다.

 

※EM 알고리즘이란?

기댓값 최대화 알고리즘(expectation-maximization algorithm, 약자 EM 알고리즘)은 관측되지 않는 잠재변수에 의존하는 확률 모델에서 최대가능도(maximum likelihood)나 최대사후확률(maximum a posteriori, 약자 MAP)을 갖는 모수의 추정값을 찾는 반복적인 알고리즘이다.

EM 알고리즘은 모수에 관한 추정값으로 로그가능도(log likelihood)의 기댓값을 계산하는 기댓값 (E) 단계와 이 기댓값을 최대화하는 모수 추정값들을 구하는 최대화 (M) 단계를 번갈아가면서 적용한다.

최대화 단계에서 계산한 변수값은 다음 기댓값 단계의 추정값으로 쓰인다.

 

 

강화 학습(Reinforcement learning)

행동심리학에서 영감을 받았으며, 어떤 환경 안에서 정의된 에이전트가 현재의 상태를 인식하여, 선택 가능한 행동들 중 보상을 최대화하는 행동 혹은 행동 순서를 선택하는 방법이다.

이러한 문제는 매우 포괄적이기 때문에 게임 이론, 제어이론, 운용 과학, 정보 이론, 시뮬레이션 기반 최적화, 다중 에이전트 시스템, 떼 지능, 통계학, 유전 알고리즘 등의 분야에서도 연구된다.

운용 과학과 제어 이론에서 강화 학습이 연구되는 분야는 "근사 동적 계획법"이라고 불린다.

또한 최적화 제어 이론에서도 유사한 문제를 연구하지만, 대부분의 연구가 최적해의 존재와 특성에 초점을 맞춘다는 점에서 학습과 근사의 측면에서 접근하는 강화 학습과는 다르다.

 경제학과 게임 이론 분야에서 강화 학습은 어떻게 제한된 합리성 하에서 평형이 일어날 수 있는지를 설명하는 데에 사용되기도 한다.

강화 학습에서 다루는 '환경'은 주로 마르코프 결정 과정으로 주어진다.

마르코프 결정 과정 문제를 해결하는 기존의 방식과 강화 학습이 다른 지점은, 강화 학습은 마르코프 결정 과정에 대한 지식을 요구하지 않는다는 점과, 강화 학습은 크기가 매우 커서 결정론적 방법을 적용할 수 없는 규모의 마르코프 결정 과정 문제를 다룬다는 점이다.

강화 학습은 또한 입출력 쌍으로 이루어진 훈련 집합이 제시되지 않으며, 잘못된 행동에 대해서도 명시적으로 정정이 일어나지 않는다는 점에서 일반적인 지도 학습과 다르다.

대신, 강화학습의 초점은 학습 과정에서의(on-line) 성능이며, 이는 탐색(exploration)과 이용(exploitation)의 균형을 맞춤으로써 제고된다.

탐색과 이용의 균형 문제 강화 학습에서 가장 많이 연구된 문제로, 다중 슬롯 머신 문제(multi-armed bandit problem)와 유한한 마르코프 결정 과정 등에서 연구되었다.

 

'딥러닝&머신러닝' 카테고리의 다른 글

#2 딥러닝이란?  (0) 2022.07.04
Comments