京东广告大模型应用架构实践:生成式AI引爆广告效率革命

京东广告通过大模型和生成式AI,在召回、排序、创意等环节实现效率革命,并探索了生成式与判别式模型的融合。

原文标题:生成式 AI 引爆广告效率革命,揭秘京东大模型应用架构的实践之道

原文作者:AI前线

冷月清谈:

京东广告算法团队在AICon大会上分享了其在大模型应用架构方面的实践经验。他们通过构建基于世界知识和电商平台的数据体系,结合多模态商品内容理解与用户意图识别,以及高效的生成式模型训练和推理架构,显著提升了广告召回效率。面对工业场景下的规模、延迟挑战,团队从单节点优化、分布式算力释放和全链路算力释放三个层面,采用量化、Tensor并行、注意力机制优化等手段,实现了低延迟和高吞吐的推理性能。此外,他们还探索了生成式和判别式模型的联合建模与推理,以及算法与工程的协同设计,为广告技术从业者提供了有价值的借鉴。

怜星夜思:

1、文章提到京东在广告系统中应用生成式AI面临“工业场景下的规模问题”,具体体现在哪些方面?除了文中所述的延迟问题,还有哪些因素会影响生成式AI在工业界的实际应用?
2、文章中提到了“生成式和判别式模型进行联合学习和推理”的需求,这种联合建模的优势是什么?在实际应用中会遇到哪些挑战?
3、文章提到通过“重新定义算力边界”和“多层次任务定义与优化”来解决推理延迟问题,具体该如何理解?这种思路对于其他领域的算法优化有哪些借鉴意义?

原文内容

演讲嘉宾|张泽华
编辑 |李忠良
策划 |AICon 全球人工智能开发与应用大会

在京东广告的大模型应用架构中,召回环节至关重要。传统召回方式在规则灵活性和用户需求捕捉上存在局限,而大模型带来了新的契机,但也面临训练成本和隐私保护的挑战。京东广告的生成式召回体系包括:基于世界知识和电商平台的数据体系、多模态商品内容理解与用户意图识别,以及高效的生成式模型训练和推理架构。在实践中,通过商品内容语义量化、生成式商品解码召回和模型推理性能优化,显著提升了召回效率。

在 InfoQ 举办的 AICon 全球人工智能开发与应用大会上京东算法总监张泽华做了专题演讲“京东广告大模型应用架构实践”,演讲将分享京东广告在大模型应用实践中的解决思路与经验教训,期待为广告技术从业者带来启发。

内容亮点
  • 了解具备普适性的生成式推荐算法大规模应用方法,并借鉴推理优化和业务优化的示范性实践,提升自身推荐系统的效果和效率

以下是演讲实录(经 InfoQ 进行不改变原意的编辑整理)。

大模型时代广告领域发展的契机和挑战

京东在过去一段时间里,在大模型浪潮下进行了诸多探索和实践,涉及算法和工程方面。

回顾过去一年半行业趋势,国内大部分广告平台都大力投入到基于大语言模型或生成式技术相关的产品及技术升级,涵盖 B 端和 C 端产品。大模型落地实践刚开始时较为分散,但逐渐出现收敛趋势,主要体现在训练和推理方面。同时,工业级别应用层面的范式也在逐步收敛。

在电商领域存在一些痛点,如知识融合问题,传统推荐系统难以有效容纳场景化知识,需外挂大量词表信息及业务自反馈信息。而大语言模型时代到来后,对电商用户和商品的理解能力可在大模型加持下得到提升。此外,基于大语言模型或生成式技术的 scaling law(扩展定律)让广告算法系统焕发生机。

产业界使用大语言模型主要有三大目标:一是大幅提升人货匹配效率,尤其在搜索、推荐等核心链路模型中,通过提升人货匹配效率带动 CTR(点击通过率)、CVR(转化率)、GMV(商品交易总额)及广告收入等核心业务指标上涨;二是借助其知识理解和融合能力;三是满足多模态信息接纳需求,发挥大语言模型在文字、视频、语音、图片等多种模态下的理解能力。

京东希望找到一种在应用级别、一定时间内具有 scaling law 趋势的算法演进路线,且该路线能适用于较多场景,同时以低成本获取高性能

生成式算法体系

在典型的广告算法体系中,生成式技术主要作用于以下场景。从经典广告系统的链路来看,从生成式的角度可以划分为三个阶段:第一个阶段是召回和粗排阶段,这本质上是一个信息检索类问题。其核心是如何“无中生有”,从海量信息中找出对用户可能有用或感兴趣的信息,形成一个庞大的候选集合。第二阶段是精排阶段。CTR(点击通过率)和 CVR(转化率)是典型的精排问题。精排模型打出的分数常用于排序,本质上是在进行信息过滤,筛选出更符合用户需求的内容。第三阶段是信息补足阶段。对于已经排在较前位置的商品或信息流广告,进一步引入多模态理解能力,包括创意和排序机制的优化,即重排。重排可以视为在上下文场景下的二次排序,进一步提升广告效果。

在讨论生成式技术或大语言模型时,离不开其对应的数据体系。数据体系需要解决两个核心问题:一是用户行为如何在生成式技术浪潮中进行二次定义;二是在电商广告场景下,如何将知识融入生成式 AI 模型或算法中。

对于用户行为,传统上是通过人、货、场三个维度进行定义。在生成式场景下,除了这三个维度,还会包含用户画像类信息。对于电商知识类信息,除了商品、货品等结构化信息,还存在大量未被很好结构化的信息,例如用户随手拍的评论图片,其语义化信息尚未被充分利用。

在电商广告场景下,经过比较和分析,认为 Semantic ID(语义 ID)是当前场景下更适用的表征解决方案。在数据表征的基础上,算法建设涉及几个关键步骤。首先是商品的量化表示,通过 Semantic ID 的方式进行表征。其次是让大语言模型或生成式算法对这些表征后的信息具备理解能力和推理能力。

关于编码和表征,引用了一篇经典文章的观点,探讨了 Sid 是如何通过类似残差信息的表达方式进行表征的,这与 Google 的相关研究相对应。即通过某种编码的 code book 方式来表达信息。在将信息注入大语言模型(无论是开源获取的还是从零开始训练的)时,面临两个关键问题:一是这些数据如何训练;二是如何让训练的数据有效表征其含义,即 DPO。

生成式算法工程实践

我们来看一下在具体实践中遇到的算法和工程上的挑战。

首先,我们今天主要讨论的环节是召回,但实际上我们的的工作已经覆盖了排序、创意甚至重排阶段。在将生成式 AI 或大语言模型应用于推荐系统时,我们遇到了两个极具挑战性的问题。第一个挑战是工业场景下的规模问题。随着业务的发展,模型的规模越来越大。在广告系统中,延迟是一个关键问题。如果推理延迟超过 100 毫秒,结果将不会被采纳,被认为是毫无意义的。为了实现高性能和低延迟的推理,我们需要付出巨大的计算成本,而我们希望这种成本越低越好。目前,许多大语言模型的工作是基于开源模型进行 SFT(监督微调)或 PT(预训练)后直接使用。然而,随着我们对业务的深入理解和算法应用的灵活性提升,我们发现仅仅借用他人的模型结构已经无法满足我们的需求。我们需要对模型结构进行改造,并且发现单纯的生成式模型无法很好地解决判别型问题。这意味着未来的应用场景需要生成式和判别式模型进行联合学习和推理。

第二个挑战是低延迟和高吞吐的要求。我们给出一个典型的参考数据:百万 token 的推理成本必须低于 1 元人民币。如果高于这个成本,在大多数工业场景下,成本将变得不可控,模型很可能只能停留在实验阶段,无法大规模落地。这两个挑战共同导致了一个问题:我们需要进行极致的性能优化,才能让这样的模型或算法真正在线应用。

在进行大规模工业化性能优化时,我们发现算力或推理优化主要由三个方面决定:首先是裸算力,其次是存储性能或存储吞吐量,第三是训练和推理过程中的 IO 问题。这三者存在木桶短板效应,即任何一个环节的短板都将决定我们在应用中的性能上限。

针对低延迟和高吞吐的极致性能优化,我们的优化思路分为三个层面:首先是在单节点优化上,我们希望实现极致的性能释放;其次,当任务变为分布式时,我们希望实现软硬协同的分布式高性能推理;最后,在整个全链路上,我们希望寻找其他可以优化的资源或耗时空间,例如层次化推理和同层次化算力的优化。

在优化手段方面,业内已经有许多相关工作,包括基于算子和图的优化、深度学习编译器的优化,以及推理模式的优化,如各种缓存模式(KV Cache、Layer Cache 等)和推理范式的优化(例如 PD 分离)。总结来说,单节点上的推理算力释放主要分为两部分:一是单纯的推理优化,二是从服务层级进行优化。在单节点推理优化方面,主要涉及量化、Tensor 并行和各种 Attention 技术;在服务层级优化方面,主要关注调度层面,如连续批处理(continuous batch)和负载均衡。

单节点算力释放

为了降低单节点推理的无用功计算,我们通常会采用一些优化方式,例如多查询(Multi-Query)注意力机制等。这些方法在业内已经被广泛应用,例如基于英伟达 GPU 的解决方案,虽然在一定程度上有效,但仍然无法完全解决工业场景下的问题。

在优化手段方面,量化技术是一个重要的方向。从半精度到 FP8,甚至更低比特的量化技术,虽然在推理性能上追求极致,但在实际应用场景中,如广告推荐或搜索,过低的精度可能导致无法达到预期效果。Tensor 并行则是一种计算层面的资源分配优化,通过将任务拆分,降低单卡负载,从而降低延迟并充分利用性能。

在注意力机制的优化方面,Flash Attention 和 Page Attention 等技术已经被广泛应用于开源模型中。通过采用这些优化手段,例如 batching 和注意力技术,可以显著提升推理效率。公开资料显示,平均推理延迟可以降低到原来的 1/5 左右,吞吐量提升的同时,成本可以降低约一半。

特别地,我们推荐一种 batching 策略—— Dynamic Latency Batching Switch。传统的 Continuous Batching 虽然可以填充推理过程中的空闲时间,但在低延迟场景下,简单地将任务插入到空闲位置可能会导致累积延迟超标。动态延迟 batching 的核心思想是,在保证每个推理请求不超过最大延迟的前提下,通过智能调度,将任务分配到更合适的批次中。例如,当发现某条推理链路如果继续插入任务会导致延迟超标时,系统会将其切换到更早结束的批次,从而确保下一个任务可以更早进入推理状态。

分布式算力释放

在分布式场景下,软硬协同的优化思路虽然简单,但在工业场景下的大规模实现具有挑战性。由于请求的长度(request length)不同,不同集群和节点的处理能力也各异。因此,我们倾向于将计算量大的任务分配到计算能力更强的节点上。然而,难点在于负载均衡。并非所有广告或推荐请求的价值都相同,如果某次请求对系统的价值更高,我们会优先处理。因此,在负载均衡策略上,我们会进行基于请求价值的粗粒度预估,将高价值请求分配到专用计算节点上优先处理,而低优先级的请求可能会被抛弃或采用传统算法和模型处理。

在调度层面之外,我们还尝试了以下三项已被验证有价值的工作:

  • 生成式推理集群:在集群层面,我们进行了以下优化:

    • 大模型的集群化推理;

    • 小批量(small batch)适配能力;

    • PD分离,prefill(预填充)和 decode(解码)这是业内常见的优化手段。

  • KV Cache 池化:许多企业希望减少计算资源的浪费,同时保证计算精度和效果。KV Cache 池化是应对集群化推理的有效解决方案,能够避免从零开始推理每条请求,从而提高效率。

  • 判别式场景的集群化处理:在广告场景中,无论是搜索还是推荐,结果的相关性是一个关键问题。对于判别式任务,我们设置了单独的集群进行路由化处理。

为了实现集群化模型的分布式并行推理,我们采用了以下方法:

  • 模型拆图:将模型中的多个 block(既有 CPU 计算密集型部分,也有 GPU 计算密集型部分)根据计算负荷和价值进行拆分。拆图后,将不同部分分别进行服务化部署。通过这种方式,可以优化集群的计算资源利用率。拆图前,由于模型块的差异,集群的资源利用率存在较大差异;拆图并并行计算后,利用率趋于平衡,避免了某些资源过度使用或浪费。

  • 多级缓存:针对 IO 瓶颈问题,我们利用 CPU 管理的 RAM 和 GPU 的 HBM(高带宽存储器)构建了多级缓存。这种多级缓存减少了多机之间的通信,使系统能够更快地获取预计算结果,从而实现更低的延迟和更高的吞吐量。

在训练过程中,我们发现了一些有效的解决方案。对于更复杂的生成式 AI 训练(超出简单的大语言模型范畴),全参数 GPU 同步训练在特定应用场景下能够显著提升训练速度。

在分布式推理的调度器设计中,我们面临的业务应用场景不仅包括生成式算法模型,还涉及语义理解层面的相关性以及典型的排序任务(如 CTR、CVR 等)。这些任务通过不同层级的调度器进行请求划分和调度。

全链路算力释放

为了维持低延迟和低资源消耗的推理,我们希望从其他环节“偷”一些资源或耗时空间。具体方法如下。

  • 端计算与预计算:我们将相当一部分计算下沉到用户手机端(设备端),采用端计算模式进行大量预计算工作。在用户发起请求的瞬间,我们利用召回到排序之间的这段时间进行前置计算,这部分耗时空间约为 30~100 毫秒,具体取决于不同业务场景。

  • 近线计算:对于一些信息,我们只需要在一定时间内保证其最新即可,因此可以通过近线计算的方式提前算好,然后在线上进行查询或直接使用。

  • 离线计算:对于计算极其复杂且在较长时间内不会变化的任务,我们采用离线计算的方式。

通过以上层次化的划分,结合软硬件的定制化优化,我们将原本 100 毫秒的计算延迟拆分为多个几十毫秒的小块,这些小块已经完成了预计算。因此,真正留给实时推理和计算的任务变得相对简单,从而能够在百毫秒以内完成在线生成式 AI 的推理。进一步地,我们是否可以更彻底地“偷”资源呢?答案是可以。在每个环节(如检索、排序等)中,我们都可以利用层次化的算力设计和动态协调机制,实现更加负载均衡的算力配置。

在整个算法和全链路设计中,贯穿了两条核心思想:

  • 重新定义算力边界:我们将单环节的推理任务拆分到多个环节,重新定义了算力的边界以及模型需要计算的内容。

  • 多层次任务定义与优化:我们将复杂的计算任务定义到多个层次上,通过硬件升级、调度层面升级以及流程层面升级,带来实际算力的提升。这样既能够保持全链路推理在百毫秒以内,又能够支撑一定程度的 Scaling Law,以应对不断增长的计算需求。

算法建模灵活度问题

在算法研发过程中,算法工程师们拥有大量富有创意的想法。根据不完全统计,一个典型的业务算法工程师在一个季度内至少希望进行两次上线评审,背后可能涉及近 10 次想法的尝试。如果一个公司或团队有几十甚至上百名算法工程师,算法的灵活性问题就显得尤为突出。在这种情况下,如何在有限的耗时空间和硬件资源下,支撑灵活的算法定制,成为了一个亟待解决的棘手问题。具体而言,如何让生成式模型和判别式模型进行联合建模、训练和推理,是我们当前面临的一大挑战。我们主要的解决方案是基于 Python 和 TensorFlow 进行构图,以实现联合训练和推理。

在召回层面,虽然可以通过生成式技术(例如 Semantic ID)对商品进行表征,根据用户的历史行为(如浏览、点击等)预测其未来可能感兴趣的商品,但这只是最基础的检索问题。检索结果还需要进行相关性判断,并进入粗排环节进行打分和排序。在这个过程中,如果发现相关性已经失衡,那么可能根本不需要进行粗排打分,甚至某些类目下的商品或推荐项也无需生成。这种将生成式和判别式算法链路耦合后的结构剪枝,即推理过程中的剪枝,已被实验验证可以显著提升召回率和准确率,甚至达到两位数的提升。这种效果非常明显且令人震惊。

为了实现召回和粗排一体化(召排一体),业界最典型的做法是先召回一个大集合,再进行过滤和粗排,形成三个环节。但如果将这三个环节合并为一个,即召回加粗排一体,会面临哪些问题呢?

以典型的稀疏模型(如粗排或精排的 CTR 模型)为例,其稠密部分的计算量相对较小(约 0.5T Flops),但 embedding table 占比巨大。而典型的生成式模型,其 Dense 部分非常庞大,对算力要求极高,但 embedding 等外挂信息相对较少。如果希望将这两种模型进行耦合或联合建模,数据是否充足是一个关键问题。下图引用了一张开源公开文章中的截图,显示高质量语料数据被认为已接近耗尽,预计耗尽的时间点在 2028 年左右。然而,在我们的业务场景中,用于训练最典型的稀疏模型的数据仍然非常充足。如果仅关注生成式模型,数据耗尽的风险确实存在。但如果考虑生成式与判别式模型的联合建模,数据空间仍然较为充裕。无论是生成式模型还是判别式模型,其参数增长的势头并未减缓,反而仍在加速增长。

如果简单地将两者耦合进行推理,会立即遇到一个明显的问题——“撞墙”。目前主流的大语言模型,无论是在 Google 的 TPU、英伟达的 GPU 还是 AMD 的 MI 推理芯片上运行,其推理的 token 吞吐量似乎都集中在较低水平,主要受限于 HBM(高带宽存储器)的瓶颈。随着参数增长、数据量和模型结构的扩大,推理环节已经成为制约因素。在这种情况下,单纯依靠硬件提升已无法满足联合训练和推理的需求。

我们提出采用分而治之的分层思想来解决这个问题。业界常用的硬件解决方案及其对应的技术栈为我们提供了分层的空间。我们的分层逻辑包括定制化和优化两个层面,最上面是业务层面。通过通信、建模和数据的三层解耦,我们可以找到三者之间的有机平衡关系。这意味着通过利用局部计算特性,HBM 的通信问题得到了一定程度的缓解。

生成式 & 判别式联合推理能力

在生成式和判别式联合推理能力方面,我们以基于 TensorFlow 的 CTR(点击通过率)和 CVR(转化率)排序模型(即典型的稀疏模型)为例,同时结合像 LLaMA 等典型的大语言模型。我们的目标是将这两者耦合在一起,这种耦合并非简单的分步推理(即上一步推理完成后再进行下一步),而是通过直接共享 hidden state(隐藏状态)来驱动整个图的共享,从而实现整个推理过程的封装。

在推理过程中,我们同时采用多引擎进行推理:一方面通过 TensorFlow 的 Graph engine 进行触发和驱动,另一方面驱动 TensorRT engine 推理引擎 。最终,我们实现了生成式和判别式模型的有机结合,并且避免了“撞 HBM 的墙”,能够在业务场景中真正实现推理。

总结我们所做的工作:

  • 我们基于 TensorFlow 和 Python 重写了生成式的推理流程和建模能力。

  • 我们采用基于 TensorFlow 的图调度框架和自定义 TensorFlow 算子,实现了生成式的推理,并将其耦合到传统的稀疏模型上。

  • 在这个过程中,我们大量复用了 TensorFlow 以及业务历史上积累的成百上千个业务算子。

  • 离线建模和在线推理不再是从离线找到一个开源模型进行 SFT,然后直接将 SFT 的结果用于在线模型,而是离线建模的模型结构与在线推理的模型结构完全一致,实现了高度的一致性。

总结与展望

尽管我们在生成式技术的探索过程中遇到了一些痛点和挑战,但我们仍然认为生成式技术在传统算法领域具有巨大的发展空间。以下是我们对未来工作的展望和规划。

  • 生成式技术的广泛应用与收益

    • 全流程覆盖与显著收益:虽然我们今天主要介绍了召回和粗排环节,但实际上我们已经将召回、粗排、精排、创意出价以及机制策略重排等环节几乎完全用生成式技术重写。这些环节的收益空间均达到了两位数以上,显示出生成式技术在提升业务效率和效果方面的巨大潜力。

  • 电商场景下的模型优化

    • 开源模型的局限性与改进:在典型的电商场景中,直接使用开源的大语言模型虽然有一定的效果,但并不足以满足业务需求。我们希望通过深度改造这些模型,进一步提升其在业务上的表现,实现双位数的性能提升。这表明在特定领域内对模型进行定制化优化是实现业务增长的关键。

  • 算法与工程的协同设计

    • Co-Design 的重要性算法和工程的 Co-Design 是推动大语言模型或生成式技术在实际场景中落地的关键。通过算法和工程的紧密结合,我们可以更好地优化模型的性能,使其更适合实际业务需求,从而加速技术的落地和应用。

未来发展方向

  • 领域特性数据与基座模型:电商场景中的数据具有独特的领域特性,与公域数据有所不同。我们期待在未来一段时间内能够出现更强大的电商领域理解基座模型,以更好地支持生成式技术在电商场景中的应用。

  • 生成式与判别式模型的深度融合:我们希望进一步完善生成式与判别式模型的联合建模和推理,使其更加全面和强大,甚至能够实现“all in one”的解决方案。这将有助于提升模型的整体性能和效率,更好地满足业务需求。

嘉宾介绍

张泽华,现任京东集团算法总监、京东零售算法通道委员,IEEE 国际标准工作组副主席,并于中国计算机学会担任标准工委执行委员、大数据专委委员。专注广告算法领域在零售业务的研发实践,推动广告核心场景算法效率增长,带领团队自研大规模分布式生成式广告算法推理能力,取得数倍推理加速效果。迄今申请发明专利 7 项,并先后在国际顶级学术期刊会议 CIKM、NIPS、AAAI 等发表论文 7 篇。牵头国内行业标准制定 2 项,参编 14 余项。

活动推荐

AICon 2025 强势来袭,5 月上海站、6 月北京站,双城联动,全览 AI 技术前沿和行业落地。大会聚焦技术与应用深度融合,汇聚 AI Agent、多模态、场景应用、大模型架构创新、智能数据基建、AI 产品设计和出海策略等话题。即刻扫码购票,一同探索 AI 应用边界!


今日荐文

图片
你也「在看」吗?👇

我觉得“工业场景下的规模问题”的核心在于成本和效率的平衡。

1. 模型复杂度与推理成本: 广告系统需要处理海量数据和复杂的用户行为,这要求模型具备强大的表达能力。但模型过于复杂会导致推理成本急剧上升,难以满足实时性要求。
2. 延迟敏感性: 广告的展示需要在极短的时间内完成,任何延迟都会直接影响用户体验和广告效果。因此,生成式AI模型需要在保证效果的同时,尽可能降低推理延迟。

除了文章中提到的延迟问题,我认为以下因素也会影响生成式AI在工业界的实际应用:

* 数据安全与隐私: 大模型训练需要大量数据,如何保护用户隐私并确保数据安全是一个重要挑战,尤其现在大家对隐私越来越看重。
* 冷启动问题: 对于新商品或新用户,缺乏足够的历史数据来支持生成式AI模型进行个性化推荐,这会导致冷启动问题。 这个问题在推荐系统里一直都有,感觉是个老大难问题了。
* 模型的鲁棒性: 生成式AI模型容易受到对抗样本的攻击,导致输出结果出现偏差。如何提高模型的鲁棒性,使其能够应对各种恶意攻击是一个重要挑战。

文章中提到的规模问题主要体现在两个方面:一是模型规模越来越大,导致推理延迟增加;二是百万token的推理成本必须低于1元人民币,否则成本不可控,难以大规模落地。

除了延迟和成本,还有以下因素会影响生成式AI在工业界的实际应用:

* 数据质量和数量: 生成式AI模型依赖大量高质量的数据进行训练,如果数据不足或质量不高,模型的性能会受到影响。
* 模型的可解释性: 工业界对模型的可解释性要求较高,需要理解模型是如何做出决策的,以便进行调整和优化。但生成式AI模型通常比较复杂,难以解释。
* 模型的安全性: 生成式AI模型可能存在安全漏洞,例如生成恶意内容或泄露用户隐私,需要采取措施进行保护。
* 人才储备: 工业界需要具备相关技术的人才,才能有效地应用生成式AI技术。
* 伦理道德: 生成式AI的应用需要考虑伦理道德问题,例如避免产生偏见或歧视。

与其说是“联合”,我更倾向于理解为“混合专家模型”,每个模型擅长不同的方面,最终结果是多个模型共同决策的结果。

实际应用中,挑战在于:

* 如何分配任务: 比如,哪些任务交给生成式模型处理,哪些任务交给判别式模型处理,如何根据任务的特点进行智能分配?
* 如何融合结果: 不同的模型输出结果可能存在差异,如何将这些差异进行融合,得到一个最终的、一致的输出结果?
* 如何平衡性能: 联合模型通常比单一模型更复杂,如何平衡模型的性能和效率,使其能够在实际应用中快速运行?

我觉的现在其实很多公司都在用类似思路,例如多目标优化,就是一种混合模式。

联合学习/推理这个方向很有意思,我理解的核心优势是扬长避短,互补增强

* 生成式模型: 擅长捕捉数据的潜在分布,可以生成多样化的内容,但通常缺乏对特定任务的精确判断能力。
* 判别式模型: 擅长根据输入数据进行分类或回归,精度高,但缺乏生成新数据的能力。

所以,联合学习可以取长补短,让模型既能理解数据的深层含义,又能准确完成特定任务。

挑战的话,我觉得主要有:

1. 模型设计: 如何设计一个既能有效融合两种模型,又能避免彼此干扰的模型结构是一个难题。 感觉像是左右脑如何协同工作。
2. 训练策略: 生成式和判别式模型的训练目标不同,如何设计一个能够同时优化两种模型的训练策略是一个挑战。
3. 资源消耗: 联合模型通常比单一模型更大更复杂,需要消耗更多的计算资源和存储空间。

  1. 重新定义算力边界: 传统做法是在单个环节内完成所有计算,而重新定义算力边界是将计算任务拆分到多个环节,每个环节只负责一部分计算。相当于把一个大任务拆成多个小任务,降低每个环节的计算压力,从而降低整体延迟。
    2. 多层次任务定义与优化: 将复杂的计算任务定义到多个层次上,每个层次采用不同的优化策略。比如,有些任务适合用硬件加速,有些任务适合用软件优化,有些任务可以提前预计算。通过分层优化,可以充分利用各种资源,提高整体效率。

    这种思路对于其他领域的算法优化有以下借鉴意义:

    1. 任务拆解: 将复杂的任务拆解成多个简单的子任务,可以降低每个子任务的难度,更容易进行优化。
    2. 资源优化: 充分利用各种资源,比如硬件加速、缓存、预计算等,可以提高算法的整体效率。
    3. 分层优化: 针对不同的层次采用不同的优化策略,可以更好地适应实际情况,提高优化效果。
    4. 算法重构 很多时候,优化来优化去,发现是算法本身有问题,需要重构。

重新定义算力边界” 我认为指的是打破传统算法流程的界限,将原本需要在单个环节内完成的计算任务,尽可能分散到其他环节中进行,利用预计算、端计算等手段,变“集中计算”为“分布式计算”,从而降低单个环节的计算压力。

多层次任务定义与优化” 则是指针对不同的任务特性,采用不同的优化策略。例如,对于计算密集型任务,可以采用硬件加速;对于IO密集型任务,可以采用缓存技术。

这种思路的借鉴意义在于:

1. 全局视角: 算法优化不应局限于单个模块,而应从全局视角出发,考虑整个系统的性能瓶颈。
2. 灵活拆分: 任务拆分要灵活,可以根据实际情况将任务拆分为更小的粒度,并分配到不同的计算资源上。
3. 差异化优化: 针对不同的任务特性,采用不同的优化策略,才能取得最佳效果。

我理解这种思路有点像**“时间换空间”,或者“空间换时间”**。

* 重新定义算力边界,本质上是用更多的空间(例如,更多的计算节点)来换取更少的时间(更低的延迟)。
* 多层次任务定义与优化,则是通过更精细的任务划分和资源调度,在时间和空间之间寻找一个最优的平衡点。

这种思路在其他领域的算法优化中,可以借鉴的地方在于:

1. 权衡取舍: 算法优化需要在时间、空间、资源等多个因素之间进行权衡取舍,找到一个最符合实际需求的方案。
2. 系统思维: 算法优化不是孤立的,需要考虑整个系统的架构和资源分配,才能取得最佳效果。
3. 持续迭代: 算法优化是一个持续迭代的过程,需要不断地分析和优化,才能适应不断变化的需求。

联合学习和推理的优势如下:

1. 结合两种模型的优点: 生成式模型擅长生成新的数据,判别式模型擅长分类和预测。联合建模可以将两者的优势结合起来,提高模型的整体性能。
2. 提高模型的泛化能力: 联合建模可以利用生成式模型生成更多的数据,从而提高模型的泛化能力,使其能够更好地适应新的数据。
3. 提高模型的可解释性: 判别式模型通常比生成式模型更容易解释,联合建模可以利用判别式模型来解释生成式模型的行为。

实际应用中会遇到以下挑战:

1. 模型结构的复杂性: 联合建模需要设计复杂的模型结构,将生成式模型和判别式模型结合起来。这增加了模型设计的难度。
2. 训练的难度: 联合建模需要同时训练生成式模型和判别式模型,这增加了训练的难度。需要设计合适的训练策略和损失函数,才能使两个模型协同工作。
3. 推理的效率: 联合建模的推理过程通常比较复杂,需要同时运行生成式模型和判别式模型。这会影响推理的效率,需要进行优化。