ホームページ  >  記事  >  バックエンド開発  >  PythonでのSoftmax回帰関数の実装方法

PythonでのSoftmax回帰関数の実装方法

高洛峰
高洛峰オリジナル
2017-02-03 16:49:582337ブラウズ

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]

ソフトマックス実装方法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 中国語 Web サイトもサポートしていただければ幸いです。

Python での Softmax 回帰関数の実装方法に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。