정리필요/AI

[개념] 잡다하게 정리

kstar2 2021. 3. 20. 17:41

출처1 : leedakyeong.tistory.com/entry/%EB%B0%91%EB%B0%94%EB%8B%A5%EB%B6%80%ED%84%B0-%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94-%EB%94%A5%EB%9F%AC%EB%8B%9D-%EC%86%8C%ED%94%84%ED%8A%B8%EB%A7%A5%EC%8A%A4-%ED%95%A8%EC%88%98-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-in-%ED%8C%8C%EC%9D%B4%EC%8D%AC-softmax-in-python

 

[밑바닥부터 시작하는 딥러닝] 소프트맥스란? 소프트맥스 함수 구현하기 in 파이썬 (softmax in python

소프트맥스란? What is softmax? softmax란? 신경망의 출력층에서 사용하는 활성화 함수로, 분류문제에 쓰이는 함수이다. * 회귀에서는 항등함수(identity function)을 사용한다. softmax의 식은 다음과 같다.

leedakyeong.tistory.com

softmax란? 신경망의 출력층에서 사용하는 activation function으로, 분류문제에 주로 쓰이는 함수

※ 회귀에서는 주로 항등함수(입력을 그대로 출력하는 함수)가 사용된다.

 

import numpy as np

def softmax(a) : 
	exp_a = np.exp(a) // np.exp(a)는  e^a이다.
    sum_exp_a = np.sum(exp_a)
    y = exp_a / sum_exp_a
    
    return y

 

위의 코드는 a의 값이 커지면 컴퓨터가 표현할 수 있는 수의 범위를 넘어서는 오버플로 문제가 발생 할 수 있음으로 아래와 같은 코드로 변경하였다.

 

def softmax(a) :
	c = np.max(a) //a는 array
    exp_a = np.exp(a-c)
    sum_exp_a = np.sum(exp_a)
    y = exp_a / sum_exp_a
    
    return y

 

softmax 함수의 출력은 0~1사이의 실수이며, 출력의 총합은 1이다. 따라서 이를 '확률'로 해석할 수 있다.


 

'정리필요 > AI' 카테고리의 다른 글

[개념] classification model 성능평가지표  (0) 2021.03.18
[개념] Regression model 평가 지표  (0) 2021.03.17
[개념] Encoding이란?  (0) 2021.03.16