model = tf.keras.models.Sequential()
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.compile('adam', loss = 'categorical_crossentropy', metrics = ['accuracy'])
model.fit(training_images, training_labels, epochs = 5)
2개 분류의 문제일때는, 로스 펑션을 binary_crossentropy
3개 이상의 분류의 문제일때는? 2가지 경우가 있다!
첫번째 경우, y의 값이 레이블 인코딩으로 되어있는 경우 : sparse_categorical_crossentropy
두번째 경우, y의 값이 원핫 인코딩으로 되어있는 경우 : categorical_crossentropy
'인공지능 > 텐서플로우' 카테고리의 다른 글
에포크, 학습데이터/밸리데이션데이터와 오버피팅 (0) | 2022.06.13 |
---|---|
softmax로 나온 결과를 레이블 인코딩으로 바꾸는 방법 (0) | 2022.06.13 |
여러 클래스로 분류할 때, 아웃풋 노드에서 사용하는 액티베이션 함수 softmax (0) | 2022.06.13 |
Flatten 라이브러리 사용하는 이유 (0) | 2022.06.13 |
EarlyStopping 라이브러리 사용법 (0) | 2022.06.13 |