Products
GG网络技术分享 2025-11-22 19:04 0
嘿嘿,你晓得吗?深厚度学里有个超级酷的工具,叫nn.functional!它就像深厚度学里的魔法棒,Neng让我们Zuohen许多神奇的事情。今天我就来跟你们聊聊,怎么用这玩意儿魔法棒,飞迅速变成深厚度学细小高大手!

先说说 我要告诉你们,nn.functional是PyTorch库中的一个模块,它里面有hen许多神奇的函数,Neng帮我们完成深厚度学中的各种核心操作。比如说 我们三天两头要处理的数据填充、裁剪、归一化、计算亏本等等,这些个douNeng用nn.functional里的函数来轻巧松搞定。
比如说 我们有一个2行3列的随机flatten数组,叫Zuoinputs,还有一个标签数组,叫Zuotargets。我们想用nn.functional里的cross_entropy函数来计算inputs与targets的交叉熵亏本。代码是这样的:
import torch.nn.functional as F
import torch
inputs = torch.Tensor
softmax_inputs = F.softmax
print
输出后来啊: tensor(, ])
我们需要对数据进行填充或者裁剪,使得尺寸巨大细小相同。PyTorch给了padding函数来帮我们完成这玩意儿操作。比如 我们有一个需要填充的数据pad_inputs,在第2个维度上Zuo了padding操作,补0长远度为2,第3个维度没有Zuopadding操作。
constant表示用常数填充,0表示填充的常数为0。
import torch.nn.functional as F
import torch
pad_inputs = F.pad, "constant", 0)
print
输出后来啊: torch.Size
normalize函数Neng够对数据Zuo归一化处理,将数据缩放到0~1范围内。比如说 我们对一个列向量进行softmax操作,Neng这样写:
import torch.nn.functional as F
import torch
x = torch.Tensor
norm_x = F.normalize
print
输出后来啊: tensor(, ])
在深厚度学中,过度拟合是一个非常巨大的问题,dropoutNeng够缓解过度拟合问题。dropout操作会在训练过程中随机将一有些神经元的输出置为0,从而少许些模型对特定数据的依赖。
import torch.nn.functional as F
import torch
x = torch.Tensor
drop_x = F.dropout
print
输出后来啊: tensor(, ])
优良了今天的深厚度学细小知识就分享到这里啦!希望你们Neng通过nn.functional这玩意儿魔法棒, 轻巧松掌握深厚度学的核心操作技巧,成为深厚度学细小高大手!
Demand feedback