군침이 싹 도는 코딩

activation 함수 softmax / 분류 문제 loss 셋팅 본문

Python/Deep Learning

activation 함수 softmax / 분류 문제 loss 셋팅

mugoori 2022. 12. 28. 18:03

 

y값

# 인공지능을 통해 6만장의 옷 이미지 데이터를 10가지의 아웃풋으로

분류해야 하는데 아웃풋 노드가 3개 이상일 경우 사용하는 엑티베이션 함수가

바로 소프트 맥스이다.

 

 

 

 

def build_model():
  model = Sequential()
  model.add( Flatten())
  model.add( Dense(128,'relu') )
  model.add( Dense(64,'relu') )
  model.add( Dense(10, 'softmax'))
  model.compile('adam','sparse_categorical_crossentropy',['accuracy'])
  return model

# 소프트 맥스의 사용법은 다음과 같다

마지막 아웃풋 레이어를 설정할때 댄스에 출력으로 나와야할 갯수만큼의 유닛을 써주고 액티베이션에 소프트맥스

 

y_train
>>> array([9, 0, 0, ..., 3, 0, 5], dtype=uint8)

# 분류의 문제에서 loss를 세팅하는 방법이다

1. y의 값을 확인해 레이블 인코딩 되었다면 로스 펑션을 sparse_categorical_crossentropy를 

2. 원핫 인코딩이 되었다면 categorical_crossentropy를 사용한다

위의 예제의 경우 확인 결과를 보면 레이블 인코딩 되었기때문에 

로스 펑션에 sparse_categorical_crossentropy 를 써주었다