【实验】SoftMax——Python和Tensorflow实现

本文通过Python和Tensorflow分别实现SoftMax函数,并探讨了使用过程中遇到的问题,包括numpy计算结果的小数位数和Tensorflow中限制小数位数的方法。
摘要由CSDN通过智能技术生成

Softmax by Python

import math

#import numpy as np



def softmax_py(logits_data):
   
	logits_exp = [math.exp(i) for i in logits_data]
	
	#logits_exp = [np.exp(i) for i in logits]
	
	   
	print("logits_exp:",logits_exp)
	
	   
	sum_logits_exp = sum(logits_exp)
	
	   
	print("sum_logits_exp:",sum_logits_exp)
	
	   
	softmax = [round(i/sum_logits_exp,3) for i in logits_exp]	
	   
	print("softmax:",softmax)
	
	   
	print("sum_softmax:",sum(softmax))
	
	 
	
softmax_py([2.0,1.0,0.1])

logits_exp: [7.38905609893065, 2.718281828459045, 0.1051709180756477]

sum_logits_exp: 11.212508845465344

softmax: [0.659, 0.242, 0.099]

sum_softmax: 1.0

#问题一:为什么用numpy,softmax结果不止三位小数,round没效果?

SoftMax by tensorflow

import tensorflow as tf


def softmax_tf(logits_data):


	output = None
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值