python计算出nan_学习笔记0522:Tensorflow训练模型出现loss是nan的问题排查
想要实现一个类似简单版EGES的网络,之前加入了全连接等网络,效果很差,因此想要还原一下简单的skip-gram,不要那些复杂网络结构,但是出现了nan的问题。
搜罗了网上好多资料,经历了漫长的排查历程,如下:
- 添加batch normalization
- 修改负采样个数
- 减小学习率
- 改小batch size
- 添加归一化
- 对loss进行剪裁
- 对梯度进行剪裁
- 检查原始数据是否存在缺失
以上。。。都不好使。。。
更加诡异的是,添加一层全连接层,就可以了???
最终借助tensorflow的debug工具,感谢这位朋友。https://zhuanlan.zhihu.com/p/30940784
sess = tf_debug.LocalCLIDebugWrapperSession(sess, thread_name_filter="MainThread$")
sess.add_tensor_filter("has_inf_or_nan", tf_debug.has_inf_or_nan)
# run -f has_inf_or_nan
在运行的python后面添加 --debug=True
不过debug工具刚开始也有一点小bug,现在也没太解决,不过好歹给我定位到哪里出了nan
这两行,第一行是首次出现nan的位置。
刚看到的时候,翻白眼,这不是废话吗,我当然知道nan是出现在loss上面啦。
再看一眼,what?不是网络训练产生的losses,而是正则的loss
最终解决:由于网络改的过于简单,并没有加入正则,而计算loss时,加入了正则损失,因此,这一项没有变量进来,产生了nan。
虽然有点蠢,但是在网上真没搜到 这个原因,是以为记,继续炼丹去了。。。
python计算出nan_学习笔记0522:Tensorflow训练模型出现loss是nan的问题排查相关推荐
- tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)
续集请点击我:tensorflow学习笔记--使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...
- Python快速编程入门#学习笔记01# |第一章 :Python基础知识 (Python发展历程、常见的开发工具、import模块导入)
全文目录 ==先导知识== 1 认识Python 1.1.1 Python的发展历程 1.1.2 Python语言的特点 2. Python解释器的安装与Python程序运行 1.2.1 安装Pyth ...
- 全国计算机等级考试二级Python精品题库学习笔记1
全国计算机等级考试二级Python精品题库学习笔记1 精品试卷01 精品试卷01程序题 基本操作题 2:随机验证码 基本操作题 3:比赛成绩计算 Turtle 绘图题:同心圆 简单应用题 2:员工工资 ...
- Python快速编程入门#学习笔记03# |第二章 :Python基础(代码格式、标识符关键字、变量和数据类型、数字类型以及运算符)
全文目录 ==先导知识== 学习目标: 2.1 代码格式 2.1.1 注释 2.1.2 缩进 2.1.3 语句换行 2.2 标识符和关键字 2.2.1 标识符 2.2.2 关键字 2.3 变量和数据类 ...
- 《计算广告》学习笔记(四)
<计算广告>学习笔记(四) 第七章:数据加工与交易 7.1有价值的数据来源 7.2数据管理平台 7.2.1三方数据划分 7.2.2第一方数据管理平台 7.2.3第三方数据平台 7.3数据交 ...
- Python第三方库pygame学习笔记(一)
Pygame Python最经典的2D游戏开发第三方库,也支持3D游戏开发 Pygame适合用于游戏逻辑验证.游戏入门及系统演示验证 Pygame是一种游戏开发引擎,基本逻辑具有参考价值 pygame ...
- 《计算广告》学习笔记(一)
<计算广告>学习笔记(一) 0.写在前面 1.第一章:在线广告综述 1.1:免费模式与互联网核心资产 1.2:大数据与广告的关系 1.3:广告的定义与目的 1.4:在线广告的表现形式 1. ...
- 计算鬼成像学习笔记二:二阶关联函数探究
计算鬼成像学习笔记二:二阶关联函数探究 1 一阶关联函数 2 二阶关联函数 3 二阶关联如何重构物体 4 差分鬼成像关联公式 5 归一化鬼成像关联公式 1 一阶关联函数 一阶关联函数是光场的电场强度之 ...
- Python+cplex运筹优化学习笔记(三)-营养膳食选择
Python+cplex运筹优化学习笔记(三)-营养膳食选择 前言 首先呢,说明一下,本文只是自己在学习过程中运用到的例子,然后规整总结一下,随便写写自己所做的一些笔记.小白学习,有不对的地方还望大家 ...
- 36篇博文带你学完opencv :python+opencv进阶版学习笔记目录
基础版学习笔记传送门 36篇博文带你学完opencv :python3+opencv学习笔记汇总目录(基础版) 进阶版笔记 项目 opencv进阶学习笔记1: 调用摄像头用法大全(打开摄像头,打开摄像 ...
最新文章
- opencv感兴趣区域ROI的图像混合操作
- 数据库自动收缩带来的严重问题
- ffmpeg3.3新版本AVStream的封装流参数由codec替换codecpar
- 探索初级算法学习笔记-快速排序法
- Scala 空返回值Unit
- Boost.MultiIndex 双向映射示例
- VTK:可视化之RenderLargeImage
- python数组展示_python如何显示数组
- C语言封顶,我们的大屋顶|阳光方舟2.0--C-HOUSE正式封顶
- Hibernate之查询
- 屏幕录像专家 共享版 V7.5 安装图解
- centos 删除服务器文件夹,centos彻底删除文件夹、文件命令
- IAR for STM8的简介、下载、安装及注册教程
- 数字图像处理——大家来找茬(Python)
- Ant Design select下拉框突然拉长
- HTML下拉菜单怎么做成横向,纯css实现横向下拉导航菜单(可做左侧类目导航)
- 用ch341a刷写主板bios
- Harris角点及Shi-Tomasi角点检测
- 超棒的HTML5/CSS3单页面响应式模板(支持Bootstrap)
- 我是如何管理我的团队的?
热门文章
- Linux检查服务器cpu状态脚本,Linux服务器硬件运行状态及故障邮件提醒的监控脚本分享...
- matlab cat函数_MATLAB的Categorical数组
- scopt解析参数实例
- logistic回归详解(三):梯度下降训练方法
- java 加载java文件_如何用JAVA实现加载一个文件?
- 自动化测试Linux和fio,一种基于fio实现的SSD性能自动化测试方法与流程
- 无线传感网络定向扩散路由仿真matlab,确定性无线传感器网络定向扩散路由协议...
- go 调用 另一个go 的方法_Go 经典入门系列 17:方法
- mysql like 全文索引_mysql like%query是慢全文索引
- php 正则预搜索?=