返回
HN Hacker News(数据关键词) AI 逐段翻译 发布 2026-09-28 21:30

数据揭示 Reddit 刀具推荐或存水军操纵

DataHot 速览

Hacker News 热帖(26 赞)中,作者用数据调查 Reddit 刀具社区是否存在水军。作者微调 GLiNER 模型,从 r/knives、r/chefknives 等六个 subreddit 评论中抽取品牌、型号和钢材。初步发现某厨师刀品牌在“该买什么”类提及中有 31% 来自 5% 的账号,是随机预期的 4 倍。随后作者拉取这些账号历史,并预先定义 astroturfing 的数据模式以判断推荐是否被操纵。

为什么值得关注:该文把 Reddit 推荐社区的可信度问题转成可量化、可复核的数据分析,并用 NER 抽取品牌/型号/钢材,对做评论数据、推荐信号和风险识别的数据团队有方法参考。

本文目录 8 节
  1. 为什么这个问题是可检验的
  2. 数据中的水军行为会是什么样
  3. 语料库,以及改变了答案的那次刷新
  4. 数据支持什么
  5. 它们的完整Reddit历史看起来很普通
  6. 不足之处
  7. 我从中得出的结论
  8. 概览

译文

AI 逐段翻译

一个厨刀品牌有31%的"我该买什么"提及来自5%的账号,是随机预测的四倍。于是我把这些账号的完整Reddit历史都拉了出来。

我喜欢做饭,而做饭变成对高端日本厨刀的痴迷。当我想买一把刀,或任何别的东西时,我会把产品名输入Google,再加上"reddit"这个词。很多人也这么做。Mike Riggs在2022年于Reason上把它写成"Reddit hack",此前Dmitri Brereton关于Google搜索的文章提出了同样的观点:带上"reddit"的查询返回的是真人,而不是联盟营销页面。这个习惯背后的赌注是,r/chefknives里的一个陌生人在一把刀上没理由对你说谎。

这个赌注有一个明显的弱点。如果Reddit是买家去获取无报酬意见的地方,那么Reddit也是品牌想要植入付费意见的地方。我想知道,我读的那些刀具subreddit——以及我为New Knife Day抓取的那些——是否显示出任何这方面的迹象。不是对某条可疑评论的直觉,而是我能计数、别人也能重新计数的东西。

为什么这个问题是可检验的

去年我微调了一个小型命名实体模型GLiNER,用来从刀具评论中提取品牌、型号和钢材。从"picked up a Mazaki in white #2, way better than my old Fibrox"这句话中,它返回Mazaki作为品牌、Fibrox作为型号、white #2作为钢材。该模型运行在New Knife Day抓取器从六个subreddit收集的每一条评论上:r/knives、r/knifeclub、r/chefknives、r/japaneseknives、r/FixedBladeEdc和r/KnifeSteels。关于该模型的说明在这里。

所以对于每一条评论,我已经知道是谁写的、提到了哪些品牌,以及它所在的帖子是不是有人在问该买什么。这足以提出一个狭隘的问题:在推荐能改变购买的帖子里,是谁在做推荐?

New Knife Day是我为刀具收藏者做的网站。它编目刀具和钢材,并追踪Reddit上人们在买什么刀、争论什么刀,所以刀具Reddit值不值得读,与我利害相关。New Knife Day的网址是new.knife.day。

数据中的水军行为会是什么样

没有人会公布自己的托儿账号,所以我必须事先确定付费发帖会留下什么。这个市场并不隐蔽。REDCmts以9.99美元卖一条Reddit评论,100条卖699.99美元,声称来自它所说的"真实、有年头的账号",并展示了一个它声称已交付的品牌提及画廊。Soar说它的账号在第一次品牌提及之前会经过数周的"养号和人工暖号"。Bazzly则宣传能对每一条看起来像有人在购物的帖子进行自动回复。

REDCmts定价页面:一条评论9.99美元,十条89.99美元,一百条699.99美元
Soar营销页面,描述账号在任何品牌提及之前经过养号和人工暖号

把这些销售页面当作对产品的描述,那么一个品牌的付费活动,通过少数几个准备过的账号投放,应该表现为:

  • 一小撮账号在"我该买什么"帖子中写出了不成比例的品牌提及份额。
  • 这些账号在提到任何品牌时几乎每次都提到同一个品牌。
  • 单薄账号:评论少、分数低、在subreddit中没有真正的地位。
  • 年轻账号,或者历史记录被隐藏或抹掉的账号。
  • 主要在刀具subreddit发帖的账号,因为付费购买的就是那些刀具评论。
  • 链接到商店或联盟营销页面。

其中每一项也可能是忠实粉丝、利用自己时间发帖的制造商员工,或品牌自己的subreddit常客逛进购买帖时会产生的东西。公开的Reddit数据能显示推荐是集中的,而不能显示原因。以下所有内容都是关于前半部分。

语料库,以及改变了答案的那次刷新

抓取器在每条新帖发布后不久就存储该帖及其评论。对这个间题来说,那被证明是错误的时机:一个购买帖会在接下来一两天里收集推荐,而r/knives的帖子每条平均只存有1.5条评论。一次刷新遍历回到3,607条超过48小时的帖子,重新抓取其评论树,使语料库从21,673条评论增加到51,129条。刷新之前,下面的测试什么也没发现,因为约800条购买帖提及太少,无法把7.6%与随机给出的7.1%区分开。

计数
帖子6,675
刷新后的评论51,129
评论数达到10条或以上的作者987
这些作者在购买帖中的品牌提及1,471

三个定义起了作用。购买帖是指标题或正文匹配"should I buy"、"recommend"、"under $"或"best knife"之类短语的帖子;它是一个正则表达式,不是分类器。作者的品牌偏重度是指其评论中提到品牌的比例,并偏向每次提到同一个品牌。尾部是在该分数上评论数达到10条或以上的987位作者中排名前5%的账号,共49个。我这样打分,是因为一个不断提起同一个品牌的账号,正是上述供应商所售卖的产品。

问题在于,考虑到每个人的发帖量,尾巴账号按概率应该在购买帖的提及中占多大比例。为了得到这个数字,我把每一条品牌提及都留在原处,留在它所在的帖子中并保留其品牌名称,然后在这些提及中随机重新分配作者姓名,就像打乱名牌一样。一个高产账号仍然会得到很多提及,一个低产账号得到的很少,但一个账号出现在哪些帖子中不再取决于它是谁。我这样做1,000次,并记录每次尾巴的占比。如果真实占比落在这1,000次重新分配产生的范围内,那么尾巴在购买帖中的集中程度就不超过其评论数量所能解释的。如果它高于该范围,那么尾巴账号出现在购买帖中的频率就高于其发帖量所能解释的。作者全程都是加盐哈希;没有用户名或评论文本离开数据库。

数据支持什么

如果尾巴出现在购买帖中仅仅是因为它发帖多,随机重新分配表明它应该在那里写下约7.9%的品牌提及,并且几乎总是在6.3%到10.1%之间。它写了11.3%。1,000次随机重新分配中只有2次达到了这个数字。用简单的计数来说,大约每九个购买帖推荐中就有一个来自这49个账号,而概率表明是每十三个中有一个,也就是在1,471条中多出约50条推荐。

多出的份额落在哪里比它的规模更重要。如果整个刀圈Reddit都被操纵,那么每个子版块都会高于概率。有两个确实如此,r/chefknives和r/knifeclub。最大的r/knives则在概率的半个百分点以内。付费推广是由一个品牌购买的,所以它也应该逐品牌地显现出来,而事实确实如此:三个品牌从其尾巴获得的购买建议远多于概率所给出的,一个大品牌得到的略少,三个则完全没有。这就是几个针对性推广会留下的形状,也是几个高声量粉丝群体会留下的形状。

购买帖品牌提及来自尾巴的份额概率份额
r/chefknives14.9%7.7%
r/knifeclub12.4%7.3%
r/knives6.7%6.4%
r/japaneseknives15.2%14.3%
r/FixedBladeEdc8.5%8.7%
品牌B003,一个厨师刀品牌31.2%8.0%
品牌B00426.1%8.2%
品牌B001,r/knives中被提及最多的品牌20.4%11.8%
品牌B0028.1%9.5%

品牌被编码,因为集中度统计并不能证明任何品牌付费购买了任何东西,而且信号最强的品牌也有一个庞大而高声量的粉丝群体。

在语料库数据上,尾巴也符合上述预测中的另外两条。这些账号很单薄:在这六个子版块中评论数中位数为12,得分中位数为1,所以没有人在给它们点赞把它们推向显眼位置。它们忠于一个品牌:一个尾巴账号的品牌提及中有三分之二都指向同一个品牌。这是六条预测中的三条,也是语料库所能测试的全部。账号年龄、刀具关注度和店铺链接需要每个账号的完整Reddit历史。

它们的完整Reddit历史看起来很普通

我取来三个有信号的品牌背后的23个尾巴账号,并抓取了Reddit能为每个账号返回的一切:最多约2,000条评论及其提交内容、账号创建日期和 karma。作为对比,从同一语料库中随机抽取了另外23个评论数在10条以上的作者,取自尾巴评论数范围内。八个尾巴历史记录和七个对比历史记录被隐藏、封禁或删除;其余则可读。

一个准备好的付费账号应该是年轻的,主要在它被付费发帖的子版块中发帖,并推销一个品牌。这些尾巴账号的中位年龄为4.5年,与对比账号相同。它们的评论中只有3%在这六个刀具子版块中,而对比组为10%,并且它们分布在66个子版块中,而对比组为47个。在它们的整个历史中,它们提到了七个刀具品牌,而不是一个。店铺链接在两组中都很罕见。

我总共比较了大约二十几项特征。在15个和16个可读账号的情况下,没有任何差异大于把31个人随机分成两组通常会产生的差异,而那些有所倾向的差异都倾向于尾巴账号对刀具的关注更少。

这不是一个被养熟的、单一用途账号的样子。这是一个经常上Reddit、并且对某个刀具制造商有强烈感情的人的样子。这也是一个运营良好的付费账号的样子,正因如此,卖家才会出售老号而不是新号。八个被隐藏的尾巴历史记录可能包含整个故事,而我无法读取它们。

不足之处

  • 品牌检测器是现成的GLiNER模型,而不是之前文章中那个经过刀具调优的模型,因为那个仓库发布时没有附带权重。它会漏掉一些品牌,也会过度标记一些型号名称。目前还没有对其在此语料库上的输出进行人工标注检查。
  • “购买帖”是对标题和正文的正则表达式。它也没有对照100个手工标注的帖子进行过检查。这两项检查都很便宜,而我还没有做;在那之前,上面每一个百分比都是机器标签的百分比。
  • 尾巴是49个账号,而每个品牌的结果依赖于其中的15到20个。NER中一个品牌-型号的误报就可能移动某个品牌那一行。
  • 我测试了八个品牌和六个子版块,在这么多测试中,有一两个会因运气而显得不寻常。总体11.3%的结果是单一测试,没有这个问题。
  • 对比账号是从尾巴的评论数范围内抽取的,而不是逐账号配对。它们在语料库中的评论数中位数为23,而尾巴为13,这应该让它们看起来更关注刀具,而不是更少。
  • 历史记录被限制在Reddit列表所能返回的范围,约2,000条评论。对于超过上限的账号,首次刀具评论时的年龄未知,留空。
  • Reddit的列表在每个子版块接近1,000个帖子处停止,所以厨房子版块覆盖约一年,而r/knives和r/knifeclub只覆盖刷新前的几周。这是六个子版块,不是整个Reddit。
  • 我运营的New Knife Day追踪的正是这个语料库所统计的那些品牌。我与数据中的任何品牌都没有关系,也没有办法向你证明这一点。

我从中得出的结论

在刀具搜索中加入"reddit",结果大多仍然会指向真人。对少数几个品牌而言,有四分之一到三分之一的购买建议来自那些主要推荐该品牌的账号。这些人是粉丝还是收了钱,我不得而知,在读完他们的历史记录后,我倾向于认为是粉丝,但这一倾向并不坚定。

数据所认可的实用检查方法就是:当一条刀具推荐来自你不认识的账号时,点进去看看它是否曾提到过其他品牌。在这个语料库中,这一个问题比karma更能把尾部账号和其他所有人区分开来。它抓不到来自一个真实老账号的付费评论,而我认为读者能做的任何事都抓不到。

代码、汇总表和图表都在下方链接的爬虫仓库中。用户名、评论内容、账号历史记录和品牌代码对照表均未公布,且将不会公布。

概览

问题:刀具类subreddit的"我该买什么"帖子是否显示出付费发帖会留下的集中现象

方法:用GLiNER对来自六个subreddit的51,129条评论进行品牌标注,对作者进行1,000次随机重排以估计随机概率,然后获取23个尾部账号和23个对照账号的完整Reddit历史记录

结果:尾部账号在购买帖品牌提及中占11.3%,而预期为7.9%;它们的完整历史记录有4.5年之久,且并不比对照群组更关注刀具

未展示:付款情况、协同行为,或哪个品牌是B003

分析代码、汇总表和图表(reddit-scraper-project)→GLiNER品牌标注的详细说明→Mike Riggs,"Reddit黑客事件如何让谷歌搜索结果变得更好",Reason,2022→New Knife Day,追踪Reddit在买什么刀→

个人网站。仅代表个人观点;不隶属于我的雇主,也未获其认可。

这篇内容对你有用吗?

反馈只用于改善内容筛选,不等同于收藏

分享这条资讯
分享海报
保存图片
iOS 也可以长按图片保存