实现sofamax函数实现对数据的归一化处理,通过python语言编程实现

首先,简单介绍一下softmax函数。sofamax函数又称为归一化指数函数,它是常用的归一化处理的方式之一。与其他归一化方式不同的地方在于,softmax函数实际上是有限项离散概率分布的梯度对数归一化。其作用在于,它能将一个含任意实数的K维向量Z"压缩“”至另一个K维实向量α(z)中,使得数据集中的每一个元素的值都变换至(0,1)之间,而且变换后的所有元素的和等于1。了解更多可以点击这里
softmax函数的通常形式为:在这里插入图片描述
下面通过python语言来编程实现softmax函数

import numpy as np
import math
'''
定义softmax函数实现对列表元素的归一化处理
'''


def softmax(inputMatrix):
  r, c = np.shape(inputMatrix)
  outputMatrix = np.mat(np.zeros((r, c)))
  soft_sum = 0
  for idx in range(0, c):
      outputMatrix[0, idx] = math.exp(inputMatrix[0, idx])
      soft_sum += outputMatrix[0, idx]
  for idx in range(0, c):
      outputMatrix[0, idx] = outputMatrix[0, idx]/soft_sum
  return outputMatrix


a = np.array([[11, 22, 17, 28, 12, 19, 37, 48, 52, 63, 69, 75, 27, 56, 98]])
print(a)
print(softmax(a))

  • 运行结果如下:
  • 在这里插入图片描述
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值