服务器量化训练操作说明

Freespace服务器预训练主要步骤:

  1. 首先登录堡垒机,命令如下:

ssh xxx@relay.baidu-int.com  (xxx为个人邮箱前缀)

密码为个人邮箱密码

  1. 登录工作机,命令如下:

ssh l3@yq01-gpu-255-122-22-00.epc.baidu.com

密码为:l3

  1. 在工作机上找到freespace网络的训练源码及脚本(该版本为验证成功版本),原始路径为/home/l3/chenghongkuan/freespace/perception-tnt8.2, 在根目录下新建一个自己的目录,如,并将原始路径下的内容拷贝到个人目录下。
  2. 集群环境配置
    1. slurm客户端工具拷贝:工作机slurm客户端工具已安装,位置为,可以直接将该部分内容copy到自己的目录下:
    2. Token申请:在自己的客户端目录下,执行以下命令完成个人token的申请,会收到邮件,注意查收:
    3. Token配置:执行以下命令完成个人token的配置,其中ak以及sk可以在申请时收到的邮件中查到,配置成功会收到邮件,

  1. 训练任务提交:该部分暂时先按最简单的方式来操作,操作如下
    1. 在自己的训练路径下,找到submit.sh, 修改submit.sh中的HGclient的地址,改为自己目录:

    1. 在自己的训练路径下,找到train.sh,可以将job_name改为自己定义的名字;
    2. 在自己的训练路径下,找到freespace.yaml,检查DATASET:TRAINING:DATA_MODULE是否为apps.freespace.src.data.sfs_v3.SFSDataset,检查MODEL:BACKBONE:CONV_BODY是否为SfsVps;
    3. 在自己的训练路径下,找到train.sh,并执行sh train.sh,将训练任务提交到远程集群进行训练,如果训练任务提交成功则会有如下打印信息:

阡陌控制台也会查到当前提的任务,界面如下:

  1. 训练模型获取:在阡陌服务器页面中“我的作业”中找到本次训练的任务,然后点击“查看overview”

,进入Log Agent界面,点击“output”,选中模型,点击“download”进行模型下载,

 

Freespace量化参数提取主要步骤:

  1. 将预训练出的模型如model_0530000.pth拷贝到目录perception-tnt/tnt/entries/output/下。
  2. 修改perception-tnt目录下的freespace.yaml,修改如下:

将注释打开,并且,修改WEIGHT文件为新生成的模型文件,如/tnt/entries/output/model_0530000.pth;

  1. 修改perception-tnt/tnt/entries/目录下的train_net.py,修改如下:

将此段do_train代码注释掉;

  1. 在perception-tnt/tnt/entries/目录下执行python train_net.py --config-file ../../freespace.yaml --compress-file ../../ apps/freespace/config/compressor_config.yaml --skip-test 0 ,执行完后会在perception-tnt/tnt/entries/output/目录下生成quantization_stats.yaml。

Freespace服务器重训练主要步骤:

  1. 下载最新的perception-tnt源码到工作机,分支切换为dev_fpga_v3
  2. 修改freespace.yaml中的内容如下所示:

将中的sfs_swapchannel 改成 sfs_v3中的SfsVps改为SfsVpsV3;

  1. 将模型文件以及量化参数文件quantization_stats.yaml拷贝到/tnt/entries/output/目录下。
  2. 将BASE_LR设置为原来训练好网络最后的LR,如果之前的记录丢失,可以将该值设置的小一点;
  3. 按照预训练步骤5,6进行训练以及模型获取。

相关资料及重要信息:

  1. 服务器训练总体参考,可以看http://icode.baidu.com/repos/baidu/adu-lab/perception-tnt/blob/master:README.md 中的下图部分:

  1. SLURM客户端的安装与配置,可以参考wiki:

http://wiki.baidu.com/pages/viewpage.action?pageId=365141511

当前客户端工具已经在工作机安装完成,剩下的主要工作是token的申请与配置部分

  1. 训练所需要的GPU集群可以在http://newqianmo.baidu.com/index.jsp#/user/gpu?status=RUNNING&_k=j0cckg 查找到,相关同学应该有相关权限,如下图所示

  1. 查看提交的训练任务详情:

  1. 撤回提交的训练任务:    

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

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

相关文章

如何在小程序首页隐藏商品分类

​因为在分类页面有显示分类,所以有的商家希望在首页就不显示分类啦。下面就介绍一下如何在首页隐藏商品分类。 在小程序管理员后台->页面设置->首页,显示商品分类设置为否。设置后,在小程序首页商品分类就不会显示啦。注意&#xff1a…

django rest_framework 框架动态设置序列化返回的字段

动态修改字段可以使Django rest框架API像graphQL端点一样,只从模型中检索所需的字段。 一旦序列化器被初始化,就可以使用.fields属性访问序列化器上设置的字段字典。访问和修改此属性允许您动态修改序列化器。 显式地修改fields参数可以帮助您做一些奇…

关于Integer类的一个有趣的面试问题

相信很多人觉得答案是false,false,因为Integer是一个类,把int类型的数据传给Integer类型的数据会创建一个对象,而a,b,c,d作为引用指向的是不同的地址,所以判断相同得到的结果应该是false 但这个想法就正中下怀了&#…

【Spring篇】初识 Spring IoC 与 DI

目录 一. Spring 是什么 ? 二. 何为 IoC ? 三. 如何理解 Spring IoC ? 四. IoC 与 DI 五 . 总结 一. Spring 是什么 ? 我们通常所说的 Spring 指的是 Spring Framework(Spring 框架),它是⼀个开源框架,有着活跃⽽ 庞⼤…

探秘Spring中Bean的注解宝典:解读存取Bean的相关注解及用法

目录 存储Bean对象Controller(控制器存储)Service(服务存储)Repository(仓库存储)Component(组件存储)Configuration(配置存储)Bean重命名Bean 获取Bean对象属性注入构造方法注入Setter注入Resource(注入关键字) 存储Bean对象 将对象存储在 Spring 中,有两种注解类…

【Linux】信号保存信号处理

前言:对信号产生的思考 上一篇博客所说的信号产生,最终都要有OS来进行执行,为什么?OS是进程的管理者!信号的处理是否是立即处理的?在合适的时候 -》那什么是合适的时候?信号如图不是被立即处理…

Windows安装RabbitMQ

Windows安装RabbitMQ 前言配置erlang环境下载配置环境变量验证 安装RabbitMQ验证 参考 前言 本文并不涉及到RabbitMQ的底层原理,或者别的一些特性说明,仅仅只是安装。 配置erlang环境 因为RabbitMQ是使用该语言开发的。 下载 下载地址: …

《qt quick核心编程》笔记一

1.基础HelloWorld代码 import QtQuick 2.15 import QtQuick.Window 2.15 import QtQuick.Controls 2.15Window {width: 400height: 300visible: truetitle: qsTr("Hello 1World")Rectangle {width: parent.widthheight: parent.heightcolor: "gray"Text {…

【数据挖掘】bytewax 与 ydata工具可实时了解您的数据

一、说明 在这篇博文中,我们将介绍如何将开源流式处理解决方案 bytewax 与 ydata 分析相结合并加以利用,以提高流式处理流的质量。 STream 处理支持在传输中和存储之前对数据进行实时分析,并且可以是有状态的,也可以是无状态的。 …

【网络编程】网络套接字udp通用服务器和客户端

1.预备知识 认识端口号 端口号(port)是传输层协议的内容: 端口号是一个2字节16位的整数(uint16)端口号用来标识主机上的一个进程IP地址port能够标识网络上的某一台主机和某一个进程一个端口号只能被一个进程占用 认识TCP协议 此处我们先对TCP(Transmission Con…

Spring MVC异步上传、跨服务器上传和文件下载

一、异步上传 之前的上传方案,在上传成功后都会跳转页面。而在实际开发中,很多情况下上传后不进行跳转,而是进行页面的局部刷新,比如:上传头像成功后将头像显示在网页中。这时候就需要使用异步文件上传。 1.1 JSP页面 …

[golang gin框架] 41.Gin商城项目-微服务实战之后台Rbac微服务(用户登录 、Gorm数据库配置单独抽离、 Consul配置单独抽离)

上一节抽离了captcha验证码功能,集成了验证码微服务功能,这一节来看看后台Rbac功能,并抽离其中的用户登录,管理员管理,角色管理,权限管理等功能作为微服务来调用 一.引入 后台操作从登录到后台首页,然后其中的管理员管理,角色管理,权限管理等功能可以抽离出来作为 一个Rbac微服…

Python实战

官方文档 请点击下面工程名称,跳转到代码的仓库页面,将工程 下载下来 Demo Code 里有详细的注释 LearnPythonPython 实现功能点demo

OpenCV for Python 实战(一):获取图片拍摄GPS地址并自动添加水印

Hello 我们在OpenCV每天的基础博客当中已经更新了很多了,那么今天我们就来结合前几天的内容。做一个获取属性然后添加对应属性的水印。那让我们赶快开始吧~ 文章目录 图片EXIFPython 获取EXIFexifread库使用方法转换成文字地址 添加水印cv2.putText() 每日总结 图片…

【001 操作系统】什么是线程、进程?线程进程的区别是什么?

一、什么是线程、进程? 进程:进程是资源分配的基本单位,它是程序执行时的一个实例,在程序运行时创建。 在Linux环境下,每个进程有自己各自独立的 4G 地址空间,大家互不干扰对方,如果两个进程之间…

基于大模型的Text2SQL微调的实战教程

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

Homography单应性矩阵

1. Homography 单应性概念 考虑 同一个平面(比如书皮)的两张图片,红点表示同一个物理坐标点在两张图片上的各自位置。在 CV 术语中,我们称之为对应点。 Homography 就是将一张图像上的点映射到另一张图像上对应点的3x3变换矩阵. 因为 Homography 是一个 …

Python模块requests基本用法

简介 Python 的 requests 模块是一个流行的第三方库,用于发送HTTP请求。它提供了一组简洁且易于使用的API,使得在Python中进行网络通信变得更加简单和灵活。 目录 1. 基本概念 1.1. HTTP 协议 1.2. GET 请求 1.3. POST 请求 1.4. get 和 post 的区别…

java本地socket服务端暴露至公网访问【内网穿透】

前言 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于恒川的日常汇报系列,大家有兴趣的可以看一看 📘相关专栏C语言初…

蓝桥杯专题-真题版含答案-【生命之树】【消除尾一】【密码脱落】【生日蜡烛】

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 👉关于作者 专注于Android/Unity和各种游…