Pytorch:AG接口,BBIN接口,MG接口,PT接口对接平台权重初始化

在TensorFlow中,AG接口,BBIN接口,MG接口,PT接口对接平台Q2222168869权重的初始化主要是在声明张量的时候进行的。 而PyTorch则提供了另一种方法:首先应该声明张量,然后修改张量的权重。通过调用torch.nn.init包中的多种方法可以将权重初始化为直接访问张量的属性。

1、不初始化的效果
在Pytorch中,定义一个tensor,不进行初始化,打印看看结果:

w = torch.Tensor(3,4)
print (w)

可以看到这时候的初始化的数值都是随机的,而且特别大,这对网络的训练必定不好,最后导致精度提不上,甚至损失无法收敛。

2、初始化的效果


演示站:http://fanshubbs.com/thread-424-1-1.html
PyTorch提供了多种参数初始化函数:

torch.nn.init.constant(tensor, val)
torch.nn.init.normal(tensor, mean=0, std=1)
torch.nn.init.xavier_uniform(tensor, gain=1)
等等。详细请参考:
注意上面的初始化函数的参数tensor,虽然写的是tensor,但是也可以是Variable类型的。而神经网络的参数类型Parameter是Variable类的子类,所以初始化函数可以直接作用于神经网络参数。实际上,我们初始化也是直接去初始化神经网络的参数。

让我们试试效果:

w = torch.Tensor(3,4)
torch.nn.init.normal_(w)
print (w)

3、初始化神经网络的参数
对神经网络的初始化往往放在模型的init()函数中,如下所示:
class Net(nn.Module):

def init(self, block, layers, num_classes=1000):
self.inplanes = 64
super(Net, self).init()


*** #定义自己的网络层
***

for m in self.modules():
    if isinstance(m, nn.Conv2d):
        n = m.kernel_size[0] * m.kernel_size[1] * m.out_channels
        m.weight.data.normal_(0, math.sqrt(2. / n))
    elif isinstance(m, nn.BatchNorm2d):
        m.weight.data.fill_(1)
        m.bias.data.zero_()


*** #定义后续的函数



也可以采取另一种方式:
定义一个权重初始化函数,如下:

def weights_init(m):
classname = m.class.name
if classname.find(‘Conv2d‘) != -1:
init.xaviernormal(m.weight.data)
init.constant_(m.bias.data, 0.0)
elif classname.find(‘Linear‘) != -1:
init.xaviernormal(m.weight.data)
init.constant_(m.bias.data, 0.0)

在模型声明时,调用初始化函数,初始化神经网络参数:

model = Net(*****)
model.apply(weights_init)

原文地址:http://blog.51cto.com/14135971/2331344

时间: 2024-08-30 08:34:02

Pytorch:AG接口,BBIN接口,MG接口,PT接口对接平台权重初始化的相关文章

服务器的 Linux:告别 AG接口BBIN对接 MG对接 OD对接、拥抱开源

LinuxBoot 是私有的 UEFI 固件的开源 替代品 .它发布于去年,并且现在已经得到主流的硬件生产商的认可成为他们产品的默认固件.去年,LinuxBoot 已经被 Linux 基金会接受并 纳入 开源家族.AG接口BBIN对接 MG对接 OD对接 开户Q:2947702644 测试地址:http://t.cn/EUw2Ui0这个项目最初是由 Ron Minnich 在 2017 年 1 月提出,它是 LinuxBIOS 的创造人,并且在 Google 领导 coreboot 的工作.Go

支付宝手机网页即时到账接口(2)之授权接口请求

前言 这篇文章主要讲诉系统调用支付宝手机网页即时到账授权接口获取支付宝返回的request_token. 上篇文章地址:支付宝手机网页即时到账接口(1)之相关信息介绍. 这是上篇文章结尾调用授权接口的图解. 官方文档中对授权接口的说明是: 商户利用编程方法来模拟http请求远程解析html,获取支付宝返回的结果数据后,可以结合自身网站的业务逻辑进行数据处理. 说明中不难看出我们的代码中需要模拟http提交参数,然后解析支付宝返回的结果再进行处理.该项目是用java编写的,所以后续代码也是用jav

【课程分享】深入浅出微信公众平台实战开发(微网站、LBS云、Api接口调用、服务号高级接口)

深入浅出微信公众平台实战开发(微网站.LBS云.Api接口调用.服务号高级接口) 课程下载地址:链接:http://pan.baidu.com/share/link?shareid=2214724072&uk=3611155194 密码:glvc 一.本课程是怎么样的一门课程(全面介绍) 1.1.课程的背景 微信公众平台的火热程度已经不用多言,无论是个人还是企业,政府还是商家,都已经开始搭建微信公众平台,微信的作用已经被各界人士认可.微信公众平台的技术需求市场缺口巨大. 1.2.课程内容简介 本

接口、接口优点、接口的属性和方法特性、接口与继承的区别、接口与抽象类的区别、匿名实现类、JDK1.8新特性、打印类名称

接口里的属性,必须是公共的/默认的&静态的&Final&初始化后的属性: 接口里所有方法都是抽象的. 接口和继承---先天有的用继承,后天学习的用接口: 接口特性-------- 1.接口不可以被实例化: 2.实现类必须实现接口中所有方法,否则实现类必须是抽象类 3.实现类可以实现多个接口,来弥补Java不能多继承: 4.接口中的变量都是静态常量:(静态的-可以通过类的名字点-直接调用:) ----------------------------------------------

新闻资讯API接口-健康资讯免费数据API接口

健康资讯API免费接口 ,主要开放健康资讯,医药新闻,社会热点,企业要闻,生活贴士. 健康资讯是医药吧网(www.yi18.net)旗下的医药健康网,专业的健康 资讯门户网站,提供最专业.完善的健康信息服务. 新闻资讯的API路径 BasePath( api.yi18.net/news ) 主要包括如下四个功能 资讯分类.资讯详情.资讯列表.资讯搜索 API接口调用方式都是常见的http方式,返回结果是现在比较流行的JSON. 1.取得资讯信息列表 如:api.yi18.net/news/lis

微信公众号接口深入剖析与应用——多接口集合应用与重用技术开发(图文导航)

前几天有几个朋友叫我出一个关于公众号发送位置导航的教程,迫于时间压力才今天开始写写,我先说说思想 吧,首先我们知道微信发送位置可以朋友与朋友之间直接发送,但是在一个公司或者企业下,一个公众号下面可 能有很多个关注用户,那就涉及到了给陌生人发送位置的情况,我们知道微信给陌生人是发送不了信息的,需要 通过验证才行,那就涉及到了本篇要讲的第一个避开验证的方法 方法一:通过公众号转发位置给非好友的陌生人,绕过好友验证,点击导航 可能有人就会问,在48小时内如果用户未与公众号交互,信息就会发送失败,这就是

linux 接口地址全部清除才清理从此接口发出的下一跳路由

接口地址全部清除才清理从此接口发出的下一跳路由 如: eth7配置两个地址 eth7: 192.168.1.1 10.1.1.1 添加一条路由: route add -net 2.2.2.0/24 gw 10.1.1.254 然后删除eth7上的地址 10.1.1.1 查一下路由表, 下一跳10.1.1.254还在 ~ # ip route show all2.2.2.0/24 via 10.1.1.254 dev eth7 linux 对此处理不太合理, 应该自动删除较好.

Postman下一个接口要用到上一个接口的数据

问题描述: 现在有A.B两个接口,A接口返回的response的body中是以下结构,我要取rows里面的order_id给B接口用. {   "status": 1,   "code": 0,   "msg": "获取**成功!",   "data": {     "rows": [       {         "order_id": "1493967

支付宝手机网页即时到账接口(3)之交易接口请求

前言 这篇文章主要讲诉系统调用支付宝手机网页即时到账交易接口跳转到支付宝收银台. 上篇文章地址:支付宝手机网页即时到账接口(2)之授权接口请求. 这是第一篇文章结尾调用交易接口的图解. 交易接口请求参数说明 1.含义 请求参数是商户在与支付宝进行数据交互时,提供给支付宝的请求数据,以便支付宝根据这些数据进一步处理. 2.交易接口请求参数列表 从上面的图片可以看到参数比较多,这边简单介绍下(注:下面没有写出字符长度). service=alipay.wap.auth.authAndExecute