Other Readings异读 返回作品
字号
主题
下载
下载全书

全书 · v0.1 · 2026-10-11

第四章:算法制度(Algorithmic Institutions)

尼古劳斯·珀赫哈克 · 2024 年原著 · Claude 辅助全译AI 辅助初译,未经人工终校第 5 / 11 单元

长官,我想我可以代表所有人说:让我们的命令见鬼去吧。——Data,《星际迷航:第一类接触》(Star Trek: First Contact)

每一个包含某种机器学习或数据密集型应用的开发项目,都有一个重要方面,那就是一个往往十分紧迫的问题:所要处理的数据应当从何而来。毫不意外,推荐系统的开发项目中也出现了同样的问题。为了生成推荐,我们需要数据集来计算机器学习模型。在学术讨论中,Dourish(2016)援引 Wirth(1975)提出的“程序=算法+数据结构”(Programs = Algorithms + Data Structures)这一说法,提醒我们注意:数据结构是“赋予它们(即算法)意义并使之活起来的关系”(Dourish 2016, 2)。作为行动者(actor)的算法之所以能被激活,是偶然的(contingent),并依赖于那些被用来构建软件程序——即算法的物质化形式——的数据。然而,数据的调动与构建本身就是一项困难而富有挑战性的工作。此外,所选定的算法还必须与可用的或被选定的数据结构相互协调。因此,我将从物质—符号学(material-semiotic)的视角出发论证:每一个要素——数据结构与算法——都预设并指涉着特定的社会秩序化(social orderings),而这些秩序化必须通过算法反身性(algorithmic reflexivity)被协调一致。我将讨论所调动的算法技术遇到了哪些问题,以及这些行动元(actants)预设了怎样隐含的社会(及符号)秩序。为此,我将借助铭写(inscription)(Akrich 1992)和反身性(reflexivity)(Lynch 2000)这两个概念来审视这些实体。

铭写概念使我们能够把算法技术理解为这样一种人工物:它们承载着关于某种特定社会秩序的假设,这些假设物质化于所要解决的被表述的问题以及可用来解决该问题的数据之中。我将通过重访两种推荐技术——协同过滤(collaborative filtering)与基于内容的过滤(content-based filtering)——来阐明这一点,并重构这些算法技术所承载的假设。常人方法学(ethnomethodology)意义上的反身性概念补充了这幅图景,它所指涉的是这样一些过程:在其中,可用的数据必须依照算法的语言被重新诠释或规范化(Ziewitz 2017)。随后,我将讨论三则小插曲(vignettes),在其中我们试图为不同的推荐算法生产数据。这些案例由此表明,公共广播机构(public broadcaster)既有的社会技术结构指向特定形式的社会秩序化,而这些秩序化与项目语境中所调动的算法技术所预设的秩序化过程并不相容。我们带着不同的算法技术以及“数据将会十分充足”的假设,开始深入探究公共广播机构的组织与技术结构。然而,这段旅程比我们起初预想的更加艰辛。数据是有的,但不知为何,那个使大量视频档案与元数据集合得以生产出来的社会技术结构,似乎反倒妨碍我们实现推荐系统。这最终促成了新的组织结构的建立,使我们得以生产能够支撑算法系统的数据。归根结底,问题变成了:我们作为开发项目,如何通过使这些算法脚本(scripts)与制度(institution)的社会技术秩序相匹配,尝试将算法整合进公共广播机构的组织性与制度化结构之中。公共广播机构作为一个组织明确实现的社会技术结构,与算法技术隐含预设的社会技术结构,并不能开箱即用地相互转译(translatable)。因此,为了能够实现这一算法系统,我们不得不协商条件、解释问题,并同时调整组织与算法。简言之,算法必须成为一个制度化的行动者,并被整合进组织的社会秩序之中。

探索算法脚本(Exploring Algorithmic Scripts)

在讨论不同秩序化之间棘手的纠缠与互动之前,重要的是理解不同的算法技术如何运作——以及这些解决方案中内置了哪些假设。算法技术并不仅仅是中立或超然的技术行动者,而是经由开发者与计算机科学家所组成的异质性共同体设计并稳定下来的人工物。这些算法的设计因而是开放的,必须与其他要素——例如数据结构——一道被现实化(actualized)(Dourish 2016)。然而,算法技术确实承载着关于其将要运作于其中的社会世界的特定假设。因此,第一步有必要重构软件开发项目中所使用的算法技术的假设。为此,我将援引行动者网络理论(ANT)以及 Akrich(1992)和 Latour(1992)所阐述的脚本与铭写这一理论概念,因为它们使我们能够进一步把握算法技术中被铭写的假设。

行动者网络理论的一个核心前提是:非人实体在互动过程中确实具有能动性(agency),能够在社会情境中产生规制效应并促成行动(Latour 1994)。因此,非人行动者的持久性与抗阻性本身就会对可能的互动产生影响。然而,这些效应并非随机的,也不是由自然给定的,而是由物质人工物的制造者生产出来并铭写于其中的。Latour 称之为人工物的行动程序(action program)(Latour 1994)。一件人工物的设计反映了开发者关于互动将如何展开以及应当如何展开的观念与期待。因此,物质人工物包含着一个行动程序,它表征着一种关于社会秩序(化)的想象。Latour 在许多不同的例子中描述了这些效应。自动闭门器(J. Johnson 1988)[1] 迫使使用这扇门的人调整自己的步速与时机,如果他们想毫发无损地通过的话。减速带无需依赖法律运作就能调节行车速度(Latour 1994)。沉重的酒店钥匙则不断提醒住客把它交还前台(Latour 1990)。所有这些例子的共同之处在于:a)物质行动者被委派了一项任务,以在给定情境中实现某种规制效应;b)它们包含着关于当下情境的假设,例如,酒店钥匙预设了住客会觉得随身携带钥匙太过麻烦。通过铭写关于潜在互动的观念,开发者同时也把他们对这些物质行动者被使用和被互动的情境的理解铭写进了人工物之中。开发者自己变成了社会科学家,因为他们想象着自己产品的互动结构以及与产品的互动结构(Callon 1987)。在 ANT 的这些著述中,人工物通过其物质性以及与其他行动者的互动来生产社会秩序。

另一些研究使这幅图景变得更加复杂。Akrich(1992)将铭写过程与去铭写(de-inscription)过程和预先脚本(pre-scription)过程区分开来。铭写描述的是如前所述将脚本和行动程序纳入人工物之中的过程。去铭写所概念化的则是实际使用人工物并与之互动的过程——这一过程可能偏离人工物设计者的设想。这打破了“社会秩序是非人物质性的产物”这一假设,而是把人工物及其脚本视为秩序化过程中的一个(重要)要素(另见 Law 1992)。在去铭写的过程中,人工物本身得以现实化,而被赋予它的意义与功能也会随情境化的使用而改变。这也为后来后 ANT(post-ANT)关于实演(enactment)与多重性(multiplicity)的构想奠定了基础(Mol 2002)。一个对象的本体论——因而也包括其规制力量——是在情境化的实践中被实演出来的(另见 Law 2002)。[2] 正如 Akrich(1992)进一步论证的那样——并在她对一个电网扩展的讨论中所展示的那样——技术脚本并不是赤手空拳或孤身而来的。它们伴随着文件、解释、语境化说明、建议,而且往往还有正式的程序。Akrich(1992)称之为预先脚本。[3] 因此,预先脚本传递着关于开发者规范性观念的知识,最好被理解为话语性要素。其结果是,开发者的那些假设——他们借此铭写了自己对技术人工物或技术被应用之情境的想象——被显明出来,并被传递到技术被使用的情境之中。人工物并不是单独出现的,而是早已带着许多盟友。人工物的这种嵌入性后来被 Law(1994)进一步概念化,他认为社会秩序化是话语、问题与物质性网络之间复杂的相互关联。所有这些在脚本这一概念中已经汇聚在一起。

算法就其复杂性而言,同样可以借助脚本这一概念来加以分析。正如上一章所讨论的,算法的实现依赖于对算法技术的学科性实演(disciplinary enactment)——其中也包括作为这一实演之组成部分的预先给定的脚本、伪代码以及现成的程序库。算法技术确实包含着特定的脚本,其中带有关于可用数据、数据的意义以及数据与算法技术如何能够相互关联的假设(B. Rieder 2017)。一个排序算法预设我们拥有某种(至少是)序数值,并且其位置有可识别的索引。否则,遍历 n 个元素、将元素 i 与元素 i+1 相比较(只要 i<n)就不可能实现。算法技术不仅预设了一组给定的、关于某个世界的数据化描述,它们应当并且能够被应用于这些描述之上;而且这些假设本身首先就表述了问题本身。排序算法同样预设了我们想要对这些(至少是)序数值进行排序。问题的定义与所预设的可用数据是不可分割的。推荐算法依据类似的假设行事,它们解决的问题是:在一个给定的数据宇宙中——基于某种形式的可比性(comparability)——为某个用户找到并推荐相似的物品,这些物品可被视为与该用户相关。然而,不同的推荐技术带有各自关于可比性与相关性的观念——因此也需要不同形式的去铭写。

在此,被铭写进算法技术的假设要抽象得多,但对于后续的实现过程却同样具有重大影响。不过,算法脚本在两个重要方面不同于 Akrich(1992)所讨论的脚本。第一,它们更容易获得,因为算法可以用伪代码的代码片段来表达。因此,重构脚本往往就意味着阅读(代码)脚本(另见 A. Mackenzie 2017)。它们也常常伴随着预先脚本,例如教科书或文章,解释其背后的原理,而这些原理并不仅仅是特定于某个人工物的,而是具有标准参考文献的地位。在该项目中,《推荐系统手册》(Recommender System Handbook)就是这样一种稳定而标准化的参考文献,Alice 把它交给我,让我借此了解这一主题。而且她在我们的交谈中也经常提到它。第二,算法是在与数据结合时才得以现实化的。例如,同一种近重复模式(near repeat patterns)的算法技术既被用于预测地震,也被用于预测入室盗窃(见 Pöchhacker 2016)。两种情况下技术是相同的,但就权力、社会秩序化与意义而言,其结果却大相径庭。这就造成了这样一种局面:数据来源的选择需要开发者以及算法将要成为其组成部分的那个社会技术系统对数据进行进一步的诠释与生产。正如 Dourish(2016)和 Gillespie(2014)所论证的:要理解算法与代码的权力,我们必须看到这些要素与数据及数据库的交汇之处。我认为,将算法技术与数据相结合,是一个进一步的铭写过程——通过数据的生产与应用。将一种算法技术与特定的数据结构相结合,会改变算法的脚本,因为它改变了被实现的人工物与世界互动的方式。因此,理解算法能动性(algorithmic agency)既意味着阅读算法脚本,也意味着观察将其与数据相结合的时刻(以及问题)。由此,算法技术的去铭写在算法系统的制造过程中变成了一个铭写过程——而无需回到算法技术的原初设计者那里。[4] 这就导致了这样一种局面:仅仅把阅读代码当作一种铭写形式是不够的。相反,我们还必须关注将算法脚本与进入运行代码的大量其他事物相结合的实际实践。然而,在此需要指出的是,算法技术与其他要素——尤其是数据结构——的结合并不是任意的,而是偶然的。因此,我们可以把算法技术与某些不同形式的数据结构相结合,但并不能与所有数据结构相结合。

算法系统的实际特性因而(也)取决于对数据的在地化再诠释,而这并不总是直截了当的。将算法技术与数据结合在一起,需要在算法的实现中协调不同的诠释实践。Ziewitz(2017)从常人方法学的视角探讨了算法这一概念。他给包括他自己在内的一群人布置了一项任务:按照一个算法的指令在牛津城中穿行,由此,应用算法技术时的种种问题便得以接受(批判性的)审视。Ziewitz 这样描述定义这个算法的过程:

我们先列出若干想法:每逢第三个路口向左转;只向右转;如果看到黄色背包就掉头朝相反方向走;或者走那条首字母在字母表中最接近“A”的街道。所有这些似乎都是有用的,因为它们定义了触发我们的算法给出方向的事件。然而,它们看起来也多少有些任意。经过一番讨论,我们确定了如下程序:[……]在任何交叉路口,走最不熟悉的那条路。轮流评估熟悉程度。如果所有道路都同样熟悉,就直走(Ziewitz 2017, 4, my emphasis)。

关于如何在城中选择路径的指令,其表述似乎足够清楚。然而,在应用它时,他却遇到了种种问题。是什么使一条路成为一条路?我们如何定义交叉路口?我们如何处理无法直走的 Y 形路口?在执行这个寻路算法的过程中,它的解释器(interpreter)[5] 陷入了许多模棱两可的情境,这些情境需要澄清,才能使其可被算法所应用。它们需要诠释。

由于我们不得不解析自己的观察,在一场持续的挣扎中依照这一自我施加的约束重新界定情境,这次行走与其说是识别模式的案例,不如说是一种练习:用算法的语言来阐明观察,同时弄清楚这些观察能否以及在多大程度上有助于完成手头的工作——而这一判定本身又受制于实时导航的种种偶然性(Ziewitz 2017, 10)。

我们输入任何算法的数据,在此被理解为“用算法的语言来阐明观察”(Ziewitz 2017, 10)。为了让算法运转起来,数据被重新诠释,而算法脚本所提供的那种被预设的数据的意义,也在情境中得到更新。这一行为并不只是让模拟现实变得可被算法读取,它还包括把参与其中的转译者的观察与经验转译(translation)为算法所使用的范畴。尽管我们或许无法把算法确定下来,但我们可以理解,一种算法技术为了在特定环境中运作,其可供性(affordances)与铭写是什么。要与算法成功地互动,我们必须能够说它们的语言。而在这样做的过程中,算法的脚本与能动性也同时得到了更新。将城市及其结构转译为某种既能为算法所理解、又对使用者——在此即研究者——有用的东西,这其中所观察到的种种挣扎,意味着一个不断修复濒临崩溃之情境的过程。将观察转译为算法逻辑,是软件开发团队面临的一个主要问题——这一问题通常在“好数据”(good data)的名目下被讨论。这是在一切数据驱动的事业中都能看到的一个关切(例如 Mützel, Saner, and Unternährer 2018)。因此,对可用数据的诠释,以及关于究竟什么才算作数据的提议,对算法系统而言具有内在的重要性——但取决于所调动的技术,其重要性的方式截然不同。

情境化推荐技术(Situating Recommender Techniques)

算法系统是算法技术与数据结构相结合的偶然产物。然而,可能的结合并不是任意的,而必须能够把算法技术脚本的假设与可用的数据结构相互转译。因此,重构所使用的推荐算法的铭写就十分重要。这样做将使我们能够理解项目在试图为推荐系统获取相应数据时所面临的问题。在项目初期就已经很清楚,所使用的是两种理想型(ideal-types)的推荐技术。在会议上和我们的交谈中,Alice 和 Bob 提到了协同过滤与基于内容的过滤,并向我提供了研究这些方法的材料。[6] 两种技术遵循着完全不同的推荐理念。协同过滤基于这样一种观念:不同用户之间的使用模式能够为关于相关新视频的预测提供依据。另一方面,基于内容的过滤并不比较不同用户的使用模式,而是试图根据用户个人的观看历史来预测她的口味。生产相关推荐的这些不同方法,也体现在算法脚本——即内置于这些技术之中的关于互动的假设——以不同方式展开的方式上。它们不仅预设了所提供数据的不同形式,也预设了它们经由数据与之相连的不同形式的行动者格局(actor-constellations)。

基于物品的协同过滤(Item-based Collaborative Filtering)

在推荐系统领域被广泛使用的一种技术是协同过滤。尽管其起源至少可以追溯到 20 世纪 90 年代初,但协同过滤主要是由 Netflix(Amatriain and Basilico 2011)以及 Amazon 等其他商业行动者(例如 Smith and Linden 2017)大力推广开来的。协同过滤背后的理念可以概括为:相似的用户喜欢相似的东西;它常常以“喜欢您刚刚浏览过的这件物品的用户也喜欢这个”这样的标题被应用。这就提出了一个问题:用户与物品之间的相似性是如何通过算法被识别出来的?

协同过滤系统在用户反馈的基础上计算这些相似性,而用户反馈被诠释为评分(rating)。随后,这些评分被用来在所收集的数据集中寻找模式,从而使物品与用户相互可比(Koren, Bell, and Volinsky 2009)。该方法由此计算用户—物品关系的所谓潜在特征(latent features),以便在一个抽象的向量空间中描述用户与物品。用户反馈可以是显式的,也可以是隐式的。显式用户反馈通常从零星到五星不等,由用户主动为他们看过的物品打分(Liu et al. 2010)。如今,这一系统在 Amazon 或 IMDB 等网站上已广为人知。然而,这可能给协同过滤带来一个问题,因为该技术预设了对互动相当密集的追踪(tracking)。如果这一假设得不到满足,计算就会变得不那么精确,因为算法要么不得不为未评分项赋值为零,要么需要根据已记录的评分来估算这些值。因此,数值越少,意味着所推导出的模型符合用户真实行为的统计确定性就越低。然而,在公共服务广播机构的语境中,人们预计用户不会提供太多显式反馈。这也是项目团队同时实现了基于隐式反馈的协同过滤的原因之一。借助隐式反馈,追踪不仅记录用户与视频之间是否发生了互动,还记录互动的强度(Hu, Koren, and Volinsky 2008)。这是通过用户观看视频的百分比来衡量的。例如,假设我们观看一部关于软件开发的纪录片,总时长为 60 分钟。如果我们在 20 分钟后关闭视频,就会得到 ⅓ 即 0.33 的评分。如果我们在 30 分钟后停止,评分就是 0.5。按照这一假设,我们看得越久,评分就越高。由此得到 0% 到 100% 的评分。[7]

然而,对这些信号——包括显式与隐式的用户反馈——的诠释,对开发者而言并不像人们阅读相关会议论文或学术期刊文章时所设想的那样直截了当。开发者担心,这些评分是否真的能为他们呈现用户意图的真实图景。或者换句话说:评分何时才算是评分?什么又是好的评分?

到目前为止,我们只有视频观看的隐式反馈(观看百分比)。这使我们没有任何负面反馈(例如,如果观看了 30%,这是意味着用户不喜欢这个视频,还是别的什么?)。我们可以引入一个“点赞”按钮或评分,但这也可能给我们一个错误的图景:例如,如果用户观看了一个有他讨厌的政治人物出镜的视频,他会给这个视频打 1 星,但这并不意味着这个视频与该用户无关(Alice via Slack in #machinelearning)。

在项目会议上,这些问题经常被讨论。在对用户打分意图的反思中,不同层面的诠释与情境化问题被预先设想出来并混杂在一起。在所引的这段话中,至少呈现了三种不同的诠释。第一种围绕视频对用户的相关性展开。这里问的不是用户是否喜欢这个视频,而是开发者或编辑是否认为,看到这个视频对用户而言、为了用户而言是重要的。这种模糊性是通过区分所提供内容的相关性与评价(valuation)来处理的。即使视频可能是相关的,评分真正反映的又是什么?她是不赞同视频所传达的信息,还是不赞同这个视频被展示给她这一事实?这里的假设是,直接评分可能与相关性无关,而是与用户如何对待所呈现的内容有关。但隐式反馈同样引出了这样的问题:如何诠释这一百分比,以及我们能否定义一个阈值,让我们据此认为用户喜欢或不喜欢这个视频。对于计算本身而言,这一诠释过程无关紧要。你总是可以基于这些隐式评分给出推荐。但开发者担心的是,这会导致欠缺依据的推荐,对推荐系统的性能产生负面影响。这引发了一些讨论:如何对待用户评分,以及是否可能添加其他形式的评分机制。此外,“开发者拥有足够的追踪数据来计算协同过滤”这一假设也构成了一个实际问题,因为情况根本不是这样。因此,在推荐系统上线时,应当部署的技术是基于内容的过滤,而协同过滤则应在有了足够的追踪数据之后再加入。

基于内容的过滤(Content-based Filtering)

软件开发项目中调动的第二种算法技术是基于内容的过滤。这种方法并不试图考察总体中所有用户评分里的模式,而是旨在识别物品之间的相似性,而这些相似性又与个体用户的观看历史相契合(Pazzani and Billsus 2007)。协同过滤对待推荐物品的内容持不可知态度,而基于内容的过滤则依赖于一个由计算机可读的视频描述构成的数据库,这个数据库构成了为推荐计算物品相似性的基础。一种常见的方法是 TF-IDF 技术(词频—逆文档频率,Term Frequency–Inverse Document Frequency),它在描述物品所用的全部词语之上构建一个向量空间(Meteren and Someren 2000)。相似性是通过根据可用元数据推导出的、描述物品的向量之间的相对距离构建起来的。因此,可比性是编辑的数据生产过程的结果:编辑为他们的物品撰写简短文本,或为其加上典型的标签与类别,以使其可被识别。

在这种方法中,不同形式的行动被相互关联起来,以便基于所生产的元数据来计算相关性。算法中介者(algorithmic mediator)并不把用户的行动相互关联,而是通过把数据生产者的行动与用户的媒介消费相关联,来为推荐系统构建相关性。因此,行为如何使某些信息变得相关,在这里是不同的——这种方法中内置了另一种脚本。这可以通过所添加的标签、类别、描述文本或标题来实现——以及在数据库中描述视频的许多其他方式。

然而,很快就变得清楚的是,仅仅拥有这样一种描述是不够的,描述还需要符合质量标准。Alice、Bob 和 Dave 非常关心组织内所生成的元数据的质量。因此,好几次会议和讨论都聚焦于如何确保高质量元数据这一问题。在最早的几次会议之一上,开发者们表示:“元数据的质量决定产品的质量”(fieldnote)。在该公共服务广播机构的语境中,元数据意味着:通过关键词、文本描述和类别来描述视频的数据。借助这些数据,算法能够理解由组织内的内容提供者所提供的视频数据库。然而,当我们在与在线编辑团队的一次会议上询问好的描述数据需要具备哪些条件时,发生了一件有趣的事:

我们正要讨论新的类别列表以及推荐算法的一般运作方式。Alice 解释了协同过滤与基于内容的过滤之间的区别,以及两者各自存在的问题。尤其是协同过滤存在冷启动问题(cold start problem),即系统上线时没有先前的追踪数据可供计算推荐。随后编辑们展示了新设计的类别列表。它现在比之前那份精简得多,看起来也清晰得多。Trent 问这份列表是否是推荐系统能够使用的。Alice 四下看了看。然后 Alice 说,只要他们以一致的方式使用它,这份列表就完全没问题(fieldnote)。

在这里,好的元数据意味着描述以可比且系统的方式被应用,并且每个物品都有这样的描述。与对评分的诠释——开发者在那里讨论的是所考虑数据的意义——不同,这里唯一的关切是对既定类别列表的系统且可比的使用。在这次会议上,不仅变得清楚的是描述必须以系统的方式被使用,而且指涉的生产被外部化了。“只要他们以一致的方式使用它”意味着:不是我,也不是算法。对类别究竟意味着什么、它们如何回指一个可付诸行动的世界的诠释,被外包给了组织的其他部门。

做出可比性(Doing Comparability)

两种技术都旨在生产可比性。通过把给定数据转换为一个抽象的向量空间,这些技术创建出一个参照框架,使用户与物品彼此可比(另见 A. Mackenzie 2015)。这种可比性进而使从所提供的数据中推导出推荐成为可能。在这个经计算得出的向量空间中与你或你看过的视频相似的物品,随后就会被推荐给你。然而,这些技术创造可比性的方式有着根本的不同。在协同过滤的情况下,算法计算一个由潜在因子构成的向量空间,基于这些用户与视频物品之间的互动模式,使用户与物品彼此可比。在另一种情况下,基于内容的过滤则把视频的描述相互比较以生产相似性。通过在物品之间建立关系来组织物品的模式,在不同的算法技术之间是不同的。这进而也意味着,关于既有数据生产体制(data production regimes)的假设也是不同的。

协同过滤预设了一种密集的追踪体制,其中需要许多描述物品与用户之间互动的数据点。否则,为比较物品与用户而计算向量空间就不可能实现,或者会错误百出。然而,恰恰是这些数据也带来了可诠释性与可理解性方面的问题。另一方面,基于内容的过滤则是在“存在一种有组织且可比的视频物品描述”这一假设下运作的。因此,这预设了公共广播机构内部在生产元数据方面有共享的知识与实践。由此可见,算法技术中的铭写过程构成了关于数据化世界以及可用数据之意义的特定假设。或者换句话说,算法相对于被表述的抽象问题来确定数据的意义。Mackenzie 认为,尽管机器学习方法“以非常不同的方式进行分类,但它们都预设世界是由能够归入稳定而明确之范畴的事物或事件构成的”(A. Mackenzie 2015, 433)。然而,这种稳定而明确之范畴的生产,随后成了我们不得不通过寻找我所说的算法形式的反身性来加以处理的问题。

生产算法反身性(Producing Algorithmic Reflexivity)

如上一节所讨论的,为了获得所需的数据,算法脚本所表述的假设必须以某种方式与组织数字基础设施的更广泛网络相协调。然而,这一与数据相协调的过程本身,就是构成算法系统的不同实践之间的一种协调(coordination)。因此,下面我将讨论:算法系统中数据结构的生产与利用,如何可以被理解为一种算法反身性的形式,在其中,符号的意义必须被确定并被理解。为此,我将借助实用主义与常人方法学关于符号学与诠释的论述,论证数据结构是对社会秩序化的持久指涉;随后我将讨论三则不同的小插曲,展示我们如何尝试通过不同手段来生产各种形式的算法反身性。

协调数据(Coordinating Data)

正如 Bechmann 和 Bowker(2019)所论证的,经典机器学习方法的目标是分类。例如,在监督学习中,对于给定的数据配置存在一个已知的结果。假设我们训练神经网络识别图像中的小猫。然而,为此我们要有一批标注了“有小猫/无小猫”的图像,把这一标签定义为期望的结果,然后训练机器学习算法去学习特征,从而使识别其他未经预先标注的含有小猫的图片成为可能。然而,在该项目中所应用的推荐系统代表了一种特殊形式的机器学习。与机器学习的经典分类工作(例如识别垃圾邮件、欺诈检测等)不同,其目的并不是寻找一个可以外推到新数据上的泛化模型,而是在一个共同的数学参照框架中描述可用的物品,即把它们转换到一个向量空间中,使其可比(另见 A. Mackenzie 2015)。这也可以被视为通过描述共享向量空间中的不同维度来进行的分类。在协同过滤与基于内容的过滤这两种情况下,开发者都试图在对外部世界的描述中建立起这种形式的可比性。这一点被问题化,以创造某种事物秩序。于是,确定给定数据之指涉的这一问题,成了推荐系统开发过程中的一个议题。在两种方法——协同过滤与基于内容的过滤——中,都存在关于所提供数据的质量与诠释的问题。而在每一种情况下,确定这些指涉并生产出一个在给定组织环境中说得通的算法系统,都是一项挑战。

要理解随后生成的算法能动性的部分构成要素,就必须理解输入数据如何被用来生成一个决策模型。仅凭一种算法技术,还无法告诉我们算法最终将如何行动,因为我们仍需理解这一抽象原则如何被转译为一个处理数据的实际实体。社会科学中的互动论(interactionist)与建构论(constructionist)取向[8]认为,数据从来不是原始的(raw)或客观给定的(Bowker 2014; Gitelman 2013)。数据的生产总是包含诠释工作,以及一种往往只是隐含的理论视角。因此,数据的意义总是在意义建构(meaning making)的过程中被生产出来的。对符号的使用总是包含着一个诠释行为。Peirce([1902] 1976, [1900] 2010)发展出一种实用主义符号学理论,与 Ferdinand de Saussure([1916] 1998)的结构主义论述相比,它 a)不仅包括语言,还包括一切形式的传播,如视觉媒介、音乐等;b)以诠释行为扩展了能指—所指关系。因此,对 Peirce 而言,符号由一个三元结构构成:表征(representation)、对象(object)与诠释(interpretation)。符号(symbol)或记号(sign)的概念在使用中由此变得复杂,因为不同的理论家对这些术语的用法各不相同。不过,在实用主义的论述中,符号代表一种具有被建构之意义的文化人工物。交通标志或男女的图标式表征便是例子。如 Mead([1934] 1967)所描述的,符号指涉超出当下情境之外的东西,即它们以一种一般化的方式被诠释。其中一种特殊形式是有意义的符号(significant symbols),它们被某个给定共同体的所有成员以同样的方式诠释——并引发相似的反应。然而,在实用主义思想及其后来的发展中,如符号互动论(symbolic interactionism)(Blumer 1986)或标签理论(labeling theory)(Becker 1997),符号的意义同样是互动的结果,即符号的意义在情境之中、在参与各方的协调实践中得到更新。对记号与符号的诠释必须在互动中相互关联,而这也可能由此产生出分歧的意义。因此,符号的意义并非内在于符号本身,而是 a)在社会化过程中被习得,并且 b)在现场(in situ)得到更新(Blumer 1986; Mead [1934] 1967)。

由 Garfinkel 创立、声名卓著的常人方法学学派,使这幅图景又复杂了一些。尽管 Garfinkel(1984)也提到共享知识以及社会共同体中有能力的成员(competent members),但他以及后来的常人方法学者在若干研究中表明,一切形式的口头或书面交流在理论上都是不充分决定的(underdetermined),也就是说,我们不仅要诠释记号与符号,还必须把它们与一个流动的情境联系起来。每一个行动都重新界定着交流的语境。因此,经由参与者的互动所创造出来的情境,也是使索引性(indexical)表述得以理解的参照框架。其结果是,即便是有意义的符号,其意义也会随语境与情境而变化。为了使交流得以发生,个体不断地确定可能的意义并填补空隙——Garfinkel(1984)称之为语言与实践的索引性(indexicality)。由此得出的观察是:表达的意义只有在构成交流的互动之中才能被重构。[9] 符号的意义总是回指那些必须被协调的不同知识构型。互动总是在一个复杂的过程中展开,在其中,人们把自己对情境的诠释与在场的他我(alter-ego)的反应相比较。参与其中的行动者以反身的方式确定并更新所生产之说明(accounts)的潜在意义。

反身性,尤其是在科学技术研究(STS)以及一般的质性社会科学中,已获得了某种特权地位。因此,若干学者主张,个体、制度乃至整个社会都应当变得更具反身性。但当反身性一词被带入讨论场域时,它所援引的意义有许多种(Lynch 2000, 27)。我在此所指的反身性,关涉的是诠释社会学(interpretative sociology)学者所提出的那种建构世界的日常实践。在常人方法学中,反身性是确定语言内在索引性意义的能力。Garfinkel 认为:“成员借以生产和管理有组织的日常事务之场景的活动,与成员使这些场景‘可说明’(accountable)的程序是同一的”(Garfinkel 1984, 1)。对 Garfinkel 而言,这种将索引性情境化并加以确定的能力就是(实践的)反身性,并且作为说明的一种属性,它“是由在反复出现的情境中被视为理所当然的用法所提供的”(Lynch 2000, 34)。[10] 因此,社会秩序是通过对说明的反身性观察与生产而被生产和再生产出来的,而这些说明是依照具体情境被组织起来的。如果那种(隐含的)知识不可得,那么生产在地有序且可被辨认的说明就会成为问题。

迄今所讨论的关于日常交流的思路,可以被移置到另一组被用来协调和描述我们世界的符号之上:数据。因此,数据在最初的指涉中所指涉的,更多是数据生产的情境化协商。数据是某种给定社会秩序的结果,因而也是对它的指涉;在其中,对现实的一种偶然观察通过“原初符号学实践与在地互动——记号、对象与被标记的对象由此获得同一性与可感性”(Lynch 2000, 34)而被稳定下来并被委派出去。把一项观察转化为数据,意味着把对所观察之说明的诠释与对可用数据符号的诠释相协调。而这些意义——正如互动论社会学取向所论证的——并非内在于符号。它们对诠释与再诠释保持开放,以便使其适合在地的互动模式。然而,数据不仅是在地地、情境化地被生产出来的,它还充当不同共同体之间的中介者。关于数据在协调不同共同体方面的作用,存在着一场由来已久且仍在持续的讨论,其中最著名的是借助信息基础设施(information infrastructures)这一概念展开的讨论,如国际疾病分类(ICD)(Bowker and Star 2000),或关于数字的社会与历史意义的讨论(Hacking 1990; Porter 1995)。按照 Bowker 和 Star(2000)的观点,分类体制服务于某一给定目的,并使解决方案稳定化与常规化。尽管这并不会产生一个共同而稳定的诠释框架,但它确实限定了可能的互动方式,从而使不同共同体之间的合作成为可能。正如 Bowker 和 Star(2000)所表明的,数据与分类系统是跨越空间与时间协调集体之实践与行动的装置。数据结构与分类系统指涉其他集体的实践,必须相应地加以确定,才能实现协调。这些实践由此总是包含诠释以及对秩序的情境化生产,而这种生产指涉共享知识并使互动成为可能。因此,数据可以被理解为在不同情境之间旅行的说明,其意义需要“使用者”以反身的方式加以确定。

回到推荐系统的开发上来:在推荐算法的两种情形中,开发者都在数据的(再)诠释与可得性问题上挣扎。数据意义的模糊性成为项目中的一个主要关切,人们投入了一定的时间与精力来应对这些问题。然而,这两个模糊领域——评分与元数据——是以根本不同的方式来处理的。在协同过滤的情形中,开发团队不得不诠释这些信号,以理解其意义。开发团队由此遵循这样一个假设:他们并不拥有改变数据被生产于其中的那个情境或社会秩序的权力。这进而给开发者造成了缺少语境信息、无法把信号整理得井然有序的问题。把用户的意图化约为一个单一数字,而不在情境中更新其意义,意味着那些真正理解正在发生之事所需的宝贵信息缺失了。因此,开发团队中的努力与讨论,是试图通过把自己的意义建构方法明确化,来确定数据内在的索引性。然而在第二种情形中,开发者假定他们拥有改变所生产之数据所指涉的社会秩序的权力。通过创造“一致地应用类别”这一律令,诠释在算法层面上便不再必要了。相反,开发者试图调动许多不同的行动者,以确保所记录元数据的可比性。这两种不同的处理方式向我们表明,具体而言算法反身性的生产,以及一般而言算法的制度化,都与社会秩序化和权力问题相关联。在第一种情形中,我们本可以尝试影响用户的行为,向他们提供解释,并以某种方式秩序化他们为视频“评分”的情境,以确保对这些信号的诠释过程会更容易一些。但开发团队认定他们没有能力这样做。所描述的情境中被设想的秩序化足够稳定,使开发者打消了试图改变它的念头。说开发者只是“假定”自己不拥有改变社会技术结构的权力,这一表述并非偶然选用。相反,它隐含地指涉 Schütz 在回应 Parsons 时提出的社会行动观(Schütz and Parsons 1978)。因此,按照 Schütz 的观点,在一个给定情境中什么是手段、什么是条件,取决于行动者在评估情境时所具有的知识与经验。然而,在基于内容的过滤的情形中,开发团队对情境的评估截然不同。采用基于内容的过滤方法,改变必须在公共广播机构的组织内部做出。对此,开发团队足够有信心,认为他们能够在那里推动所需的改变。正如 Latour(1990, 2005)所论证的,打开一个黑箱(black box)并改变持久的实践集合,取决于想要推动改变的那个行动者一方能够调动多少盟友。就此而言,将算法系统制度化不仅关乎技术细节,更关乎影响这些技术细节必须在其中发生的社会技术结构的权力。

正是在这里,我——项目自己的社会学家——重新回到了这幅图景之中。我被派往组织内的其他部门和小组,为元数据生产的问题寻找解决方案。这种为算法而进行的意义建构的外包,涉及另一种诠释。开发者——包括我自己——不再思考信号的意义,而是思考数据生产的过程,以及这些过程如何制造问题或可能解决手头的问题。开发者们自己运用了许多隐含的社会学与心理学理论——无需我提出——来说明社会场景如何生产意义,以及如何能够控制它,以便实现高质量的推荐。由此,开发者变成了“工程师—社会学家”(engineer-sociologists)(Callon 1987),他们预想并理论化了与推荐系统相关的情境。[11] 下面,我将讨论为生产推荐系统运作所需的这种稳定描述而重组制度结构的种种尝试。

编写算法民族方法的脚本(Scripting Algorithmic Ethnomethods)

协同过滤(collaborative filtering)基本上需要用户提供的评分(rating),才能在其行为中发现模式。重要的与其说是内容如何被描述,不如说是哪些用户与这些视频发生了关联,以及关联的强度如何。这种关联强度由此被表达为一个评分。然而,较有前景的方法之一——隐式评分(implicit ratings)——在可解释性上带来了问题。这一点尤其通过援引若干不同情境而得到表述:这些情境都会产生评分,但用户被假定的意图可能与之有所偏离。会议中反复被提及的是所谓的“后仰模式”(lean-back mode)。一个视频结束时,自动播放功能会自动开始播放推荐列表或播放列表中的下一个视频。然而,人们担心的是,用户可能已经睡着,或者没有关掉电视就离开了房间。我们在一次专门讨论推荐问题的周会上讨论了这些问题:

如何解读隐式和显式反馈(implicit and explicit feedback),存在种种不确定性。如果一个视频的评分低于 60%,这意味着什么?是否意味着该视频与该用户无关?评分高于 60% 的情况同样如此。如果用户去了厕所或睡着了呢?(田野笔记)

于是问题在于,如何将这些情境考虑进来?这些情境会为视频带来高评分,却无法反映观看习惯的真实情况,因为算法会以对待有意观看的同样方式来处理它们。[12] 在移动端使用方面也发现了类似的问题,即评分偏低的情况。开发者担心的是,用户停止观看视频,可能并不是因为该视频与他们无关,而是因为他们被外部条件打断了,例如火车行程结束了。这反映出开发者的一个假设:与家中的电视相比,用户在移动设备上的观看习惯要动态得多;在家中看电视时,会形成一种封闭的、没有太多外部影响的情境。关于移动设备的第二个顾虑则与该国的数字基础设施有关。简单地说,断线对移动应用而言是一个现实的问题。然而,在追踪(tracking)系统中,这会被记录为该视频的一个低评分。虽然对隐式反馈的测量看起来简单直接,也不需要组织一方进行进一步的数据收集或生产(正如我稍后将讨论的,这后来成了一个问题),但这一技术在解读现有数据方面却产生了问题。

作为这一推理的结果,人们构想了不同的解决方案。其中一个方案专门针对使用情境(usage context)的问题,提议对来自不同设备的信号作区别评估。图 5 展示了 Bob 在 Slack 上分享的一张用以描述情境问题的图片,他随图发布了如下解释:

左:用户处于不同的情境中,但她的用户行为最终汇入同一个档案 => 数据混杂在一起,难以找到清晰的偏好,因为偏好可能依赖于情境。右:每个情境都有自己的档案(“人设”[persona]),并被单独追踪。推荐随后将基于实际情境来计算 => 依赖于情境的偏好将被识别并得到满足(Bob 在 Slack 的 #machinelearning 频道中)。

[图 5] Bob 在 Slack 上分享的一张图片,说明追踪中的情境问题(图像见原书第 102 页)

开发者在此提出的解决方案是,不再追踪单一的用户,而是为用户的每一台设备创建人设,以便将不同的情境考虑在内。然而,这也要求在追踪数据库的物品/用户配对中——以及随后计算出的模型中——将每一个人设都视为一个不同的主体。这修改了推荐算法的原初构想及其假设。在开发团队看来,所接收到的信号并不仅仅指涉用户的某种单一偏好,而必须被解读为对不同情境及其特定语境的指涉,包括德国的通信基础设施或用户的出行习惯。上述关于不同形式用户评分的不确定性,源于这样一种情境:软件开发者没有依赖他们关于该情境的隐性的、视为理所当然的知识。然而,由于与(预期中的)用户之间没有直接沟通,开发者一方的误读无法通过沟通手段得到修复。[13] Bob 提出的解决方案随后改变了算法得以消解该情境的方式,从而创造出一种不同的意义。从技术上讲,模型只是在模型生成中加入了额外的人设。然而,这也意味着,数据矩阵的这一部分不再仅仅基于对单一个体的追踪来识别用户,而是所使用的设备改变了情境定义(definition of the situation)——并由此改变了算法理解该情境的方式。在这里,识别设备充当了一种代理(proxy),用以运用不同的理解和方法来消解情境。因此,为了将不同的情境考虑进来,算法民族方法也必须随之改变,与之一同改变的还有追踪系统——正是它使这些说明(accounts)能够为算法所用。在项目相对早期的阶段,我们得以查看旧的追踪数据。

我这儿有样东西给你。在旧的视频点播平台上,用户偏好一直是被追踪的。用户的 session_id 与该用户看过/听过的物品比例结合在一起。[……]prefs 由 user_id、item_id、pref、timestamp、play_time、play_count 构成(Erni 在 Slack 的 #machinelearning 频道中)。

从对旧追踪数据的描述中可以看出,用于访问该服务的设备并未被纳入其中。也就是说,虽然采用协同过滤看起来很容易——因为数据生产无需作任何改变——但这一假设实际上并不成立。组织问题只是出现在了另一个地方,而不在于为视频物品生产元数据。相反,我们面临的问题是如何改变追踪软件的数据生产实践。改变追踪参数是一种可能的办法,能够以一种看起来足够好的方式,在软件开发项目内部解决索引性(indexicality)问题。作为这些变化的结果,技术结构——包括数据存储设施和追踪技术——不得不加以调整并制度化。然而——这正是此处值得关注之处——这些变化之所以变得必要,并不是因为数据必须在别处生产或调整,而是因为理解这些信号的算法民族方法必须适应一种业已存在的社会秩序。改变技术结构,使得算法脚本能够理解那些此前仅在不充分的程度上可理解的情境所提供的说明。然而,对于基于内容的过滤(content-based filtering)而言,这并不是一个可行的选项。如前所述,Alice 曾指出,视频元数据的索引性必须在别处得到消解。因此,接下来的几节将聚焦于我们为基于内容的过滤寻找解决方案的历程。

档案库(Archive)

公共广播机构不仅是播出视频和音频材料的组织,它们还需要建立各种结构,以便管理这些材料,并使之能够为不同的编辑团队所用。简言之,公共广播机构始终也是一个大型的数据存储制度——拥有管理海量数据收藏的专门下属单位。因此,一个(多少有些显而易见的)想法被提了出来:利用该组织现有的档案库。每一个播出过的视频都能在那里找到,而且档案库为每一个物品都提供了元数据描述。于是便产生了这样的想法:为档案库建立一个数据接口,以获取推荐系统所需的相关数据。然而,开发团队中没有人确切知道档案库是如何运作的,也不知道连接其数据库的技术基础设施是什么样子。因此,项目经理之一 Charlie 和我约见了档案库的一位代表,讨论可能的连接方式与接口。这个想法在不同层面上都颇有前景。首先,视频在档案库中被集中标注了元数据,以供再利用。因此,数据已经存在;此外,这些数据是集中生产的,这使得指涉中意义稳定性这一核心要求(affordance)很可能得到满足。正如我们后来得知的,档案管理员甚至有专门的培训。

在这次会议上,Charlie 和我了解到,档案库在两个不同的层面上运作。

1)形式描述:形式描述在视频进入档案库几天之后进行。来自编辑团队的数据,如策划标题、标题、副标题,会被录入并补全。这是在整集的层面上进行的。在这一层面上,也会进行分类。如果不清楚该视频应当如何归类,则不录入类别。

2)文献著录:第二个层面要精确得多,可能要等上几个月才会进行。如果一集节目是单一主题的,数据便在整集的层面上录入;如果它是杂志类节目的一部分,则在片段的层面上录入。与此同时,分类工作也会完成。各集节目还会获得一段描述其内容的摘要(一句话)。索引(Indexat):用关键词对该集节目加以概括。这里存在两种不同的“理念”。对于广播节目,这是依据一个规范数据库进行的;视频节目则被自由地标注(田野笔记)。

档案库是编辑工作中一个非常重要的要素。编辑们在这里找到可用于未来节目的较早的视频物品。其中一位编辑举了 1969 年登月的视频片段为例,这段视频可以用于非常不同的节目和语境之中。然而,生产元数据的时间安排和方式是与编辑的需求相协调的。在这次会议中,档案管理员对将档案数据用于推荐系统表示了担忧。在她看来,档案库中生产的元数据相当复杂,因为它必须与一个跨制度的分类规范数据库相匹配。此外,档案库是为编辑调研以及新节目和影片的制作而建立的。它属于另一组转译和功能性相互依存关系,这一点也在其自我描述中得到了回响。会议期间,“档案管理员向我们解释说,所使用的类别列表是为编辑调研而建的。通过为一集节目的不同片段添加标签,各集节目得以向此类查询开放”(田野笔记)。这一问题也同样困扰着推荐系统的开发者自己。在一次周会上,Dave 提出了如下论点:

如果要集中标注所有视频,档案库的同事们可能会被工作量压垮。此外,他们标注内容的方式对推荐系统来说过于密集了。它产生的数据过于细粒度,需要太多的计算能力(田野笔记)。

作为视频物品之描述而产生的数据,属于另一种秩序化,在其中,视频及其描述扮演着另一种角色,解决的是另一个问题。在对档案管理员实践的描述中,组织以及档案库被设想的功能一再被援引,即:让编辑能够为新的节目寻找存档材料。档案库是编辑工作中一个非常重要的要素,因为他们在这里找到可用于未来节目的较早的视频物品。在后来的一次访谈中,有人提到了“档案库里的珍珠”(Online-Editors Interview,笔者译)这一说法。借此,线上编辑们暗示了档案库对于为后续制作寻找高质量内容的重要性。对他们而言,档案库并不是一个元数据前后一致的地方,而是一个供创造性投入的丰富宝库。

第二个问题是时间安排。正如流程描述中所提到的,各项工作流程的时间安排各不相同。物品在频道的线性节目中播出几个月之后,才会配备丰富的元数据。然而,这意味着这些物品在相当长的时间内都无法为推荐系统所用。此外,视频并不是按到达的先后顺序被处理的,其排队顺序会根据一套优先级方案而变化。

在档案库会议上,Charlie 和我被告知,“有分为三个不同优先级的优先级列表”。这意味着视频并不是按到达顺序进行编辑的。整个过程可能需要长达三个月(田野笔记)。

其结果是,时新的内容几乎永远不会被系统推荐。一位开发者在一次开发会议上也提到了这一点:“Dave 问道:档案库的人需要多长时间来补全数据?如果时间太长,新内容很可能就不会被纳入——这就构成了一个问题”(田野笔记)。因此,档案库并不是获取推荐系统所需元数据的合适地方。

尽管我们没有进入档案库、观察实际生产元数据的实践,但向我们解释档案库的那位同事一再援引这些实践的功能及其与编辑工作的关系。通过将档案库的工作叙述为对编辑团队至关重要,这位同事所做的正是 Maynard 和 Clayman(1991, 407)所说的“揭示出一种对制度性或其他语境的取向”。生产元数据的时间安排和方式与编辑的需求相协调,并因此援引并述行(performed)了档案库作为此类工作之关键制度的地位。基于制度的这种述行性(performativity),将元数据的密度降低到推荐系统能够处理的程度,并不是一个可行的选项。档案库的述行性在档案管理员的实践与叙事的取向中,显示出组织结构的相互依存[14]——此处是档案库与编辑团队之间的相互依存。因此,制度性和组织性的相互依存能够在局部化的实践和言语中被观察到。[15] 虽然战略文件或指导方针中所描述的组织和制度性规则与程序并不能直接转译为可观察的实践,但它们提供了理解制度理性的一种资源,尤其是当它们在局部化的实践中被援引时(Maynard and Clayman 1991)。正如 Suchman 所论证的,关于社会秩序的互动论视角“总而言之,主张只有通过日常的实演与反复,制度才得以再生产,行为规则才得以实现”(Suchman 2006, 16)。然而,这种在局部实演的制度性行为在这里成了问题。两种生产元数据的构想非但没有在档案库与算法之间建立起联结,反而在实践中变得互不相容,开发项目也无法使档案库与其自身的局部社会秩序相协调。通过不改变数据生产的模式,档案库稳定了他们自己关于制度秩序之常态的构想,而这是他们认为重要的。其生产数据的方式无法被算法民族方法所解读。

技术修复(Technological Fix)

由于档案库并不是获取所需元数据的可行选项,就必须设想获取或生产元数据的其他形式。当我们开发团队对改变或调整组织需要付出什么有了初步认识之后,我们便开始寻找其他选项。于是,一个典型的工程式解决方案浮现出来:我们能否用一种技术修复(technological fix)来解决这个问题?

当元数据质量的问题被提出来时,Edward 说我们可以使用语音转文字(Voice-To-Text)软件。这样,视频的音轨就可以用来生成元数据。后来 Charlie 问我能否帮忙解决这个问题。我答应了。[几天后]我与那位开发者见了面。他向我解释说,他们已经用不同的视频试过一次。他们为此搭建了一台测试服务器,效果相当不错。然而,一档著名的节目失败了。软件无法识别当地方言。我们笑了。然后我们进一步讨论了这件事。这是一个相当大的问题,因为这档节目是该广播机构最成功的节目之一。这样一来,它就不会出现在推荐中了。情况棘手。我会和 Charlie 谈谈这件事(田野笔记)。

语音识别是为推荐系统生成所需元数据的一种方式。通过部署语音识别软件,推荐系统将利用节目特有的自我描述,把相似的节目相互匹配起来。这样做就不会触动组织结构,而是——与线上服务本身并无二致——在现有结构之上添加一个额外的系统,而无需改变现有结构。语音识别软件将从公司外部被动员进来,以在视频数据库与推荐系统之间建立一种稳定的关系。它将充当一个中介者(mediator),把视频的原初形式改变为推荐系统能够处理的东西。此外,开发团队还展现出一些原社会学(proto-sociological)的洞见。从社会学视角来看(例如 Bourdieu 1984),这一建议背后的想法颇为耐人寻味:相似的节目制作必定会使用特定于类型的语言,从而产生能够为视频建立一种稳定描述体制的描述。他们不仅试图动员一种技术工具,还试图将其用作一台文化比较的机器。技术工具变成了一种社会探究的工具。

然而,存在一个大问题:频道最受重视的那些视频无法被这款由一家北美大公司生产的语音转文字软件识别。这些节目使用的是该软件无法理解的德语变体。如此一来,元数据的生产将无法涵盖所有视频,而且也不清楚究竟有多大比例的视频能够真正配备源自其音轨的文本描述。这一方法与推荐系统应当处理的内容并不相容。视频的分布式自我描述非但没有形成对视频的稳定转译,反而既无法在软件的中心位置被转译,也无法在那里得到协调。为何如此?因为语音识别软件已经预设了某种指涉世界的形式。它需要一种特定的语言使用形式,而无法应对不同的表达形式。它并没有协调那些通过多样的语言使用、经由视频音轨表达出来的不同形式的自我描述,而是未能认可这些不同的语言形式。因此,软件非但不能通过语音识别使视频彼此之间具有可比性,反而只会从现有视频物品中选出一个子集。这款语音识别软件是用一种与这家公共广播机构中所见不同的世界之数据表征来训练的。另一方面,这档节目的制作方式是不可改变的。它是该广播机构最成功的节目之一,最重要的是,它通过使用当地方言表达了广播机构的地方认同。这是一种受到高度重视的东西。

机器学习和模式识别算法在很大程度上依赖于它们据以训练的数据——这些数据对它们而言成了世界的一种表征(Jaton 2017)。然而,在机器学习的情形中,训练数据(共同)生产出作为关于世界的理所当然之假设的算法民族方法——这个世界不是“单纯的自然世界,而是处于解释之中的自然世界,或者说是我们通过语言所构造的世界”(Suchman 2006, 76)。在语音识别软件中实现的算法脚本,基于开发者对一种特定语言使用的假设——这一假设通过实际生成该软件所用的数据集得以实现。然而,这档地方电视节目中的表达恰恰没有被纳入语言识别软件能够解读的那些说明之中。为了生产出一种推荐系统能够在其中运作的稳定的社会技术秩序,这种相互理解是一个前提条件。局部生产的秩序以可相互理解的说明及其反身性解读为基础。正如 Suchman(2006)所写:“社会世界的稳定性[……]并非源于某种永恒的结构,而是源于在特定互动场合中创造并维持共享理解的情境行动”(Suchman 2006, 83)。正如 Ziewitz(2017)不得不以一种算法能够理解其表达的方式使自己的观察变得可说明(accountable),语音识别软件也预设了一种使用并继而消解语言的特定方式。为了匹配当地方言的表达,就必须把它们转译成语音识别软件能够消解的一种语言形式。然而,在 Ziewitz(2017)的例子中,可以观察到许多修复情境的场合,人们就何者算作一条街道、或者规则的应用在此是否说得通等问题进行推理。算法所需的表达在其应用的情境中被重新解读、重新协商。然而,在这里修复情境意味着:要么改变节目的语言,要么重新训练语音识别软件,要么设置一个译员团队,由他们来完成“用算法的语言阐明观察”(Ziewitz 2017, 4)的工作。

动员实际组织之外的一个行动者来解决问题的策略之所以失败,是因为无法容纳第一个算法的那个生态,同样无法容纳第二个算法。在档案库的例子中,问题在于组织内部制度化的实践不允许整合算法;而一种跨制度的解决方案之所以失败,则是因为这两个组织(及其被委派的行动元,即那档电视节目和语音识别软件)的意义生成实践根本互不相容。这两个不同的组织各自带着对社会技术世界的理所当然的视角,在相遇中既无法生产出说明,也不具备使这些说明彼此可理解的方法。为了在视频数据库与推荐算法之间进行中介,语音识别软件本需要一个以不同方式预先结构化、预先规范化的、对它而言可解读的世界。问题非但没有得到解决,反而只是转移到了另一个转译的环节。所设想的转译链戛然而止。既不可能创造出一种使这款被黑箱化的软件得以使用的秩序——即改变节目中演员说话的方式——也不可能打开黑箱、重新组织其内部运作。

数据如何结构化(How Data Structures)

上述所有试图将推荐系统附着于公共广播机构现有组织结构、或者动员外部行动者作为跨制度解决方案进入组织之实演的尝试,都失败了。因此,关注的焦点从利用现有解决方案转移开来,转向创建我们自己的组织程序和结构,以实现这一算法系统。用于策划线性节目的核心系统——名为 WhatsOn——进入了我们的视野。在一次会议上,开发者询问线上编辑能否生产这些元数据。然而,这会给规模相当小的线上编辑团队带来过多的工作量。对于开发团队和线上编辑而言,解决方案是将集中化与去集中化结合起来。元数据的生产应当成为各主题编辑团队的工作,而不是线上编辑团队的工作。正如编辑团队的一名成员所论证的,这样一个流程所需的信息基础设施已经就位。编辑团队的 Trent 认为,“录入元数据最好在编辑系统中进行。没有人能绕开 WhatsOn”(田野笔记)。WhatsOn 是该广播机构节目的核心策划系统,在此之前只用于线性节目。在这个系统中,不同的编辑团队记下何时计划播出哪档节目,并录入相关描述,例如标题、简短描述、播出时间和视频时长。然而,利用 WhatsOn 及其中元数据的想法带来了两个必须应对的主要问题。WhatsOn 系统提供了用于关键词和较长文本的输入字段,以描述排定播出的各个视频。编辑团队在将其节目登记到这一核心系统的过程中并不使用这些字段,因为这些字段在此之前并没有任何作用。该组织迄今使用的元数据对编辑团队而言是有目的的,即为线性节目提供描述。这意味着,为已使用的字段提供数据确实为编辑团队解决了一个问题,而提供关键词或额外描述则根本没有用处,因而也没有价值,因为关键词和类别对线性节目的播出并不重要。在一次访谈中,一个元数据团队的受访者告诉我:

你要那个做什么?因为元数据自然不是你能直接看到的东西,只能间接地看到,其作用仅仅在于你随后能够自动控制某些东西。就是说你有类别。你说,我这里有电影故事片这个类别,或者纪录片这个类别。我的意思是,这相对来说说得通。但还有许多其他的元数据。它们乍一看并不直观,人们为什么会需要它们?因为在经典的播出分发中,它们并不是必需的。(Interview Metadata Team,笔者译)

然而,这构成了一个问题,因为元数据过于稀少,不足以产生好的推荐。必须为此做点什么。作为项目自己的社会学家,我开始了一项外交使命。我参加了一些会议,在会上听人讲解 WhatsOn 在组织中如何被使用、如何与其他部门相连接。此外,我还与各编辑团队的代表主持了讨论会。他们是所谓的关键用户(key users),会向我提供信息,并反过来指导其他编辑团队中的 WhatsOn 用户。因此,让他们相信推荐系统的价值至关重要。为了使推荐系统成为可能,我必须让他们成为算法的盟友。如果不能将他们征召(enrolment)进算法的行动者网络,项目将面临一个重大问题。

这一解决方案的另一个问题源于这样一个事实:有超过 300 个编辑团队将其节目的信息录入这个系统。即便这些字段被使用,数据生产者也可能会遵循 300 种不同的方式来描述共同的视频宇宙。开发团队所识别出的这个问题,是推荐系统共同体所熟知的一种状况,在那里它被称为社会化标注推荐系统(social tagging recommender)。元数据的生产不是集中地为物品创建标签和描述,而是被外包给了大众(crowd),允许用户上传内容,并以开放的方式——即不在某个给定的分类方案之内——为之添加标签和描述。有趣的是,在推荐系统文献中,这被称为一种“通常被称为大众分类法(folksonomy)的非结构化协作分类方案”(Cantador, Bellogín, and Vallet 2010, 237)。这里数据生产的运作方式已经发生了转变:从基于共同使用模式的方法或对分类方案的集中生产,转向一种众包形式的分类,使相似性的建构方式去中心化。内容提供者与算法之间的关系变得复杂化和多重化了。不会有任何持有预先给定分类方案的专业编辑或数据工作者被纳入其中。然而,在组织内部生产可比较的元数据这件事上,团队并不信任大众的智慧。在一次开发会议上,Gillian 认为“人们就是会录入各不相同的东西”(田野笔记)。Bob 在早期的一次访谈中谈到视频标注时说:“我不知道他们做得有多好,但就我迄今从其他产品那里听到的,这是一个大问题,东西标注得不好”(Interview Bob,笔者译)。问题的范围从各团队撰写描述文本的特定方式,一直到核心策划软件中的关键词字段是一个自由文本字段这一事实,也就是说,人们可以在其中输入任何想要的文本。因此,开发团队(包括被选中的编辑)设想设立一个中央控制机构。[16] 线上编辑团队应当充当一个控制元数据的中心通道点(central point of passage)。不完整或不起作用的标签或描述应当被退回给各主题编辑团队进行更正。当被问及他们打算如何控制对视频物品的恰当描述——包括挑选好的图片——时,线上编辑们告诉我:“我们甚至会有一位同事,专门去敲他们的手指头”(Online-Editors Interview,笔者译)。与此同时,还设想为各主题编辑团队举办工作坊,培训他们使用共同的分类方案。此外,还设想从一开始就改变录入数据的可能性。不再使用旧的类别列表——它庞大且难以理解——而是创建一个新的列表,一个简单得多、并且在线上编辑团队看来说得通的列表。与此相配套的是向各编辑团队提供一份风格指南的计划。

在元数据方面,将会有一份风格指南,这样各编辑部就有可以遵循的东西了。然后我们还得看看效果如何(Online-Editors Interview,笔者译)。

通过设立这一共同分类方案并在核心的 WhatsOn 系统中加以实施,开发项目还额外实施了——或者更确切地说:更新了——一种共同的基础设施,将不同的群体连接到一个共同的数据生产体制之中。其结果是,项目从三个不同的方向着手处理眼前的问题:a)使 WhatsOn 关键用户成为算法的盟友;b)更新类别列表并将其硬接线(hard-wiring)到核心策划系统中;c)培训 WhatsOn 用户,使他们学会如何应用新的类别列表。在此过程中,开发团队试图确立并自然化共同的分类,即建立一个全组织范围的标准。他们并没有让这一标准缺乏任何盟友、从而缺乏权力,而是更进一步,设立了一个中心通道点——线上编辑团队——以确保所生产元数据的质量。因此,通过设立一个全组织范围的标准,并使之与将会支持和执行该标准的守卫者相协调,一个用于协调不同子共同体的信息基础设施便被建立起来了。

当然,当涉及把共同分类视为共同知识之自然化形式的想法时,我们必须保持谨慎。虽然分类系统被设立为一种生产共同说明的制度性和组织性装置,但假定一种将观察转译为分类的决定论式构想,可能会把我们引上一条滑坡。正如 Suchman(2006)所论证的,计划(或在我们的案例中是分类系统和指导方针)成为局部化实践的一种定向资源,但我们“按照计划行动的能力,最终取决于你在现场(in situ)所能调用的具身技能”(Suchman 2006, 72)。如前所述,互动论理论假定,一个符号的意义并非单纯给定的,而是在社会群体的有能力成员之间的互动中生产出来的。对所交换的符号和行动的解读,以先前的知识(包括计划之类的资源)以及关于该情境应当如何解读的理所当然的观念为基础。Garfinkel 称之为参与者的民族方法,而实用主义则大量借助于社会化和常规行动的观念。然而,这两种进路在其概念化中都包含了变异和创造性的环节(例如 Joas 1997)。常人方法学甚至正是建立在对传统社会学的批判之上的,后者把个体当作只会遵循预先界定的规则或规范的“判断力上的傻瓜”(judgmental dopes)(Garfinkel 1984, 68)。[17] 相反,社会集体的成员自身就是有能力的,社会结构和秩序总是被重新述行,因而也可能总是略有不同。换言之,社会秩序的稳定性不是一种理论预设,而是一个经验问题。这当然对局部化秩序和说明的生产——在本案例中即类别和关键词的使用——在共享标准化分类系统的更大共同体中产生了一些重要的后果。我们在这里面临的问题是,迄今为止,这些类别在不同的编辑团队中被以非常不同的方式使用,而且这份列表是历史过程的产物,有些团队甚至拥有完全属于自己的、仅用于其节目的类别。Bowker 和 Star(2000, 287)认为,“类别是历史地处境化的人造物,并且和所有人造物一样,是作为实践共同体成员身份的一部分而习得的”。而这在此成了一个问题,因为数百种习得的分类实践必须相互协调。WhatsOn 这一核心策划系统并没有把所有人都整合进一个能够在现场协调说明(以及社会技术秩序)之生产的共同情境中,而是成了连接众多不同共同体的一种装置。在这方面,将编辑团队设立为强制通行点(obligatory passage point)十分重要,因为“当多个实践共同体聚在一起时,总会出现反常,而有用的技术无法在所有共同体中同时被设计出来”(Bowker and Star 2000, 310)。线上编辑团队并不是在情境之内修复对共同秩序的沟通性生产,而是被分派了从事类别工作(categorial work)的任务(Bowker and Star 2000, 310),即管理不同共同体中的不同意义,以促进合作。回到 Ziewitz(2017)的例子,任务不再是以算法能够理解的方式来表述自己的观察,而是在一个过程中协调不同形式的意义生成,这一过程将允许一种沟通逻辑,以对算法有效的方式更新和更正自己的说明。关于某物是否符合“我们对一条道路的理解”这一限定(Ziewitz 2017, 6)的讨论,不再发生于处境中的观察者之间,而是经由一种共同的基础设施和分类系统来中介,这一基础设施和分类系统连接着线上编辑与众多其他编辑团队。这一切都必须完成,以便“一个在系统之外被想象出来的世界,一个会话与交流、社会性与沟通的世界,能够成为这里面的世界,即算法系统的社会世界”(Neyland 2015, 128)。在这里,生产我所称的算法反身性,不仅意味着消解信号的意义,还意味着建立一整套组织结构,由它来生产能够转译给算法技术的关于社会世界的说明。

将算法反身性制度化(Institutionalizing Algorithmic Reflexivity)

元数据的生产远不只是让一个视频数据库变得机器可读。我们所能看到的毋宁是:算法假定,在社会技术系统中流动的指涉彼此之间是可比较的。或者换言之:算法系统应当在其中运作的那个世界,其实演必须被标准化(另见 Gillespie 2014)。在本章中,我讨论了生产这样一种稳定的指涉实践——即经由元数据对视频数据库的一种支配性实演——的不同进路,每一种进路都有其难题与问题,因为现有的组织结构和相互依存关系使之成为可能或不可能。每一个失败的案例都属于另一个由转译或功能性关系构成的网络,它们生产数据,满足特定场景和情境的要求。算法嵌入在一个更广泛的生态系统之中,它在其中运作,也在其中被赋予可操作性。算法的权力并不在算法之内,而在于它为展开自身能动性所能动员的盟友(Ananny 2016; Ensmenger 2012; Neyland 2015)。因此,抽象的算法原则与数据生产过程之间的转译,需要一种制度化、稳定化的算法反身性,以消解算法先前仅被抽象假定的那些指涉。这可以被理解为一种二阶的铭写过程:开发者关于社会系统的假设,或是通过对信号的解读和脚本化使用而被纳入具体的人造物之中——正如我们在解读用户评分时所见——或是被委派给组织结构,正如我们在为视频内容生产元数据的案例中所见。因此,铭写过程不仅是把一个算法组装起来,同时也是一个嵌套形式的去铭写(de-inscription)过程,而这些去铭写可能被稳定下来。因此,理解算法能动性要求我们递归地重构铭写与去铭写的过程,以及其中所涉及的各种反身性形式——正是它们导向了我们称之为“算法”的那个已稳定化、已制度化的实体。

说算法正在被制度化,甚至成为一种制度,这意味着什么?在过去大约一百年的社会学话语中,制度这一概念一直是人类学给定性(anthropological givens)观念的对立面。制度概念并不通过论证人类或社会本来就是如此来将可观察的结构自然化,而是强调:人类需要发展出稳定的、重复的、能够跨越时间与空间而持久存在的互动形式(例如 Parsons 1954)。这些行为形式为我们的日常生活建立秩序,因为它们变得不容置疑,并仿佛是自然的那样发挥作用。在现象学的思路中,Berger 和 Luckmann(1967)甚至谈到意义与实践的客观化(objectivation),正是它使人们得以将某些类型的互动识别为一种制度。通过这样的论证,制度便成为 Durkheim([1895] 1982)意义上的社会事实(social facts)。[18] 对 Durkheim 而言,社会事实是客观给定的坚硬结构,仅凭社会领域本身即可得到解释。然而,这种把制度理解为持久的、可比较的、可追溯的实践的观点,赋予了制度概念一种本体论地位,使之与其说是社会分析的起点,不如说是一种解释。与此相反,或许值得追问的是:制度作为——借用 Law(1994)的一个术语——相当规则的模式(fairly regular patterns),是如何在这些情境中被实演、被援引的?Giddens 在其结构化理论(theory of structuration)中结合了这些不同的态度,他认为制度自身再生产着这些场景,从而使后续的实践或多或少地更有可能发生。正如 Giddens 所论证的,稳定化的实践在社会结构的生产中扮演着至关重要的角色,而我们在具体情境中正是将这些社会结构作为对我们行动的持久阻碍来面对的(Giddens 1984)。然而,我们总是通过情境中特定行动者对这些结构的实演来遭遇它们——它们必须被动员起来。正如 Garfinkel 主张社会秩序是有待解释的,而不是用来解释的,制度及其维持也是情境实践的结果,这些实践依照关于该制度的某种观念来为情境建立秩序(另见 Passoth 2021)。观念、规则与习俗是如何被动员起来以维持制度的?这也使我们有必要考察这些情境中所有起秩序化作用的要素。为了使这些相当规则的实践模式成为可能,有哪些基础设施、算法脚本、数据孤岛(data silos)、传输协议,以及诸如新闻伦理这样的学科规范被动员和协调起来?每一个所涉及的行动者都由此代表着一组保持自身稳定的实践,从而使人们得以跨越时间与空间追溯稳定的实践,并将它们相互关联起来。在这个意义上,档案库的视频数据库同时代表着一种制度和一个后续制度化的过程。因此,制度总是必然兼具二者:既是稳定的社会技术事实,又是一种实践成就(practical achievement)。安装算法反身性是将算法系统制度化的一个关键要素。

如前所述,开发团队将算法技术的脚本与其他行动者——如数据生产者、基础设施或数据库——的实践和脚本结合在一起。算法反身性必须从显性的、不确定的状态转变为隐性的、持久的状态。然而,所达成的社会秩序将算法生产为一个持久的行动者,同时也依赖于那些被组装起来的行动元,它们各有其抵抗与假设,简言之:各有其脚本。在推荐系统的案例中,这以两种根本不同的方式发生。第一,在协同过滤的案例中,用户与视频物品之间互动的信号受到质疑、被重新解读,并被挪用于推荐系统之中。开发团队基于自身的经验,试图理解评分所指涉的不同情境,并据此加以解读。在这里,消解信号的意义是算法开发的一部分,一种形式的算法反身性作为算法脚本的一部分而被稳定下来。在第二个案例即基于内容的过滤中,开发团队并没有考虑如何自行解读信号,而是将反身性的过程委派给了其他组织场所。他们所关切的不是应当以何种方式理解这些信号,而是人们如何能够首先确保组织所提供的指涉彼此之间是可比较的。然而,在这两种情形中,各种形式的算法反身性都作为组织实践而被安装并稳定下来。

在前面讨论过的例子中,Ziewitz(2017)所苦苦应对的恰恰是这些转译过程。每遇到一条新的街道,都不是生产出理所当然的意义,而是必须加以质疑和检验。算法表达的索引性并不容易消解——而且它肯定不是一个无关切的(即常规化的)反身性过程的结果。相反,隐性的程序通过使“实践活动的‘反身’特性变得可观察”(Garfinkel 1984, 9)而被显性化了。在 Ziewitz 的例子中,城市的结构与秩序并不遵循算法民族方法的想象与假设。消解“道路”这一概念并不那么容易转译,而是需要中介者——在这里即 Ziewitz 本人及其他参与者——付出大量工作。然而,这不仅是不同解读之间不相容的问题,更是不同的世界秩序化形式之间的不相容。作为所表述之算法的探究对象的那些街道,是城市及其社会技术秩序的结果与委派。街道的形成是城市整个历史的物质化——并随之是众多植根于城市规划与政治的决策的物质化(例如 Aibar and Bijker 1997)。Latour(1999a)表明,科学知识的生产有赖于指涉的生产与流通。在他关于丛林土壤的著名例子中,丛林借助可以来回追溯的指涉,跨越距离变得可经验、可比较、可描述。从丛林到出版物,指涉链保持稳定,在转译过程的每一站所实演的实在也随之保持稳定。然而,从亚马孙森林流通到巴黎办公室的指涉,并不仅仅是指涉丛林土壤的符号或象征。它们表示着首先使指涉的生产与流通成为可能的整个装置。它们指涉着一种社会技术秩序,其中包括仪器、科学家、编辑、研究助理等等。与此类似,在公共广播机构内部生产的数据并不仅仅是一个外部描述的问题,而是每一个生产了数据(或未能生产数据)的环节,都是整个组织的问题。可用的数据不仅指涉单个的视频,也指涉首先使这些数据成为可能的实践与安排。被解读的信号不仅指涉用户及其偏好,也指涉国家的数字基础设施,以及将这些信号输送到算法脚本的追踪体制。数据所表征的并不是一个可以被轻易重新解读的、脱离语境的符号。相反,这些符号指涉着特定的组织结构,而这些结构在被称为“公共广播机构”的更广泛的装配(assemblage)之中,有着各自被述行、被实践地实演的功能性。正如道路指涉着城市的历史,所生产的数据符号也指涉着公共广播机构穿越时间的生成过程。

然而,这些组织构型与铭写在算法脚本中的理所当然的假设并不相容。在协同过滤的案例中,改变的是算法的民族方法;而基于内容的过滤则需要一种新的、分布式的、有组织的沟通结构。通过实施这样一种分布式沟通结构,公共广播机构并没有改变其组织结构,而是扩展了它:增加了与一种基础设施相耦合的制度性实践,这一基础设施使不同实践共同体及其说明的生产得以协调。软件开发团队没有使用既有的数据孤岛或外部解决方案,而是增加了一层组织性和制度性的实践。最终,为了解决新出现的问题,我们让公共广播机构变得比以前更大了。但这样做的同时,我们也增加了一个新的组织,因为在新安装的社会技术结构之中,公共广播机构——以及算法——的实演,与我们所遭遇的所有其他实演都不相同。算法系统的实践成就变得不只是摆弄代码、开发环境或数学函数。组织结构是动员、安装和关联新的行动者,并将它们征召进那个作为制度化算法的网络的一部分。

注释