python中的ProgressMeter类【自定义】

news2024/11/18 8:52:29

python中的ProgressMeter类【自定义】

显示进度条

# 1.定义类ProgressMeter
class ProgressMeter(object):
    def __init__(self, num_batches, *meters):
        # 初始化头,如:[ 100/2500](占符号位)
        self.batch_fmtstr = self._get_batch_fmtstr(num_batches)
        self.meters = meters
        self.prefix = ""

    # 每个批量的打印结果
    def pr2int(self, batch):
        entries = [self.prefix + self.batch_fmtstr.format(batch)]
        # 每个格外变量的打印,拼接为向量
        entries += [str(meter) for meter in self.meters]
        # 将向量用\t再拼接为字符串
        print('\t'.join(entries))   

    def _get_batch_fmtstr(self, num_batches):
        # 如:[ 100/2500]
        # 批量大小的符号位
        num_digits = len(str(num_batches // 1))
        fmt = '{:' + str(num_digits) + 'd}'
        return '[' + fmt + '/' + fmt.format(num_batches) + ']'

# 2.使用
batch_time = AverageMeter('Time', ':6.3f')
losses = AverageMeter('Loss', ':.4e')
top1 = AverageMeter('Acc@1', ':6.2f')

# len(train_loader): 批量数
# batch_time: 每批计算所用时长
# losses: 所有损失
# top1:这批的准确率
progress = ProgressMeter(len(train_loader), batch_time, losses, top1)

# 打印结果
if i % 100 == 0:
      progress.pr2int(i)

在这里插入图片描述

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

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

相关文章

JVM原理(三):JVM对象回收判定机制与回收算法

如何判断一个对象是否存活(即是否还分配在堆中),那看他是否还在用。 1. 引用计数算法 这是一种判断方式,相应的方法就是:如果一个对象被引用,那将被引用的对象中的一个计数器加一,引用失效就减一。在任何时刻引用计数…

数千万“四高”中老年患者,如何推动国产营养保健品创新

“三高”指高血压、高血糖(糖尿病)、高血脂,是中老年群体的常见病。 然而,除了前述三者,高尿酸血症在我国的患病率正逐年提高,已成为仅次于糖尿病的第二大代谢性疾病。痛风是高尿酸血症典型症状之一。 加上…

Lesson 48 Do you like ... ? Do you want ... ?

Lesson 48 Do you like … ? Do you want … ? 词汇 fresh a. 新鲜的【食物】 搭配:fresh water 淡水    fresh man 新生    fresh air 新鲜空气    fresh egg 新鲜鸡蛋 例句:我们喜欢新鲜的空气。    We like fresh egg. egg n. 蛋【通…

电容的常用用法

1.降压,其实就是用电容去分压,没什么好说的 2.滤波,高频信号下,电容的容抗非常小,所以说容易让高频信号通过电容,而低频信号下电容容抗大,从而能够滤出高频信号 3.延时,电容充放电需…

优思学院与你探索六西格玛:从统计术语到现代质量管理方法

六西格玛,这个源自统计学的术语,已经在质量管理领域掀起了一场革命。然而,很多初学者,包括参加优思学院六西格玛课程的学生,常常对其真正的意义感到困惑。本文将带领大家深入了解六西格玛,从其统计学起源到…

Node.js的下载、安装和配置

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

SpringBoot 启动流程四

SpringBoot启动流程四 前面这个创建对象是初始化SpringApplication对象 是加载了SpringBoot程序的所有相关配置 我们接下来要将这个run方法 run过程是一个运行 初始化容器 我们看我们的运行结果是得到一个ConfigurableApplicationContext对象 package com.bigdata1421.star…

ChatMoney:AI看病,私人医生不是梦想!

本文由 ChatMoney团队出品 在当今这个科技飞速发展的时代,人工智能技术正在以惊人的速度改变着我们的生活,人工智能已经深入到各个领域,医疗行业也不例外。 而今天我要和大家聊一聊利用ChatMoney全能知识库AI系统在求医问诊领域所发挥的巨大…

Elasticsearch实战教程:如何使用集群索引数据来进行统计多个数据?

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 引入 Elasticsearch聚合查询是一种强大的工具,允许我们对索引中的数据进行复杂的统计分析和计算。本文将详细解释一…

【分布式系统五】监控平台Zabbix实际监控运用(命令+截图详细版)

目录 一.Zabbix 监控 Windows 1.安装zabbix 2.Web 页面添加主机,关联模板 二.Zabbix 监控 Java 应用 1.安装tomcat 2.服务端安装 zabbix-java-gateway 3.Web 页面添加主机,关联模板 三.Zabbix 监控 SNMP 1.服务端安装 snmp 监控程序 2.修改 sn…

小型全自动气象站的知识分享

TH-QC5小型全自动气象站具有便携式一体化结构设计,外形美观,安装方便简捷,可靠运行于各种恶劣的野外环境。它能够实时监测温度、湿度、风速、风向、雨量、气压、光照等多种气象参数,并且这些气象观测要素的配置方式可以根据项目的…

stm32定时器与pwm波

文章目录 4 TIM4.1 SysTick系统定时器4.2 TIM定时器中断与微秒级延时4.3 TIM使用PWM波4.3.1 PWM介绍4.3.2 无源蜂鸣器实现 4.4 TIM ,PWM常用函数 4 TIM 4.1 SysTick系统定时器 ​ Systick系统滴答,(同时他有属于自己的中断,可以利用它来做看…

OceanMind海睿思成功举办“数据要素×人工智能” 研讨会,荣获上海数交所授牌

近日,由南京东南人工智能产业链供应链创新链党建联盟、上海数据交易所主办,中新赛克承办的“数据要素人工智能”行业应用研讨会在南京成功举办。 本次活动是东南人工智能产业链供应链创新链党建联盟2024年度“人工智能人才服务行动项目”第二期活动。会议…

环境检测聚四氟乙烯微波消解罐 特氟龙反应釜 适用于COD测定

COD消解罐是实验室中用于测定水样中化学需氧量(Chemical Oxygen Demand,简称COD)的一种专用设备。化学需氧量是衡量水体污染程度的一个重要参数,它表示在一定条件下,水样中的有机物质和部分无机物质被氧化的程度。以下…

linux——小细节(Makefile)(gdb)

一、makefile a.out:main.c func.cgcc main.c func.cclean:rm a.out a.out:main.c func.cgcc $^ -o $clean:rm a.out SRCmain.c func.c OBJa.out CCgcc FLAG -g -lpthread $(OBJ):$(SRC)$(CC) $(SRC) $(FLAG)clean:rm $(OBJ) 二、gdb

玩客云刷Armbian安装docker、alist、OpenWrt、Aria2等教程及所需文件(内容详细)

这篇教程主要是本人在这里面踩的坑比较多,网上的教程很多,感觉都不太详细,分享一下自己的经验。 注意本教程的图片都是后期补的,可能与原文内容不符,仅供参考,图片里面会出现小雅,memos笔记&am…

记录第一次写脚本

使用csh语言,Linux系统操作的 写和执行csh(C Shell)脚本不需要额外的软件,只需要一个支持csh的终端环境。 1.检查是否安装了C Shell 在终端terminal运行以下命令 which csh 如果返回路径,比如/bin/csh&#xff0c…

昇思25天学习打卡营第17天|GAN图像生成

模型简介 GAN模型的核心在于提出了通过对抗过程来估计生成模型这一全新框架。在这个框架中,将会同时训练两个模型——捕捉数据分布的生成模型G和估计样本是否来自训练数据的判别模型D 。 在训练过程中,生成器会不断尝试通过生成更好的假图像来骗过判别…

怎么在表格后添加文字行行

Ctrl Shift 回车 解决方案 在表格末尾添加一行(表格行)。 (此时光标应该默认在这个新行中,如果没有,自己手动点一下) 按 Ctrl Shift 回车 将此行与前面的表格拆分开,中间会出现一个空文本行…

离散傅里叶变换(Discrete Fourier Transform,DFT)

离散傅里叶变换(Discrete Fourier Transform,DFT)是信号分析中的一种基本方法,它将离散时序信号从时间域变换到频率域,是傅里叶变换在时域和频域都呈现离散的形式。以下是关于离散傅里叶变换的详细介绍: 一…