深度学习(初始化)

news/2024/11/17 3:56:46/文章来源:https://www.cnblogs.com/tiandsp/p/18368050

深度学习训练的时候,一个好的初始化结果能使模型更容易收敛,Pytorch提供了一些初始化函数。

import torch
import torch.nn as nn
import matplotlib.pyplot as pltclass Model(nn.Module):def __init__(self):super(Model, self).__init__()self.a = nn.Parameter(torch.zeros(100,100))       def forward(self, x):return self.a + xnet = Model()
par_list=[]
for par in net.parameters():par_list.append(par.detach().clone().numpy())nn.init.ones_(par)    par_list.append(par.detach().clone().numpy())nn.init.constant_(par,10)par_list.append(par.detach().clone().numpy())nn.init.eye_(par)par_list.append(par.detach().clone().numpy())nn.init.uniform_(par, a=0, b=1)par_list.append(par.detach().clone().numpy())nn.init.normal_(par,mean=0, std=1)par_list.append(par.detach().clone().numpy())nn.init.orthogonal_(par, gain=1)par_list.append(par.detach().clone().numpy())nn.init.sparse_(par, sparsity=0.1, std=0.01)par_list.append(par.detach().clone().numpy())nn.init.xavier_uniform_(par, gain=1)par_list.append(par.detach().clone().numpy())nn.init.xavier_normal_(par, gain=1)par_list.append(par.detach().clone().numpy())nn.init.kaiming_uniform_(par)par_list.append(par.detach().clone().numpy())nn.init.kaiming_normal_(par)par_list.append(par.detach().clone().numpy())for i,par in enumerate(par_list):plt.subplot(3,4,i+1)plt.imshow(par)plt.show()

结果可视化如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/790156.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电流峰值采样电路分析

一、前言在一些电路控制中,采集电路中某部分的峰值电流做处理是非常有必要的,所谓的电流采样,本质上还是电压采样。接下来将介绍一种电流峰值采样电路。 二.基本原理最基本的原理是利用电容的充放电特性,基本电路如下图所示,当电源电压上升时,二极管导通给电容充电。电源…

自我介绍和软工五问

| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/ | | ----------------- |--------------- | | 这个作业要求在哪里| https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13228 | | 这个作业的目标 | <学习使用github,思考自己对课程…

信息学奥赛初赛天天练-80-NOIP2015普及组-基础题5-错位排列、二叉树、完全二叉树、叶子节点、完全二叉树叶子节点

NOIP 2015 普及组 基础题5 21 重新排列 1234使得每一个数字都不在原来的位置上,一共有( )种排法 22 一棵结点数为 2015的二叉树最多有( )个叶子结点 2 相关知识点 1) 错位排列 考虑一个有n个元素的排列,若一个排列中所有的元素都不在自己原来的位置上,那么这样…

2024 NepCTF

NepCTF NepMagic —— CheckIn 直接玩游戏就能出 注意有一关要把隐藏的方块全找到 NepCamera 先使用tshark读取数据结果文件中发现大量jpeg头ffd8ffe0。猜测是多个图片,编写脚本,提取出来。 脚本: import reinputFilePath="C:\\Downloads\\NepCamera\\result.txt"w…

JAVA基础之三-接口和抽象类

java提供了抽象类和接口,总体是好事。 有的OOP语言并没有接口的概念,但相当一部分其实用其它方式实现了JAVA中接口类似的功能。 如果不太清楚二者的区别,难免在面临具体业务的时候,在二者之间摇摆。 --- 实际上,关于抽象类和接口的共同点和不同点没有什么可以写的。 设计原…

iMac安装Windows系统键盘无反应

热烈欢迎,请直接点击!!! 进入博主App Store主页,下载使用各个作品!!! 注:博主将坚持每月上线一个新app!! 1、鼠标右击任务栏空白处,选择“任务管理器”: 2、在进程里边找到“Microsoft IME”,右键点击它,选择“结束任务”

spark的SparkSubmit类关于Configuration的资源文件加载

在阅读 SparkSubmit 源代码时,重点关注 Configuration 的资源文件的加载情况,默认通过 new Configuration() 构造方法创建时,只会加载 core-default.xml 和core-site.xml文件,但是 SparkSubmit 中打印 Configuration 时,发现还会加载 yarn-site.xml,SparkSubmit 代码中没…

uni-app实录

虽然小程序已经火了好几年,但是现在还是经久不衰,虽然已经有很多出色的制作者和供应商,但作为一门技术手艺,秉持着“技多不压身”的原则,这里再次进行填坑。本文来自博客园,作者:ukyo--君君小时候,转载请注明原文链接:https://www.cnblogs.com/ukzq/p/18390418

python中的编码解码

https://cloud.tencent.com/developer/article/2278351 编码(encode):将Unicode字符串转为特定编码格式对应的字节码的过程;就是将字符串转换为字节码 解码(decode):将特定编码格式的字节码转为对应的Unicode字符串的过程;就是将字节码转换为字符串 正确写法只有str.en…

Flutter的一些概念(二)

介绍一些Fluter面试中可能会遇到的一些非项目相关的概率名词注:本文同步发布于微信公众号:stringwu的互联网杂谈 [Flutter的一些概念(二)](https://mp.weixin.qq.com/s/-cmI9-ZH5qqxB1wj-AGi2g) 1 flutter的核心渲染模块 当应用启动时flutter 会遍历所有的Widget 形成Widg…

阿尔茨海默病症识别+图像识别Python+人工智能+深度学习+TensorFlow+机器学习+卷积神经网络算法

一、介绍 阿尔茨海默病症识别。使用Python作为主要编程语言进行开发,基于深度学习等技术使用TensorFlow搭建ResNet50卷积神经网络算法,通过对病症图片4种数据集进行训练[轻度痴呆, 中度痴呆, 非痴呆, 非常轻微的痴呆],最终得到一个识别精确度较高的模型。然后使用Django框架…

【安全运营】安全事件运营SOP:网络攻击

一、常见网络攻击1.1 网络攻击概述 1.2 网络攻击方式 1.3 网络攻击检测 二、安全运营SOP2.1 攻击告警初判 2.2 攻击地址封禁 2.3 攻击告警研判 2.4 应急响应处置 2.5 附SOP流程图 三、网络攻击防范3.1 减少对外暴露面 3.2 系统上线…