반응형
분류 문제에서의 활성함수 (Activation Function)
Sigmoid
- 2개의 분류 문제를 다룰 때 쓰는 활성 함수
- 알려지지 않는 파라미터를 데이터로부터 추정해 0과 1로 분류하는 것
Softmax
- 3개 이상의 분류 문제를 다룰 때 쓰는 활성 함수
- 데이터를 0~1사이의 값으로 정규화하여 출력되는 값들의 총 합이 1이 되는 함수
분류 문제에서의 손실함수(Loss Function)
binary_crossentropy
- 2개의 분류 문제를 다룰 때 쓰는 손실 함수
categorical_crossentropy
- 3개 이상의 분류 문제를 다룰 때 쓰는 손실 함수
- 원핫 인코딩되어 있는 카테고리컬 데이터에 적용
sparse_categorical_crossentropy
- 3개 이상의 분류 문제를 다룰 때 쓰는 손실 함수
- 레이블 인코딩되어 있는 카테고리컬 데이터에 적용
예시) 분류 문제의 인공신경망 모델링
- 3개 이상의 분류 모델링 - 활성함수 softmax, 손실함수 sparse_categorical_crossentropy 사용
# 인공지능 생성
model = tf.keras.models.Sequential()
# 플래튼 작업 : 다차원 행렬 1차원화
model.add(tf.keras.layers.Flatten())
model.add(tf.keras.layers.Dense(128, 'relu'))
# 활성함수 소프트맥스로 분류 문제로 출력
model.add(tf.keras.layers.Dense(10, 'softmax'))
# 분류 작업을 하는 손실함수를 이용하여 컴파일
model.compile('adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
# 인공지능 학습
model.fit(training_images, training_labels, epochs=5)
반응형