首页 > 其他分享 >基于Tensorflow的Faster-Rcnn的断点续训

基于Tensorflow的Faster-Rcnn的断点续训

时间:2023-06-12 17:26:01浏览次数:50  
标签:last Faster 续训 iter checkpoint ckpt 断点

一、前言

  最近在学习目标检测,到github上找了一个开源的Faster-RCNN项目(Tensorflow),项目地址是:https://github.com/dBeker/Faster-RCNN-TensorFlow-Python3

  根据网上的各种教程,模型训练还算顺利,不过这个项目缺少断点续训的功能。也就是中途误操作导致训练中止,就只能从头开始训练,模型的训练还是需要比较长的时间,没有断点续训不是很方便。因此在原项目的基础上新增了断点续训功能。

二、断点续训

  找到项目根目录下的train.py文件,在 last_snapshot_iter = 0 这行代码后新增以下代码块:

        ckpt = tf.train.get_checkpoint_state("./default/voc_2007_trainval/default")
        if ckpt and ckpt.model_checkpoint_path:
            self.saver.restore(sess,ckpt.model_checkpoint_path) #恢复当前会话sess,将ckpt中的值赋给w和b
            last_checkpoint = ckpt.model_checkpoint_path #最近模型路径
            ins_start = last_checkpoint.index("iter_")+5
            ins_end = last_checkpoint.index(".ckpt")
            last_iter = last_checkpoint[ins_start:ins_end] #最近模型的迭代次数
            last_snapshot_iter = int(last_iter)    

 

  加完代码之后,训练中止时,执行python train.py,即可自动检测是否断点续训。如果想重新开始训练模型,将 default/voc_2007_trainval/default 目录下的内容删除即可。

 

标签:last,Faster,续训,iter,checkpoint,ckpt,断点
From: https://www.cnblogs.com/yijunjiechen/p/17475580.html

相关文章

  • 射线法判断点是否在多边形内
    射线法isPointInPolygon方法用于判断点是否在多边形内部,points表示多边形各个点的坐标,point表示要判断的点的坐标publicclassPointInPolygon{/***判断点是否在多边形内部**@parampoints多边形各个点的坐标*@parampoint要判断的点的坐标......
  • Python 3.8实现支持断点续传的网络文件下载功能
    功能描述:下载URL指定的网络文件,支持断点续传。代码支持Python3.5/3.6/3.7/3.8以及更新的版本。所谓断点续传,是指因为各种原因下载过程被中断之后,再次下载时会继续之前的工作,避免重复下载浪费时间。参考代码:以spark官方下载地址为例,220M的文件。运行结果:......
  • MyEclipse的使用和程序的断点调试(含常用快捷键)
    MyEclipse的使用     工作空间目录是纯英文不带空格的路径     在eclipse下Java程序的编写和运行,及java运行环境的配置。     新建java工程day01,在弹出窗口中可配置jre     工程右键属性可配置编辑器的版本    调试程序     Debug窗口       ......
  • 使用GDB调试断点信息是gdb动态添加或取消的还是将断点烧录到elf文件的?断点信息是如何
    使用GDB调试断点信息是gdb动态添加或取消的还是将断点烧录到elf文件的?断点信息是如何加载进单片机的并进行加下来的调试运行的? from:GPT-4GDB(GNU调试器)是一个用于调试程序的强大工具,它可以让你设置断点、检查变量和内存、执行单步调试等。在单片机(微控制器)上使用GDB进行调试......
  • pycharm的scrapy框架-断点调试
    在文件根目录,也就是settings.py的上级目录,scrapy.cfg的同级目录,创建main.py:fromscrapy.cmdlineimportexecuteimportosimportsysif__name__=='__main__':sys.path.append(os.path.dirname(os.path.abspath(__file__)))execute(['scrapy','crawl......
  • 目标检测:RPN — Faster R-CNN 的主干
    动动发财的小手,点个赞吧!在使用R-CNN的目标检测中,RPN是真正的主干,并且到目前为止已被证明非常有效。它的目的是提出在特定图像中可识别的多个对象。这种方法是由ShaoqingRen、KaimingHe、RossGirshick和JianSun在一篇非常受欢迎的论文“FasterR-CNN:TowardsRealTime......
  • vscode配置单个cpp文件打断点的文件
    (51条消息)【工具】VScode设置断点调试(以cpp为例)_vdcode运行断点cpp_沙diao网友的博客-CSDN博客launch.json内容{//UseIntelliSensetolearnaboutpossibleattributes.//Hovertoviewdescriptionsofexistingattributes.//Formoreinformation,......
  • 空间判断点是否在线段上
    空间判断点是否在线段上的原理以及实现目录1.概述2.详论3.参考1.概述判断点是否在线段上的算法非常简单,有很多种实现方式,总结一下我自己的实现。2.详论个人认为通过向量计算的方式是比较好的,因为可以保证在二维和三维的情况都成立。判断空间中点P是否......
  • WebUploader 超大文件上传和断点续传的实现
    ​ 4GB以上超大文件上传和断点续传服务器的实现随着视频网站和大数据应用的普及,特别是高清视频和4K视频应用的到来,超大文件上传已经成为了日常的基础应用需求。但是在很多情况下,平台运营方并没有大文件上传和断点续传的开发经验,往往在网上找一些简单的PHP或者Java程序来实现基......
  • C#.NET 超大文件上传和断点续传的实现
    ​IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续传......