- TensorFlow - 구글 머신러닝 플랫폼
- 1. 텐서 기초 살펴보기
- 2. 간단한 신경망 만들기
- 3. 손실 함수 살펴보기
- 4. 옵티마이저 사용하기
- 5. AND 로직 연산 학습하기
- 6. 뉴런층의 속성 확인하기
- 7. 뉴런층의 출력 확인하기
- 8. MNIST 손글씨 이미지 분류하기
- 9. Fashion MNIST 이미지 분류하기
- 10. 합성곱 신경망 사용하기
- 11. 말과 사람 이미지 분류하기
- 12. 고양이와 개 이미지 분류하기
- 13. 이미지 어그멘테이션의 효과
- 14. 전이 학습 활용하기
- 15. 다중 클래스 분류 문제
- 16. 시냅스 가중치 얻기
- 17. 시냅스 가중치 적용하기
- 18. 모델 시각화하기
- 19. 훈련 과정 시각화하기
- 20. 모델 저장하고 복원하기
- 21. 시계열 데이터 예측하기
- 22. 자연어 처리하기 1
- 23. 자연어 처리하기 2
- 24. 자연어 처리하기 3
- 25. Reference
- tf.cast
- tf.constant_initializer
- tf.constant
- tf.keras.activations.exponential
- tf.keras.activations.linear
- tf.keras.activations.relu
- tf.keras.activations.sigmoid
- tf.keras.activations.softmax
- tf.keras.activations.tanh
- tf.keras.datasets
- tf.keras.layers.Conv2D
- tf.keras.layers.Dense
- tf.keras.layers.Dropout
- tf.keras.layers.Flatten
- tf.keras.layers.GlobalAveragePooling2D
- tf.keras.layers.InputLayer
- tf.keras.layers.Maximum
- tf.keras.layers.Minimum
- tf.keras.layers.ZeroPadding2D
- tf.keras.metrics.Accuracy
- tf.keras.metrics.BinaryAccuracy
- tf.keras.Sequential
- tf.linspace
- tf.ones_initializer
- tf.ones
- tf.random_normal_initializer
- tf.random.normal
- tf.random.set_seed
- tf.random_uniform_initializer
- tf.random.uniform
- tf.range
- tf.rank
- tf.TensorShape
- tf.zeros_initializer
- tf.zeros
- Python Tutorial
- NumPy Tutorial
- Matplotlib Tutorial
- PyQt5 Tutorial
- BeautifulSoup Tutorial
- xlrd/xlwt Tutorial
- Pillow Tutorial
- Googletrans Tutorial
- PyWin32 Tutorial
- PyAutoGUI Tutorial
- Pyperclip Tutorial
- TensorFlow Tutorial
- Tips and Examples
tf.keras.activations.softmax¶
tf.keras.activations.softmax는 벡터의 값들을 확률 분포로 변환합니다.
예제1¶
import tensorflow as tf
inputs = tf.random.normal((4, 4), seed=0)
outputs = tf.keras.activations.softmax(inputs)
print(inputs)
print(outputs)
print(tf.reduce_sum(outputs[0, :]))
print(tf.reduce_sum(outputs[1, :]))
print(tf.reduce_sum(outputs[2, :]))
print(tf.reduce_sum(outputs[3, :]))
tf.Tensor(
[[-0.3991576 2.1044393 0.17107224 0.54651815]
[-2.4234028 0.422554 0.28943786 -0.5043041 ]
[-0.96068907 -0.65109813 0.11453361 -0.10354779]
[-1.300912 -0.5038757 0.02013604 -0.09342099]], shape=(4, 4), dtype=float32)
tf.Tensor(
[[0.05691644 0.6958826 0.1006666 0.14653434]
[0.02493463 0.42932504 0.37581542 0.16992484]
[0.1307202 0.1781543 0.38309455 0.308031 ]
[0.09698021 0.2151947 0.36341846 0.32440668]], shape=(4, 4), dtype=float32)
tf.Tensor(0.99999994, shape=(), dtype=float32)
tf.Tensor(0.99999994, shape=(), dtype=float32)
tf.Tensor(1.0, shape=(), dtype=float32)
tf.Tensor(1.0, shape=(), dtype=float32)
tf.keras.activations.softmax는 벡터의 값 x에 대해 exp(x) / tf.reduce_sum(exp(x)) 값을 계산합니다.
출력 벡터의 각 값은 0~1 사이의 값을 갖고 총합이 1이 됩니다.
예제2¶
layer = tf.keras.layers.Dense(32, activation=tf.keras.activations.softmax)
tf.keras.activations.softmax를 신경망 모델의 활성화 함수로 사용하기 위해서는 위와 같이 지정합니다.