본문 바로가기

머신 러닝5

6. 머신이 학습하는 알고리즘 (Gradient descent algorithm) 지난번에 Cost 함수에 대해서 알아보았습니다. 이번에는 Cost 함수를 minimizing 하기 위한 알고리즘에 대해서 알아보겠습니다.이 알고리즘의 이름은 Gradient descent algorithm이라고 합니다. 변역해서 이야기 하면 경사면을 하강하는 알고리즘이 되는데 실제로도 그렇습니다. 우리는 기본이 되는 linear regression에서 하나씩 살펴보고 있지만 실제로 이 알고리즘은 여러 다양한 분야에서 범용적으로 사용이 되는 알고리즘입니다. 중요하다는 뜻이 되겠습니다. Cost 함수를 minimizing하기 위한 방법중에 하나인 이 Gradient descent algorithm은 이미 알고 계시듯이 우리가 목표로 하는 직선을 찾기 위한 방법이되고 이를 머신이 학습한다고 표현합니다. 현재까.. 2016. 7. 5.
5. 결과 값을 비교하는 방식(Cost function) 우리는 Supervised 방식을 공부하고 있기 때문에 결과 값을 비교할 수 있습니다.왜냐하면 실제 정확한 결과 값을 알고 있기 때문입니다.이 결과 값을 비교할 수 있는 표현이 Cost입니다. 그리고 Cost를 수학적인 함수로 표현하는 것도 배우게 될 것입니다. 이전 내용에서 이어서h 함수를 일차방정식으로 표현할 수 있었습니다. ( h = Ax + B)여기서 A와 B를 Parameters라고 합니다. 이 파라미터가 결정이 되면 우리는 원하는 결과 값을 찾을 수 있게 됩니다. 그럼 이 파라미터 값은 어떻게 찾을 수 있을까요?바로 minimize를 해서 찾을 수 있습니다. 우리는 이미 결과 값을 알고 있기 때문에 실제 결과 값과 알고리즘이 수행하여 예측한 결과 값을 비교해서 그 차이를 구할 수 있는데, 이 .. 2016. 7. 4.
4. Supervised Learning - Regression 표현 이제 한걸음 들어가게 됩니다.앞에서 공부했던 Supervised Learning에서 regression 에 대한 예시를 가지고 이것을 수학적인 표현식으로는 어떻게 표현이 되는지를 보겠습니다. 집의 사이즈에 따라서 집의 매매가격의 변화하는 데이터를 그래프로 표현하면 아래와 같습니다.사이즈가 커지면 가격이 높아지니 선을 하나 그어볼 수 있을 것입니다.이 직선은 사이즈와 가격에 대한 변화를 아주 잘 나타내는 그래프이자 수학적으로는 일차방정식으로 표현이 됩니다. 데이터셋의 실제 데이터들을 하나씩 열어보면 아래와 같이 사이즈와 가격으로 구성이 된 정보들을 볼 수 있습니다.저기 지역에서는 사이즈가 2104 피트인 집이 460,000달러인가 봅니다. DataSet의 크기, 즉 데이터의 수량을 m으로 표현을 하고집의 .. 2016. 7. 3.
3. 머신이 학습하는 방식들 머신이 학습을 하는 방식은 Supervised Learning과 Unsupervised Learning의 2가지로 구분이 됩니다.이는 기초 데이터인 Dataset의 성격과 원하는 결과 값의 성격에 따라 다르게 사용이 됩니다. Supervised Learning 변역하면 지도식 학습 방법입니다.선생님이 학생을 교육하듯이 이미 답을 알고 있는 상태에서 학습을 하는 경우입니다.DataSet이 이미 결과 값을 포함하고 있어 머신이 학습을 수행하여 나온 결과 값이 얼마정도의 오차를 가지고 있는지 알수 있는 경우에 사용될 수 있습니다. 예를들어, 집의 사이즈에 따른 집의 가격을 분석한다면 우리는 이미 평수에 따른 가격이 어떻게 구성이 되는지를 알고 있습니다. 실제로 집이 거래된 가격도 정확하게 알 수 있습니다. 이.. 2016. 7. 3.
2. 개요와 히스토리 Machine Learning 머신 러닝의 기본 방식은 크게 3가지로 구성이 됩니다.분석하고자 하는 데이터를 기초로 머신이 학습 또는 task를 수행하게 되고 그 수행결과 값이 실제 값과 같은지를 판단하는 과정으로 진행이 됩니다. 여기에서 사용되는 기초 데이터를 Dataset 이라고 하며 데이터는 수량이 많고 다양할 수록 좋은 데이터가 될 것입니다. 이러한 데이터를 수집하는 단계가 있을 것입니다. 그리고 머신이 학습을 수행하는 단계에서 앞으로 공부하게 될 Algorithm 들이 적용이 될 것입니다. 이렇게 수행한 결과 값이 우리가 원하는 값이 되어야 하며, 실제 우리가 원하는 값과 비교를 하여 그 결과가 적절한 것인지 아닌지 여부를 측정하게 됩니다. 만약 원하는 값이 아니라면 수행을 계속 진행하거나 알고.. 2016. 7. 2.