HOW TO STOP TIME —— 序

汤姆·哈泽德拥有一项危险的秘密:由于一种罕见的状况,他已活过多个世纪,从伊丽莎白时期的英格兰到爵士时代的巴黎,再到纽约与南海。尽管经历了无数时代,他却始终追求平凡的生活。为了生存,他不断变换身份,目前伪装成伦敦一所学校的教师,教导学生历史,仿佛那些战争与猎巫行动从未亲身经历过。然而,他唯一无法做到的是去爱。

7月份于台北诚品书店购英文原版,闲暇之余自翻译阅读以学习英语,水平拙略,欢迎指教。

 

   汤姆·哈泽德 有一个危险的秘密,他或许看起来像是一个普通的40岁中年人,但这是一种罕见的情况(疾病), 他活了很多世纪,从伊丽莎白时期的英格兰到爵士时代的巴黎,从纽约到南海,汤姆经历了很多,现在他只渴望普通的生活。

        他常常更换自己的身份去生存,汤姆有一个完美的幌子(cover) —— 在 一所伦敦的综合学校做历史老师。这里他可以教授孩子们关于战争和政治(女巫猎人) 就好像他从未见过它们一样。他会努力的平复过去,that catching up with him.  汤姆唯一不能做的事是爱。

How to stop time 是一个关于失去和寻找你自己的疯狂的苦乐参半的故事,关于变化的确定性,关于一生,他将学习如何去生活。

 

------原文

        TOM HAZARD has dangerous secret. He may look like an ordinary 41-years-old. but owing to a rare condition,he's been alive for centuries.Form Elizabethan England to Jazz-Age Paris,from New York to the South Seas,Tom has seen a lot,and now carver an ordinary life.

        Always changing his identity to stay alive,Tom has the prefect cover - working as a history teacher at a London comprehensive.Here he can teach the kids about wars and witch hunts as if he'd never witnessed them first-hand.He can try to tame the past that is fast catching up with him.

How to stop time is a wild and bittersweet story about losing and findng yourselt, about the certainty of  change and about the lifetimes it can take to learn how to live.

### 如何在 YOLOv11 中添加 Early Stopping 实现模型训练优化 在深度学习领域,早停(Early Stopping)是一种常用的正则化技术,旨在通过监控验证集上的性能来防止过拟合。对于 YOLOv11 的实现,可以通过修改其训练脚本中的回调机制或配置文件来集成这一功能。 以下是具体方法: #### 修改训练脚本以支持 Early Stopping YOLOv11 的训练过程通常由 `train.py` 或类似的入口脚本控制。要实现 Early Stopping 功能,可以引入 PyTorch 提供的回调函数或者手动编写逻辑来监测损失或其他评估指标的变化情况。 以下是一个基于 PyTorch 的简单实现方式: ```python from torch.utils.data import DataLoader import torch.nn as nn import torch.optim as optim class EarlyStopping: """Early stops the training if validation loss doesn't improve after a given patience.""" def __init__(self, patience=7, verbose=False, delta=0): """ Args: patience (int): How long to wait after last time validation loss improved. Default: 7 verbose (bool): If True, prints a message for each validation loss improvement. Default: False delta (float): Minimum change in the monitored quantity to qualify as an improvement. Default: 0 """ self.patience = patience self.verbose = verbose self.counter = 0 self.best_score = None self.early_stop = False self.val_loss_min = float('inf') self.delta = delta def __call__(self, val_loss, model): score = -val_loss if self.best_score is None: self.best_score = score self.save_checkpoint(val_loss, model) elif score < self.best_score + self.delta: self.counter += 1 print(f'EarlyStopping counter: {self.counter} out of {self.patience}') if self.counter >= self.patience: self.early_stop = True else: self.best_score = score self.save_checkpoint(val_loss, model) self.counter = 0 def save_checkpoint(self, val_loss, model): '''Saves model when validation loss decrease.''' if self.verbose: print(f'Validation loss decreased ({self.val_loss_min:.6f} --> {val_loss:.6f}). Saving model ...') torch.save(model.state_dict(), 'checkpoint.pt') # 这里保存最佳模型 self.val_loss_min = val_loss ``` 上述代码定义了一个简单的 `EarlyStopping` 类[^4],它可以在每次 epoch 结束时调用并决定是否继续训练。将其嵌入到现有的训练循环中即可生效。 #### 配置文件调整 如果 YOLOv11 支持 YAML 格式的配置文件,则可以直接在此类文件中指定 Early Stopping 参数。例如,在 `config.yaml` 文件中新增如下字段: ```yaml training: epochs: 300 early_stopping: enabled: true # 是否启用早停 patience: 20 # 耐心度数(连续多少次无改进) monitor_metric: "val_loss" # 监控的目标指标,默认为验证集损失 ``` 随后更新解析器部分读取这些新参数,并传入至对应的训练模块。 #### 关闭 Early Stopping 当不需要此特性时,只需将配置项中的 `enabled` 设置为 `false` 即可禁用该行为[^2]。 --- ### 总结 通过以上两种途径——直接编辑 Python 训练脚本或是利用高级别的配置管理工具,均能有效达成对 YOLOv11 模型训练过程中加入 Early Stopping 技术的目的。这不仅有助于减少不必要的计算资源消耗,还能进一步提高实验效率与结果可靠性。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值