AverageMeter一个用来记录和更新变量的工具
之前使用过很多次,也没有做很好的记录,这次记录下来。AverageMeter可以记录当前的输出,累加到某个变量之中,然后根据需要可以打印出历史上的平均
这个class是一种常用的工具
该class内容如下
class AverageMeter(object):
def __init__(self):
self.reset()
def is_empty(self):
return self.cnt == 0
def reset(self):
self.avg = 0.
self.sum = 0.
self.cnt = 0
def update(self, val, n=1):
self.sum += val*n
self.cnt += n
self.avg = self.sum / self.cnt
这样在调用的时候,可以先声明
obj = AverageMeter()
需要将所有变量清零的时候,调用
obj.reset()
然后需要更新某个变量的时候
obj.update(x)
这样的话比如想要求平均,就可以直接用
obj.avg
即可
posted on 2020-12-13 17:03 YongjieShi 阅读(3603) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?