데이터 분석/머신러닝 독학하기

머신러닝 단기집중과정 요점정리

Jerry Jun 2020. 12. 15. 14:35
728x90

머신러닝을 시작하기 전 용어에 대해 정리한다.

 

  • 라벨(labels) : 예측하는 실제 항목(y)
  • 특성(features) : 데이터를 설명하는 입력 변수(x)
  • 모델(models) : 특성과 라벨의 관계 정의.
    • 학습 - 모델을 만들거나 배우는 것
    • 추론 - 학습된 모델을 정의되지 않은 데이터에 적용하는 것. 예측.
  • 회귀 모델 - 연속적인 값을 예측한다.
    • ex) xx기업의 주식 가격이 얼마인가요?
  • 분류 모델 - 불연속적인 값을 예측한다.
    • ex) 이 사진은 강아지일까요, 고양이일까요?

 


주어진 데이터를 통해서 특성과 Y의 관계를 만드는 알고리즘을 만드는 것도 머신러닝이지만, 데이터의 특징을 찾아내는 함수를 만드는 것 또한 머신러닝이다.

machine learning
출처 : https://developers.google.com/machine-learning/crash-course/descending-into-ml/linear-regression?hl=ko

 

이 사진은 온도에 따라 귀뚜라미가 우는 빈도를 나타내었습니다.

다음과 같이 선형을 띄는 것을 볼 수 있고 이를 방정식으로 작성할 수 있습니다.

손실 함수1

  • y : 라벨을 의미한다.
  • w : 특성 1의 가중치. (기울기)
  • x : 특성 1
  • b : 편향(y절편).

 

사진에 보이는 빨간 점이 파란 선과 겹치지 않았다면 손실이 일어난 것이며 선과 점이 멀어진 거리가 손실의 크기가 됩니다. 손실모델의 예측이 얼마나 잘못되었는지를 나타냅니다. 그래서 모델을 만들 때 작은 손실을 만드는 것이 목표입니다. 선형 회귀 모델에서 손실을 파악할 수 있는 손실 함수가 존재합니다.

 

손실 함수

 

  • (x,y) : Example. [ x : 모델이 예측하는데 사용하는 특성 집합 / y : Example 의 라벨 ]
  • prediction(x) : 특성 집합 x 와 결합된 가중치 및 편향의 함수
  • D : 데이터 세트
  • N : D에 포함된 Example 의 수

이제 손실을 알아보았으니 머신러닝 모델이 어떻게 손실을 줄여나가는지 알아야 한다.

 

# 첫 번째 방법 : 반복 모델 학습

반복 모델 학습은 하나 이상의 특성을 입력하여 하나의 예측(y')을 출력합니다.

만약 최초 특성 값이 10 이라고 가정하고 w = 0, b = 0 이라고 생각하면 y' = 0 * 10 + 0 이 됩니다.

 

이후 머신러닝 시스템은 손실 함수의 값을 검토한 뒤, b 와 w 의 새로운 값을 생성합니다. 

그렇게 새로운 값을 생성하여 새 매개변수 값을 출력하는 과정을 손실 값이 가장 낮은 모델 매개변수를 발견할 때까지 반복합니다. 

 

 

 

# 두 번째 방법 : 경사하강법

그래프

경사하강법은 함수 값이 낮아지는 방향으로 독립 변수 값을 변형시키는 방법이다. 함수 값이 낮아지는 방향은 무엇을 뜻할까. 함수의 기울기가 낮아지는 방향으로 어느 특정 x 에서 x가 커질 수록 함수 값이 커진다면 양의 기울기 일 것이므로 음의 방향으로 옮기는 것이 답이 될 것이다. 

 

경사하강법에서는 step size 가 중요하다. 학습률이 너무 작을 경우 반복해야 하는 값이 많아져 학습 시간이 오래걸리고, 너무 클 경우 최소값에서 멀어질 수 있다. 

300x250