MVDream 论文学习

news2024/9/20 16:46:01

论文链接:https://arxiv.org/abs/2308.16512
代码链接:https://github.com/bytedance/MVDream

解决了什么问题?

3D 内容生成是现代游戏和媒体产业中的关键环节,然而这是一个劳动密集型的任务,创建一个 3D 资产就需要训练有素的设计师花费数小时甚至几天的时间来完成。因此,一个能够以简单方式为非专业用户生成 3D 内容的系统是非常有价值的。现有的 3D 对象生成方法可以分为三类:

  • 基于模板的生成流程;
  • 3D 生成模型;
  • 2D 提升方法;

由于可利用的 3D 模型数量有限,而且数据复杂,基于模板的生成器和 3D 生成模型都难以有效地泛化到任意对象的生成。它们生成的内容通常局限于拓扑结构相对简单、纹理常见的对象。然而在产业中,受欢迎的3D资产通常是结构复杂,具有一定艺术性的,有时甚至是非现实主义结构和风格的混合体。

最近,2D 提升方法证明了预训练 2D 生成模型可以被用于 3D 生成。DreamFusion 和 Magic3D 使用 2D 扩散模型作为监督,通过 score distillation sampling 监督 3D 表示的优化。在大规模 2D 图像数据集上训练的 2D 模型能够生成没见过的、反现实的场景,它们仅需一段文本描述的输入,为艺术资产创作提供了强有力的工具。

尽管如此,在 2D 提升技术中,由于在 score distillation 过程中缺乏全面的多视图知识和 3D 感知,会有一些挑战。这些挑战包括:

  • 多面性 Janus 问题:系统在不同视图中重复生成相同文本描述的内容。多面性问题有多种因素,比如某些物体如刀片在某些角度几乎不可见。同时,角色或动物的重要部分可能在特定视点被隐藏或自我遮挡。虽然人类可以从多个角度评估这些对象,但2D扩散模型不能这样做,产生冗余和不一致的内容。
  • 不同视图之间的内容漂移,如下图所示。

虽然 2D 提升方法有许多弱点,作者认为大规模 2D 数据对于 3D 生成的泛化性至关重要。因此,作者提出了多视图扩散模型,可以被用作与 3D 表示无关的多视图 3D 先验。本文模型同时生成一组彼此一致的多视图图像。它能利用预训练的 2D 扩散模型进行迁移学习,继承泛化能力。然后,通过在多视图图像(来自 3D 资产)和 2D 图像-文本对上进行联合训练,作者发现它能够实现良好的一致性和泛化性。将 score distillation 应用于 3D 生成时,多视图监督要比单视图 2D 扩散模型更加稳定。我们仍然可以像纯 2D 扩散模型一样,创建未见过的、反事实的 3D 内容。受到 DreamBooth 启发,我们也可以利用多视图扩散模型,从一系列的 2D 图像中融合身份信息,并在微调后保持多视图的一致性。MVDream 生成的 3D NeRF 模型没有多视图一致性问题,生成多样化的 3D 内容。

3D Generative Models

3D 生成推动了几乎所有深度生成模型在这一任务中的应用。Handerson 等人探索了用于带纹理的 3D 生成的 VAE,然而他们的工作主要针对利用多视图数据的较简单的模型。由于 GAN 在图像合成方面取得了进展,许多研究探索了具有 3D 感知的 GANs。这些方法缺乏真实 3D 或多视图数据的重建损失,仅使用单目图像进行训练。因此,3D-aware GANs 仍然存在泛化和稳定性的问题。因此最近,扩散模型成为了 3D 生成研究的焦点。针对 tri-planes 和特征网格引入了不同的 3D 扩散模型。然而,这些模型主要针对特定的对象,在 2D 对应物体范围内的泛化能力尚未得到验证,可能是由于 3D 表示的限制或架构设计问题。

Diffusion Models for Object Novel View Synthesis

最近的一些研究尝试直接合成 3D 新视图,不进行重建。例如,Watson 等人基于 ShapeNet 数据集使用扩散模型做视角合成。Zhou&Tulsiani 等人使用一个极线特征 transformer 扩展 Stable Diffusion 模型的隐式空间。Chen 等人在扩散去噪时,将隐式特征重新投影,从而增强了视图之间的一致性。这些方法受到训练数据的丰富程度限制,没有证据表明它们能泛化到其它多样的图像输入。Liu 提出在 3D 渲染数据集上微调一个预训练的图像变化扩散模型。该数据集是用于新视图合成的。但是,合成图像仍然有几何一致性的问题,造成 3D 输出模型存在明显的模糊。

Lifting 2D Diffusion for 3D Generation

鉴于3D生成模型的泛化能力有限,另一系列研究尝试通过将其与 3D 表示(如 NeRF)耦合,将2D扩散先验应用于3D生成。这些方法的关键技术是由Poole等人提出的 Score Distillation Sampling,其中扩散先验作为分数函数使用,以指导3D表示的优化。与 DreamFusion 同时,SJC(Wang等人)提出了一种使用公开可用的 Stable DIffusion 模型(Rombach 等人)的类似技术。后续工作进一步改进了 3D 表示、sampling schedules、损失设计。尽管这些方法能够在不训练任何3D数据的情况下生成逼真和任意类型的物体,但它们已知会遭受多视图一致性问题。此外,如(Poole 等人)所讨论的,每个生成的3D模型都通过调整提示和超参数进行单独优化,以避免生成失败。然而,MVDream 可以使用统一的参数集生成满意的 3D 模型,而不需要针对每个模型单独地调整参数。

提出了什么方法?

MVDream 是一个扩散模型,能从一个给定的文本提示生成连续的多视图图像。通过学习 2D 和 3D 数据,多视图扩散模型能实现 2D 扩散模型的泛化性和 3D 渲染的一致性。作者证明这个多视图扩散模型作为一个隐式的可泛化的 3D 先验(不依赖于特定的 3D 表示)能适用于不同的 3D 场景。它可以通过 Score Distillation Sampling 应用于 3D 生成,显著地增强 2D 提升方法的连续性和稳定性。MVDream 具备从少量2D图像中快速学习并生成3D内容的能力,类似于DreamBooth技术。

Multi-view Diffusion Model

为了减轻 2D 提升方法中的多视图一致性问题,一个典型的解决方案是改进其视点意识。例如,Poole 等人将视点描述添加到文本条件中。一个更复杂的方法就是融合精确的相机参数,就像在新视图合成方法中那样(Liu等人)。但是,本文假设即使是一个完美的相机条件模型,也不足以解决问题,不同视图的内容仍可能不匹配。例如,一只鹰可能在正面视图中向前看,而在背面视图中向右转头,其中只有它的身体符合相机条件。

另一个灵感来自于视频扩散模型。由于人类没有真正的3D传感器,感知3D对象的典型方式是从所有可能的视角观察它,这类似于观看一个旋转视频。最近关于视频生成的研究展示了将图像扩散模型适应于生成时间上一致内容的可能性。然而,将这样的视频模型适应于我们的问题并非易事,因为几何一致性可能比时间一致性更为复杂。我们的初步实验表明,在视点变化较大时,视频扩散模型的帧之间仍可能发生内容漂移。此外,视频扩散模型通常在动态场景上进行训练,当应用于生成静态场景时,可能会遭遇 domain gap 的问题。

基于这些观测,作者发现直接训练一个多视图扩散模型很重要,我们可以利用 3D 渲染数据集来生成静态场景,这些场景具有准确的相机参数。下图展示了本文的 text-to-multi-view 扩散模型。作者利用了3D 数据集渲染连续的多视图图像,监督扩散模型的训练。给定一组噪声图像 x t ∈ R F × H × W × C \mathbf{x}_t\in \mathbb{R}^{F\times H\times W\times C} xtRF×H×W×C、一个文本提示 y y y、一组相机外参 c ∈ R F × 16 \mathbf{c}\in\mathbb{R}^{F\times 16} cRF×16,我们训练一个多视图扩散模型来产生一组相同场景的图像 x 0 ∈ R F × H × W × C \mathbf{x}_0\in \mathbb{R}^{F\times H\times W\times C} x0RF×H×W×C,这些图像来自于 F F F 个不同的观测视角。训练完成后,模型可作为多视图先验来优化 3D 表示,结合 score distillation sampling 技术使用。

为了继承 2D 扩散模型的泛化能力,作者想在微调时尽可能地保留其结构。但是这些模型一次只能生成一张图片,输入不包含相机条件信息。那么问题就是:

  • 如何从相同的文本提示生成一组连续的图像?
  • 如何加入相机姿态控制?
  • 如何保留模型生成结果的质量和泛化能力?

Multi-view Consistent Generation with Inflated 3D Self-attention

与视频扩散模型类似,作者希望调整注意力层来模拟不同视图之间的依赖性,同时保持网络的其余部分作为一个只在单一图像内操作的2D模型。但是,作者发现简单的时间注意力机制无法学习多视图一致性,即使在 3D 渲染数据集上微调了模型,内容漂移仍然会发生。于是作者选择了 3D 注意力。具体来说,我们可以通过在自注意力中连接所有不同视图,将原始的2D自注意力层扩展到3D,如下图所示,我们发现这种方法即使在视图差距很大的情况下也能生成相当一致的图像。具体来说,给定一个形状为 B × F × H × W × C B\times F\times H\times W\times C B×F×H×W×C 的张量,将其转换为 B × F H W × C B\times FHW\times C B×FHW×C 输入自注意力,其中第二个维度表示 tokens 的序列维度。这样,我们可以继承原始 2D 自注意力的所有模块的权重。请注意,作者还尝试过引入一个新的 3D 自注意力层,而不是修改现有的 2D 自注意力层。然而,作者发现这样的设计会损害多视图图像生成的质量。

Camera Embeddings

类似于视频扩散模型,对本文模型来说,位置编码也是必要的,因为它可以区分不同的视角。于是,作者比较了相对位置编码、rotary embeddings、绝对相机参数等方法。作者发现,用一个两层的 MLP 编码相机参数所产生的图像质量是最佳的,可以区分不同的视角。作者使用了两个方法来注入相机参数:

  • 将相机 embeddings 作为残差信息加入到时间 embeddings;
  • 将相机 embeddings 加入到文本 embeddings 中,计算交叉注意力。

实验表明这两个方法都可以,但是前者要更加鲁棒,因为相机 embeddings 与文本输入的纠缠较少。

Training Loss Function

作者发现数据管理和训练策略对于图像生成的质量也很重要。数据处理的细节可以参考附录的内容。对于训练,作者基于 Stable Diffusion v2.1 基线模型( 512 × 512 512\times 512 512×512分辨率)做微调,作者保留了优化器的设定和 ϵ \epsilon ϵ-预测,但是降低了图像分辨率为 256 × 256 256\times 256 256×256。作者发现,使用更大规模的 text-to-image 数据集做联合训练对于微调模型的泛化性很有用。给定 text-image 数据集 χ \chi χ 和多视图数据集 χ m v \chi_{mv} χmv,对于训练样本 { x , y , c } ∈ χ ∪ χ m v \left\{ \mathbf{x}, y,\mathbf{c} \right\} \in \chi \cup \chi_{mv} {x,y,c}χχmv(对于 χ \chi χ c \mathbf{c} c为空),多视图扩散损失定义如下:

L M V ( θ , χ , χ m v ) = E x , y , c , t , ϵ [ ∥ ϵ − ϵ θ ( x t ; y , c , t ) ∥ 2 2 ] \mathcal{L}_{MV}(\theta,\chi,\chi_{mv}) = \mathbb{E}_{\mathbf{x},y,\mathbf{c},t,\epsilon}\left[ \left\| \epsilon - \epsilon_\theta(\mathbf{x}_t; y, \mathbf{c}, t) \right\|_2^2 \right] LMV(θ,χ,χmv)=Ex,y,c,t,ϵ[ϵϵθ(xt;y,c,t)22]

其中 x t \mathbf{x}_t xt 是由随机噪声 ϵ \epsilon ϵ和图像 x \mathbf{x} x 产生的噪声图像, y y y是条件输入, c \mathbf{c} c是相机条件输入, ϵ θ \epsilon_\theta ϵθ 是多视图扩散模型。通过关闭 3D 注意力和相机 embeddings,有 30 % 30\% 30% 的概率,多视图模型是作为一个简单的 2D text-to-image 模型基于 LAION 数据集训练的。

Text-To-3D Generation

作者通过下面两个方式,利用多视图扩散模型做 3D 生成,

  • 将生成的多视图图像输入一个少样本 3D 重建方法。
  • 将多视图苦涩哦按模型作为 SDS 的先验。

尽管 3D 重建需要一个鲁棒的少样本 3D 重建方法,但目前这个项目期间还没有可用的方法。因此,我们将实验重点放在后者,即通过用我们的多视图扩散模型替换现有的 Stable Diffusion 来修改 SDS 流程。这需要做两个地方的修改:

  • 修改相机的采样策略;
  • 将相机参数作为输入。

与DreamFusion(Poole等人,2023年)中使用方向注释的提示不同,作者使用原始提示来提取文本 embeddings。

尽管这种多视图SDS能够生成一致的3D模型,但其内容的丰富性和纹理质量仍然不如直接通过去噪扩散过程采样的图像。因此,作者提出了几种技术来缓解这个问题。首先,在优化过程中,对 SDS 的最小和最大时间步进行线性退火。第二,为了防止模型生成数据集中低质量3D模型的风格,我们在SDS过程中添加了一些固定的负面提示。最后,为了减轻大量 classifier-free guidance (CFG) 导致的颜色饱和度问题,作者使用了诸如动态阈值(Saharia等人,2022年)或来自(Lin等人,2023b)的 CFG rescale 等 clamping 技术。由于这些方法只应用于 x ^ 0 \hat{\mathbf{x}}_0 x^0,作者提出使用一个 x 0 \mathbf{x}_0 x0 重建损失,而不是原始的 SDS 损失:

L S D S ( ϕ , x = g ( ϕ ) ) = E t , c , ϵ [ ∥ x − x ^ 0 ∥ 2 2 ] \mathbf{L}_{SDS}(\phi, \mathbf{x}=g(\phi)) = \mathbb{E}_{t,\mathbf{c}, \epsilon}\left[ \left\| \mathbf{x} - \hat{\mathbf{x}}_0 \right\|_2^2\right] LSDS(ϕ,x=g(ϕ))=Et,c,ϵ[xx^022]

上述等式和原始的带 w ( t ) w(t) w(t) 的 SDS 等价, w ( t ) w(t) w(t) 是 SDS 的一个超参,等于信噪比。这里 x = g ( ϕ ) \mathbf{x}=g(\phi) x=g(ϕ) 是从 3D 表示 ϕ \phi ϕ 而来的渲染图像, x ^ \hat{\mathbf{x}} x^是由 ϵ θ ( x t ; y , c , t ) \epsilon_\theta(\mathbf{x}_t; y, \mathbf{c}, t) ϵθ(xt;y,c,t) 预测的 x 0 \mathbf{x}_0 x0。作者发现, x 0 \mathbf{x}_0 x0-重建损失与原始的 SDS 效果类似,但当我们对 x ^ 0 \hat{\mathbf{x}}_0 x^0使用 CFG rescale 技术后,能缓解其色彩饱和度问题。

之前一些方法加入了许多正则化技术,与之相比,上述等式的重建损失就相对简单,能够从头进行 3D 生成,说明多视图扩散模型可以作为一个强大的 3D 先验。话虽如此,作者也使用了 point lighting、soft shading 来改善输出的几何质量。对于正则损失,作者只用了朝向角损失。这两项技术只会让生成的几何更加平滑,对生成内容做的调整微乎其微。作者没有用 sparsity loss 来强迫前景和背景区分开来,而是通过对背景使用随机颜色来做到的。

Multi-view DreamBooth for 3D Generation

如上图右边所示,训练完多视图扩散模型后,我们将它扩展为一个 DreamBooth 模型,给 3D DreamBooth 使用。由于多视图扩散模型的泛化性,作者发现微调后也能保留其多视图能力。使用了两类损失,一个是图像微调损失、一个参数保留损失。以 χ i d \chi_{id} χid 表示一组身份图像,DreamBooth 损失如下:

L D B ( θ , χ i d ) = L L D M ( χ i d ) + λ ∥ θ − θ 0 ∥ 1 N θ \mathcal{L}_{DB}(\theta, \chi_{id})=L_{LDM}(\chi_{id}) + \lambda \frac{\left\| \theta - \theta_0 \right\|_1}{N_\theta} LDB(θ,χid)=LLDM(χid)+λNθθθ01

L L D M \mathcal{L}_{LDM} LLDM 是图像扩散损失, θ 0 \theta_0 θ0 是原始多视图扩散模型的初始参数, N θ N_\theta Nθ 是参数的个数, λ = 1 \lambda=1 λ=1 是平衡参数。

为了得到一个 3D 模型,作者将扩散模型替换为 DreamBooth 模型。原始的 DreamBooth3D 使用一个三阶段优化手段:partial DreamBooth、多视图数据生成、多视图 DreamBooth。本文方法通过直接训练一个多视图(MV)DreamBooth模型,然后是对 3D NeRF 的优化,它利用了扩散模型的一致性优势,并简化了 3D 建模的过程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2033419.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

后端Web之HTTP协议基础介绍

目录 1.HTTP概念 2.HTTP请求协议 3.HTTP响应协议 4.HTTP协议解析 1.HTTP概念 HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。它是万维网数据通信的基础,允许将超…

JVM由那些部分组成,运行流程是什么?

Java 虚拟机 (JVM) 是 Java 运行环境的核心部分,它负责执行 Java 字节码。JVM 由多个不同的组件组成,每个组件都负责不同的任务。下面我将详细介绍 JVM 的主要组成部分及其运行流程。 JVM 的组成部分 类加载器 (Class Loader): 类加载器负责读…

数据结构 位运算

基础位运算 按位与(AND) 操作符:&两个位同时位1时,结果位1,否则为0 按位或(OR) 操作符:|主要有一位是1,那么结果就是1,只有两位都是0的时候,结…

C++ 115类和对象_this指针的用途

学习内容 类和对象_this指针的用途 1.解决名称冲突 2.返回对象本身用 *this 运行结果 代码 #include<iostream> using namespace std;//cout 在这里&#xff0c;没有它会报错//1.解决名称冲突//2.返回对象本身用 *thisclass Person { public:Person(int age){//形参名称…

【深度学习实践】基于深度学习的图像去雾算法-ChaIR-实践

本文介绍一个去雾算法ChaIR的使用方法&#xff0c;可以完成图像去雾&#xff0c;也可以用于图像去雨、去噪音等任务。本文不涉及论文原理&#xff0c;只包含源代码的跑通和使用。 先展示一下效果&#xff1a; 原图去雾 论文&#xff1a;Exploring the potential of channel …

ZAN与Mysten Labs合作推进Web3基础设施开发

Mysten Labs是一家Web3基础设施公司&#xff0c;也是Sui区块链的开发公司&#xff0c;今天宣布与蚂蚁数字科技的技术品牌ZAN建立合作伙伴关系。 通过整合Sui&#xff0c;ZAN旨在加速其Web3应用程序的开发和采用。该合作将专注于为Mysten Labs在两个关键领域提供技术支持&#…

Redis 缓存预热、雪崩、穿透、击穿

缓存预热 缓存预热是什么 缓存预热就是系统上线后&#xff0c;提前将相关的缓存数据直接加载到缓存系统。避免在用户请求的时候&#xff0c;先查询数据库&#xff0c;然后再将数据缓存的问题&#xff01;用户直接查询事先被预热的缓存数据&#xff01;解决方案 使用 PostConstr…

day2-网络连接网卡配置原理

1.window网卡 理解&#xff1a; window 有 2 块网卡 本地网卡 192.168.13.253 用于连接外网 vmnet8 10.0.0.1(装虚拟机自动生成的 如果没有自动生成…) 虚拟机添加 2 块网卡&#xff1a; 第一块网卡 NAT 模式 添加网卡的时候设置 NAT 模式 2 个作用&#xff0c;用于连接 wi…

Linux服务管理-Nginx进阶

通常会通过rewrite将用户的80请求转化为443请求&#xff0c;也就意味着Nginx需要去做虚拟主机&#xff0c;一个80端口的虚拟主机和一个443端口的虚拟主机&#xff0c;当访问80端口的虚拟主机时返回一个信息让用户去访问443端口的虚拟主机。

技术证书认证-附考试答案-AIGC与大模型通识-英特尔大湾区科技创新中心证书认证

目录 课程简介 面向人群 考核步骤 试题答案 知孤云出岫主页 课程以及考试链接&#xff1a;AIGC与大模型通识 - 英特尔大湾区科技创新中心 【英特尔大湾区科技创新中心】公益新课《AIGC与大模型通识》上线官网&#xff01;首期结业认证进行中&#xff0c;提升AI应用技能&…

解决Element-ui el-tree数据与显示不对应的问题

如图&#xff1a; 后端返回的权限列表&#xff0c;并没有列表这一项&#xff0c;但是由于父节点 版本打包 为选中状态&#xff0c;导致所有子节点都为选中状态。 实现代码如下&#xff1a; <el-treeref"tree":data"records"show-checkboxnode-key&quo…

RuoYi-Vue新建模块

一、环境准备 附:RuoYi-Vue下载与运行 二、新建模块 在RuoYi-Vue下新建模块ruoyi-test。 三、父pom文件添加子模块 在RuoYi-Vue的pom.xml中,引入子模块。 <dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-test</artifactId>&…

【AI人工智能】文心智能体 - 你的专属车牌设计师

引言 自AI盛行以来&#xff0c;不断有各种各样的人工智能产品崭露头角。我们逐步跟着不断产生的人工智能来使自己的工作和生活变得更加智能化&#xff01;那么我们是否能够创造一款专属于自己的人工智能产品呢&#xff1f; 文心智能体平台就给我们提供了这样的机会&#xff0c…

品牌维价的含义和方法

品牌维价是指通过一系列手段和方法&#xff0c;对品牌产品的价格进行统一管理和控制&#xff0c;确保品牌在各个销售渠道都能保持合理稳定的价格体系&#xff0c;从而保障品牌自身以及各级经销商的合理利润。 常见的品牌维价方法可以参考下面这些 品牌自我管控的方法&#xff…

8.2.数据库基础技术-数据模型

概念模型是从用户的角度进行建模的&#xff0c;是现实世界到信息世界的第一抽象&#xff0c;是真正的实体-联系模型。关系模型是二维表的形式表示的实体-联系模型&#xff0c;是将实体-联系模型转换而来的&#xff0c;经过开发人员设计的&#xff1b;网状模型表示实体类型及其实…

【背包蛙】游戏 高端链游 链游开发

#游戏#链游 #深圳软件开发公司#游戏开发公司 以背包整理和物品摆放为核心的策略博弈 那么以背包中的物品&#xff0c;我们就开始了冒险之旅——角色固定拥有3点AP&#xff0c;盾牌或者剑以及后续获得的其他武器&护甲使用绝大部分都需要AP(也包含很多伤害低&次数也受限…

计算数学精解【12】-fortran计算精解(1)

文章目录 概述hello,world环境接收输入与输出 读取csv文件if and select case循环formatread,write format 概述 FORTRAN是英文“FORmulaTRANslator”的缩写&#xff0c;译为“公式翻译器”&#xff0c;它是世界上最早出现的计算机高级程序设计语言&#xff0c;广泛应用于科学…

2024.8.13-算法学习(原创+转载)

一、什么是张量并行&#xff08;Tensor Parallelism&#xff09; &#xff1f; 张量并行&#xff08;Tensor Parallelism&#xff09; 是一种分布式矩阵算法。 随着模型越来越大&#xff0c;模型内的矩阵也越来越大。一个大矩阵的乘法可以拆分成多个小矩阵的运算&#xff0c;…

文件上传漏洞(四,靶场详解)

前言&#xff1a; 本文基于github上的upload-labs&#xff0c;PHP study以及bp抓包软件进行操作。 靶场环境搭建及pass-1.pass-2请转到&#xff1a; 文件上传漏洞&#xff08;二&#xff0c;靶场搭建及漏洞利用&#xff09; 文件上传漏洞&#xff08;三&#xff0c;靶场详解…

【机器学习西瓜书学习笔记——半监督学习】

机器学习西瓜书学习笔记【第十二章】 第十三章 半监督学习13.1 未标记样本13.2 生成式方法13.3 半监督 S V M SVM SVM基本思想优点和注意事项适用场景 13.4 图半监督标签传播算法多类标签传播算法Label PropagationLabel Spreading 13.5 基于分歧的方法数据视图协同训练 13.6 半…