当前位置: 首页 > article >正文

AF3 FourierEmbedding类源码解读

FourierEmbedding 是一个用于扩散条件的傅里叶嵌入类,其核心是将输入的时间步噪声强度或控制参数timestep)转换为高维的周期性特征。

源代码:

class FourierEmbedding(nn.Module):
    """Fourier embedding for diffusion conditioning."""
    def __init__(self, embed_dim):
        super(FourierEmbedding, self).__init__()
        self.embed_dim = embed_dim
        # Randomly generate weight/bias once before training
        self.weight = nn.Parameter(torch.randn((1, embed_dim)))
        self.bias = nn.Parameter(torch.randn((1, embed_dim)))

    def forward(self, t):
        """Compute embeddings"""
        two_pi = torch.tensor(2 * 3.1415, device=t.device, dtype=t.dtype)
        return torch.cos(two_pi * (t * self.weight + self.bias))

类代码解读:

1. 类的功能

该模块的主要目的是通过傅里叶变换,将输入的时间步嵌入到一个周期性的高维特征空间。这种处理方式在扩散模型中尤为重要,因为时间步本身是一个标量(单一数值),通过傅里叶嵌入,模型能够更好地捕获时间的周期性模式。

2. __init__ 方法
def __init__(self, embed_dim):
    super(FourierEmbedding, self).__init__()
    self.embed_dim = embed_dim
    # Randomly generate weight/bias once before training
    self.weight = nn.Parameter(torch.randn((1, embed_dim)))
    self.bias = nn.Parameter(torch.randn((1, embed_dim)))
功能
  • 初始化傅里叶嵌入模块。
  • 生成随机初始化的权重和偏置(weight 和 bias),用于控制傅里叶变换的频率和相位。
重要参数
  • embed_dim:
    • 表示嵌入的维度,即输出特征的大小。
    • 在扩散模型中,较大的 e

http://www.kler.cn/a/520803.html

相关文章:

  • Python的那些事第三篇:Python编程的“调味料”与“交流术”运算符与输入输出
  • idea对jar包内容进行反编译
  • sqlite3 学习笔记
  • 蓝桥杯模拟算法:多项式输出
  • 从零开始打造智能推荐引擎:技术、实践与未来展望
  • 项目集成RabbitMQ
  • Windows 靶机常见服务、端口及枚举工具与方法全解析:SMB、LDAP、NFS、RDP、WinRM、DNS
  • ListOJ13:环形链表(判断是否为环形链表)
  • 在亚马逊云科技上使用Luma AI Ray2视频模型生成炫酷视频 (下)
  • yolov11 解读简记
  • 指针的介绍1后
  • 《 C++ 点滴漫谈: 二十四 》深入 C++ 变量与类型的世界:高性能编程的根基
  • python实现答题游戏
  • 【橘子Kibana】Kibana的分析能力Analytics之Canvas画布
  • 网站上的图片无法使用右键“图片另存为”
  • 步入响应式编程篇(三)之spring webFlux与R2DBC
  • 力扣算法题——611.有效三角形的个数
  • Java 大视界 -- Java 大数据在元宇宙中的关键技术与应用场景(65)
  • 如何运用python技术搭建一个导航网站?
  • 关于安卓compose在gradle8.0上,版本依赖的问题
  • Pyecharts之图表样式深度定制
  • ubuntu无法上网的解决办法
  • 【漫话机器学习系列】061.线性回归参数计算(Finding Linear Regression Parameters)
  • 智能交互革命:论UI-TARS技术突破与未来图景
  • AI刷题-最小化团建熟悉程度和
  • 【java数据结构】HashMapOJ练习题