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 サイトに注目してください。