SepalLength | SepalWidth | PetalLength | PetalWidth | Species |
---|---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
5.8 | 2.6 | 4.0 | 1.2 | versicolor |
6.7 | 3.0 | 5.2 | 2.3 | virginica |
5.6 | 2.8 | 4.9 | 2.0 | virginica |
각 실제값의 정수 인코딩은 1,2,3이 되고 이에 원-핫 인코딩을 수행하여 실제값을 원-핫 벡터로 수치화
예시
예를 들어 실제값이 setosa(2)라면 원-핫벡터는 [0 1 0]임.
이 경우, 예측값과 실제값의 오차가 0이 되는 경우는 소프트맥스 함수의 결과가 [0 1 0]이되는 경우이므로, 두 벡터의 오차를 계산하기 위해 소프트맥스 회귀는 비용함수로 크로스 엔트로피 함수를 사용하여 가중치 업데이트
소프트맥스 회귀에서 예측값을 구하는 과정을 벡터와 행렬 연산으로 표현하면 아래와 같음.
본질적으로 로지스틱 회귀함수에서 배운 식과 동일한 식임.
위의 식에서 를 , 를 로 치환하고, 를 , 를 로 치환하면 아래의 식을 구할 수 있음.
결과적으로 소프트맥스 회귀식과 동일함.
정리하자면
소프트맥스 회귀와 로지스틱회귀의 비용함수는 동일함.