第02章 目标函数的设计艺术
第02章 目标函数的设计艺术
“没有人坐下来决定’让我们伤害用户’。他们只是坐下来决定’让我们优化点击率’。伤害是自然产生的。”
一个你可能不知道的事实:全球市值排名前十的内容平台,没有一个把"用户认知健康"列为核心优化指标。没有一个。它们优化的是点击率、停留时长、日活跃用户数、广告转化率。这些指标和你的认知健康之间不仅没有正相关关系——在很多情况下,它们是反相关的:让你停留更久的内容,往往是让你更焦虑、更愤怒、更难以停下来的内容。
在硅谷的某栋写字楼里,有一个白板,上面用红色马克笔写着一个等式。等式的左边是"用户价值",右边是一串数学符号。每一个在这栋楼里工作的人——产品经理、数据科学家、算法工程师——每天都在围绕这个等式做决策。这个等式决定了十亿人今天会在手机上看到什么,不会看到什么。
这个等式叫做目标函数。
目标函数是整个推荐系统的灵魂。它告诉机器:你要朝哪个方向优化。如果目标函数是"最大化用户点击率",机器就会学会推送那些最容易被点开的内容。如果目标函数是"最大化用户停留时间",机器就会学会推送那些让人停下来看最久的内容。如果目标函数是"最大化用户认知多元性"——但从来没有人设定过这个目标。因为认知多元性无法被量化,无法被测量,也就无法被优化。
可测量的指标吃掉了不可测量的一切
这里面有一个根本性的问题:商业系统只能优化可以测量的东西。
点击率可以测量。你点了,系统知道。你没点,系统也知道。这个数据实时产生,实时反馈,实时可以用来调整模型。停留时长可以测量。你在一条内容上停了八秒还是三十秒,系统记录得清清楚楚。回访率可以测量。你今天用了这个 App,明天还来不来,后天还来不来,系统全都知道。
但用户的认知健康无法测量。你看了一小时短视频之后,你对世界的理解是更准确了还是更扭曲了?没有传感器能检测这件事。你连续三天被推送同一类观点之后,你是变得更开明了还是更偏激了?没有算法能回答这个问题。你的注意力被持续切割之后,你的深度思考能力下降了多少?这需要几年甚至几十年的追踪才能看出来。
所以结果就是:所有可以立刻测量的指标——点击、停留、回访——都被纳入了优化目标。所有不能立刻测量的东西——认知质量、信息多元性、长期心理健康——都被系统性地忽略了。不是有人故意忽略它们,而是系统的运转逻辑从一开始就没有为它们留下位置。
当目标函数出了问题
这不是一个假设性的讨论。过去十年里,目标函数带来的后果已经反复验证过了。
2016 年,一位前 YouTube 工程师公开讲述了一个案例。YouTube 的推荐算法在那个时期的核心目标是"最大化观看时长"。算法发现,阴谋论视频的完播率和连续观看率远高于普通视频。结果是,一个随便搜了一下"登月"的用户,在几次点击之后就会被引导到越来越极端的阴谋论频道。算法没有"理解"什么是阴谋论,它只是发现这类内容能让用户看得更久。它在忠实地执行自己的目标函数。
类似的故事在每一个平台都发生过。某社交媒体的算法发现,引发愤怒的帖子比引发思考的帖子获得更多的互动。于是它把更多引发愤怒的内容推到更多人面前。一个新闻聚合 App 的算法发现,标题越夸张,点击率越高。于是标题党内容在推荐列表中的权重越来越大。每一个案例的逻辑都是一样的:算法没有做错任何事——它在完美地优化它被告知要优化的目标。问题出在目标本身。
目标函数里的数学与人性
让我们把这件事想得更具体一些。
假设一个平台的推荐算法需要从一千条待推荐的内容中选出十条推给你。在候选池里有两类内容。A 类是一篇三千字的深度分析,讲的是中国制造业升级的最新趋势,引用了十五个数据来源,结论有理有据。B 类是一条二十秒的短视频,标题是"震惊!这个行业要完了!",配了一段惊恐的背景音乐。
从认知价值的角度看,A 类内容对你更有用。它能帮助你理解一个复杂的经济趋势,提升你的判断力。但从目标函数的角度看,B 类内容的各项指标碾压 A 类。B 类的点击率是 A 类的三倍——因为标题更刺激。B 类的完播率是 A 类的五倍——因为只有二十秒,大多数人都看完了。B 类的分享率是 A 类的十倍——因为它激发了恐惧情绪,而恐惧驱动分享。
算法怎么选?它选 B。每一次都选 B。不是因为 B “更好”,而是因为目标函数的定义中"好"等于"高点击+高完播+高分享"。在这个定义下,B 就是更好的内容。
你可以说:"那把目标函数改了不就好了?加入内容质量的指标。"问题在于内容质量怎么量化?你可以让一些评审员人工标注质量,但这个方法无法扩展到每天数亿条新增内容。你可以用文章的字数、引用数量、来源可信度来近似衡量质量,但这些指标很容易被游戏化——人们会写又长又引用很多来源但实际上空洞无物的文章。你可以用用户满意度问卷,但大多数用户不会填写,而且人们说的"我想看有深度的内容"和他们实际点击的内容往往完全不同。
这就是目标函数的困境:你知道当前的目标有问题,但你找不到一个更好的、可以大规模执行的替代方案。于是一切维持原状,系统继续按照有问题的目标运转,十亿人继续被喂它认为"最好"的内容——而那些内容恰好是让你最焦虑、最愤怒、最停不下来的东西。
目标函数的修正总是被动的
当一个目标函数产生的后果严重到引起公众关注和监管压力时,平台会做出调整。但这种调整几乎总是被动的、滞后的、最小化的。
典型的流程是这样的:一个负面事件被媒体报道了——比如一个青少年因为短视频上瘾导致学业崩溃,或者一场因为算法推送的虚假信息引发的线下冲突。公众愤怒了。监管机构开始询问。平台的公关团队发布一份声明,表示"我们高度重视用户安全"。然后内部的政策团队和算法团队会坐下来讨论:“我们能不能在不显著影响核心指标的前提下,加一些安全约束?”
关键词是"不显著影响核心指标"。任何安全约束,如果导致用户停留时间明显下降,或者日活数据出现波动,都会被重新评估。因为用户停留时间和日活数据直接关联着广告收入。广告收入关联着季度财报。季度财报关联着股价。股价关联着管理层的薪酬和董事会的耐心。
所以你看到的"安全改进"通常是这样的:在极端内容前面加一个弹窗提示,但不改变推荐权重。在特定时间段限制青少年使用时长,但允许通过简单操作绕过。设立一个"算法安全团队",但这个团队的编制永远只有产品增长团队的十分之一。这些改动足以应付监管问询,但不足以真正改变系统的运转方向。
没有坏人的坏结果
这整件事最让人不安的地方在于:你找不到一个坏人。
产品经理在做他的工作——定义核心指标,确保产品增长。数据科学家在做她的工作——把业务目标翻译成机器学习可以优化的数学表达。工程师在做他们的工作——高效地实现和部署模型。管理层在做他们的工作——对投资人和董事会负责,确保营收增长。投资人在做他们的工作——要求投资回报率。
每一个人都在理性地做着自己的份内事。但这些理性行为叠加在一起,产生了一个系统性的非理性后果:十亿人的信息环境被一个只关心点击率和停留时长的机器所塑造。没有人坐下来决定"让我们伤害用户",但伤害确实在发生。这不是阴谋,这是结构。
有一个类比也许能帮你理解这种"没有坏人的坏结果"。十九世纪伦敦的泰晤士河变成了一条臭水沟。没有任何一个工厂老板坐下来说"让我们把河搞臭",每个人只是把自己的废水排了进去。每一次排放都是理性的——处理废水的成本远高于直接排放。但无数理性决策叠加在一起,伦敦人在 1858 年的夏天遭遇了"大恶臭"——议会都因为臭味无法开会而被迫休会。
今天的信息环境就是数字时代的泰晤士河。每一个平台都在理性地往里面排放"高互动、低质量"的内容,因为这是目标函数告诉它们的最优解。没有人故意要污染公共的认知空间,但污染就是发生了。而你——就像 1858 年的伦敦居民一样——每天在这条河里取水喝,以为这就是水的味道。
算一笔账:目标函数的经济学
让我们算一笔简单的账,看看目标函数背后的经济逻辑。
一个大型内容平台有十亿月活用户。平均每个用户每天使用六十分钟。总共就是每天六十亿分钟的注意力。按照平均千次展示收入五美元计算,平台每多留住用户一分钟,全平台每天多赚大约五十万美元。一年就是一点八亿美元。
这意味着什么?意味着目标函数每提升百分之一的用户停留时间——哪怕只是从平均六十分钟变成六十点六分钟——对平台的年营收影响是以亿美元计的。反过来说,如果把目标函数改成"用户认知健康"——一个大概率会导致用户停留时间下降的指标——损失也是以亿美元计的。
现在你理解了为什么目标函数的修正总是被动的、最小化的。因为每一个百分点的修正,背后都是一个以亿为单位的商业决策。在这种利益结构下,指望平台自愿把"用户认知健康"放在"用户停留时间"前面,就像指望一个工厂主自愿把废水处理费用加到自己的成本里——除非法律强制要求。
当你理解了目标函数的运作逻辑,你就理解了为什么你的手机里充满了让你焦虑的内容,为什么你明明想看点有深度的东西却总是被喂垃圾,为什么同一个平台在公开场合说"我们在意用户体验"却在实际运营中不断挤压你的注意力。答案不在任何一个人的良心里,答案在那个白板上的等式里。
那个等式从来没有把你的认知健康写进去。
如果你只记住一件事: 没有坏人,只有坏等式。那个决定十亿人每天看到什么的等式里,从来没有写过"让用户变得更聪明"这一项。