>백엔드 개발 >파이썬 튜토리얼 >Python에서 Softmax 회귀 함수 구현 방법

Python에서 Softmax 회귀 함수 구현 방법

高洛峰
高洛峰원래의
2017-02-03 16:49:582381검색

분류 결과를 정규화하기 위해 Softmax 회귀 함수가 사용됩니다. 하지만 일반적인 정규화 방법과는 비율에 따라 다릅니다. 로그 변환을 통해 정규화하므로 정규화 과정에서 값이 클수록 더 많은 이득을 얻습니다.

소프트맥스 수식

Python에서 Softmax 회귀 함수 구현 방법

소프트맥스 구현 방법 1

import numpy as np
def softmax(x):
 """Compute softmax values for each sets of scores in x."""
 pass # TODO: Compute and return softmax(x)
 x = np.array(x)
 x = np.exp(x)
 x.astype('float32')
 if x.ndim == 1:
  sumcol = sum(x)
  for i in range(x.size):
   x[i] = x[i]/float(sumcol)
 if x.ndim > 1:
  sumcol = x.sum(axis = 0)
  for row in x:
   for i in range(row.size):
    row[i] = row[i]/float(sumcol[i])
 return x
#测试结果
scores = [3.0,1.0, 0.2]
print softmax(scores)

계산 결과는 :

[ 0.8360188 0.11314284 0.05083836]

Softmax 구현 방법 2

import numpy as np
def softmax(x):
 return np.exp(x)/np.sum(np.exp(x),axis=0)
 
#测试结果
scores = [3.0,1.0, 0.2]
print softmax(scores)

위의 Python에서의 Softmax 회귀 함수 구현 방법(권장)은 다음과 같습니다. 편집자님께서 제가 모든 내용을 드렸으니 참고가 되셨으면 좋겠습니다. 그리고 PHP 중국어 웹사이트를 응원해 주시길 바랍니다.

Python에서 Softmax 회귀 함수를 구현하는 방법에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.