tensorflow 迭代周期长,每个epoch时间变慢

理论上,session启动后,每个epoch训练时间应该是差不多,而且不会因为迭代周期变长,epoch时间变慢。原因是session里定义了tf.op导致的,每一次迭代都会在graph里增加新的节点,导致memory leak,程序越来越慢,最后强行退出。解决方法,可以在session里定义graph.finalize()锁定graph。比如:

sess = tf.Session()
for epoch in range(EPOCHS):...sess.graph.finalize() #增加这行

知乎讨论:https://www.zhihu.com/question/58577743

Stackoverflow讨论:https://stackoverflow.com/questions/39070708/why-sometimes-tensorflow-runs-slower-and-slower-with-the-process-of-training

具体操作步骤:

tf.reset_default_graph()  # 重置默认图
graph = tf.Graph()        # 新建空白图
with graph.as_default() as g:   # 将新建的图作为默认图
    with tf.Session(graph=g):   # Session  在新建的图中运行
        # 需要运行的代码放这里,每次运行都会使用新的图

--------------------- 
作者:yinxingtianxia 
来源:CSDN 
原文:https://blog.csdn.net/yinxingtianxia/article/details/78211701 
版权声明:本文为博主原创文章,转载请附上博文链接!

tensorflow 迭代周期长,每个epoch时间变慢相关推荐

  1. 您知道为何要采用固定的迭代周期吗

    转载请注明出处:https://www.scrumcn.com/agile/scrum/24004.html 本文作者:李洁(Jerry Li),CSP,CSM,Scrum中文网资深敏捷顾问和培训师, ...

  2. mysql加索引后查询时间变长了(终于有头绪了)

    在使用ip查询的地址(地址和ip对应的信息存在mysql中,使用的是myisam)的过程中遇到一个这样的问题: 给表中的一些字段加索引后查询时间变长了,cpu飙升了 该表的结构如下 这是什么原因呢难道 ...

  3. 案例剖析:你团队的迭代周期该如何设定?

    (PS:案例部分,节选自公众号Agile2046) 很多敏捷团队一开始不知道迭代周期设定多长合适.一般来说,迭代周期在1周到1个月以内的周期,而且一旦选定,迭代的长度在整个开发过程中保持一致.新的迭代 ...

  4. DSSS信号的分类(周期长码短码与非周期长码)

    根据伪码周期和信息码周期之间的倍数关系,DSSS信号可分为3类: 1.当伪码周期与信息码周期相等时,称为短码直扩信号(SC-DSSS): 码元周期T0=NTc;N为伪码长度,Tc为码片周期 2.当伪码 ...

  5. 关于SD卡随着写入文件的增多时间变慢原因以及解决办法

    问题: SD卡随着文件增多,建立文件的时间变慢.假如你本想1s建立一个文件,随着文件增多可能导致2s 3s或者更久才建立一个文件. 原因分析: 在SD卡写数据文件的时候,我们通常会建立以日期为名字的文 ...

  6. 关于ASP.NET MVC 项目在本地vs运行响应时间过长无法访问时,解决方法!

    关于ASP.NET MVC 项目在本地vs运行响应时间过长无法访问时,解决方法! 参考文章: (1)关于ASP.NET MVC 项目在本地vs运行响应时间过长无法访问时,解决方法! (2)https: ...

  7. js new Date()不带时分秒时,时间变了 问题解决

    js new Date()不带时分秒时,时间变了 问题解决 参考文章: (1)js new Date()不带时分秒时,时间变了 问题解决 (2)https://www.cnblogs.com/q149 ...

  8. DL之CNN:基于CNN-RNN(GRU,2)算法(keras+tensorflow)实现不定长文本识别

    DL之CNN:基于CNN-RNN(GRU,2)算法(keras+tensorflow)实现不定长文本识别 目录 输出结果 实现代码 输出结果 后期更新-- 实现代码 后期更新-- image_ocr代 ...

  9. php长轮询阻塞,ajax长轮询时php被阻塞

    刚接触实时通讯这块,知道用websocket更高效,但我想了解轮询的实现过程,循序渐进 短轮询用定时器setInterval已经实现了,但长轮询时后台进入死循环模块导致整个网站的php网页无响应,比如 ...

最新文章

  1. Docker对AUFS的使用
  2. 框架之---Django
  3. laravel中单独获取一个错误信息的方法
  4. 求给定数组子数组中最接近0的和
  5. comsol固体传热_【 COMSOL 知识库】如何解决 COMSOL 软件“内存不足” 的问题
  6. linux cgi命令,Linux之cgi实现系统主机监控
  7. 104.202.60.2/.index.php,web扫描
  8. C# 中XML序列化与反序列化学习笔记
  9. java实现物体下落效果_手撸一个物体下落的控件,实现雪花飘落效果
  10. jquery的extend和fn.extend
  11. JAVA 基础之 多线程
  12. 解压vmlinuz和解压initrd(initramfs)
  13. 均值滤波器、中值滤波器、滤波器的常见应用。
  14. ldDWR出现“例外被抛出且未被接住 解决方法
  15. Retinex理论,单尺度Retinex、多尺度Retinex(MSR)、带颜色恢复的多尺度 Retinex(MSRCR)原理
  16. 电路交换与分组交换的区别
  17. 用Python做一只真·多足机器人,钢铁蜈蚣能弯曲还能蠕动
  18. 六个免费的虚拟主机管理系统
  19. 【数学】有理分式的拆解技巧
  20. SAP中统驭科目理解及举例

热门文章

  1. Python画ROC图与AUC值
  2. 让ChatGPT来写今年的高考作文,会得几分?
  3. c语言中的头文件string.h的作用,C语言常用头文件及库函数——string.h
  4. 【星海随笔】Centos8试用jupyter问题合集
  5. LeetCode面试常见100题( TOP 100 Liked Questions)
  6. android防拷贝防复制,用防拷贝u盘软件实现禁止复制u盘内文件、u盘加密防拷贝法...
  7. cmd命令行窗口运行py文件
  8. 阿里巴巴菜鸟网路技术二面+现场面
  9. r7 3700u和i5 8250u的区别哪个好
  10. 封装一个简陋的promise