Softmax 实现源代码

博客主要围绕 Softmax 实现的源代码展开,虽未给出具体内容,但可知聚焦于 Softmax 这一技术在代码层面的实现,属于信息技术领域算法相关内容。
部署运行你感兴趣的模型镜像
import numpy as np
from numpy.core._rational_tests import denominator

def softmax(x):
    
    #implementation one
    """ Compute the softmax in a numerically stable way."""
    x = x- np.max(x)
    exp_x = np.exp(x)
    softmax_x = exp_x / np.sum(exp_x)
    
    return softmax_x


def softmax_2(x):
    
    #implementation 2
    """
    Compute the softmax function for each row in matrix or vectors
    
    Arguemnts:
     
    """
    
    orig_shape = x.shape
    
    if len(x.shape) >1:
        # Matrix
        exp_minmax = lambda x: np.exp(x-np.max)
        demon  = lambda x: 1.0 / np.sum(x)
        x = np.apply_along_axis(exp_minmax, 1, x)
        denominator = np.apply_along_axis(demon,1, x)
        
        if len( denominator.shape) == 1:
            denominator = denominator.reshape((denominator.shape[0], 1) )
            
        x = x*denominator
    
    else:
        #Vector
        x_max = np.max(x)
        x = x - x_max
        numerator = np.exp(x)
        denominator = 1.0 / np.sum(numerator)
        x= numerator.dot(denominator)
    
    assert x.shape == orig_shape
    return x
     
    
    
    

 

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值