网络与分布式2024dl.acm.org
AdFlush
AdFlush
进阶 · 约 60 分钟读完前置知识:机器学习基础、网页工作原理(JS/HTTP)、广告拦截基本概念
导读
AdFlush 是一篇提出基于机器学习的广告拦截方法的论文:通过人工设计一组特征(如 JS AST 深度、标识符平均长度、脚本调用图指标等共 27 个特征)来识别广告相关资源,F1 达到 0.98,优于 AdGraph、WebGraph 等算法型拦截器,并声称在对比实验中胜过 uBlock Origin,但算法开销较大,未能降低页面整体加载时间。
HN 关注点:既因为反广告的长期话题热度,也因为这是一个少见的、登上 HN 首页的经典特征工程 ML 项目,讨论焦点集中在它与 uBlock Origin 等众包过滤列表方案的对比是否公平。
HN 评论精选
这几条评论里:支持 1 质疑 1 补充 2
质疑质疑为何不与主流众包列表型广告拦截器对比,认为众包方案已足够高效
AdFlush(F1: 0.98)看起来比 AdGraph(0.93)、WebGraph(0.90)、WTAgraph(0.84)表现更好,但问题是为什么不和最流行的 uBlock Origin、Adblock Plus 比较?我想作者是想公平对比,只比较算法型拦截器,而非众包列表型。论文也承认手动维护过滤列表需要大量人力。但众包在这种任务上扩展性太好了——只需一个人上报广告,就能让数百万人屏蔽它——算法方案似乎没有必要。
nomilk查看英文原文
AdFlush (F1 Score: 0.98) seems to do better than some other adblockers: AdGraph (F1 score: 0.93), WebGraph (F1 score: 0.90), and WTAgraph (F1 score: 0.84), but it begs the question: why not compare to the most popular adblockers: uBlock Origin, Adblock Plus etc. I think the authors want to compare apples with apples, so they only compare their algorithm to other adblockers that use algorithms, as opposed to those which use crowdsourced lists. The paper somewhat acknowledges this: > However, manual maintenance of these filter lists requires significant human effort Seems like one of those tasks where crowdsourcing scales so nicely (only one person has to report an ad for it to go into a crowdsourced list that blocks it for millions of others) that it makes an algorithmic approach unnecessary.
补充指出这是罕见的特征工程 ML 项目,并纠正说论文确实对比了 uBlock Origin
有趣的是 AdFlush 是经典特征工程方法:手动定义特征再用 ML 找出最有用的,而不是 LLM 式的“扔进海量数据看结果”。特征虽脆弱但可解释,论文附录列出 27 个特征,包括 JS AST 深度、JS 标识符平均长度、括号与点号表示法比例等。另外与评论里说的相反,论文 5.5 节确实对比了基于黑名单的 uBlock Origin 并声称胜出,但作者也承认算法开销大,不能降低页面整体加载时间。
pradn查看英文原文
What's fascinating here is AdFlush is a classical feature engineering approach: define a bunch of features on the data manually, and then use ML to figure out the most useful / impactful ones. This is not the "throw terabytes of data and see what happens" approach we see with LLMs. It's a bit funny to even point this out because I don't recall the last time a feature-engineered ML project made it to the HN front page. Features can be brittle, but they are understandable. The paper's appendix [1] lists the 27 features that will likely make a request/resource "ad-related". These include interesting ones like JS AST depth, average JS identifier length, the "bracket to dot notations ration in JS", and a number of graph measures for the graph of scripts. And contrary to what comments in this thread are saying, they do compare against a blocklist-based adblocker: uBlock Origin. That's in section 5.5. They say they outperform uBlock Origin. But even they say they don't reduce overall page time bc their algorithm is expensive. [1]: https://dl.acm.org/doi/pdf/10.1145/3589334.3645698
支持表达对广告的强烈反对,列举广告的多重危害
很高兴看到对抗广告的努力。广告是我少数持激进态度的事情之一:它们浪费两端算力和电力、破坏网页设计与布局、分散注意力消耗精力、让互联网更丑陋并影响心理健康,还常推销劣质产品或骗局,伤害最贫穷和受教育最少的人。广告是寄生在人类心智上的寄生虫,必须永远消失。
Night_Thastus查看英文原文
Always a joy to see efforts in the ongoing battle against advertisements. There are few things I feel radical about, and Ads are one of them. I believe they are a drain in several ways: They waste computational resources and electricity on both ends. They compromise the visual design and layout of webpages. They distract and take mental energy away from the user. They make the internet (and anywhere ads exist) more "ugly" and less aesthetically pleasing - which negatively impacts mental health. They often sell low-quality services/products or outright scams, which harms those least educated and poorest individuals. Death to advertisement! On billboards! On television! On the internet! Ads are a parasite on the human mind that need to go away, forever.
补充补充论文的开源代码仓库链接
这是论文对应的 GitHub 仓库:https://github.com/SKKU-SecLab/AdFlush
alexcason查看英文原文
Looks like this is the associated repo on GitHub: https://github.com/SKKU-SecLab/AdFlush
相关资源
从这篇论文所有 HN 讨论帖的全部评论里整理出来的链接。
历次讨论
- 2024Hacker News 讨论帖276 分 · 108 评
同领域还值得读
Paxos vs. Raft:分布式共识是否已达成共识?
Paxos vs. Raft: Have we reached consensus on distributed consensus?
重新审视了 Paxos 与 Raft 两种分布式共识算法之间的差异,试图在一个统一的框架下比较它们,并论证二者的相似程度远高于通常的认知,许多所谓的差别只是表述层面的。
网络与分布式2020 · 343 分 · 65 评 · 引用 10进阶 · 约 28 分钟编辑精选Stellar 协议:互联网级共识的联邦模型
Stellar Protocol: A Federated Model for Internet-Level Consensus (2016)
提出 Stellar Consensus Protocol(SCP),一种面向互联网级共识的联邦拜占庭协议模型。
网络与分布式2018 · 301 分 · 61 评专业 · 约 90 分钟编辑精选拜占庭将军问题(1982)
The Byzantine Generals Problem (1982)
这篇 1982 年论文提出并形式化了拜占庭将军问题:在分布式系统中,部分节点可能叛变或故障、通信不可完全信任时,忠诚节点如何达成一致行动。
网络与分布式2018 · 290 分 · 77 评进阶 · 约 75 分钟编辑精选Google 变差了吗?对搜索引擎中 SEO 垃圾的纵向调查
Is Google Getting Worse? A Longitudinal Investigation of SEO Spam in Search
对搜索引擎结果中的 SEO 垃圾内容做了纵向追踪:作者团队在一段时间内持续采集 Google、Bing、DuckDuckGo 等引擎针对商品评测类查询的结果,用分类器识别联盟营销…
网络与分布式2024 · 276 分 · 274 评入门 · 约 45 分钟编辑精选使 CRDT 能够容忍拜占庭故障
Making CRDTs Byzantine Fault Tolerant
Martin Kleppmann 等人的论文研究如何让 CRDT(无冲突复制数据类型)抵御拜占庭故障节点,即部分参与者恶意篡改数据时仍能保证一致性。
网络与分布式2022 · 266 分 · 40 评进阶 · 约 90 分钟编辑精选