关键词:生成流网络,生成模型,图,因果推断

靳秋野 | 作者





什么是生成流网络(GFlowNet)?




生成流网络(GFlowNets)是一种新兴的生成模型,在多种任务中展现了强大的性能和潜力。它的基本原理是将一个简单的先验分布(如均匀分布或正态分布)通过一系列可逆变换映射到一个复杂的后验分布,从而实现从先验到后验的概率流。

Bengio教授,计算机领域H-index最高的学者

经过Bengio及其团队的不懈努力,GFlowNets已在不同任务上展示了有效性和优越性,同时也展示了生成流网络的灵活性和通用性。集智编辑部认为生成流网络是一种有前途的研究方向,它可以为多种复杂和有价值的应用提供强大的工具,如智能推荐、AI辅助科学发现和最优试验设计等。

目前而言,生成流网络还是一个新兴的研究领域,但它已在多种任务中展现了强大的性能和潜力,如因果推断、分子设计、候选生成等。而本推送旨在介绍生成流网络的基本原理、前沿研究、应用领域和学习路径,以期引起各位读者对这一领域的研究兴趣。




GFlowNet 的应用领域




鼎怀等人开发的Awesome GFlowNets库

GFlowNets是一种新兴的生成模型,它在多种任务中展现了强大的性能和潜力。以下是一些生成流网络的前沿研究和应用领域的例子:

GFlowNet 是一种新兴的生成模型,它在多种任务中展现了强大的性能和潜力。以下是一些生成流网络的前沿研究和应用领域的例子:

 • 因果推断:生成流网络可以用于从数据中学习因果结构和机制,从而实现因果推理和干预。比如,我们可以从数据中推断出因果图的后验分布,并从中采样新的因果图。

 • 分子设计:生成流网络可以用于设计具有特定性质的分子,从而促进药物发现和材料科学。比如,我们可以从蛋白质、DNA或RNA序列中学习一个概率分布,并从中采样新的序列。

• 候选生成:生成流网络可以用于生成多样且高质量的候选项,从而提高搜索、推荐和决策等任务的效率。我们可以从用户查询或上下文中学习一个概率分布,并从中采样相关且有趣的候选项。

更加具体的文献列表可以参考由集智俱乐部成员张鼎怀维护的Repo[2],以上只是对GFlowNets应用场景的简单举例,还有许多其他的应用领域等待大家一起探索和发现。




方法




这张图展示了为什么在GFlowNets中使用“流”这个词。它考虑了非规范化概率的流动,类似于有向非循环图中从初始状态流出的水量,其轨迹对应于所有可能的动作序列,以便按顺序构建复杂的对象,如分子图、因果图、对场景的解释或者我们脑海中的想法。


生成流网络的基本原理是将一个简单的先验分布(如均匀分布或正态分布)通过一系列可逆的变换映射到一个复杂的后验分布,从而实现从先验到后验的概率流。生成流网络的基本算法如下:

1. 定义一个初始状态,通常是一个空对象或一个随机对象。

2. 定义一个动作空间,通常是一个有限的离散集合,表示可以对当前状态进行的变换。

3. 定义一个终止动作,表示结束生成过程。

4. 定义一个生成策略,通常是一个神经网络,表示在每个状态下选择动作的概率分布。

5. 定义一个奖励函数,通常是一个环境模型,表示给定状态的价值或效用。

6. 从初始状态开始,重复以下步骤,直到选择终止动作为止:

a. 根据生成策略选择一个动作,并执行该动作,得到下一个状态。
b. 计算当前状态和下一个状态之间的概率流,即两个状态的概率比值乘以选择该动作的概率。
c. 累积概率流,即将当前概率流乘以之前所有概率流的积。
7. 返回最终状态和累积概率流。

生成流网络的训练目标是最大化期望奖励,即最大化所有可能生成对象的奖励值和累积概率流的乘积之和。这可以通过随机梯度优化或其他优化算法来实现。生成流网络的训练过程可以看作是一种变分推理,其中生成策略是变分后验分布,累积概率流是重要性权重,奖励函数是对数似然函数。




结果




科学发现的环路

为了评估生成流网络的性能和潜力,Bengio团队在以下几个任务上进行了试验:
 • 因果结构学习:Bengio等人使用GFlowNets来从观测数据中学习因果图,并与其他基于分数的方法进行比较。他们在三个合成数据集和一个真实数据集上进行了实验,结果表明GFlowNets可以有效地发现因果结构,并具有较高的精度和召回率。 
• 生物序列设计:Bengio等人使用GFlowNets来设计具有特定性质的生物序列,并与其他基于变分自编码器的方法进行比较。他们在两个蛋白质序列数据集上进行了实验,结果表明GFlowNets可以生成多样且高质量的序列,并具有较高的重构能力和新颖性。
 • 候选生成:Bengio等人使用GFlowNets来生成多样且有趣的候选项,并与其他基于重排或插入的方法进行比较。他们在一个电影推荐数据集上进行了实验,结果表明GFlowNets可以生成更相关且更有趣的候选项,并具有较高的用户满意度和点击率。

以上实验结果验证了生成流网络在不同任务上的有效性和优越性,同时也展示了生成流网络的灵活性和通用性。




讨论




综上所述,GFlowNets作为一种新兴的研究方法,已在多种任务中展现了强大的性能和潜力,如因果推断、分子设计、候选生成等。同时,GFlowNets也面临着一些挑战和问题,如:

 • 优化难度:生成流网络的训练目标是非凸的,并且涉及到大量的随机采样,因此需要有效的优化算法和技巧来保证收敛和稳定性。

 • 可扩展性:生成流网络的计算复杂度随着状态空间和动作空间的增大而增大,因此需要有效的近似和剪枝来提高可扩展性和效率。

 • 可比较性:生成流网络的评估指标和基准数据集还不够完善和统一,因此需要更多的研究和协作来建立可比较性和可重复性。


更多内容不再赘述,集智编辑部希望本文能够为读者提供一个对生成流网络的基本认识和理解,并激发读者对这一领域的研究兴趣和探索欲望,更多资料请参考下一节。




学习路径




如果你对生成流网络感兴趣,并想进一步学习和探索,集智社区推荐以下学习资源:

 • 教程:Yoshua Bengio教授撰写了一篇详细的教程,介绍了生成流网络的基本概念、原理和应用,以及一些未来的研究方向和挑战。你可以阅读教程[1]。
Yoshua Bengio. Generative Flow Networks. 2022. https://yoshuabengio.org/2022/03/05/generative-flow-networks

 • 书籍:目前还没有专门介绍生成流网络的书籍,但你可以参考一些涉及生成模型、变分推理、能量模型等相关主题的书籍,如《深度学习》、《机器学习》等;此外,Bengio介绍了GFlowNets在科学发现中的应用和前景,详情参考文献[3]。

Yoshua Bengio et al. GFlowNets for AI-Driven Scientific Discovery. https://arxiv.org/abs/2302.00615

 • Repo:有一些开源的代码库和项目,实现了生成流网络的不同版本和应用。你可以在GitHub开源库[2]上找到有关GFlowNets的文章和项目,并根据自己的需要进行修改或扩展。

GitHub – zdhNarsil/Awesome-GFlowNets: A curated list of resources about generative flow networks (GFlowNets). https://github.com/zdhNarsil/Awesome-GFlowNets
我们希望这些资源能够帮助你更好地理解和使用生成流网络,也欢迎你加入集智研究社区,共同推动这一领域的发展和创新。


AI+Science 读书会启动


AI+Science 是近年兴起的将人工智能和科学相结合的一种趋势。一方面是 AI for Science,机器学习和其他 AI 技术可以用来解决科学研究中的问题,从预测天气和蛋白质结构,到模拟星系碰撞、设计优化核聚变反应堆,甚至像科学家一样进行科学发现,被称为科学发现的“第五范式”。另一方面是 Science for AI,科学尤其是物理学中的规律和思想启发机器学习理论,为人工智能的发展提供全新的视角和方法。

集智俱乐部联合斯坦福大学计算机科学系博士后研究员吴泰霖(Jure Leskovec 教授指导)、哈佛量子计划研究员扈鸿业、麻省理工学院物理系博士生刘子鸣(Max Tegmark 教授指导),共同发起以“AI+Science”为主题的读书会,探讨该领域的重要问题,共学共研相关文献。读书会从2023年3月26日开始,每周日早上 9:00-11:00 线上举行,持续时间预计10周。欢迎对探索这个激动人心的前沿领域有兴趣的朋友报名参与。


详情请见:
人工智能和科学发现相互赋能的新范式:AI+Science 读书会启动


推荐阅读

1. Barabási 最新研究:利用图神经网络加速网络布局
2. 图网络深度解析:为什么说图网络是 AI 的未来?
3. AI不再黑箱:利用可解释的胶囊网络算法识别细胞亚型
4. 《张江·复杂科学前沿27讲》完整上线!
5. 成为集智VIP,解锁全站课程/读书会
6加入集智,一起复杂!



点击“阅读原文”,报名AI+Science读书会