Pytorch nn.Linear()

nn.Linear就是神经网络中的线性层,类似于数学中的线性函数,可以实现形如y=X*weight^T+b的功能。

#导包
import torch.nn as nn
import torch

#创建1个张量
sample=torch.tensor([1.,10.,100.])

#nn.Linear(in_feature,out_feature,bias),这里设置了不需要bias,即函数为y=k*x

linear=nn.Linear(3,3,bias=False)

print(linear.weight)

#weight为一个3*3的张量
out:
Parameter containing:
tensor([[ 0.0777,  0.1295, -0.3284],
        [-0.5325,  0.2380,  0.1290],
        [ 0.3780, -0.1113,  0.3035]], requires_grad=True)

output=linear(sample)

print(output)
out:
tensor([-31.4626,  14.7472,  29.6170], grad_fn=<SqueezeBackward3>)

我们输入有3个特征 x1,x2,x3,bias=False,所以方程式为y=w1*x1+w2*x2+w3*x3

y1=0.0777*1+0.1295*10+(-0.3284)*100=-31.46

y2=-0.5325*1+0.2380*10+0.1290*100=14.74

y3=0.3780*1+(-0.1113)*10+0.3035*100=29.61

输出特征也为3

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值