AI/MachineLearning

시그모이드(sigmoid) & 소프트맥스(softmax)

yunajoe 2022. 10. 12. 10:45

# 시그모이드 

시그모이드함수공식

# 시그모이드 함수의 가장 중요한 특징은, 무조건 0과 1 사이의 결과를 낸다는 것
- x가 엄청 커서 무한대면은 그냥 1
- x가 엄청 작어저서 마이너트 무한대면은 그냥 0 
- 우리는 주로 시그모이드 함수의 결괏값이 0.5보다 큰지 작은지 보고 결국 분류
- 여기에 어떤 인풋을 넣든 간에, 아웃풋은 무조건 01 사이 값이 나온다

# 속성이 하나 일 때, 시그모이드 가설함수 

 

# 속성이 두개 일 때, 시그모이드 가설함수

 

# 시그모이드(Sigmoid) vs 소프트맥스(Softmax) 

# Softmax Function

1. logistic regression 에서 multi-classification 문제에서 사용

2. 확률의 총 합 = 1

3. 출력층에서 사용됨(확률 표현)

4. 큰 출력 값은 그 class에 해당할 가능성이 높다는것을 뜻하며 실제 확률을 나타냄

5. multi-classification에서 사용
# Sigmoid Function

1. logistic regression 에서 binary-classification 문제 에서 사용

2. 확률의 총 합은 1이 아님

3. Activation 함수로 사용될 수 있음(실제 사용 하지 않음)

4. 큰 출력 값은 그 class에 해당할 가능성이 높지만 실제 확률 값을 나타내는 것은 아님

# binary-classification에서 사용

you want to classify one object into three categories with the labels A,B, or C, you would need to make the Dense layer generate an output with a shape of (None, 3). 

 

f you want to only generate one value with the Dense layer, that means you get a tensor with a shape of (None, 1) 

 

keras.layers.Dense(2, activation = 'softmax') 

keras.layers.Dense(1, activation = 'sigmoid')

eras.layers.Dense(2, activation = 'sigmoid') =>잘못된것