我发明的算法,登上了 Hacker News 日榜第二! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
diyer22
V2EX    分享创造

我发明的算法,登上了 Hacker News 日榜第二!

  •  7
     
  •   diyer22 2 天前 3385 次点击

    我在之前 ICLR 2025 的论文中提出了一种全新的生成模型「离散分布网络」(Discrete Distribution Networks)

    前两天在 Hacker News 上宣传,反响热烈,竟然来到了日榜第二名,给项目的网页带来了近 1.5 万的访问量。

    所以,现在想在 V2EX 也宣传交流一下~

    一句话介绍:「离散分布网络」是一个原理简单、性质独特的全新生成模型,有着非常多有趣的性质。期待 DDN 能给更多人带来灵感~

    PS. GitHub 五万关注者的算法大 V lucidrains 也复现了 DDN 算法: https://github.com/lucidrains/discrete-distribution-network

    详情:

    英文介绍: https://x.com/diyerxx/status/1978531040068321766 ( twitter 冷启动实在太难啦,求互动一下鼓励鼓励)

    中文介绍: https://zhuanlan.zhihu.com/p/1935903948990047972

    项目网页: https://discrete-distribution-networks.github.io/

    GitHub: https://github.com/DIYer22/discrete_distribution_networks

    37 条回复    2025-10-17 17:07:16 +08:00
    chen88ijn
        1
    chen88ijn  
       2 天前
    太强了,巨佬
    JoeJoeJoe
        2
    JoeJoeJoe  
    PRO
       2 天前
    K-means?
    Wcowin
        3
    Wcowin  
       2 天前
    先收藏慢慢看
    diyer22
        4
    diyer22  
    OP
       2 天前 via iPhone
    @JoeJoeJoe DDN 的形式上和 k-means 比较相似,且都支持无监督聚类。但他们不同点有:算法作用(生成建模 VS 聚类)、优化目标、优化方式、DDN 的层次结构、DDN 的样本点是神经网络的 outputs 等。 所以,属于独立的两个算法。
    molvqingtai
        5
    molvqingtai  
       2 天前   1
    虽然看不懂,但我大受震撼!
    JoeJoeJoe
        6
    JoeJoeJoe  
    PRO
       2 天前   1
    @diyer22 刚才只是大概看了下项目网页, 感觉很像, 收藏以后细读.

    ps: 想给你点个 V 币赞赏,看你没绑定钱包,直接给你来个铜币赞吧.
    monmon
        7
    monmon  
       2 天前
    知道我为什么喜欢来 V 站了吗,这里个个都是人才,说话又好听,超喜欢在里面
    pianjiao
        8
    pianjiao  
       2 天前
    虽然看不懂,但是佬就是牛逼
    spike0100
        9
    spike0100  
       2 天前 via iPhone
    虽然不知道你在说什么,但是感觉很厉害的样子!
    hikarumx
        10
    hikarumx  
       2 天前
    v 站就是大佬多。
    xion21
        11
    xion21  
       2 天前
    大佬
    tanglindan6
        12
    tanglindan6  
    PRO
       2 天前
    仰望一下大佬!
    irrigate2554
        13
    irrigate2554  
       2 天前
    是大佬
    Simon95
        14
    Simon95  
       2 天前   1
    支持,x 关注了,github 星星了。我简单看了下,感觉有点像 RVQ ?
    Simon95
        15
    Simon95  
       2 天前
    哇,大佬一个人创新算法,膜拜。还有请教下最近做的工作感觉,FSQ codebook usage 能到 1 ,大佬觉得 VQ-VAE codebook collapse 还是问题吗?
    halberd
        16
    halberd  
       2 天前
    非常有才华的想法啊,用一棵树撑起整个特征空间。
    从网络参数分配的角度讲,我感觉直观上存在这样一个问题:第 i 层网络负责的区域实际上会分散在特征空间的各处,它做的事是把负责的这一块空间再向下切分成 K 小块。也就是说每一层并不会去擅长某种类型的特征,而是专门做某一级的细分。给我一种缺乏“局部性”的感觉,好像这个专家分配并没有很优,会不会潜在地影响能力呢。
    当然这是用线性的参数量去拟合指数的空间肯定会遇到的问题。默认的多层实现相当于按照树深度、也即特征空间中的位置层级来分配参数,属于一种人为、简洁有效的策略;而共享参数实现和 diffusion 类似,是把全部任务交给整个模型,让模型自己学习不同位置的策略(以 v-pred diffusion 为例,使用全部参数去完成在任意位置 x_t 上的 v_t(x_t)预测)。
    cjh1095358798
        17
    cjh1095358798  
       2 天前
    牛批啊佬
    ik
        18
    ik  
       2 天前 via iPhone
    我什么身份和大佬在一个帖子
    diyer22
        19
    diyer22  
    OP
       2 天前
    @Simon95 DDN 和 VQ-VAE ( RVQ ) 明显不同。
    相似之处:
    - 两者都把数据映射到离散的潜空间。
    区别:
    - VQ-VAE 需要额外的先验模型(如 PixelCNN 或 transformer 先验)来建模码本的分布; DDN 自己就能构建层次离散分布,甚至可作为类似 VQ-VAE 系统的先验模型。
    - DDN 的 K 个输出是随输入变化的特征; VQ-VAE 的码本是一组与输入无关、固定不变的独立参数( embedding )。
    - VQ-VAE 输出二维 code index 网格 latent ; DDN 输出一维/树状结构的 latent 。
    - VQ-VAE 需要 Straight-Through 梯度估计器。
    - DDN 支持零样本条件生成。
    因此,我认为它们挺互补的。(参见论文中的“Connections to VQ-VAE”部分。)

    ---

    我对 VQ-VAE 不是很了解,在我看来 VQ-VAE codebook collapse 应该有很多方法能缓解,比如和 DDN 论文中 Split-and-Prune 类似的 reinitialization 的方案。(也在“Connections to VQ-VAE”部分。)
    itechify
        20
    itechify  
    PRO
       2 天前 via Android
    虽然看不懂,但我大受震撼!
    diyer22
        21
    diyer22  
    OP
       2 天前
    @halberd 感谢欣赏~
    别忘了,主干 feature 会贯穿 DDN 的每一层。也就是说,每一层的计算和特征还会为最后一层的 output 负责,而不仅仅是专门为了某一层切分成 K 小块而服务。
    supemaomao
        22
    supemaomao  
       2 天前
    虽然看不懂,但我大受震撼!
    djs
        23
    djs  
       2 天前 via iPhone
    大佬牛逼
    gmuubyssss
        24
    gmuubyssss  
       2 天前
    我是来为大神喝彩的。
    lzjunika
        25
    lzjunika  
       1 天前
    膜拜
    NeedforV2
        26
    NeedforV2  
       1 天前
    虽然看不懂,但我大受震撼!
    spacebound
        27
    spacebound  
       1 天前
    虽然看不懂,但我大受震撼!
    xinyu391
        28
    xinyu391  
       1 天前
    看不懂
    zhaosong
        29
    zhaosong  
       1 天前
    已经是另一个 level 呢吗,你这家伙
    wukaige
        30
    wukaige  
       1 天前
    巨佬合影
    TQQQ
        31
    TQQQ  
       1 天前
    能应用到 TTS(语音合成)吗
    diyer22
        32
    diyer22  
    OP
       1 天前
    @TQQQ 我觉得 DDN 是具备处理 TTS 任务的能力,因为在文字条件的约束下,生成空间被大幅缩小。
    建议再搭配一个自回归模型( GPT ),以获得更强的建模能力。比如把 GPT 的分类 head 换为 DDN ,应该能 work 。
    jy02534655
        33
    jy02534655  
       1 天前
    原来这就是大佬的世界,我只能说 6666
    Simon95
        34
    Simon95  
       1 天前
    @diyer22 DDN 和 RVQ ( Residual vector Quantization )我觉得结合 GPT 在训练时候可能都有一个问题,就是第一层的码本(对应着 DDN 第一个 level )的重建都相当好,但其余码本的效果就比较差。
    因为 DDN 好像不同 level 之间也类似于的“残差”?但是在样本空间,而不是在 latent space 。
    我就是做语音的,在图像领域最新的论文( Diffusion Transformers with Representation Autoencoders )好像也表示不压缩效果更好。但用 CFM 去做生成的话,好像利用样本空间的分布直接生成的效果不是很好,而用 latent space 的分布更好,我感觉 DDN 的分布更接近于样本空间?
    不知道训练的效率怎么样,我找个时间在更大的数据集上跑跑试试。
    lyxxxh2
        35
    lyxxxh2  
       1 天前
    hacker new?
    以前也听过别人贴子:"登上 Hacker News 榜第 x"
    好像很水吧,随便发帖就能上的。
    diyer22
        36
    diyer22  
    OP
       1 天前
    @Simon95
    - 我觉得 DDN 的情况可能是第一层重建效果会比较差(非常模糊),随着层数增加才会变得清晰。
    - 虽然 DDN 是在样本空间做的采样和 “残差”,但 DDN 也可以像 latent diffusion 一样在 latent 空间做生成。(这时候的生成样本就成了 AutoEncoder 的 latent )
    - 训练效率还可以,中文博客的 “附录的 Q1” 有论述。目前 DDN 的最大问题还是 latent 空间不够大,需要改进自身(方案见中文博客的“不足和改进”)或者和 GPT 结合来分段建模,缩小空间
    - 欢迎尝试,遇到问题了随时提 issue ,发邮件~
    evilcat
        37
    evilcat  
       1 天前
    算法大佬
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1168 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 17:53 PVG 01:53 LAX 10:53 JFK 13:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86