Python下的Softmax回归函数的实现方法(推荐)

yipeiwu_com6年前Python基础

Softmax回归函数是用于将分类结果归一化。但它不同于一般的按照比例归一化的方法,它通过对数变换来进行归一化,这样实现了较大的值在归一化过程中收益更多的情况。

Softmax公式

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回归函数的实现方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python文本操作相关模块

详解Python文本操作相关模块 linecache——通过使用缓存在内部尝试优化以达到高效从任何文件中读出任何行。 主要方法: linecache.getline(file...

Numpy中矩阵matrix读取一列的方法及数组和矩阵的相互转换实例

Numpy matrix 必须是2维的,但是 numpy arrays (ndarrays) 可以是多维的(1D,2D,3D····ND),matrix是Array的一个小的分支,包含于...

解决使用PyCharm时无法启动控制台的问题

问题: 使用PyCharm时无法启动控制台? 今天打开PyCharm时突然无法启动控制台,IPython和Python本身都无法使用 解决: 很有可能你安装了较高版本的ipython...

Python 读取 YUV(NV12) 视频文件实例

Python 读取 YUV(NV12) 视频文件实例

一、YUV 简介 YUV:是一种颜色编码方法,常使用在各个视频处理组件中 Y'UV, YCbCr, YPbPr等专有名词都可以称为 YUV,彼此有重叠 Y表示明亮度(单取此通道即可...

用Python实现一个简单的线程池

线程池的概念是什么? 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是 如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁...