diff --git a/modules/01-foundation/02-position-encoding/experiments/exp2_multi_frequency.py b/modules/01-foundation/02-position-encoding/experiments/exp2_multi_frequency.py index a532a3d..3e6bd6a 100644 --- a/modules/01-foundation/02-position-encoding/experiments/exp2_multi_frequency.py +++ b/modules/01-foundation/02-position-encoding/experiments/exp2_multi_frequency.py @@ -64,10 +64,25 @@ def demonstrate_multi_frequency(): print(f"{degree:>12.1f}°".ljust(15), end="") print() - print("\n💡 观察:") - print(" - 维度0(高频):位置10就转了100度,变化快") - print(" - 维度3(低频):位置1000才转了0.1度,变化慢") - print(" - 不同维度组合 → 唯一标识每个位置!") + print("\n💡 观察(理解这个表格的两个维度):") + print(" 【注意】表格中的角度已对360°取模,所以都在0-360°范围内") + print() + print(" 【纵向看 - 沿 token 维度】:") + print(" - 维度0(高频):随位置增加,角度变化快") + print(" 例如:位置10时累计旋转约573度(表中显示213°是取模后的结果)") + print(" - 维度3(低频):随位置增加,角度变化相对较慢") + print(" 例如:转一圈需要约23个token(维度0只需6.3个,约4倍差距)") + print() + print(" 【横向看 - 沿嵌入维度】:") + print(" - 从维度0到维度3:频率递减,转动速度逐渐变慢") + print(" 例如:观察同一位置(表格同一行),从维度0到维度3,") + print(" 频率递减导致累计旋转圈数也递减") + print(" 参考上面的频率表:") + print(" - 维度0每6.3个token转一圈") + print(" - 维度3约每23个token转一圈(约4倍慢)") + print() + print(" 【结论】:不同维度组合 → 唯一标识每个位置!") + print() def demonstrate_absolute_vs_relative():