总变差正则化(TV Loss)的思考

最近我在重构一维时序信号发现一种情况:重构信号的首尾边缘会出现毛刺,我只使用 L1 损失,为了解决我想到了差分可以反应梯度变化,所以打算约束梯度的变化实现去噪。

查资料发现这一思路叫做:TV Loss ,作用是惩罚相邻点的绝对差异,强制信号局部平滑:

python 复制代码
def tv_loss_1d(x):
    # x: (batch, channels, length)
    return torch.mean(torch.abs(x[:, :, 1:] - x[:, :, :-1]))

但是实际上的效果:

由于我发现这个毛刺只存在于边缘,因此我只在边缘处施加了这种损失,但结果如同所示。经过我的思考,我意识到这个损失函数的设计思路是:只要梯度不为零就有惩罚,最优解是全零梯度(直线),这与真实边缘冲突。

其次还有一个原因,L1 Loss不足以对抗TV Loss,我的重构目标,经过标准化其幅值较低,在最初我将TV Loss的权重设计为0.5,后期调整至0.2,都无法阻止其不输出直线。原因就在于L1损失处理这种信号时,损失值普遍非常低,而通过差分,这个梯度很大。

最后我的思路是,不在惩罚输出信号的梯度,而是惩罚输出和目标的梯度差异。

*****END*****

本次只是分享个调参思路,祝大家五一节快乐。

相关推荐
MobotStone27 分钟前
AI 玩不好?别怪工具,是你给它定的规矩有问题!
人工智能
AI日报派送佬5 小时前
2026年10月14日AI行业日报|Gemini 4 Argon正式发布;小模型跨设备传播风险引发安全热议
网络·人工智能·openai·谷歌·deepseek·anthropic·ai日报
镜象科技6 小时前
职业院校AI心理健康解决方案怎么选?三个特殊场景与三类路线
人工智能
Leo.yuan6 小时前
企业Data Agent架构选型:帆软Dora基于NL2BI的现有BI体系复用方案
大数据·人工智能
朱涛的自习室6 小时前
70 美金的 Beyond Compare,我让 Gemini 4 和 DeepSeek 造个开源免费版(Day 2)
android·前端·人工智能
米小虾7 小时前
上下文:Agent 的眼睛里到底装着什么
人工智能·agent
米小虾7 小时前
Agent = 大脑 + 眼睛 + 手脚:一篇看懂现代 AI Agent 的骨架
人工智能
小小测试开发7 小时前
安全评测得分 0.9556 掉到 0.3257,只改了 top_k 和 prompt_style 之外的题面比例
人工智能·安全·prompt
slacker-kian7 小时前
[实践]-用LLM对文本结构化:把多段文本描述变成规范的 JSON 知识库
人工智能·llm·prompt·结构化·pydantic·one-shot 提示