基础模型定义
基础模型是一种大型机器学习模型,通常在大量数据上进行大规模训练(通过自监督学习或半监督学习),以使它可以适应各类下游任务。
它需要兼顾参数量大(大型模型),训练数据量大(大量数据大规模训练)和迁移学习能力强(适应多种下游任务)几点才能够叫做基础模型。
在搜索、广告和推荐等内容分发领域兴起后,我们开始能够收集到大规模的有监督反馈数据,例如点击、点赞和购买等行为数据。市场也渐渐察觉,投入在人工智能技术上的投资,可以在商业上获得巨大的回报。因此,为了更好地记忆和监督海量数据中的信息,模型的参数规模开始急剧增长,模型变得越来越大。
随着 DeepMind AlphaGo 的走红,AI 领域进入了全面爆发的阶段。重要的 AI 应用,如 AlphaZero 和无人驾驶,能够以较低成本自动生成训练数据,训练数据的规模也发生了质的飞跃。在更大规模的训练数据基础上,以计算能力和存储成本的降低为有利条件,模型的参数规模再次急剧增加,模型变得更大了。
目前,以 OpenAI GPT 3.0 为里程碑的 AI 大模型正在使用全网的数据进行无监督训练,我们进入了一切皆为训练数据的时代。这使得模型可以获得几乎无限的训练数据。为了对如此规模的数据进行建模,模型参数的规模越大越好,因此模型变得越来越大了。
大模型的“大”是一个相对概念,是一个持续的过程。更大规模的训练数据需要模型具备更强的记忆、理解和表达能力。而为了拥有更强的记忆、理解和表达能力,模型则需要更大的参数量,也就是更大的模型。

AI大模型能做什么
由于大语言模型在训练数据上的多样性和数量的保证,以及大规模参数所造成的涌现和思维链能力,让它可以很好地应对如语言翻译、创意策划、文章创作和代码编写这类任务。
利用大模型平台先天具备的优异语言能力、意图识别能力和指令翻译能力,将互联网领域的各个能力接入其中,由 AI 大模型作为大脑,帮助各个应用互相对话,产生化学反应,这就是 GPT 架构师提供的“答题思路”
强化学习
OpenAI使用了一种被称为强化学习从人类反馈(Reinforcement Learning from Human Feedback,简称RLHF)的方法来训练ChatGPT。这种方法结合了无监督学习和强化学习两种技术。 首先,OpenAI使用了大量的无标签数据(即互联网文本)来进行预训练。这个过程中,模型学习了如何预测下一个词,从而理解了语言的基本结构和语义。这种方法被称为“语言模型”(Language Model,简称LM)。 然后,OpenAI使用了强化学习技术来进行微调。他们让人类评估员与模型进行对话,并对模型的回答进行评分。然后,他们使用这些评分作为反馈,训练模型优化其回答。这个过程被称为“强化学习”。 通过这种方法,ChatGPT能够生成流畅、有趣且有深度的对话。然而,这种方法也有其局限性。例如,模型可能会生成不准确或不合适的回答,或者过于倾向于编造信息。因此,OpenAI正在不断改进这种方法,以提高模型的性能和可靠性。
GPT 的诞生要归功于 NLP 的快速发展。从 2018 年到 2021 年,是第一代大语言模型(LLM)的“技术爆炸”期。人们逐渐学会了,如何使用海量的无标签数据,来训练这些“涌现”智能的大模型。随后,OpenAI 采用强化学习技术,点亮了 LLM 的智能,ChatGPT 由此横空出世。
ReAct 概念

驾驭工具

领域知识库
第一是让 LLM 做好考前“冲刺训练”也就是领域微调,它的训练成本较高,我们会在第四章中讲解这个方法。第二是为模型增加外部记忆,在提示词中引入一些领域知识,帮助模型提升回答质量。

如何训练大模型
首先,我们需要学习 AI 系统的策略建模方法。思路是把业务问题转化为数学问题,然后对这些数学问题进行建模,最终将它们转化为工程问题。在这个过程中,你将学会如何根据不同的场景选择合适的模型算法。
在学习 AI 内容推荐服务时,你将掌握如何让你的系统轻松地应对在线真实场景,如何通过调整算法来灵活地控制在线指标。这些问题也是在线内容生成(AIGC)系统需要解决的。
如果想让你的系统在商业竞争中处于优势地位,就需要有针对性地设计系统模块,结合在线服务的特性来实现算法。这样,你的系统才可能成为商业竞争中有竞争力的智能体。这不仅关系到在线 AI 系统的盈利能力,也是让你的 LLM 应用走向具身智能的重要技能。
对于 AIGC 系统而言,为了避免过高的推理开销增加商业成本,模型小型化的方法也必不可少,这能大大降低在线推理的开销。
AIRC系统
谷歌的搜索引擎、抖音的推荐系统,还有阿里妈妈的计算广告系统,这类系统的统称是“内容推荐系统(AIRC)”
指标建模
电商系统通常把 GMV 指标作为北极星指标。为了提升这个指标,算法工程师们会想尽办法,在用户进入产品时把他最可能购买的商品放在最显眼的位置。
“从海量商品中选出此人最可能成交的商品”。这是你再熟悉不过的排序算法了,排序的实体是商品,排序的值是商品被此人购买的概率。

召回模块
召回模块的核心目的,就是用时间复杂度较低的算法排除大量的“错误答案”,减少排序算法的压力。

比如搜索引擎,常常会通过搜索词中的关键字,在倒排索引中拉取内容,大幅度地降低排序规模,让用户更快得到搜索结果。

这个方法叫做关键词召回,它只是众多召回策略里最简单的一种。常见的召回策略还包括年龄、性别这类用户画像召回方法,只要对内容对应的标签建立倒排索引就可以了。
后来发展出了向量召回技术,该技术基于对比学习和图神经网络,刻画用户和商品之间的空间距离,以此作为召回顺序的依据。
排序模块
排序模块负责对召回结果进行精确的打分排序。这里将会使用用户、场景和商品的全景特征进行模型建模,尽可能地去提高打分的准确度。

风控模块
内容安全系统会对各种模态(视频,图像,语音,文字)物料做安全审核,确保平台投放的内容是符合你们平台形象和法律法规要求。该系统由机审和人审配合完成。
由于不合规内容占比相对较低,所以机审会采用高召回的策略,也就是“宁可错杀也不漏过”。在机筛之后,会把相对少量的内容交给运营人员做二次确认。
反作弊系统,在技术上可分成实时和离线反作弊这两个部分。实时反作弊一般会通过流量的行为模式还有动作频次来识别gongji者,这部分工作可以防御 80% 以上的gongji者。
特征工程

当然,除此之外我们还有很多的处理手段,比如对数值特征做归一化,让所有的特征都“一样高”,以免模型觉得取值范围大的特征就更重要。例如模型会以为“年龄”比“气温”先天就更重要。这种谁更重要的事情应该交给模型自己去学习、决定,而在特征中,最重要的是“公平公正”。
特征映射到高维度

从空间到世界

那么我们如何获取各个实体在真实世界中的空间关系呢?你可以通过浩如烟海的语料来学习,比如 OpenAI 使用了几乎全网的文章来训练它们的模型,教会模型理解自然语言。当然了,如果你只需要解决“羽毛球与谁关系更近”这种级别的实体关系,找一些常识性的图书和文章,交给模型去学习就好了。

模型工程
监督学习

点击率模型 CTR
为了让你更好地理解这个过程,我们沿用之前点击率预测的例子。预测用户“是否点击”是一个经典的监督学习问题。其中的 X 包括用户年龄和商品价格等各类特征,标签 Y 则表示 “是否点击”,一般用 0 来代表未点击,1 代表点击。可以直接用刚才例子中的 Y = AX + B。X 就是你的特征,A 和 B 是你的未知参数,Y 则是是否点击的标签。




对比学习
具体的过程是这样,你可以用图结构来表示用户和物品的关系,构建它们之间的关系图,用户和物品是图的节点,它们之间的交互行为是图的边,边的权重则是它们交互行为的频率。
那么,如何得到它们之间的距离呢?其实你可以用 Word2Vec 来实现,因为它能找到词与词之间的距离,自然也能用来找“人”与“物”之间的关系,只不过你需要一个办法把节点之间的图结构转化成 Word2Vec 中的序列结构。
首先随机选择一个初始节点,根据与它相连边的权重分配概率,进行节点之间的随机跳转,也就是所谓的随机游走。随机游走的过程中会生成许多路径,这个路径则是你想要的序列。得到序列后,自然可以使用 Word2Vec 建模,唯一不同的是对象由单词变成了用户和商品。
通过这样的处理,你就能得到用户和物品的空间投影(Embedding)并计算它们的空间距离。

强化学习



强化学习不依赖于预先标记的数据,而是通过与环境的交互来进行自主学习,根据奖励信号的反馈进行实时的策略更新,同样是行为主义派的经典方法。
数据算法
用户特征
用户画像数据被视为每个产品最宝贵的资源,同时也是 AI 系统中价值最高的数据。因此,AI 系统必须充分利用这些有限的数据资源,以提供更有价值的信息。
数据管理平台 DMP


人群扩展算法

实现 Lookalike,完全可以用上节课你所学到的 DeepWalk 算法。但是这节课我们来学习一个新的算法,也就是上节课预告的 GraphSAGE,当时我们提过,和两阶段的 DeepWalk 算法相比,GraphSAGE 是一个端到端的方案,能更好地保留图结构中的信息。


因为每个节点都有可能成为树根,所以每个节点都能获取自己的融合表征。算法训练的过程,其实就是在调整第四步中那个参数,使得每个人对应节点的融合表征在高维空间中的距离,和真实世界中的距离尽量一致。本质上就是让这个参数来表达高维空间映射的投影规则。
完成这些步骤之后,Lookalike 的最后一步就很简单了,只要将高维空间中与高净值用户距离最接近的那群人作为潜在用户就好了。其实多设备、多场景的身份对齐也是同样的道理,我们只要找到足够相近的两个人,将他们近似识别成同一人就可以(真实场景用法更复杂些,不过是同样的道理)。
物品特征
知识图谱
知识图谱起源于上节课三大派别中的符号主义派,是一种用于表示和组织知识的图形结构,由多个“实体 - 关系 - 实体”的三元组所组成。
相较于其他图结构,知识图谱的边上携带了更丰富的信息。它不仅在 AIRC 系统中发挥了重要的作用,同样也是 AIGC 系统中,提示语工程的重要组成部分。

场景特征
场景特征来自于每一次流量请求中客户端提供的信息,被用于刻画用户触达应用时的全景信息,包括后面这些信息。
应用程序所处的界面(应用、页面、媒体位等)
用户的设备信息(信号强度、手机型号、电池电量等)
所在地点信息(城市、气温、邮编等)
在处理场景特征时,我们需要将与用户长期习惯相关的数据放在用户画像中。那些随着场景变化频率较高的数据应该放在场景特征中。
场景特征的最大价值,在于它在时间维度上的区分性和敏感性。例如“用户最近 30 分钟的商品点击数量”或“用户最近 1 小时浏览商品数量”这些实时特征都是非常重要的,它们会对推荐结果产生很大影响。为什么这么说呢?
这是因为用户画像和物料特征数据相对稳定,更新频率不高,如果不增加场景特征,模型的输入值很可能在一段时间内没有任何变化。因此,场景特征的输入可以让模型变得更加敏感。
AI离线系统
全量模型训练

因为业务应用(如 APP,网站,客户端等)是用户行为和数据最丰富的地方,所以 AI 系统通常会在用户发生某些行为时,将日志上报到服务端,获取足够多的数据,供给模型训练使用。
需要一个类似 Flume 的在线的日志服务来实时接收日志。这里需要注意的是,如果在数据收集时数据被篡改,将会导致 AI 系统学习到错误的知识。所以工业级的 AI 系统会通过日志加密的方式,降低日志被篡改的风险。
样本生成

增量模型训练


同时,第三级火箭需要与在线模型指标监控系统配合。一旦关键指标出现大幅波动,就需要回滚模型,并降级到非增量训练模式,在排除问题的根因并确认无误后再重新开启三级火箭。
存储索引
完成持久化存储以后,我们就可以根据业务查询性能的需要,建立在线的全量倒排索引了。这个过程也很直观,只需要将数据库中的内容数据全量导出,把一些属性(例如商品的分类、颜色和仓库城市位置等属性)作为倒排索引的查询键,建立倒排索引即可。
向量索引
基于规则的方式很可能会误杀大量的候选内容。因此,目前最先进的方法是基于语义相关性的向量召回(embedding based retrieval)
将用户和物品进行联合建模,得到高维投影函数,然后将用户和物品投影到高维空间,获得它们在高维空间的坐标,也就是 Embedding。
为了满足在线服务的效率要求,我们通常会预先计算物品和已知用户的向量,并将它们存储在向量引擎中。这样,当用户发起请求时,只需读取用户的向量,并通过向量引擎找到与用户最接近的物品即可。
AI 在线系统
排序服务
指标建模看起来是一个排序打分的过程。但它的本质是通过控制排序因子,影响产品业务表现。之前提到过,电商平台为了最大化商品总交易额(GMV),会使用后面的打分方式排序。

控制因子

















