go hard to Hardware

[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(1) 본문

ML,DL/ML 입문

[머신러닝 입문] 메타코드 강의 후기_머신러닝 입문 올인원_2강 분류(1)

냔냐냔나 2024. 5. 3. 21:10

http://mcode.co.kr/video/list2?viewMode=view&idx=21

 

메타코드M

빅데이터 , AI 강의 플랫폼 & IT 현직자 모임 플랫폼ㅣ메타코드 커뮤니티 일원이 되시기 바랍니다.

mcode.co.kr

머신러닝의 지도학습의 큰 분야인 회귀와 분류중 회귀를 학습했고

이번 시간부터 분류에 대해서 배운다!

우선 Classification을 배우기 전에 머신러닝의 회귀와 분류를 Remind 해 보자

머신러닝 지도학습은 y가 존재하는 상태인데,

이 때 출력값이 연속이면 회귀 모델, 이산이면 분류 모델이 된다.

또 분류 모델 중에서도, 이진 분류라면 시그모이드, 세 개 이상의 class 가 존재하는 상황에서는 softmax가 꼭 포함되야 한다.

우선 이진 분류일때 사용하는 시그모이드 함수이다.

병이 있을때는 1, 없을때는 0 이라고 라벨(y)를 정해주는 경우를 생각해 보자.

시그모이드 함수는 x=0 일 때 1/2 값을 가지고 -무한대에 가까워 질 때는 0으로, 무한대에 가까워 질 때는 1로 수렴한다.

항상 출력값이 0~1 사이인것과 중간에서 1/2 값을 가지는 특성이 중요하다.

Logistic Regression

[오즈]

x라는 데이터가 주어졌을 때, y=1 (성공) 인 확률과 y=0 (실패) 인 확률의 비로 나타낼 수 있다.

이 두 확률의 합은 1이 되야하는 것을 기억하자 (이산이니까 당연함)

[로짓 변환]

오즈에 로그를 취한 함수 형태로

로짓 함수에 p라는 값이 주어졌을 때 odds에 로그를 취한 형태가 되는데,

로짓 변환에서 주어졌던 p 값은 y=1이라는 값을 의미하게 된다.

 

[logistic function]

- 로짓 변환의 역함수로 이해하는 것이 가장 좋다.

- 로짓변환의 출력값을 데이터 x와 w라는 parameter로 선형함수 처럼 표현할 수 있고, w와 행렬 X 가 곱해진 형태로 표현할 수 있다.

- 이 형태 (w^TX)를 p에 대한 함수 f(p)라 두면, 역함수를 이용해서 p를 구할 수 있다.

- 최종적으로 p 를 정리하면 위 강의자료와 같은 선형회귀 + sigmoide 함수를 결합한 꼴이 된다

(sigmoid 함수의 x에 w^TX을 대입)

 

[Logistic regression]

- 시그모이드 함수에서 1/2 보다 큰 값은 1, 작은 값은 0이라는 라벨로 분류했었다.

- 이 때 logistic regression은 시그모이드 함수의 x에 w^TX 를 사용하는 것

- w^TX 선형모델에서 0보다 큰 값을 출력 해 주고 이를 시그모이드로 넘겨줘서 1/2 보다 큰지 작은지 확인해서 분류 할 수 있는 것이다.

- 이 때 logistic regression의 parameter는 weight 뿐이므로, 이 weight의 최적값을 찾기 위한 손실함수를 정의 해야 한다.

 

[Bayes' theorem]

- w를 학습하기 위해 경사하강법을 사용해야 하는데, 방향값의 미분값이 필요하다.

- 머신러닝에서 MSE는 회귀문제를 위한 loss function이고, 분류문제에 맞는 loss function을 찾아야 한다.

- 베이즈 정리에 사용되는 조건부 확률은, 조건으로 들어온 x의 확률값과 w,x 가 동시에 존재하는 (joint) 확률값의 비로 나타낼 수 있다.

- 비례식으로 나타낼 때 분모의 P(X)를 날려서 나타낸다.

- 머신러닝에는 사후 확률, 우도 확률, 사전 확률이 있고 이 확률들을 통해 가설을 추정하는 방법으로 MLE, MAP이 있고 이를 이용해서 손실함수를 정의 하는 방법을 배울수 있다!

메타코드 서포터즈로서 작성하였습니다.