목차
안녕하세요. 오션라이트에이아이 백승기연구원입니다.
머리글
이번에는 머신러닝(Machine Learning, ML)에 대해서 좀 더 알아보도록 하겠습니다.
머신러닝이란?
머신러닝은 주어진 데이터의 상관관계를 컴퓨터가 학습한 후 그 결과를 토대로 새로운 데이터에 대한 관계를 예측하는 능력을 가지게 하는 것을 말합니다.
다음은 Tom Mitchell의 머신러닝에 대한 정의 입니다.
Tom Mitchell(1998) - Machine Learning is Well-Posed Learning Problem : A computer program is said to learn from experience E with respect to task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.
이 정의를 해석하자면 "컴퓨터 프로그램은 어떠한 작업(T)에 대한 경험(E)을 통해 학습하며 그 경험을 통해서 성능(P)을 향상시킬수 있다" 라고 할 수 있습니다.
머신러닝의 알고리즘 분류
머신러닝의 알고리즘은 크게 지도학습(Supervised Learning), 비지도학습(Unsupervised Learning), 강화학습(Reinforcement Learning)으로 나눌 수 있습니다.
지도학습이란 주어진 데이터(X)에 대한 레이블(Y)를 전부 제공한 뒤 학습하여 둘 사이의 상관관계를 찾아내고 새로운 데이터 X 에 대한 Y의 값을 예측하는 것을 말합니다.
비지도학습이란 데이터(X)는 제공하지만 그에 대한 레이블(Y)을 제공하지 않고 컴퓨터가 스스로 데이터들의 특성을 찾아내어 비슷한 특성끼리 묶어내는것을 말합니다.
강화학습이란 주어진 환경(Environment)에서 주체(Agent)가 더 높은 보상(Reward)를 위해 최적의 행동(Action)을 취해서 가중치와 편향을 학습해나가는 과정을 알고리즘으로 만든 것입니다.
지도학습(Supervised Learning)
그러면 지도학습에 대해서 자세히 알아보도록 하겠습니다.
지도학습은 크게 회귀와 분류로 나눌 수 있습니다.
회귀란 주어진 변수들(독립변수, 종속변수) 사이에서 나타내는 경향성을 찾아내는것을 말하며 데이터의 예측결과가 연속성을 지니고 있습니다.
분류는 주어진 변수들에 대한 상관관계가 범주형 변수로 나타날 때 사용합니다.
지도학습 - 회귀(Regression)
다음 예시를 통해 회귀에 대해서 조금 더 알아보도록 하겠습니다.
날짜(X1) | 요일(X2) | 온도(X3) | 커피판매량(Y) |
2023.10.01 | 일요일 | 25℃ | 40 |
2023.10.02 | 월요일 | 23℃ | 33 |
2023.10.03 | 화요일 | 29℃ | 60 |
2023.10.04 | 수요일 | 21℃ | 25 |
2023.10.05 | 목요일 | 30℃ | ? |
날짜, 요일, 온도의 데이터(X)에 대한 결과값(Y)를 분석하여 예측(Hypothesis)을 세우고, 예측을 토대로 새로운 데이터가 들어왔을 때의 예측값과 실제값의 오차를 비교하여 오차를 최소한으로 만드는 것이 회귀의 목적입니다.
위의 표와 같이 주어진 데이터에 대한 `결과값이 연속성을 띄고 있을때 회귀를 이용합니다.
좀 더 쉽게 알아보자면 주어진 데이터(X)에 대한 레이블(Y)의 상관관계를 파악하여 H(x)라는 가설을 세웁니다.
H(x) = Wx + b 라는 식을 세워서 보자면 W는 데이터 x에 적용하는 가중치(Weight)이며 b는 Y절편, 즉 편향치(bias)입니다.
해당 데이터에서는 W가 1이 되고 b는 0이 됩니다.
만약 새로운 데이터(X)에 4라는 값이 들어오면 H(4)는 4라는 결과를 예측하게 되고 실제 데이터(X)에 대하여 레이블(Y)값과 비교하여 오차를 줄여 H(x)식을 업데이트 해나갈 수 있습니다.
다음링크에서 단순회귀를 구현해 보도록 하겠습니다.
지도학습 - 분류(Classification)
분류란 주어진 데이터에 대하여 카테고리 간의 관계를 파악하여 새로운 데이터의 카테고리를 예측하는 과정입니다.
데이터에 대한 예측값이 연속성을 띄지않을 때 사용하며 결과값 또한 연속적인 수치가 아니라 카테고리로 나눌 수 있습니다.
분류는 참(True), 거짓(False)을 판단하는 이진분류(Binary Classification)와 3개 이상의 그룹을 분류하는 다중분류(Multiclass Classification)이 있습니다.
X(시험성적) | Y(등급) |
95 | A |
80 | B |
70 | C |
90 | A |
75 | C |
85 | ? |
다음 표와 같이 주어진 데이터(X)에 대하여 카테고리(Y)를 분석하여 가설을 세운 뒤, 새로운 데이터가 들어왔을 때 그 데이터에 대한 카테고리를 예측하는 것을 목표로 합니다.
각각의 분류 알고리즘에 대해서는 다음 글에서 더 자세히 알아보도록 하겠습니다.
마치며
이번글에서는 머신러닝과 그 종류에 대해서 알아보았습니다.
다음글에서는 분류 알고리즘의 종류에 대해서 자세히 알아보도록 하겠습니다.
'바삭한 인공지능' 카테고리의 다른 글
바삭한 인공지능(비지도 학습 / 강화학습) (0) | 2023.01.17 |
---|---|
바삭한 인공지능(분류알고리즘 종류) (0) | 2023.01.11 |
바삭한 인공지능(분산처리기술) (0) | 2023.01.11 |
바삭한 인공지능(빅데이터의 종류) (0) | 2023.01.11 |
바삭한 인공지능(인공지능과 빅데이터) (0) | 2023.01.11 |
댓글