머신러닝,딥러닝/tensorflow

lec06 multinominal 개념 소개

mcdn 2021. 1. 21. 01:13
반응형

multinominal 개념 소개 

 

logistic regression 은 세모와 네모를 나누는 게 중요 

 

multinominal classification 에도 그대로 적용한다. 

 

이렇게 되면 세개의 독립된 classify 가 나오게 된다. a or not, b or not , c or not 

이걸 하나로 합침 

matrix multiplication 

연산을 그대로 적용하게 되면 

 

위와 같은 형태의 다중 매트릭스가 나온다. 

이건 결국 h(x)의 값이자 y hat a 값, b, c 각각 나온다. 

이제부터 세개를 합친 이 걸 sgimoid 값으로 만들고 싶다. 

현재 20 1.0 0.1 로 표현돼서 a인걸 판별 한 예 

요걸 sigmoid 넣어서 0.7 0.2 0.1 값으로 나오면 좋겠다. 

1. 0~1 값

2. sum is 1 

 

 

cross-entropy 라는 걸 쓸 예정 

sigmoid 와 실제 값 과의 차이를 확인 

 

왜 이걸 쓰는지 알아볼 예정 

ㅕㄴ 

cross-entropy cost function 

-log 는 Logistic에서 본 적 있죠 

 

0~1 사이 값을 갖고 있는 이 부분 

0이면 무한 1 이면 0에 가까움 

L = [0 1 ] 이면 b나 다름 없다. 

예측이 맞으면 cost는 0 

예측이 틀리면 무한 가까운 비용을 부여 

 

반대도 마찬가지다. 

 

만약 많은 데이터가 생기면? 

C(H(x), y) = y logH - (1-y)log(1-H(x))

 

왜 같은지 고민해봐 

여러개의 가 되면 1/n하면 된다. 

 

마지막으로 gradient descnet 로 loss가 cost 최소화 

경사면은 미분. 

loss 너무 복잡하니까 미분하는것을 다루지는 않는다. 

기울기를 타고 내려간다. 그만큼 위치를 업데이트 

hypothesis = tf.nn.softmax(tf.matmul(X,W) +b )

 

onehot 표시 

0에 해당하면 1 0 0 처럼 하나에만 몰빵해서 칠하는거 

 

 

 

반응형