벡터에 softmax 함수를 적용하면 "확률"과 과 사이의 값이 생성됩니다 .
그러나 각 값을 벡터의 합으로 나눌 수 있으며 이는 과 사이의 확률과 값을 생성 합니다.
여기 에 대한 답변을 읽었 지만 그 이유는 두 기능이 모두 다르지만 이유가 다르기 때문이라고 말합니다.
벡터에 softmax 함수를 적용하면 "확률"과 과 사이의 값이 생성됩니다 .
그러나 각 값을 벡터의 합으로 나눌 수 있으며 이는 과 사이의 확률과 값을 생성 합니다.
여기 에 대한 답변을 읽었 지만 그 이유는 두 기능이 모두 다르지만 이유가 다르기 때문이라고 말합니다.
답변:
제안한 함수는 요소의 합이 0 일 때마다 특이점을 갖습니다.
벡터가 . 이 벡터의 합은 0이므로 나누기가 정의되지 않습니다. 이 기능은 여기서 차별화 할 수 없습니다.
또한 벡터의 요소 중 하나 이상이 음수이지만 합계가 0이 아닌 경우 결과는 확률이 아닙니다.
당신의 벡터가 가정 . 여기에는 1의 합이 있으므로 함수를 적용하면 결과가되며 , 음의 요소를 가지며 1을 초과하는 요소이므로 확률 벡터는 아닙니다.
더 넓게 살펴보면 이항 로지스틱 회귀 분석을 세 개 이상의 범주 형 결과로 확장하는 관점에서 특정 형태의 softmax 함수에 동기를 부여 할 수 있습니다.
Softmax에는 두 가지 구성 요소가 있습니다.
구성 요소를 e ^ x로 변환합니다. 이를 통해 신경망은 일반적인 확률 대신 로그 확률로 작업 할 수 있습니다. 이것은 곱셈 확률의 일반적인 연산을 더하여 신경망의 선형 대수 기반 구조에 훨씬 더 자연스럽게됩니다.
필요한 총 확률이기 때문에 합계를 1로 정규화하십시오.
이것의 한 가지 중요한 결과는 베이의 정리가 분모에 의해 정규화 된 확률의 곱셈이기 때문에 그러한 네트워크에 매우 자연 스럽다는 것입니다.
소프트 맥스 활성화를 사용하는 단일 계층 네트워크의 사소한 경우는 로지스틱 회귀와 같습니다.
두 성분 softmax의 특수한 경우는 S 자형 활성화와 동일하므로 클래스가 두 개 뿐인 경우에 널리 사용됩니다. 다중 클래스 분류에서, 클래스가 상호 배타적이면 softmax가 사용되고 독립적 인 경우 구성 요소 방식의 시그 모이 드가 사용됩니다.