본문 바로가기
ML

머신러닝의 정의 와 개념 및 원리 성능 향상

by AI미남홀란드 2022. 11. 9.
728x90

11.8 머신러닝 강의

 

머신러닝의 정의?

 

기계가 데이터의 상관관계를 학습한다. (X,Y의 상관관계의 폼) -> hypothesis 를 학습 시키는 것 

-> Weight를 학습시키는것 -> Cost가 가장낮을 때의 Weights를 찾는것

 

컴퓨터는 사람이 할 수 있는 직관력이 없기 때문에, 여러가지의 경우의 수 의 답이 나올 수 있다.

-> 그래서 우리가 그 답을 찾아주어야 한다. [기계가 하는 것은 (Weight) 찾기!]

 

❗️오차를 종합하는 것은 Cost 

 ↓낮으면 좋고, ↑높으면 좋지 않은데 머신러닝은 낮은 코스트를 찾기 위함이다. 

 

min A.  A: cost B: Weight       

    B

 

0️⃣단계 hypo 폼 결정

  y = W(1)x + W(2)

 

1️⃣단계 Weight 초기값 설정

y = ax + 3

 

2️⃣단계 Cost 확인 

높은지 낮은지 확인

 

3️⃣단계 Weight 업데이트

🔥방향 !(HOW) 

cost가 낮아지는 방향으로 가야!

 

Cost <—> Weight

관계, 즉 함수

 

기울기를 가지고 계산한다.

양수 -> weight 감소

음수 -> weight 증가

 

G  + W

G  - W 

 

  • 기울기가 양수이면 웨이트는 감소한다
  • 기울기가 음수이면 웨이트는 증가한다.

 

 wtt+1   Learning rate(학습률) 을 통하여 기울기에 곱해서 (작은수를) 줄인다.

 

머신러닝의 개념  : min cost weight

 

머신러닝의 원리 : Weight -  G(기울기)

 

머신러닝 성능개선  - 어떻게 성능을 향상시키는가

 

머신러닝 데이터가 10만개가 있다.

데이터를 몇개나 학습시킬 것 인가? 10만개 ? 그럼 무엇으로 정답을 ? (족보)

10만개의 데이터셋에서 쪼갠다

 

train  -> test 로 분할 하여 머신러닝 하여야 한다.

 

Train X , Test X -> Under Fit

Train O , Test O -> Fit 

Train O , Test X -> Over Fit

(오차 최소화, 경향화) 

 

⚡️언더핏, 오버핏의 해결(해소) 하는 기법을 찾는게 성능의 초점 

 

빨간데이터와 파랑데이터의 경계선을 찾을때 

선형적인 직선으로 찾으면 Under fit

-> 경계선이 데이터의 복잡도에 너무 단순하다

 

비선형적인 곡선으로 찾으면 Fit

 

 

⭐️ 데이터의 복잡도에 비해 모델의 복잡도가 단순하면 Under Fit  (데>모)

      데이터의 복잡도에 비해 모델의 복잡도가 복잡하면 Over Fit.   (데<모)

     

 -> 복잡도에 규제를 걸어 조화를 맞춘다!  

 

Tip .데이터를 올리고 내리는걸 전처리라고 한다.  (복잡도속마음 : 왜 나만 그래 데이터 조져)

 

[W(weight)의 크기] = 모델의 복잡도

* 모델 복잡도 : 복잡할수록 웨이트가 크고, 덜복잡할수록 웨이트가 작다.

벡터(크기)의 규정 : 각각의 크기를 제곱해서 더한다

 


Over Fit(데<모) Under Fit(데>모)
데이터 핸들링 데이터 복잡도▴
양▴, 차원 ▼
데이터 복잡도▼
모델 핸들링 모델의 복잡도 ▼
규제화
(오차(cost)재정의 + 모델복잡도) ▼
모델의 복잡도▴
규제화를 좀 낮춘다

 

문서분류

 

문서의 분류는 문서 내 정보를 바탕으로 문서의 라벨을 예측하는 작업

728x90

'ML' 카테고리의 다른 글

Entropy 는 무엇인가?  (0) 2024.03.06
(머신러닝) Soft Max 기법  (0) 2022.11.09
(머신러닝) 로지스틱 리그레션 정리  (0) 2022.11.09
데이터분석한다?  (0) 2022.11.07