머신 러닝 (Machin Learning)

머신 러닝 (Machin Learning)

인공 지능의 한 분야로, 컴퓨터가 경험을 바탕으로 학습할 수 있도록 하는 알고리즘입니다.

머신 러닝은 데이터로부터 결과를 찾는 것에 초점을 맞추는 것이 아니라, 주어진 데이터로부터 규칙성을 찾는 것에 초첨을 두고 있습니다.

입력과 출력을 미리 매핑 시켜 데이터셋을 만들고, 조건문을 이용하여 입력에 대한 출력을 반환하는 하는 프로그램도 인공 지능이라고 할 수 있습니다.

심심이와 같은 프로그램이 이에 해당 됩니다. 하지만 심심이는 주어진 데이터셋에 존재하지 않는 입력을 받았을 때,

올바른 출력을 반환할 수 없습니다.

반면에 머신 러닝을 통해 규칙성을 찾게 되면, 이후에 새로운 입력에 대한 출력과 유사한 정답을 찾아낼 수 있습니다.

머신 러닝은 기존의 프로그래밍 방식으로 접근하기 어려웠던 문제의 해결책이 될 수 있습니다.

머신 러닝 모델에는 KNN, 선형 회귀, 로지스틱 회귀, 소프트맥스 회귀, SVM, 의사결정트리, 랜덤 포레스트, 인공신경망 등이 있습니다.

본 포스팅에서는 지도 학습 중 선형 회귀로지스틱 회귀소프트맥스 회귀인공신경망만 언급합니다.

머신 러닝은 크게 지도 학습, 비지도 학습, 강화 학습 방법이 있습니다.

지도 학습은 문제와 정답을 기반으로 학습하는 방법으로, 훈련 데이터에서 함수를 추론하는 것입니다.

지도 학습 방법은 회귀, 분류 분석이 있습니다.

회귀 분석은 연속적인 값을 예측하는 것으로 주택 가격, 온도, 시험 성적 등이 있습니다.

분류 분석은 이산적인 값을 예측하는 것으로 성별, 혈액형, 신용 등급 등이 있습니다.

비지도 학습은 정답 없이 문제만으로 학습하는 방법입니다.

비지도 학습 방법은 군집화, 차원 축소 분석이 있습니다.

강화 학습은 이후 포스팅에서 언급하도록 하겠습니다.

Fig 1. Machine Learning

from : scimonitors.com/인공지능-알고리즘-유형별-개념-정리/

선형 회귀 (Linear Regression)

보통 집의 평수에 따라 집의 가격에 영향히 있습니다. 이것은 어떤 요인(집의 평수)이 특정 요인(집의 가격)에 영향을 주고 있다고 말할 수 있습니다.

여기서 어떤 요인을 독립 변수 x, 특정 요인을 종속 변수 y라고 할 때,

연속적인 종속 변수 y와 한 개 이상의 독립 변수 x0, x1, .. xn 사이의 관계를 모델링하는 것을 선형 회귀 분석이라고 합니다. 독립 변수 x가 1개라면 단순 선형 회귀 분석이라고 하며, 2개 이상일 경우 다중 선형 회귀 분석이라고 합니다.

집의 가격을 예측할 때 집의 평수만 고려한다면 단순 선형 회귀 분석(독립 변수 1개)이라고 하며, 집의 평수와 지하철역과의 거리 등을 고려한다면 다중 선형 회귀 분석(독립 변수가 여러 개)이라고 합니다.

아래 그림처럼 훈련 데이터를 기반으로 함수(y = wx + b)를 만들고 새로운 입력에 대한 출력을 만들어내는 것이

바로 선형 회귀 분석 모델입니다.

Fig 2. Linear Regression

로지스틱 회귀 (Logistic Regression)

이름은 회귀지만, 실제로는 이진 분류 분석 방법입니다. 선형 회귀랑 비슷하지만 활성화 함수와 손실 함수가 다릅니다.

선형 회귀는 활성화 함수로 계단 함수를, 손실 함수로 평균제곱오차(MSE)를 사용하지만

로지스틱 회귀는 활성화 함수로 시그모이드 함수를, 손실 함수로 크로스엔트로피(Cross-Entropy)를 사용합니다.

Fig 3. Linear Regression and Logistic Regression Comparison

소프트맥스 회귀 (Softmax Regression)

소프트맥스 회귀는 로지스틱 회귀와 같이 분류 분석 방법입니다. 차이점은 소프맥스 회귀는 다중 분류 방법이라는 점입니다.

로지스틱 회귀는 시그모이드 함수를 이용하여 0과 1사이의 값을 임계값(0.5)을 기준으로 분류할 수 있지만, 3개 이상으로 분류하기는 어렵습니다.

반면에 소프트맥스 회귀는 분류한 출력 값의 합이 1이 될 수 있도록 활성화 함수로 소프트맥스 함수를 사용합니다.

그렇기 때문에 확률을 이용하여 다중 분류가 가능합니다.

아래 그림에서는 x1, x2, x3, x4 입력에 대한 결과는 setosa 입니다.

Fig 4. Softmax Function

from : wikidocs.net/35476

인공 신경망 (Artificial Neural network)

인공 신경망은 생물학의 신경망에서 영감을 얻은 통계학적 학습 알고리즘입니다.

사람이 무엇인가 학습할 때, 뇌 신경망 뉴런의 모습처럼 기계가 학습하겠다는 것입니다.

Fig 5. Neuron

인공 신경망은 회귀 분석 모델과 굉장히 비슷합니다. 차이점은 인공 신경망에는 은닉층(hidden layer)가 존재한다는 점입니다.

회귀 분석은 입력값이 출력값에 어떻게 영향을 주는지 식을 통해 설명이 가능하지만 인공 신경망은 은닉층이 깊어질수록 설명하기 어렵습니다.

하지만 결과적으로 정확도는 더 높게 나오고 있습니다.

이런 특징들로 최근에는 설명 가능 인공지능(XAI)이 주목 받고 있습니다.

인공 신경망에 대한 자세한 이야기는 딥 러닝 파트에서 다루도록 하겠습니다.

Fig 6. Regression Model
Fig 7. Neural Network Model

Leave a Comment