【炼丹神器】wandb实践之sweep超参扫描工具

2024-01-09 18:36

本文主要是介绍【炼丹神器】wandb实践之sweep超参扫描工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

文章目录

  • 一、四步上手wandb
  • 二、四步玩转sweep

参考官方文档:https://docs.wandb.ai/guides/sweeps/define-sweep-configuration

一、四步上手wandb

首先,wandb其实类似tensorboard,mindinsight,都是观察训练时的学习率,训练loss、验证loss等指标以了解训练进程的工具。使用wandb的功能还是要先学会在训练代码中嵌入wandb,这个官网其实跟详细,可以参考:https://docs.wandb.ai/quickstart

总结一下就是:

  1. 先注册账号,去往以下链接注册:https://wandb.ai/home
  2. 安装wandb: pip install wandb
  3. 设置环境变量:export WANDB_API_KEY=注册的时候会给你
  4. 将wandb嵌入代码中,可以根据quickstart看下如何嵌入代码中记录准确率等训练参数。

在这里插入图片描述

二、四步玩转sweep

接下来就可以上手sweep了,sweep工具具备搜索超参的功能,对于预设的参数,搜索的方法,指定训练次数以及评判的指标,一段时间后训练出如此图,可以快速的分析哪些参数的组合效果最佳。
在这里插入图片描述

使用sweep有两种方式,一种是嵌入代码的方式,一种是用yaml文件的方式,这边用了yaml文件的方式。

  1. 代码中把sweep的参数赋值给代码中使用的变量,如args:
    [图片]
    这里要注意,参数赋值必须在使用这些参数之前,最好在刚进入函数的地方赋值。

  2. 创建config.yaml
    这里要注意分为几大部分,如果有自己的参数放在command里面,上面sweep官方链接其实讲的算清楚了,这里直接举例。
    [图片]

  3. 一条命令行启动sweep,并获得sweep id

wandb sweep --project TResnetM config.yaml

[图片]

  1. 再一条命令行启动训练
wandb agent --count 5 thomascai/TResnetM/XXXX

然后打开https://wandb.ai/登入你的账号即可查看。

Enjoy~

∼ O n e p e r s o n g o f a s t e r , a g r o u p o f p e o p l e c a n g o f u r t h e r ∼ \sim_{One\ person\ go\ faster,\ a\ group\ of\ people\ can\ go\ further}\sim One person go faster, a group of people can go further

这篇关于【炼丹神器】wandb实践之sweep超参扫描工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/588050

相关文章

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Springboot整合Redis主从实践

《Springboot整合Redis主从实践》:本文主要介绍Springboot整合Redis主从的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言原配置现配置测试LettuceConnectionFactory.setShareNativeConnect

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

java中Optional的核心用法和最佳实践

《java中Optional的核心用法和最佳实践》Java8中Optional用于处理可能为null的值,减少空指针异常,:本文主要介绍java中Optional核心用法和最佳实践的相关资料,文中... 目录前言1. 创建 Optional 对象1.1 常规创建方式2. 访问 Optional 中的值2.1

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.