<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>损失缩放 | Twinkle</title><link>https://modelscope.github.io/twinkle-web/zh/docs/components/loss-scale/</link><atom:link href="https://modelscope.github.io/twinkle-web/zh/docs/components/loss-scale/index.xml" rel="self" type="application/rss+xml"/><description>损失缩放</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>zh-Hans</language><image><url>https://modelscope.github.io/twinkle-web/media/logo_hu_fedc6a0bfe689b18.png</url><title>损失缩放</title><link>https://modelscope.github.io/twinkle-web/zh/docs/components/loss-scale/</link></image><item><title>损失缩放</title><link>https://modelscope.github.io/twinkle-web/zh/docs/components/loss-scale/lossscale/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://modelscope.github.io/twinkle-web/zh/docs/components/loss-scale/lossscale/</guid><description>&lt;p&gt;LossScale 组件控制训练过程中的损失缩放，确保数值稳定性，在混合精度训练中尤为重要。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;twinkle.loss_scale&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;LossScale&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;loss_scale&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;LossScale&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 在反向传播前对损失进行缩放&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;scaled_loss&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;loss_scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;loss&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;num_tokens&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;LossScale 通过有效 token 数量对损失值进行归一化，确保不同批次大小和序列长度下梯度幅度的一致性。&lt;/p&gt;
&lt;blockquote class="border-l-4 border-neutral-300 dark:border-neutral-600 pl-4 italic text-neutral-600 dark:text-neutral-400 my-6"&gt;
&lt;p&gt;LossScale 在模型训练流水线中内部使用。使用 &lt;code&gt;model.forward_backward()&lt;/code&gt; 时会自动应用。&lt;/p&gt;
&lt;/blockquote&gt;</description></item></channel></rss>