[구글 머신러닝 단기집중과정] 14강

환공지능·2021년 7월 26일
0
post-thumbnail

1. multi-class NN : 일대다

일대다는 이진 분류 활용 방법을 제공한다. 가능한 솔루션이 N개인 분류 문제의 경우 일대다 솔루션은 가능한 각 결과에 하나씩 N개의 이진 분류자로 구성된다. 학습하는 동안 모델은 일련의 이진 분류자를 통해 실행되며 별도의 분류 문제에 답하기 위해 각 분류자를 학습한다. 예를 들어 인식기 다섯 개에 개 그림 하나를 학습시키는데 네 개는 이미지를 음성 예(개 아님)로 인식하고 하나는 양성 예(개)로 인식한다. 즉 다음과 같다.

사과의 이미지인가요? 아니요.
곰의 이미지인가요? 아니요.
사탕의 이미지인가요? 아니요.
개의 이미지인가요? 예.
계란의 이미지인가요? 아니요.

이 방식은 총 클래스 수가 작으면 매우 합리적이지만 클래스 수가 증가하면 점점 더 비효율적이 된다. 각 출력 노드가 다른 클래스를 나타내는 심층신경망을 사용하여 훨씬 더 효율적인 일대다 모델을 만들 수 있다. 다음 그림은 이 방식을 보여준다.

2. multi-class NN : SoftMax

로지스틱 회귀는 0과 1.0 사이의 소수를 생성한다. 예를 들어 이메일 분류자의 로지스틱 회귀 출력이 0.8이면 이메일이 스팸일 확률이 80%이고 스팸이 아닐 확률이 20%임을 나타낸다. 분명히 이메일이 스팸일 확률과 스팸이 아닐 확률의 합은 1.0이다.

소프트맥스는 이 아이디어를 다중 클래스 문제에 적용한다. 즉 소프트맥스가 다중 클래스 문제의 각 클래스에 소수 확률을 할당하며, 소수 확률의 합은 1.0이 되어야 한다. 이 제약조건을 추가하면 제약조건을 추가하지 않은 경우보다 더 빠르게 수렴을 학습할 수 있다.

예를 들어 그림 1에 표시된 이미지 분석의 경우 이미지가 특정 클래스에 속할 확률은 다음과 같다.

클래스확률
사과0.001
0.04
사탕0.008
0.95
계란0.001

소프트맥스는 출력 레이어 바로 앞의 신경망 레이어를 통해 구현된다. 소프트맥스 레이어의 노드 수는 출력 레이어와 같아야 한다.

소프트맥스 옵션

다음과 같은 변형된 소프트맥스가 있다.

  • 전체 소프트맥스(Sampling)는 지금까지 설명한 소프트맥스이다. 즉 모든 가능한 클래스의 확률을 계산하는 소프트맥스이다.

  • 후보 샘플링(Candidate Sampling)은 소프트맥스가 양성 라벨의 확률은 모두 계산하지만 음성 라벨의 경우 무작위 샘플의 확률만 계산한다. 예를 들어 입력 이미지가 비글인지, 블러드하운드인지 확인하는 경우 개가 아닌 예의 확률은 제공할 필요가 없다.

전체 소프트맥스는 클래스 수가 적으면 매우 적은 비용이 들지만 클래스 수가 증가하면 엄청나게 많은 비용이 들게 되며, 클래스 수가 많은 문제에서는 후보 샘플링을 사용하면 효율성이 향상된다.

.
.
.
강의 링크 : 머신러닝 단기집중과정

profile
데이터사이언티스트 대학원생

0개의 댓글