티스토리 뷰

머신러닝

머신러닝 기초

기루광 2017. 5. 17. 23:25

요즘은 어느 곳이든 머신 러닝이라는 말을 많이 사용합니다.

더 나아가 딥러닝이란 말도 사용하는데 정말 머신러닝이 무엇을까요?



대부분 사람은 아래 x와 그 결과가 나온 표를 보고는 f(10) 이 무엇이 될지 단박에 알아 냅니다.

어떻게 이런 일이 일어나고 있는 것일까요?


1. 입력과 출력의 데이터를 쭈욱 본다.

2. 출력에 연관된 함수(모델)을 몇가지 생각해본다.

3. 잘 들어맞는 함수를 찾아낸다.

4. 그 함수에 최종 10 값을 넣어 그 결과를 도출한다.



위 예를 가지고 용어를 정리해보도록 하겠습니다.

정답지가 주어져 있는 경우를 supervised 그렇지 않은 경우를 unsupervised  라고 합니다. 

unsupervised 우선 논외로 하고 위에처럼 정답지 데이터가 주어진 경우를 머신러닝에서는 supervised learning 이라고 합니다. 회사에서 많이 사용하는 엑셀에서의 추세선을 그리는 자체가 바로 supervised learning 이라고 말할 수 있습니다.




1. 입력과 출력의 데이터를 쭈욱 본다. --- train data

2. 출력에 연관된 함수(모델)을 몇가지 생각해본다. -- exponential , power ? 

3. 잘 들어맞는 함수를 찾아낸다. --  power 가 더 잘 맞네?  y=x^2

4. 그 함수에 최종 10 값을 넣어 그 결과를 도출한다.  -  10^2 = 100 



저희는 이미 실생활 뿐만 아니라 엑셀을 통해 많은 머신러닝을 이뤄내고 있었네요,,


이제 조금 더 머신러닝에 맞는 용어로 바꿔서 설명 하도록 하겠습니다.

1. 입력과 출력의 데이터 - train data ( 관찰된 데이터, 최종 함수를 찾기 위해 우리에게 주어진 값 )

2. 함수(모델) -  (크게 보면 classification /regression 모델로 분류가능 한데, 주어진건 regression(함수) 모델 )

3. 잘 들어맞는 함수를 찾아낸다. - (찾는 방법 fitting, optimization, 잘들어 맞는지 cost,error,residual)

4. 결과를 예측 (prediction)  -  10^2 = 100 


주어진 train data 를 통해서 분류하는 모델(classification) 또는 함수모델(regression) 인지 결정하여 모델을 가정(hypothesis) 합니다.  주어진 train data를 통해서 hypothesis 가 맞는지 하나씩 넣어보면서 hypothesis 값과 train data 들간의 차이를 계산합니다(cost, error, residual ...). 이과정을 통해서 hypothesis 의 파라미터( y =a x^2, a:parameter) 를 바꿔가면서 hypothesis 와 train data 의 차이가 최소가 되는 파라미터를 선정하게 됩니다. 이를 통해 최종 결정된 함수에 우리가 원하는 결과를 prediction 할 수 있습니다.


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함