Overview of the Frontier Progress of Causal Machine Learning
-
摘要:
机器学习是实现人工智能的重要技术手段之一,在计算机视觉、自然语言处理、搜索引擎与推荐系统等领域有着重要应用.现有的机器学习方法往往注重数据中的相关关系而忽视其中的因果关系,而随着应用需求的提高,其弊端也逐渐开始显现,在可解释性、可迁移性、鲁棒性和公平性等方面面临一系列亟待解决的问题.为了解决这些问题,研究者们开始重新审视因果关系建模的必要性,相关方法也成为近期的研究热点之一.在此对近年来在机器学习领域中应用因果技术和思想解决实际问题的工作进行整理和总结,梳理出这一新兴研究方向的发展脉络.首先对与机器学习紧密相关的因果理论做简要介绍;然后以机器学习中的不同问题需求为划分依据对各工作进行分类介绍,从求解思路和技术手段的视角阐释其区别与联系;最后对因果机器学习的现状进行总结,并对未来发展趋势做出预测和展望.
Abstract:Machine learning is one of the important technical means to realize artificial intelligence, and it has important applications in the fields of computer vision, natural language processing, search engines and recommendation systems. Existing machine learning methods often focus on the correlations in the data and ignore the causality. With the increase in application requirements, their drawbacks have gradually begun to appear, facing a series of urgent problems in terms of interpretability, transferability, robustness, and fairness. In order to solve these problems, researchers have begun to re-examine the necessity of modeling causal relationship, and related methods have become one of the recent research hotspots. We organize and summarize the work of applying causal techniques and ideas to solve practical problems in the field of machine learning in recent years, and sort out the development venation of this emerging research direction. First, we briefly introduce the closely related causal theory to machine learning. Then, we classify and introduce each work based on the needs of different problems in machine learning, explain their differences and connections from the perspective of solution ideas and technical means. Finally, we summarize the current situation of causal machine learning, and make predictions and prospects for future development trends.
-
Web新技术不断地更新迭代,以及信息化时代下用户信息的爆炸式增长,直接促进了Web追踪技术的高速发展. Web追踪技术通过为用户生成唯一的身份标识,实现对用户以及行为活动的追踪. 其最初目的是服务不同的网站应用追踪用户,分析挖掘用户行为特点,实现个性化推荐. 但追踪技术本身存在一定的安全问题,且易被恶意利用获取用户敏感信息. 随着用户隐私敏感度的提升和信息保护意识的增强,以保护用户隐私为目标的追踪防御技术也在不断地升级和快速发展.
自2010年浏览器指纹[1]技术的提出,Web追踪技术的研究趋势从Cookie等类型的在用户客户端(即浏览器)存储身份标识的有状态的追踪,进入了基于浏览器获取特征信息的无状态[2]的指纹追踪时代. 与传统的Cookie类追踪技术相比,指纹追踪技术摒弃了在客户端存储信息的形式,而是获取了较多具有用户个人特点的、多元化的特征信息,利用一种或多种不同类型的特征信息,生成唯一的指纹,在用户无感知的情况下进行隐蔽追踪. 现阶段Web追踪领域的学术研究较多专注于某项特定的追踪或防御技术,因此,本综述针对Web追踪领域的技术发展和研究进行了总结和分析,并讨论了现有技术发展的优劣势,对该领域的下一步研究方向进行了展望.
本文研究了2010—2021年期间Web追踪领域的技术发展,按照实现机制将Web追踪技术分为了存储型追踪技术和指纹型追踪技术,从追踪技术的起源、技术实现、发展现状等多个角度进行介绍分析. 着重分析Web追踪及防御技术的研究及实现方案,将Web追踪技术按照追踪范围划分为3个层次,描述了不同追踪范围所使用特征的特点和获取方式. 从防御技术的不同形态进行分类介绍,对防御的技术实现进行深入分类讨论. 着眼于Web追踪和防御技术2个角度,分析其技术上的优劣性以及当前面临的挑战和问题,指出未来可能的研究方向.
本文的主要贡献有4个方面:
1)介绍了Web追踪的起源和分类,从存储型追踪和指纹型追踪2方面介绍Web追踪技术的发展和特点. 简要描述了现阶段Web追踪技术的实现和发展历程.
2)针对近些年Web追踪技术的发展进行深入调研,按照追踪范围将Web技术追踪分为了单浏览器、跨浏览器、跨设备3个不同层次. 基于追踪范围分别介绍指纹中的特征获取技术,描述指纹关联算法并对现有的指纹追踪进行讨论.
3)深入研究Web追踪防御技术,按照形态可将防御技术分为扩展防御,浏览器内嵌防御,防御框架、工具或机制、构建防御对策或环境. 分别介绍不同形态在防御技术上的实现方式,通过对比防御能力以及抵御追踪的手段,分析了Web追踪防御的现状.
4)基于Web追踪技术和防御技术2个角度分析了技术发展的优劣势,以及面临的挑战和发展方向. 在追踪技术方面进行了唯一性和持久性讨论;在防御技术方面针对防御形态和技术进行对比,分析防御技术的优缺点,并指出现有技术无法完全防止指纹追踪.
1. Web追踪概述
早期Web追踪技术的出现是为了保持用户与服务器之间的会话状态,在用户浏览器客户端中存储一定的用户隐私信息,在交互式Web中对用户进行识别和区分. 例如Cookie,FlashCookie,EverCookie,HTML5中新型的存储型API等均使用在客户端存储身份标识的方式进行追踪,我们将这种技术统称为存储型追踪技术. 2010年电子前沿基金会(electronic frontier foundation,EFF)的专家Eckersley[1]提出的一项划时代的Web追踪技术——浏览器指纹,其基于用户浏览器获取设备的软硬件特征,并结合现有的存储型追踪机制,在服务器端对用户进行唯一性识别和追踪. 随后,Web追踪领域掀起了使用各种不同类型特征信息作为指纹来追踪用户的研究热潮,我们将这类追踪技术统称为指纹型追踪技术. 依据Web追踪的发展历史以及追踪技术手段的不同,本节将Web追踪技术分为2类进行概述:存储型追踪技术和指纹型追踪技术[3].
1.1 存储型追踪技术
Cookie诞生自1993年,是使用较为广泛且最具代表性的存储型追踪技术,其最有效的功能是在网站中保持用户状态,提供用户个性化服务. 但直至2000年网络隐私权的提出,Cookie才开始引起社会的关注,之后诞生了一系列以存储关键信息为手段的追踪技术,包括FlashCookie,EverCookie,随后HTML5新技术也开放了更多的权限给开发者[4],例如增添了可直接在浏览器中进行内容存储和数据库存储的API,如表1所示. 这些存储机制也为追踪提供了更加便利的条件.
表 1 存储型追踪技术能力分析Table 1. Analysis of Storage Tracking Technology Capabilities存储型追踪 使用范围(常规浏览器) 是否跨域共享 多位置置存储 是否多浏览器共享 存储时长 其他 Cookie 全部 是(可使用前后端技术实现) 否 否 设置过期时间 安全性较低 Flash Cookie 全部 是 是 是 默认无过期时间 已弃用 UserData Windows + IE5 否 否 否 设置过期时间 已弃用 EverCookie 全部 是 是 是(使用Flash Cookie机制) 可通过各种存储机制重建 已弃用 SessionStorage 除IE8以下版本
之外浏览器否 否 否 浏览器会话时效内 安全性较低 LocalStorage 除IE8以下版本
之外浏览器否 否 否 非主动删除不过期 安全性较低 Web SQL 部分 否 否 否 无限制 已弃用 IndexedDB 全部 否 否 否 无限制 安全性较低 1.1.1 Cookie类存储技术
HTTP Cookie通常存储在Web客户端特定目录下,通过在与Web服务器的交互请求中携带Cookie值来辨别身份. 在设置并存储 Cookie 后,当用户再次登录网站时,浏览器都会检查本地的Cookie值,在Web请求中携带Cookie值发送给Web服务器. 服务器返回用户对应的个性化信息和其他权限内资源.
Flash Cookie[5]同样是记录用户浏览网页时保留的信息,是由FlashPlayer控制的客户端共享存储技术Share Object,它永久驻留在用户计算机上,使不同的浏览器共用同一个Flash Cookie,实现实时数据共享. Flash Cookie使用多个存储位置,较为隐蔽且难以清除. Flash Player在2020年已经被正式淘汰.
UserData是微软为IE浏览器专门在系统中开辟的一块存储空间,可用于对数据进行持久化存储,除非手动删除,否则即使IE浏览器被关闭或者刷新,数据也能够重新被载入而不会丢失,并且永远不会失效. 微软已经放弃了对IE浏览器的支持,将内置浏览器切换为Chromium内核的Microsoft Edge浏览器.
EverCookie[6]又称为“僵尸Cookie”,是一种更甚于FlashCookie的浏览器持久化追踪机制,它使用多达10种以上的存储机制将Cookie持久化存储在不同的位置,当在某个位置的Cookie被清除后,还可以通过其他不同位置的Cookie进行恢复. EverCookie所使用的技术不仅包含HTTP Cookie,UserData,Flash Cookie,还囊括了HTTP头中的ETags和 HTML5中的SessionStorage,LocalStorage,IndexDB,Java硬盘写入漏洞等多个存储机制. Acar等人[7]早在2014年针对EverCookie的研究中,就发现了EverCookie启用IndexDB技术进行存储,但EverCookie的野心不止于此,未来可能还会加入超文本传输协议(Hypertext Transfer Protocol,HTTP)身份验证缓存、TLS会话恢复(TLS session resumption)标识符、HTTP公钥固定(Http public key pinning,HPKP)认证等存储形式.
1.1.2 HTML5新型存储型API
Web Storage[8]是HTML5提出的存储型API,包括会话存储SessionStorage和本地存储LocalStorage,可在用户客户端保存大量的数据,数据仅存储在客户端且不与服务器产生交互,每个域都有独立的存储空间. 其中SessionStorage仅在当前会话下有效,关闭了浏览器窗口就会被销毁;而LocalStorage的生命周期是永久的,关闭页面或浏览器之后,数据也不会被清除,除非主动删除数据,否则数据永远不会消失,且2种存储机制均遵循同源机制.
Web数据库存储包括Web SQL和IndexedDB[9]2种类型,提供了在客户端直接进行数据存储的能力,理论上没有存储大小限制. Web SQL是前端的独立的功能模块,具有与实际数据库基本一致的增删改查等操作. IndexedDB是为了弥补LocalStorage存储缺陷诞生的,是浏览器提供的非关系型本地数据库. 可储存大量数据,提供查找接口和建立索引,但不支持关系型查询语句. IndexedDB使用键值对存储数据,可进行异步操作,支持事务操作,受同源限制,存储空间大,支持二进制存储.
1.2 指纹型追踪技术
指纹型追踪技术,是一种通过浏览器获取用户设备暴露给网站的可见特征信息,生成唯一标识用户的指纹,来跟踪用户的方法. 当用户访问并加载Web网页时,网站利用浏览器的能力获取设备、软件相关配置、用户个性化信息以及Cookie等存储型追踪标识等,将这些特征Hash为一个唯一值传递到服务器作为用户的唯一标识. 其依托于用户浏览器对Web网站页面的渲染和执行能力,以及设备对浏览器权限和能力的支持.
1.2.1 特征获取与指纹生成
JavaScript和HTML5[10]的API为追踪者提供了无需经过用户同意可直接获取用户设备和软件信息的能力. 例如可通过Navigator对象获取浏览器的用户代理、首选语言、是否设置不追踪(do not track,DNT)等,Screen对象和Date对象描述了浏览器所处设备的信息,包括屏幕、时区等,如表2所示.
表 2 JavaScript对象的API及对应获取的信息Table 2. API of JavaScript Object and the Corresponding Obtained InformationJavaScript对象 API 获取的信息 Navigator(宿主对象) navigator.platform 系统平台 navigator.userAgent 用户代理 navigator.language 浏览器首选语言 navigator.cpuClass 浏览器CPU等级 navigator.plugins 插件列表 navigator.doNotTrack 是否设置不追踪 Screen(宿主对象) screen.width/screen.height 屏幕分辨率 screen.availWidth/screen.availHeight 屏幕可用分辨率 colorDepth 色彩深度 Date(内置对象) getTimezoneOffset() 时区 Eckersley依托于前端语言的能力,构建了获取8项用户特征信息的指纹脚本,计算得出特征信息值至少包含18.1b的信息熵,使用Murmurhash算法[11]将8种不同特征的信息Hash作为唯一的值,指纹出现重复的概率只有1/286777. 在指纹生成后使用difflib库对指纹进行简单的关联. 通过大规模的数据收集和实验论证,结果显示指纹识别率可达到83.6%,在开启Java和Flash的情况下,指纹识别率可高达94.2%.
1.2.2 技术发展趋势
唯一性和稳定性是衡量追踪技术优劣的2大指标,指纹型追踪技术虽然弥补了一部分存储类追踪技术的缺点,减少了用户信息被窃取和欺骗的可能,但其本身存在较多不稳定因素:使用过程中的常规软件升级安装、添加插件扩展、更改分辨率、网络配置等均会影响指纹的唯一性和稳定性.
业界内也面向指纹追踪技术本身的问题展开了研究,技术的发展趋向于在指纹中使用不太稳定但含有较高信息量和较多用户特点的信息,如历史记录、字体、浏览器扩展等,以及较为稳定但唯一性较低的特征,如操作系统特征、硬件特征. 指纹型追踪技术结合现有的Cookie追踪、HTML5的存储类API等存储型技术特性,来提高指纹特征包含的信息量以及指纹所具备的独特性和稳定性. 如表3所示,按照特征属性将研究中获取的特征分为了5大类:浏览器特征、操作系统特征、网络特征、硬件特征、存储型追踪标识.
表 3 指纹型追踪技术特征分类及介绍Table 3. Classification and Introduction of Fingerprint Tracking Technology Features特征分类 可利用特征 变化因素 获取方式 浏览器特征 用户代理(user agent,UA) 随浏览器升级而变化,短期内稳定 API 语言 与用户设置相关,相对稳定 API 字体 与系统安装字体相关,不稳定 枚举探测 历史记录、浏览器缓存 随用户使用习惯变化,可清除,不稳定 枚举探测 插件 随系统安装软件变化,不稳定 API 扩展 随用户喜好和使用率变化,不稳定 枚举探测 操作系统特征 操作系统类型 与系统安装相关,较为稳定 API 时区 与用户设置相关,相对稳定 API 主机缓存 与用户行为相关,短期内相对稳定 枚举、间接利用 网络特征 公网IP 与网络环境相关,不稳定 HTTP头获取 内网IP、内网主机信息及开放端口 与内网环境相关,不稳定 漏洞利用、枚举探测 TLS会话追踪 与网站和浏览器设置相关,相对稳定 攻击利用 硬件特征 硬件平台、分辨率、色彩深度 与硬件本身相关,短期内无变化,较为稳定 API CPU、GPU、音频、电池 与硬件属性和性能相关,较为稳定 API、测量获取 用户交互特征 是否设置“不追踪”、鼠标键盘记录 与用户操作相关,不稳定 算法分析 存储型追踪标识 Cookie、HTML5存储型API 与用户操作相关,可清除,相对稳定 API 浏览器指纹技术的发展同样也带来了新的用户隐私问题,因此Web追踪防御技术迎来了技术的发展热潮. 研究学者们从使用安装扩展、防御框架、工具,以及浏览器内嵌防御等不同的形态和方式着手,针对性缓解一种或多种的指纹特征获取技术,减少被持续追踪的可能性,防止用户隐私被泄露. Web追踪技术和防御技术在不断对抗中快速发展,但技术的成熟还面临着诸多的问题和挑战.
2. Web追踪技术
指纹型追踪技术已经将存储型追踪技术以及常用于溯源的IP地址、网络等信息纳入了指纹的特征范畴,且指纹型的特征信息获取技术已经从单纯的API调用,延伸到了使用枚举、测量、漏洞利用等手段获取用户设备上的各种硬件和软件信息[12],以及使用指纹关联算法延长追踪持久性. 本节着眼于Web追踪技术的追踪范围,首先将Web追踪技术分为单浏览器追踪、跨浏览器追踪,跨设备追踪3个不同层次,针对较为复杂的特征及获取方式(不可通过API调用获取的特征)进行介绍. 同时介绍了可有效弥补了指纹中追踪唯一性的不足的指纹的关联技术,以及特征与追踪范围之间的关系.
2.1 单浏览器追踪
浏览器作为Web的入口,也是信息被暴露的直接出口. 基于Web浏览器所包含的用户特点、浏览器引擎及其所依赖的硬件条件,实现对用户浏览器的唯一标识,即浏览器范围内的用户追踪.
2.1.1 含有较为丰富信息的特征
近些年的Web浏览器追踪的研究热点集中在利用含有较多用户个人特点,且具有高信息熵的特征来产生较为稳定和持续的指纹,例如扩展、字体、历史记录、浏览器缓存等. 这些特征可在一个浏览器内实现对用户的追踪.
1) 历史记录
Felten等人[13]介绍了一种可以损害用户浏览器历史记录隐私的攻击,使得恶意网站可以嗅探用户对其他站点的访问[14],测量用户浏览器执行某些操作所需的时间来确定用户的浏览历史记录,进而对用户身份去匿名化,例如利用社交网站上可用的组成员身份信息唯一地标识此人,或者显著减少候选人集[15].
利用层叠样式表(cascading style sheets, CSS)中:visited样式表对页面中嵌入的“已访问”和“未访问”的地址链接(uniform resource locator, URL)颜色进行差异表示的漏洞[16],能够对一定数量的URL地址进行枚举,获取用户的访问列表. Janc等人[17]基于链接样式显示区别,使用了3种方式对历史记录进行嗅探,包括直接利用链接访问样式差异、间接为已访问链接和未访问链接设置不同渲染图片、时序攻击. Olejnik等人[18]通过大规模数据研究论证了69%用户的浏览历史是唯一的,且奇异值大于18b,具有较强的稳定性. 随后Yan[19]在圣地亚哥的安全会议Toorcon上示范了利用HTTP严格传输安全协议(Http strict transport security, HSTS)和内容安全策略(content-security-policy, CSP)2种安全策略探测历史记录的漏洞工具,并将其命名为Sniffly. Smith等人[20]提出了4种新的历史记录嗅探攻击:CSS Paint API、CSS 3D transforms、fill-coloring of SVGs构造链接点击攻击、字节码缓存攻击,并针对主要浏览器和具有安全防护性的浏览器进行了攻击测试,发现依然可以取得很高的信息泄露率. Huang等人[21]在Smith的方法技术上引入了多个辅助环节的自适应方法,并采用动态参数搜索算法对Smith方法进行了改进,实验结果表明,在最流行的操作系统和平台上的5种主要浏览器上,该自适应方法能够达到近100%的精度.
2)字体
Eckersley使用Adobe Flash和Java虚拟机(Java virtual machine, JVM)来探测系统中安装的字体的完整列表,并且在可检测字体的浏览器中,排序后字体的熵值为16.0. Boda等人[22]从将字体作为指纹的一个输入项的角度,分析了JavaScript的字体检测,发现字体列表可以为识别提供坚实的基础,并且论证了IP地址、特定字体集、屏幕分辨率、时区足够唯一的识别5种流行的浏览器. Fifield等人[23]指出浏览器中的字体渲染受到浏览器版本、安装字体以及抗锯齿设置等多方面的因素影响而导致,作者提出了一种基于测量字体字形的屏幕尺寸来对字体进行枚举,证实即使是相对较粗糙的测量字形边界框的工具也可以产生很强的指纹,且设备上的字体信息可用于识别已安装的应用程序以及操作系统的类型和版本[24].
3)扩展
用户安装浏览器扩展本意是为了更便捷地服务,或更好地防止用户隐私泄露,但扩展的可枚举性在无形之中为用户带来更多被泄露的隐私. 相比其他含有丰富信息量的特征,扩展能够为研究学者提供较为确定的结果,且便于进行大规模的数据研究.
依据对扩展检测方式的不同,可以将枚举探测分为2类:静态探测和动态探测. 静态探测通过枚举扩展ID、Web可访问资源(Web accessible resources,WAR)或通过URL泄露来探测扩展. 通过在用户浏览器中对扩展ID的既定路径进行探测[25],可枚举浏览器中的扩展. 在Firefox使用随机化ID的方式来避免扩展被探测的情况下,依然可以通过检测扩展的WAR路径判定扩展是否存在[26],识别90%的扩展[27]. Sanchez-Rola等人[28]讨论了统一资源标志符(uniform resource identifier,URI)泄露技术,颠覆Safari中实现的URI随机化机制,影响了多达到40%的Safari扩展. 动态探测方式主要通过监控扩展在页面上做出的改变,判断扩展是否存在. XHOUND[29]通过量化监测扩展在页面文档对象模型(document object model,DOM)做出的修改进行探测和识别,这是第1个对浏览器扩展进行指纹识别的全自动系统. Karami等人[30]基于已有检测WAR路径和页面DOM独特修改2种技术,结合传出HTTP请求和浏览器内部信息交换这2种新颖的扩展检测方式,构建了一个基于行为扩展的全自动创建和检测指纹的工具Carnus,并且使用Carnus创建了迄今为止最大的扩展指纹集. Laperdrix等人[31]利用扩展在Web页面注入CSS规则的操作,提前在Web界面中注入CSS规则,通过检测碰撞对扩展进行枚举,这种方式可以识别之前技术中未检测出的1074个扩展. 浏览器扩展枚举技术研究进展汇总如表4所示.
表 4 浏览器扩展枚举技术研究Table 4. Researches on Technologies of Enumerating Browser Extension研究技术 扩展数据集 技术形式 功性能 XHOUND[29] 10000个最流行的Google Chrome扩展 对页面DOM进行的独特的
修改进行检测几秒钟内对数十个扩展进行指纹识别 Discovering Extensions
via WARs[26]43429 个Chrome扩展 通过Web可访问资源,
检测扩展是否存在可检测前1000个免费的Chrome扩展中的50%以上和所有Chrome扩展的28% Extension breakdown[28] 718个Safari扩展 URI泄露技术 可识别40%以上的Safari扩展 Latex Gloves[27] 62994个Chrome扩展,
8646个Firefox扩展WAR检测,以及检测扩展
在网页中注入的代码能够识别90%的内容注入型扩展 Carnus[30] 29428个可检测的
Chrome扩展4种不同的检测技术 83.6%~87.92%的指纹在最先进的对策下仍然有效 Fingerprinting in Style[31] 116485 Chrome扩展 注入CSS的枚举插件Extension 可识别4446个扩展,且有1074个扩展(24%)未被之前的技术识别 4)API属性枚举和检测
Nikiforakis等人[32]证实了在不同浏览器家族、版本中,甚至在不同操作系统中相同的浏览器版本中,特殊对象的属性枚举顺序始终是不一致的,这种不一致性可以作为识别用户的依据来对用户进行追踪,基于此提出了一种基于浏览器JavaScript对象属性枚举的指纹追踪方法. Mulazzani等人[33]通过分析浏览器是否符合JavaScript标准,检测其支持的功能,从150多种浏览器和操作系统组合收集的数据集中,计算出了需要运行的最小测试集,以唯一地标识每个组合.
即便JavaScript被禁用依然能够对用户进行指纹追踪[34],利用CSS不同的API属性在不同渲染引擎中的展现形式的差异,使用字符串请求、媒体查询、字体规则检测等技术,收集浏览器的类型、版本、设备屏幕分辨率、字体等信息来生成指纹. Schwarz等人[35]提出了2种新的侧信道攻击来检测指令集体系和使用的内存分配器,使用一种完全自动化的手段发现由环境引起的浏览器引擎的细微差别. JavaScript引擎的固有性能签名也能够在传统形式的系统标识(例如用户代理标头)被修改或隐藏的情况下,检测浏览器版本、操作系统、微体系架构等信息[36].
5)浏览器缓存信息利用
Solomos等人[37]将网站头像(favorites icon, favicons)作为强大的跟踪向量,向量中的每一位对应用户在1个特定子域上的图标请求,将该信息生成32b跟踪标识符,唯一标识和追踪用户. Bansal等人[38]使用了细粒度的超时和HTML5 Web Workers来对网站进行并行化缓存探测,并在缓存请求中使用超时以防止缓存污染提高攻击效率,证实了缓存定时攻击的适用性和有效性.
6)交互式特征
文献[39-41]监控和跟踪鼠标的移动和点击,捕获用户与Web应用程序交互时的鼠标操作,推断用户输入的URL,评估Web应用程序的有用性和易用性[42],推断用户注意力变化,对定量数据进行预测. Lipp等人[43]介绍了通用按键定时攻击,能够使攻击在后台选项卡或最小化的浏览器窗口中运行,以此观察到用户个人识别码(personal identification number,PIN)或密码的确切击键时间,推断用户输入的URL,区分分时共享计算机的不同用户.
2.1.2 较为稳定的高级追踪特征
近些年陆续出现的Canvas指纹、WebGL(Web graphics library)指纹、Audio指纹是当前被广泛使用的且较为稳定的指纹追踪方式. 这些追踪技术依赖于设备的硬件性能,但会受浏览器的影响.
1)Canvas指纹
2012年Mowery等人[44]提出了Canvas指纹,揭露了不同硬件设备对字体和文本的图片场景渲染的差异性. Canvas图片处理依赖于浏览器图像处理引擎、压缩等级和导出选项,因此在不同设备上的绘制的图案会有细微的差别,可以被用来为不同的用户分配特定的编号. 使用Canvas技术在用户浏览器上进行隐秘的绘画,调用toDataURL()方法将图片转化为base64编码的字符串,其中编码后字符串的最后一块是可作为用户唯一表示的32b的循环冗余校验码(cyclic redundancy check,CRC). 截至2014年,Acar等人[7]调研发现在Alexa 前10万的网站中已经有5%在使用Canvas指纹,且Canvas指纹追踪在网站的二级页面中比在网站的首页中可能更多[45]. Laperdrix等人[46]也进行了大规模的Canvas指纹测试,论证了Canvas是最有区别性的指纹. 但Canvas指纹含有一定的碰撞率,Daud等人[47]通过网站测试研究,论证了不同操作系统和相同机器规格下,Canvas指纹识别值并不唯一. Canvas指纹的生成不会引起用户的注意,因此其已较多应用于网络安全领域[48].
2)WebGL指纹
WebGL指纹和Canvas指纹原理基本相同. 通过HTMLCanvasElement元素可以获取到WebGL对象canvas.getContext("webgl"),基于WebGL的API接口(例如:WEBGL_debug_renderer_info)获取用户的硬件信息,比如显卡名称、显卡型号、显卡制造商等. 只不过3D图像会和WebGL的某些属性值绑定在一起(比如显卡提供商、显卡型号、压缩等级等)拼接成很长的字符串,Hash后获得一个缩减过的信息量,保留具有信息差的字符串作为WebGL指纹.
3)Audio指纹
Englehardt等人[49]发现了一种通过音频为设备生成指纹的方法,即音频(audio)指纹. 操作系统提供了专门处理音频的接口AudioContext API,该API可以调用振荡器接口OscillatorNode来产生周期波形,然后调用信号处理模块将信号压缩,再通过实时频域和时域分析(time domain analysis)转换为频率域,最后生成指纹. 音频指纹与Canvas指纹类似,因浏览器和以及处理音频信号硬件的细微差别,产生不同的音频结果. 2016年,Englehardt等人[50]使用OpenWPM在Alexa前100万的网站中进行了测试,发现当前只有少数网站使用了音频指纹.
2.2 跨浏览器追踪
浏览器在接入网络时,都需要调用系统中的硬件、网络等信息获取网站内容资源并进行渲染. 获取系统和硬件层面特征的能力是所有浏览器的共性,可为攻击者提供更多获取设备信息的渠道,因此跨浏览器追踪也可称为设备追踪. 通过测量硬件特征、枚举缓存和网络信息,能够实现对用户的跨浏览器的标识和追踪[51],也为指纹追踪提供了更多的稳定性.
2.2.1 基于硬件信息的设备追踪
设备硬件信息具有较强稳定性,尤其是硬件属性信息几乎不会发生改变. 不同设备的硬件在提供特定功能时,往往会输出特定的属性信息,以及不同的功性能表现. 通过获取或测量设备硬件的运行差异性,提取其较为稳定的特征项,作为设备唯一标识的特征信息.
1) GPU特征信息
利用WebGL的API接口能够获取用户的硬件属性信息,比如显卡名称、显卡型号、显卡制造商等. 文献[52]基于设备的GPU时钟频率、GPU时钟偏差来对设备进行GPU指纹识别实验,论证了GPU的硬件特征不仅能够区分不同硬件配置的设备,甚至能够区分具有完全相同硬件配置的设备.
2017年,Cao等人[53]提出了一种依赖于设备操作系统和硬件功能的指纹识别技术,使用WebGL API呈现31个不同的计算机图形任务(包括纹理、反锯齿、线条、光线、音频、视频、旋转、语言库等不同类型和角度),然后从测试任务中提取信息Hash成指纹. 该指纹不仅支持单浏览器追踪,还支持跨浏览器对用户进行追踪. 即使用户切换浏览器,也能够唯一标识设备.
2) CPU特征信息
利用对浏览器进行基准测试可以推断用户设备的CPU中是否存在AES指令集(aes-ni)和英特尔睿频加速技术(turbo boost)2种扩展[54]的理念,Saito等人[55]使用侧信道技术识别了CPU的内核数、超线程技术(hyper threading technology)可用性、SSE2指令集(streaming SIMD extensions2)可用性、ASE-NI可用性以及CPU系列类型等信息. Schwarz等人[35]利用由环境引起的浏览器引擎的细微差别,自动化识别浏览器属性推断主机系统信息.
3)音频特征
频域在不同的浏览器中是不同的[53],因此Audio指纹会受浏览器的影响,不能完全反映出声卡的特征. 但是频率和峰值的比在浏览器之间是相对稳定的,在频率和值的坐标系上创建一个间距很小的列表,并将峰值频率和峰值映射到对应的表格项. 这种情形下的列表可用于跨浏览器的特征.
4)电池损耗度
Diaz等人[56]发现可利用火狐浏览器在Linux上提供的高精度读数发现用户的电池容量,实现短时间内跟踪网络用户,且旧电池容量或用过的电池的风险更高.
5)引擎性能监测
使用计时API函数获取指令序列的执行时间来计算硬件指纹,能够在同类场景以及异构场景中区分完全相同硬件和软件的计算机集[57].
2.2.2 基于网络信息的设备追踪
IP地址作为用户接入网络的“地址编号”,是在对用户进行Web追踪时非常重要的信息. 设备接入Web所使用的公网出口IP、内网IP和内网拓扑信息都有可能被用作用户追踪和分析的有效手段.
1) IP地址及内网拓扑
Mishra等人[58]论证了公网IP地址仍然是在线跟踪的主要载体,87%的参与者至少保留1个IP地址1个月以上. 文献[59-60]基于网页即时通信(web real-time communication,WebRTC)可获取内网IP地址的漏洞[61],提出了基于浏览器网络扫描器BrowserScaner,依据网络响应信息判断内网拓扑和内网主机存活情况,甚至能够探测活动节点的开放端口.
2)TLS会话
Sy等人[62]提出了一种可以将跟踪周期延长到会话恢复机制的生命周期之外的“延长攻击”,证实了通过TLS会话恢复能够跟踪用户平均长达8天的时间. 而TLS1.3草案使得至少65%的用户可由至少一个网站永久跟踪.
2.2.3 基于缓存信息的设备追踪
对缓存中的敏感地理位置实行推断攻击[63],可跟踪用户所处的国家和城市. Klein等人[64]利用可控的域名解析服务器(domain name system,DNS),为每个用户分配唯一的DNS解析记录,基于用户主机的DNS缓存机制,实现对用户的追踪,克服浏览器的“隐私模式”. 作为Internet的重要组成部分,许多网络应用提供商使用内容分发网络(content delivery network, CDN)部署的大量缓存代理,因此能够使攻击者获得缓存数据的未授权访问的Web缓存欺骗[65],使大量网络用户处于危险之中.
2.3 跨设备追踪
跨设备追踪(cross device tracking, CDT)[66]分为确定性追踪和概率性追踪,确定性跨设备追踪主要通过邮箱、手机号等登录账户实现跨设备追踪;概率性跨设备追踪则借鉴和分析了用户历史记录、行为等信息,实现统计学上的关联. 本文只讨论概率性的跨设备追踪.
2.3.1 跨设备特征分析
当前的追踪手段往往使用多种技术相结合进行综合性的用户追踪,且移动端对HTML5的支持相较于桌面客户端更为迅速且全面,因此用于指纹追踪的特征绝大部分可同样在移动端获取.
文献[46,67]对桌面设备和移动端设备进行了指纹研究,虽然移动端缺失了字体和插件2个较为有区别性的特征,但依然具备81%的指纹独特性,并且HTTP标头和 HTML5的Canvas指纹[59,67]在识别这些设备的浏览器方面起着至关重要的作用. 文献[68]证实了大部分网站与第三方网站定期收集的Cookie、IP、位置、行为数据等信息相同,而这些信息可允许第三方将多个设备与持续性的标识符关联起来. Kane等人[69]研究了用户在不同设备之间的信息共享方式和访问网页活动的重叠度,论证了信息共享的便捷性可提高移动网络的可用性.
Karakaya等人[70]总结了用于概率跨设备定位的常见物理和行为特征,分析了16个跨设备追踪的学术研究,其认为对行为模式的探索是实现概率跨设备跟踪的关键. 例如常用的属性是 URL 地址,以及通过该 URL 访问的内容或访问的网站和应用程序的上下文信息. 从站点内容或上下文分类中提取的自然语言处理(natural language processing,NLP)特征对跨设备匹配非常有用.
2.3.2 跨设备追踪方案
我们对常见标识符进行了大规模探索,并量化了它们揭示的主机识别信息的数量.
使用来自 Hotmail 和 Bing 的长达1个月的数据集,Yen等人[71]验证了通用标识符(包括用户代理、IP、Cookie、登录ID等)可以帮助以高精度和高召回率跟踪主机. 通过跨主机聚合信息,发现了超过 75000个将 Cookie 转发到分布式位置的机器人账户相关的隐蔽恶意攻击. Zimmeck等人[72]展示了一种检测跨设备跟踪发生的方法,基于从126位互联网用户收集的跨设备跟踪数据集,探索并论证了用户设备的IP地址和互联网历史记录的相似性能够将移动设备连接到桌面设备的数据集中,其匹配率为0.91. Díaz-Morales[73]提出了一种基于半监督机器学习方法来处理用户跨设备识别的解决方案,以识别哪些Cookie属于使用设备的个人.
2.4 指纹关联研究
指纹动态变化原因可分为3大类:浏览器或操作系统更新、用户操作更新和环境更新[74]. 指纹的不稳定性能够通过选取较为稳定的特征来进行缓解和弥补,但依然不能实现对用户长期追踪. 因此研究学者设计了指纹关联算法作为另一个使追踪更加持久化的手段.
当前的指纹关联研究均使用相似度分析对指纹进行关联度判定,也用以证明持续追踪的可能性[75]. 其中文献[76]引入了指纹的辅助属性判定,使用专家打分法和编辑距离计算相似度,文献[77]在此基础上提出了一种高性能的指纹识别模型,将存储型追踪标识符作为指纹关联的重要依据. 文献[78]通过实验证明了计算机在运行特定程序时产生的不同的CPU图形,可在指纹关联时辅助解决其他属性易被伪装的问题. 文献[79]提出了使用规则和算法进行关联的FP-STALKER,其可追踪浏览器54.48天,并且26%的浏览器能被追踪超过100天. 文献[80]针对安卓(Android)设备中的指纹进行了研究,提出了基于双向循环神经网络(recurrent neural network,RNN)的指纹识别模型.
但是关于指纹中特征组合和识别精度之间的相关性研究较少,文献[81]使用了在网站上收集的9457个指纹样例,来计算不同特征组合的识别精度. 与电子前沿基金会的结果相比,在Windows,Mac,iOS,Android系统上的测试,分别实现了1.006%, 3.894%, 7.456%,3.840%的识别精度提升.
2.5 追踪分析讨论
存储型追踪技术可以服务于所有范围的追踪,关联算法需要定向依据追踪技术的不同进行算法的改进和升级. 按照追踪的范围,发现跨设备追踪和跨浏览器追踪所使用的特征均可应用于单浏览器追踪. 跨浏览器追踪层面较多使用设备硬件等稳定且不易变化的特征,跨设备追踪本身的特殊性无法使用稳定的设备特征进行关联,但具有较多用户个人特色的历史记录、交互性特征可作为对同一用户不同设备进行分析和关联的重要特征.
一些研究学者对现有的指纹追踪进行检测[82-84],进行了大规模分析[85],评估其在全球范围内的使用情况,当前某些指纹追踪技术应用较为广泛,但是在实际生活中,较多的网站厂商使用一种或多种指纹追踪技术,隐秘地进行大数据杀熟、价格歧视[86]等操作. 且指纹可能被攻击者恶意利用,基于指纹的某些特征获取技术实施攻击和漏洞利用,窃取用户敏感信息. 这在一定程度上为用户造成了极大的隐私安全风险.
3. Web追踪防御技术
Web追踪防御技术是用户隐私保护大趋势下的必然发展方向. 传统的用户自我保护措施主要是禁用Cookie,设置DNT选项,使用虚拟专用网络(virtual private network,VPN)或HTTP代理、隐身浏览模式、隐私保护类扩展等方式来阻止广告追踪. 但这些方式依然无法阻挡指纹中多种多样的特征获取和追踪. 近些年的Web追踪防御技术大多集中在与指纹型追踪的对抗方面,本文按照防御技术的形态对当前研究进行了分类,并对使用的抵抗手段进行对比.
3.1 扩展防御
基于浏览器的扩展中,广告拦截器和内容拦截器比跟踪器拦截器的使用更广泛[87]. 且使用安装扩展形式的防御技术,能够在不影响用户整体使用习惯和环境的前提下,增加对Web追踪的防御能力.
早期的追踪防御技术大多着眼于隐藏和修改敏感信息,即通过干扰真实信息的方式来避免追踪. 例如TrackMeOrNot[88]扩展提供了与供应商共享足迹的选择权,依据用户指定的隐私要求有选择地向供应商披露自身活动. Torres等人[89]开发了一个原型工具FP-Block,在允许常规追踪的前提下,对抗基于跨域指纹的跟踪,确保任何追踪者在每个站点上都会看到用户不同且不相关的指纹,使指纹追踪无法再在网络上对用户进行持续性跟踪. Al-Fannah等人[90]发现大约有69%的网站可能涉及第一方或第三方浏览器指纹识别,且第三方浏览器指纹识别占据了很大比例,因此设计了FingerprintAlert来检测(可选)并阻止所访问网站的指纹尝试.
针对扩展信息泄露问题上,Latex Gloves[26]基于Web代理在网页和扩展之间进行控制,使用白名单的方式精细化地设置允许将哪些扩展程序加载到页面中,以应对使用WAR探测和ID枚举进行扩展识别. 但白名单的获取目前没有官方渠道,需通过用户自行判断设置. Starov等人[91]设计并开发了浏览器扩展程序BrowsingFog,通过不断评估用户的浏览习惯并模拟对随机类别网站网页的访问,从而将用户的真正兴趣隐藏在不相关信息的“雾化”中. 这是一种假设用户存在1个或多个浏览数据泄露扩展的情况下保护用户隐私的方法.
Canvas Blocker[92]是防止Canvas指纹的Firefox扩展,通过更改使用Canvas 2d, WebGL, Audio, Screen等API获取信息的值,欺骗追踪者对真实信息的获取. 除此之外,还使用了黑白名单机制对网站追踪进行允许和拦截. Canvas Deceiver[93]也是抵抗Canvas指纹的浏览器扩展,在网站发出请求调用画布指纹识别JavaScript文件时,拦截请求并提供脚本的修改版本,修改版本的脚本行为方式与原始版本相同,但使用了一个持久的、预先确定的字符串欺骗使用Canvas指纹的追踪者.
Leiva等人[94]提出了一种对抗性噪声方法,减轻利用鼠标光标大规模捕获用户行为数据,来跟踪预测人口统计变量的用户分析技术,并发布了数据和实现对抗性方法的Web浏览器扩展.
3.2 浏览器内嵌防御
现有防御技术存在修改现有浏览器,通过在浏览器中内嵌防御机制提升浏览器本身的防护能力的方式,提供更深层且更加全面的防护效果,我们称之为“浏览器内嵌防御”. 内嵌防御着眼于缓解或拦截特征信息的获取渠道,或防止指纹被关联,破坏持续追踪.
TrackingFree[95]是第1个反跟踪缓解唯一标识符的浏览器. 其没有禁用唯一标识符,而是将它们隔离到不同的浏览器主体中,使得标识符在不同网站之间不是唯一的,从根本上切断第三方Web跟踪的跟踪链. Laperdrix等人[96]开发了一个名为Blink的应用程序原型,探索了软件组件本身的多样性,利用虚拟化和模块化体系结构在多个级别自动组装和重新配置软件组件,修改平台指纹中展示的指纹,实现针对浏览器的移动目标防御指纹追踪. 经过在数千个平台中的测试和验证,Blink可使用户展示不同的指纹,甚至欺骗商业性的指纹脚本. Baumann等人[97]演示的防指纹策略可在不停用Flash指纹的情况下对其进行保护,并提供稳健且不易检测的反画布指纹(anti-canvas fingerprinting),在不使浏览器失去可用性的前提下,使用大量的真实信息来隐藏系统和浏览器属性. Yu等人[98]提出了一种基于k匿名(k-anonymity)方法的新技术,识别有可能唯一地标识单个用户的数据元素,并将其从请求中删除. 通过使用Cliqz浏览器和Cliqz扩展程序进行大规模在线跟踪研究,发现其中所访问页面的95%包含对潜在跟踪者的第三方请求,而78%试图传输不安全的数据,单个追踪最多可以达到德国所有页面访问的42%. 随后研究团队发布了对跟踪请求中用户标识符的算法检测[99],使用了2周内来自20万德国用户,涵盖了超过350000个不同站点的2100万次页面访问,结果彰显出了不同地区之间的追踪差异性,以及追踪厂商在不同地区市场上的差异. 同时也证明了谷歌和Facebook无处不在.
Starov等人[100]将完全不需要扩展功能的页面修改称为扩展膨胀. 经过分析来自Google Chrome商店的58034个扩展,发现有5.7%的扩展膨胀是不必要的,且这些扩展中的61%是唯一的,可以被滥用进行指纹识别. 为了保护用户免受由于膨胀引起的不必要的扩展指纹侵害,Starov直接修改Chromium,设计和实现了一个浏览器内的机制,为所有网站中的扩展提供粗粒度的访问控制. 该机制使用Chrome内置的企业策略特性,不仅可以保护用户不被指纹识别,还可以防止恶意扩展程序从敏感网站窃取用户数据.
FPGuard[101]是一种运行时指纹检测和预防方法,包含检测和预防2个阶段. 首先通过9种度量标准来检测网站中与指纹相关的活动,计算可疑分数,如果该分数超过特定阈值,将网页标记为指纹识别器,并将网站URL以及对应的度量标准存储到黑名单数据库中. 然后使用包含4个核心引擎(objectRand,pluginRand,CanvasRand,fontRand)的随机化技术,对属性值进行随机化修改. 例如objectRand引擎在运行时生成随机对象实现对象属性随机化,pluginRand引擎将不存在的虚拟Plugin和MimeType对象添加到浏览器的当前插件和mimeTypes列表中,以更改列表的顺序. FPGuard结合了随机化和过滤技术,在用户每次访问网页时更改指纹,这种方法可以有效地识别和缓解与指纹相关的活动,并将正常网页与异常的含有指纹追踪的网页区分开.
破坏指纹的可链接性可以防止指纹的关联,即阻止多次访问的指纹链接同一指纹的能力,破坏指纹的稳定性后,追踪器也难以跨浏览会话关联指纹. 基于此Nikiforakis等人[102]提出了利用随机化破坏可链接性来消除无状态跟踪的PriVaricator. 通过评估几个系列的随机函数来寻找可以在指纹预防和破坏现有站点之间达到最佳平衡的函数,进而集中对字体和插件相关的属性进行随机化. 在没有明显开销的情况下,可有效防止指纹的追踪,且对Alexa前1000个站点的内容造成的损害也最小.
Laperdrix等人[103]提出了基于Firefox的修改版FPRandom,通过“破坏”随时间推移的指纹稳定性减轻指纹追踪的风险. FPRandom在Firefox浏览器功能的计算中增加了随机性,为每个浏览会话提供略有不同的结果,其主要针对Canvas指纹、Audio指纹、通过JavaScript属性顺序对浏览器进行追踪的指纹. 主要缓解方法有:1)在CanvasRendering Context2D类的ParseColor函数内部引入随机性,在SetFont函数中将脚本设置的字体更改为操作系统中的字体;2)在AudioContext模块的AudioNodeEngine的AudioBuffers的核心中引入微小的噪声,使指纹脚本产生不同的Hash值;3)修改Firefox的jsiter类,激活浏览器中的特殊标志“JS MORE DETERMINISTIC”,通过在每次启动浏览器时生成唯一的枚举顺序来缓解指纹追踪.
3.3 防御框架、工具或机制
立足于用户的设备和浏览器的差异性,除重写指纹值外[104],一些研究学者设计了一些更高层次、更重型的防御技术,例如构建防御框架、进行属性重组和选择的工具或者一些深层的防御机制,来有效地防御指纹追踪.
基于WebGL指纹识别中的渲染差异是由浮点操作引起的,因此Wu等人[105]提出了一种称为UNIGL的新型系统. UNIGL重新定义了所有浮点操作,显式地用OpenGL着色语言(OpenGL shading language, GLSL)程序编写或由WebGL隐式调用这些浮点操作,实现了重写GLSL程序并在现有WebGL功能的支持下制作统一的WebGL渲染过程,来减轻指纹识别因素的影响. 经过众包测试评估表明,UNIGL可以通过合理的帧率(frames per second,FPS)防止基于WebGL的最新指纹.
Jueckstock等人[106]编写1个少于600行的补丁,完成了一个托管在Chrome浏览器的JavaScript引擎(V8)内部的动态分析框架VisibleV8. VisibleV8保存了网站使用JavaScript的所有数据,并为网站创建“行为配置文件”,研究人员可使用该配置文件以及所有支持数据来识别网站中使用JavaScript破坏Web浏览器和用户信息的行为. VisibleV8隐藏在JavaScript本身的引擎中,其性能优于同等内嵌式的安装模式,并且拦截了内嵌安装无法阻止的访问. 这种全面的覆盖模式可以隔离和识别使用JavaScript代码检测46个JavaScript命名空间和浏览器平台. 在补丁中只有67行修改了V8的现有行为,因此VisibleV8是非常轻量且易于维护的.
FPSelect[107]是一个属性选择框架,允许验证者调整指纹探针以进行Web身份验证,这种方法使用指纹的成本较低,并且达到了针对字典攻击的最低安全级别. 其根本是将问题转化为搜索满足安全要求并最小化可用性成本的属性集. 通过对其安全性和可用性进行比较,FPSelect生成的指纹属性集大小减小了97倍,收集指纹的速度提高了将近3361倍,而2次观测之间的属性变化平均减少达7.2倍.
随后Andriamilanto等人[108]开发了一种属性选择工具BrFAST. 它搭载了FPSelect算法,从数百个可用属性中选择要实施的属性,根据安全性和可用性之间的权衡来严格选择浏览器指纹属性. BrFAST还可以扩展为使用其他参数、其他属性选择方法,其他安全性和可用性度量或其他指纹数据集,有助于在搜索要使用的最佳属性时可视化对可能性的探索,比较属性集的属性以及比较几种属性选择方法.
当前研究针对跨设备的防御较少,2018年,Solomos等人[109]设计了一种通过模拟最终用户的真实浏览活动来触发CDT的方法,然后利用先进的机器学习工具对其进行检测和测量. 随后Solomos等人[110]设计构建了一个CDT测量框架——TALON,基于模拟用户在不同设备上的真实浏览活动来触发和检测跨设备定向广告,检测CDT并测量影响其性能的因素. 多项关键实验证明,该框架能够检测和测量平均 ROC(receiver operating characteristic)曲线下的面积(area under curve,AUC) 得分为0.78~0.96的CDT,还能够提供有关 CDT 实体行为和对用户隐私影响的重要见解. TALON能够成为隐私研究人员、政策制定者、用户的重要工具,来提高广告生态系统使用的跟踪实践的意识和透明度.
3.4 防御对策或环境
指纹型追踪在用户正常网站会话中以静默方式获取属性的组合来识别浏览器,从而确定该浏览器的用户. 与之前的在指纹信息获取后进行阻止或欺骗的防御方式不同,构建一种防御机制或者用户使用环境,能够在浏览器特征被获取的层面进行信息的统一化或者随机化,即从信息产生的源头进行防御.
CloakX[111]是一个基于客户端的防指纹对策. 通过在客户端重写扩展名且以与扩展名无关的方式运行,使客户端信息多样化. 可以防止使用锚定标记(由任何网页均可直接访问的工件组成的指纹)进行扩展检测,并降低使用结构指纹(根据扩展程序行为构建的指纹)进行扩展检测的准确性. 经过大规模自动化分析和深入的手动测试,评估CloakX在18937个扩展名上的功效以及启用CloakX的扩展的性能,证明了CloakX原型可以成功处理大多数浏览器扩展.
Gómez-Boix等人[112]提出一种缓解指纹追踪对浏览器配置及其运行环境进行信息收集的方法. 先使用算法识别易于共享相同或相似指纹的设备,并为其提供新的非唯一指纹. 然后在虚拟化的docker容器中,使用该指纹组装和运行Web浏览器,最终使得同一个集群的所有设备均运行使用同一个指纹的Web浏览器. 通过为用户提供一个通用的共享指纹的配置,最大程度地减少设备的可识别性和Web浏览器配置中的更改次数.
Web追踪防御技术的飞速发展是在信息爆炸式发展、用户隐私意识增强的社会条件下的必然发展趋势. 如表5所示,不同类型的防御方式也各自存在其自身的局限性. 例如用户对不同防御形态的接受度、防御实现技术对Web生态造成的影响、可能存在的对用户体验度的影响等. Web追踪和防御是相辅相成的技术,如何实现一个平衡,也是需要面对和解决的问题.
表 5 防御技术的形态与其使用的抵抗手段Table 5. The Forms and Used Resistance Means of Defense Technology防御技术 形态 抵抗手段 扩展 内嵌防
御机制框架/工
具/机制对策或
环境随机化
策略引入
噪音属性
重组重写/
欺骗访问
控制同质
环境算法 信息
隔离用户
参与FPGuard[101] √ √ √ PriVaricator[102] √ √ √ Blink[96] √ √ √ FP-Block[89] √ √ √ TrackingFree[95] √ √ Cliqz[98] √ √ √ √ TrackMeOrNot[88] √ √ 隐藏特征属性[97] √ √ Tor[113] √ √ √ √ √ √ √ BrowsingFog[91] √ √ FPRandom[103] √ √ √ √ Latex Gloves[27] √ √ PETInspector[114] √ √ FingerprintAlert[90] √ √ 抑制扩展膨胀[100] √ √ CloakX[111] √ √ UNIGL[105] √ √ docker集群组装[112] √ √ √ √ VisibleV8[106] √ √ √ Canvas Blocker[92] √ √ √ Canvas Deceiver[93] √ √ FPSelect[106] √ √ √ BrFAST[108] √ √ √ My Rules[94] √ √ 注:“√”表示防御技术具备某种形态或包含某种抵抗手段. 4. 面临的挑战与展望
Web追踪中指纹追踪技术的多样化在一定程度上满足了Web应用厂商的需求,但用户对于安全隐私的诉求也极大推动着浏览器指纹防御技术的快速发展. 本文从Web追踪和防御技术2方面分别进行剖析,分析当前Web追踪的现状,以及面临的挑战与未来可能的发展方向.
4.1 追踪技术分析
针对使用浏览器特征的指纹追踪研究(见第2节)中,包含具有较强用户特点的历史记录、扩展等类型的特征,以及依赖硬件属性和硬件功性能的较为稳定的设备特征. 但多数的指纹追踪结合使用多种不同维度的特征来提高指纹的唯一性[115].
1) 追踪唯一性讨论
Eckersley等人[1]在2周内收集了含有8个特征的470161个指纹,其中83.6%的指纹是唯一的,且在开启了Flash和Java的情况下,唯一性能够达到94.2%. Laperdrix等人[46]使用AmIUnique网站在一年中收集了包含17个特征的118934条指纹,得出89.4%的指纹是唯一的,并论证了Canvas指纹的稳定性. Gómez-Boix等人[67]在法国排名前15的一个商业网站中收集了1816776个普通用户的电脑端的浏览器指纹,经过评估得出,数据集中只有35.7%的唯一指纹,远低于过去报告的百分比.
Eckersley[1]和AmIUnique这2项大规模的数据统计,均是在通知用户了解使用指纹追踪的前提下进行收集的,其指纹的用户来源对在线隐私了解较多,相较于普通用户的操作更为谨慎,而文献[67]的指纹来源为网站中的普通用户. 通过数据对比分析,用于追踪的网站、使用的特征、地区等差异可能对数据的影响较小,但指纹收集的目标人群的差异可能会导致指纹唯一识别的有效性发生较大变化. 虽然指纹特征的信息熵能够识别足够多的用户,但在实际应用场景中,普通用户群体中指纹的唯一性远比对隐私敏感的用户低.
2) 追踪持久性讨论
虽然指纹经常变化,但依然可以在一段时间内跟踪相当一部分浏览器[116],指纹自身的稳定性是能够实现持久追踪的基本要素,而关联算法是能够实现持久追踪的关键因素. 不易变化的硬件特征信息能够有效地为指纹添加稳定性,并且可以在关联算法中作为相似性评估的重要依据. 当前的指纹追踪技术中,仅有少量的研究对追踪持久性[117]进行讨论,在指纹关联分析方面的研究较为欠缺.
部分研究学者着重于从跨浏览器和跨设备的角度实现指纹追踪,增强用户追踪的持久性. 确定性的跨设备追踪,较多依赖于用户的登录信息,因此能够具备较强的稳定性和关联性;而现有的概率性跨设备追踪的分析较多依赖于用户历史记录等不稳定的特征,用于关联分析的普适性较低,因此概率性的跨设备追踪在结合Cookie类存储标识的前提下会更加有效和稳定.
Web追踪防御技术可能会使浏览器更容易被识别[118]. 发现指纹中可能被修改的特征,将其还原成真实的特征值,加强有效的定位和追踪也是未来可能的研究方向. 例如测试套件FP-Scanner[119],能够探索浏览器中指纹的不一致性,检测潜在的更改,揭示改变的指纹属性的原始值. 如果这一结果可以被指纹识别技术利用,就能够更准确地定位使用防御技术的浏览器.
3) 挑战与展望
通过大规模的数据研究分析,可以得出指纹追踪技术的唯一性与其数据源有极强的关联关系,Web追踪领域需要一个或多个较大的指纹数据集,用于分析指纹追踪的有效性,以及关联分析研究. 在指纹追踪过程中,需要在保证指纹唯一性的同时对特征进行评估和择优选取,避免收集过多特征对数据传输和存储造成的压力.
针对指纹追踪的特征进行研究,尤其是含有较多用户习惯和交互式的特征,可为不同的用户构建稳定且全面的用户画像,或辅助Web安全领域针对恶意数据进行分析,以及对恶意行为的检测和追踪溯源等. 比如双重身份认证[120-121]和账户安全检测[122-123]、检测爬虫或者Web bot[124-125]、党派分析[126]等. 或者辅助安全研究,从访问记录中提取危险路径分析恶意URL的Web访问路径[127],将指纹应用到对攻击者的诱捕和欺骗中,实现主动的追踪溯源[128],协助网络攻击取证[129-130].
4.2 防御技术分析
尽管当前已经出现各种安装形态的、各种不同功能的指纹防御技术,但依然存在各自的劣势. 洋葱浏览器(Tor)[131]当前在匿名网络中被广泛使用,用以从多个方面防御各种不同类型的追踪技术,保护用户的隐私. 如表6所示,本文针对不同指纹防御所适用的技术进行了归类分析和概括,并结合Tor浏览器进行对比分析,指出了当前防御技术的挑战和方向.
表 6 防御技术对追踪技术的防御覆盖度Table 6. The Defensive Coverage that Defensive Technology Possessed to Tracking Technology防御技术 基本特征 IP Cookie Canvas
指纹WebGL
指纹Audio
指纹历史记录 字体 扩展 缓存 硬件信息 JS属性
枚举检测TLS会话 交互式
追踪FPGuard[101] √ √ √ PriVaricator[102] √ Blink[96] √ √ √ √ FP-Block[89] TrackingFree[95] Cliqz[98] √ √ √ TrackMeOrNot[88] √ 隐藏特征属性[97] √ Tor[113] √ √ √ √ √ √ BrowsingFog[91] √ FPRandom[103] √ √ √ Latex Gloves[27] √ PETInspector[114] √ FingerprintAlert[90] √ √ 抑制扩展膨胀[100] √ CloakX[111] √ UNIGL[105] √ docker集群组装[112] √ √ √ √ √ VisibleV8[106] √ Canvas Blocker[92] √ √ √ Canvas Deceiver[93] √ FPSelect[106] √ BrFAST[108] √ My Rules[94] √ 注:“√”表示防御技术覆盖了该项追踪技术. 1) 防御形态分析
扩展形态的防御较为轻量级,安装和使用较为便捷,多数扩展的功能集中于抵御某项单一的指纹追踪方式,例如防御当前应用较为广泛的Canvas指纹、历史记录等. 但这种类型的防御机制无法抵御使用多种特征追踪的指纹模式,即便某个特征值不一致或者缺失,网站追踪者仍可通过多重追踪技术,并使用相关算法将属于同一用户的指纹关联起来.
浏览器内嵌防御利用随机化、添加噪音、函数重写等方式修改内嵌的函数实现机制,防止追踪脚本获取到真正的属性特征值. 尽管为特定的单个属性或属性集提供人为或随机值可以至少部分成功地干扰指纹识别的操作,但这种方法也可能产生不利影响[132]. 这种形式需要用户以更换浏览器为代价,达到对单个或多个特征的追踪技术的防御,虽然在防御性能和效果上优于外在的扩展和工具框架等策略,但防御型浏览器如未经商业化加持的情况下,在推广和应用上面临着巨大的困难:一方面是Tor浏览器防御能力较强,并占据着绝大部分的市场;另一方面,用户对“被改装”过的浏览器接受度可能不够高.
工具和框架形态的防御,从独立于浏览器之外的角度出发,搜索配置选择进行展示的最佳属性,混淆追踪者获取的信息. 利用属性重组选择特征值的防御技术,一定会以消耗时间和减弱性能为代价,且随着指纹特征的增多,会导致浏览器中出现较多的异常组合[133].
构建防御对策或环境是从技术源头缓解指纹追踪的方式. 例如通过使用同质化环境可以从指纹产生的源头消除其唯一性,重写扩展名和更改扩展运行方式可以有效抵抗使用扩展ID和WAR对扩展的枚举. 但构建同质化环境和对扩展进行处理和运行的方式偏向于理想的防御方式,无法广泛地应用于实践.
2) 防御技术的对比分析
随机化和引入噪音是最常见且易于实现的防御技术,能够通过欺骗或者扰乱信息的方式,削弱实际设备和浏览器的独特性和唯一性,降低被追踪的可能. 属性重组、重写指纹值等技术的本质也是通过虚假或冗余的信息降低用户的可识别性. 这些技术形式都在追踪系统中生产了大量的虚假无效信息,消耗和占用服务资源. 这类数据可能会影响未来的Web追踪生态,对未来的技术发展造成不利的影响.
通过监控指纹追踪的属性获取情况,了解和控制可能被泄露或用来追踪的信息的输出和运行方式具有较好的实践性. 例如控制既定对象的枚举顺序、浏览器扩展在不同网站中的运行方式、可能被泄露的指纹信息等. 但无法做到全面和综合性的防御,对新追踪方式的自适应性不强.
通过一定的手段,对不同的访问网站实现信息隔离,使多个不同的追踪网站获取到的指纹信息各不相同. 这一方案能够较好地组织不同网站之间的追踪信息共享,但对同一网站的持续性追踪具有较低的防御力.
用户介入和参与的防御形式,虽然将选择权交到了用户手中,但绝大部分的网络用户没有较多的技术理解和专业知识,无法做出较为有利的判断. 且从长期来看,用户参与过多会降低良好的体验度.
3) 挑战与展望
当前有诸如欧盟相关法律为加强隐私做出了努力,例如第三方跨设备跟踪的公司将被要求在其隐私政策中明确数据会被跨设备使用,但违反行为还是很普遍且公然的[134],因此依然需要更有效的工具和框架来进行合规性监视和执行. Luangmaneerote等人[133]通过将所有的指纹防御技术应用到浏览器中,访问开发的混合指纹网站,了解指纹抵抗效率以及指纹防御对用户或网站造成的影响,结果表明,如今所有的防御对策,都无法阻止各种指纹追踪[135],Tor依然是当下最有效的指纹防御技术[107].
本文依据当前防御技术的能力,对能够抵御的追踪技术进行了整理和总结,如表6所示. 现有的防御技术大多能够实现对浏览器基本特征信息获取和主流指纹追踪技术的防御. 但是在缓解系统层面的缓存追踪、TSL会话追踪,以及硬件追踪方面表现较差. 最后我们从表6中可以得出与文献[135]同样的结果:当前的追踪策略均无法完整且有效地对指纹信息进行防御.
基于以上分析可以得出,对追踪防御的构建和实施,必须了解指纹追踪的技术原理,通过阻断其获取信息的渠道和可能存在的操作,或者使用信息干扰和隔离的方式扰乱攻击者对信息源的唯一确认. 防御技术的形态和最终形式也可能为指纹追踪提供新的特征识别线索. 当前而言,实现指纹防御的最佳状态,就像在 “严格”的Tor浏览器模式和正常的浏览器功能之间取一个中和的方法,在不影响用户浏览体验的前提下,尽可能地将指纹信息一致化,且在每次启动浏览器或会话的时候,将IP等特殊的特征随机化.
5. 总 结
在Web应用厂商对大规模用户群体的追踪定位需求,以及用户对隐私敏感度提升的双向作用下,Web的追踪防御技术也得到了迅猛发展. 本文首先对Web追踪中不同的追踪技术和发展形势进行了概述,其次着重针对2010—2021年间Web追踪技术和防御技术进行了研究和概述. 以追踪的范围划分追踪层次,介绍了特征的特点和获取方式,与此同时描述了指纹关联技术,并论述了特征与追踪范围的关系. 随后我们列出了指纹防御技术的研究热点,指出了当前防御技术的4种不同形态. 针对Web追踪技术,本文从唯一性和持续性2方面对追踪技术进行讨论,从实现形态和技术特点对追踪防御技术进行分析,基于对浏览器指纹追踪对抗技术的了解,我们针对指纹追踪和防御2个方面提出了面临的挑战与未来的展望.
作者贡献声明:王晓茜负责论文的撰写;刘奇旭梳理论文框架和指导论文的撰写;刘潮歌、张方娇和刘心宇收集和整理论文文献;崔翔负责论文的整体规划。
-
表 1 因果方法在可解释性问题上的应用
Table 1 Application of Causal Methods on Interpretability Problems
表 2 因果方法在可迁移性问题上的应用
Table 2 Application of Causal Methods on Transferability Problems
表 3 因果方法在鲁棒性问题上的应用
Table 3 Application of Causal Methods on Robustness Problems
分类 子类别 典型思路和方法 反事实数据增强 伪相关特征反事实 构造额外训练数据,在保持预测结果不变的前提下微调数据[88-93] 因果特征反事实 构造额外训练数据,更改关键因果特征并修改预测结果[92-95] 因果效应校准 基于后门调整 根据对问题的认识指出混杂因素,对其估计后消除影响[96-99] 基于中介分析 根据对问题的认识指出中介变量,对其估计后消除影响[97,100-102] 不变性学习 稳定学习 将每个特征视为处理变量,通过样本加权消除混杂,识别因果特征[103-107] 不变因果预测 基于多环境训练数据,利用假设检验确定因果特征集合[108-110] 不变风险最小化 基于多环境训练数据,在模型优化目标中添加跨环境不变约束,学习因果特征[111- 113] 表 4 因果方法在公平性问题上的应用
Table 4 Application of Causal Methods on Fairness Problems
-
[1] LeCun Y, Bengio Y, Hinton G. Deep learning[J]. Nature, 2015, 521(7553): 436−444
[2] He Kaiming, Zhang Xiangyu, Ren Shaoqing, et al. Delving deep into rectifiers: Surpassing human-level performance on ImageNet classification[C] //Proc of the IEEE Int Conf on Computer Vision. Piscataway, NJ: IEEE, 2015: 1026−1034 [3] Brock A, Donahue J, Simonyan K. Large scale GAN training for high fidelity natural image synthesis [C/OL] //Proc of the 7th Int Conf on Learning Representations. 2019 [2021-11-03]. https://openreview.net/pdf?id=B1xsqj09Fm
[4] Brown T B, Mann B, Ryder N, et al. Language models are few-shot learners[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 1877−1901
[5] Silver D, Huang A, Maddison C J, et al. Mastering the game of Go with deep neural networks and tree search[J]. Nature, 2016, 529(7587): 484−489
[6] Senior A W, Evans R, Jumper J, et al. Improved protein structure prediction using potentials from deep learning[J]. Nature, 2020, 577(7792): 706−710
[7] Gunning D, Aha D. DARPA’s explainable artificial intelligence (XAI) program[J]. AI Magazine, 2019, 40(2): 44−58
[8] Szegedy C, Zaremba W, Sutskever I, et al. Intriguing properties of neural networks[C/OL] //Proc of the 2nd Int Conf on Learning Representations. 2014 [2021-11-03]. https://arxiv.org/abs/1312.6199
[9] Barocas S, Hardt M, Narayanan A. Fairness in machine learning [EB/OL]. 2017 [2021-11-13]. https://fairmlbook.org/pdf/fairmlbook.pdf
[10] Pearl J, Mackenzie D. The Book of Why: The New Science of Cause and Effect[M]. New York: Basic Books, 2018
[11] Pearl J. Theoretical impediments to machine learning with seven sparks from the causal revolution[J]. arXiv preprint, arXiv: 1801.04016, 2018
[12] 苗旺, 刘春辰, 耿直. 因果推断的统计方法[J]. 中国科学: 数学, 2018, 48(12): 1753-1778 Miao Wang, Liu Chunchen, Geng Zhi. Statistical approaches for causal inference [J]. SCIENTIA SINICA Mathematica, 2018, 48(12): 1753-1778 (in Chinese)
[13] Guo Ruocheng, Cheng Lu, Li Jundong, et al. A survey of learning causality with data: Problems and methods[J]. ACM Computing Surveys, 2020, 53(4): 1−37
[14] Kuang Kun, Li Lian, Geng Zhi, et al. Causal inference [J]. Engineering, 2020, 6(3): 253−263
[15] Schölkopf B. Causality for machine learning [J]. arXiv preprint, arXiv: 1911.10500, 2019
[16] Schölkopf B, Locatello F, Bauer S, et al. Toward causal representation learning[J]. Proceedings of the IEEE, 2021, 109(5): 612−634
[17] Splawa-Neyman J, Dabrowska D M, Speed T P. On the application of probability theory to agricultural experiments. Essay on principles. Section 9[J]. Statistical Science, 1990, 5(4): 465−472
[18] Rubin D B. Estimating causal effects of treatments in randomized and nonrandomized studies[J]. Journal of Educational Psychology, 1974, 66(5): 688−701
[19] Pearl J. Causality[M]. Cambridge, UK: Cambridge University Press, 2009
[20] Granger C W J. Investigating causal relations by econometric models and cross-spectral methods[J]. Econometrica, 1969, 37(3): 424−438
[21] Rubin D B. Randomization analysis of experimental data: The Fisher randomization test comment[J]. Journal of the American Statistical Association, 1980, 75(371): 591−593
[22] Rosenbaum P R, Rubin D B. The central role of the propensity score in observational studies for causal effects[J]. Biometrika, 1983, 70(1): 41−55
[23] Hirano K, Imbens G W, Ridder G. Efficient estimation of average treatment effects using the estimated propensity score[J]. Econometrica, 2003, 71(4): 1161−1189
[24] Robins J M, Rotnitzky A, Zhao Lueping. Estimation of regression coefficients when some regressors are not always observed[J]. Journal of the American Statistical Association, 1994, 89(427): 846−866
[25] Dudík M, Langford J, Li Lihong. Doubly robust policy evaluation and learning[C] //Proc of the 28th Int Conf on Machine Learning. Madison, WI: Omnipress, 2011: 1097−1104
[26] Kuang Kun, Cui Peng, Li Bo, et al. Estimating treatment effect in the wild via differentiated confounder balancing[C] //Proc of the 23rd ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2017: 265−274
[27] Imbens G W, Rubin D B. Causal Inference in Statistics, Social, and Biomedical Sciences[M]. Cambridge, UK: Cambridge University Press, 2015
[28] Yao Liuyi, Chu Zhixuan, Li Sheng, et al. A survey on causal inference [J]. arXiv preprint, arXiv: 2002.02770, 2020
[29] Pearl J. Causal diagrams for empirical research[J]. Biometrika, 1995, 82(4): 669−688
[30] Spirtes P, Glymour C. An algorithm for fast recovery of sparse causal graphs[J]. Social Science Computer Review, 1991, 9(1): 62−72
[31] Verma T, Pearl J. Equivalence and synthesis of causal models[C] //Proc of the 6th Annual Conf on Uncertainty in Artificial Intelligence. Amsterdam: Elsevier, 1990: 255−270
[32] Spirtes P, Glymour C N, Scheines R, et al. Causation, Prediction, and Search[M]. Cambridge, MA: MIT Press, 2000
[33] Schwarz G. Estimating the dimension of a model[J]. The Annals of Statistics, 1978, 6(2): 461−464
[34] Chickering D M. Optimal structure identification with greedy search[J]. Journal of Machine Learning Research, 2002, 3(Nov): 507−554 [35] Shimizu S, Hoyer P O, Hyvärinen A, et al. A linear non-Gaussian acyclic model for causal discovery[J]. Journal of Machine Learning Research, 2006, 7(10): 2003−2030
[36] Zhang Kun, Hyvärinen A. On the identifiability of the post-nonlinear causal model[C] //Proc of the 25th Conf on Uncertainty in Artificial Intelligence. Arlington, VA: AUAI Press, 2009: 647−655
[37] Pearl J. Direct and indirect effects[C] //Proc of the 17th Conf on Uncertainty in Artificial Intelligence. San Francisco, CA: Morgan Kaufmann Publishers Inc, 2001: 411−420
[38] VanderWeele T. Explanation in Causal Inference: Methods for Mediation and Interaction[M]. Oxford, UK: Oxford University Press, 2015
[39] 陈珂锐,孟小峰. 机器学习的可解释性[J]. 计算机研究与发展,2020,57(9):1971−1986 doi: 10.7544/issn1000-1239.2020.20190456 Chen Kerui, Meng Xiaofeng. Interpretation and understanding in machine learning[J]. Journal of Computer Research and Development, 2020, 57(9): 1971−1986 (in Chinese) doi: 10.7544/issn1000-1239.2020.20190456
[40] Ribeiro M T, Singh S, Guestrin C. “Why should I trust you?” Explaining the predictions of any classifier[C] //Proc of the 22nd ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2016: 1135−1144
[41] Selvaraju R R, Cogswell M, Das A, et al. Grad-CAM: Visual explanations from deep networks via gradient-based localization[C] //Proc of the IEEE Int Conf on Computer Vision. Piscataway, NJ: IEEE, 2017: 618-626 [42] Sundararajan M, Taly A, Yan Qiqi. Axiomatic attribution for deep networks[C] //Proc of the 34th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2017: 3319−3328
[43] Lundberg S M, Lee S I. A unified approach to interpreting model predictions[C] //Proc of the 31st Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2017: 4765−4774
[44] Alvarez-Melis D, Jaakkola T. A causal framework for explaining the predictions of black-box sequence-to-sequence models[C] //Proc of the 2017 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2017: 412−421 [45] Schwab P, Karlen W. CXPlain: Causal explanations for model interpretation under uncertainty[C] //Proc of the 33rd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2019: 10220−10230
[46] Chattopadhyay A, Manupriya P, Sarkar A, et al. Neural network attributions: A causal perspective[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 981−990
[47] Frye C, Rowat C, Feige I. Asymmetric Shapley values: Incorporating causal knowledge into model-agnostic explainability[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 1229−1239
[48] Heskes T, Sijben E, Bucur I G, et al. Causal Shapley values: Exploiting causal knowledge to explain individual predictions of complex models [C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 4778−4789
[49] Goyal Y, Wu Ziyan, Ernst J, et al. Counterfactual visual explanations[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 2376−2384
[50] Wang Pei, Vasconcelos N. SCOUT: Self-aware discriminant counterfactual explanations[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 8981−8990
[51] Hendricks L A, Hu Ronghang, Darrell T, et al. Generating counterfactual explanations with natural language[J]. arXiv preprint, arXiv: 1806.09809, 2018
[52] Chang Chunhao, Creager E, Goldenberg A, et al. Explaining image classifiers by counterfactual generation[C/OL] //Proc of the 7th Int Conf on Learning Representations, 2019 [2021-11-03]. https://openreview.net/pdf?id=B1MXz20cYQ
[53] Kanehira A, Takemoto K, Inayoshi S, et al. Multimodal explanations by predicting counterfactuality in videos[C] //Proc of the 32nd IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2019: 8594−8602
[54] Akula A R, Wang Shuai, Zhu Songchun. CoCoX: Generating conceptual and counterfactual explanations via fault-lines[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 2594−2601
[55] Madumal P, Miller T, Sonenberg L, et al. Explainable reinforcement learning through a causal lens[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 2493−2500
[56] Mothilal R K, Sharma A, Tan C. Explaining machine learning classifiers through diverse counterfactual explanations[C] //Proc of the 2020 Conf on Fairness, Accountability, and Transparency. New York: ACM, 2020: 607−617 [57] Albini E, Rago A, Baroni P, et al. Relation-based counterfactual explanations for Bayesian network classifiers[C] //Proc of the 29th Int Joint Conf on Artificial Intelligence, Red Hook, NY: Curran Associates Inc, 2020: 451−457
[58] Kenny E M, Keane M T. On generating plausible counterfactual and semi-factual explanations for deep learning[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 11575−11585
[59] Abrate C, Bonchi F. Counterfactual graphs for explainable classification of brain networks[J]. arXiv preprint, arXiv: 2106.08640, 2021
[60] Yang Fan, Alva S S, Chen Jiahao, et al. Model-based counterfactual synthesizer for interpretation[J]. arXiv preprint, arXiv: 2106.08971, 2021
[61] Parmentier A, Vidal T. Optimal counterfactual explanations in tree ensembles[J]. arXiv preprint, arXiv: 2106.06631, 2021
[62] Besserve M, Mehrjou A, Sun R, et al. Counterfactuals uncover the modular structure of deep generative models[C/OL] //Proc of the 8th Int Conf on Learning Representations. 2020 [2021-11-03]. https://openreview.net/pdf?id=SJxDDpEKvH
[63] Kanamori K, Takagi T, Kobayashi K, et al. DACE: Distribution-aware counterfactual explanation by mixed-integer linear optimization[C] //Proc of the 19th Int Joint Conf on Artificial Intelligence. Red Hook, NY: Curran Associates Inc, 2020: 2855−2862
[64] Kanamori K, Takagi T, Kobayashi K, et al. Ordered counterfactual explanation by mixed-integer linear optimization[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 11564−11574
[65] Tsirtsis S, Gomez-Rodriguez M. Decisions, counterfactual explanations and strategic behavior[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 16749−16760
[66] Karimi A H, von Kügelgen B J, Schölkopf B, et al. Algorithmic recourse under imperfect causal knowledge: A probabilistic approach[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 265−277
[67] Rojas-Carulla M, Schölkopf B, Turner R, et al. Invariant models for causal transfer learning[J]. The Journal of Machine Learning Research, 2018, 19(1): 1309−1342
[68] Guo Jiaxian, Gong Mingming, Liu Tongliang, et al. LTF: A label transformation framework for correcting target shift[C] //Proc of the 37th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2020: 3843−3853
[69] Cai Ruichu, Li Zijian, Wei Pengfei, et al. Learning disentangled semantic representation for domain adaptation[C] //Proc of the 28th Int Joint Conf on Artificial Intelligence. Red Hook, NY: Curran Associates Inc, 2019: 2060−2066
[70] Zhang Kun, Schölkopf B, Muandet K, et al. Domain adaptation under target and conditional shift[C] //Proc of the 30th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2013: 819−827
[71] Gong Mingming, Zhang Kun, Liu Tongliang, et al. Domain adaptation with conditional transferable components[C] //Proc of the 33rd Int Conf on Machine Learning. Cambridge, MA: JMLR, 2016: 2839−2848
[72] Teshima T, Sato I, Sugiyama M. Few-shot domain adaptation by causal mechanism transfer[C] //Proc of the 37th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2020: 9458−9469
[73] Edmonds M, Ma Xiaojian, Qi Siyuan, et al. Theory-based causal transfer: Integrating instance-level induction and abstract-level structure learning[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 1283−1291
[74] Etesami J, Geiger P. Causal transfer for imitation learning and decision making under sensor-shift[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 10118−10125
[75] Yue Zhongqi, Zhang Hanwang, Sun Qianru, et al. Interventional few-shot learning[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 2734−2746
[76] Zhang Kun, Gong Mingming, Stojanov P, et al. Domain adaptation as a problem of inference on graphical models[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 4965−4976
[77] Schölkopf B, Janzing D, Peters J, et al. On causal and anticausal learning[C] //Proc of the 29th Int Conf on Machine Learning. Madison, WI: Omnipress, 2012: 459−466
[78] Zhang Kun, Gong Mingming, Schölkopf B. Multi-source domain adaptation: A causal view[C] //Proc of the 29th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2015: 3150−3157
[79] Bagnell J A. Robust supervised learning[C] //Proc of the 20th National Conf on Artificial Intelligence. Menlo Park, CA: AAAI, 2005: 714−719
[80] Hu Weihua, Niu Gang, Sato I, et al. Does distributionally robust supervised learning give robust classifiers?[C] //Proc of the 35th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2018: 2029−2037
[81] Rahimian H, Mehrotra S. Distributionally robust optimization: A review[J]. arXiv preprint, arXiv: 1908.05659, 2019
[82] Goodfellow I J, Shlens J, Szegedy C. Explaining and harnessing adversarial examples[C/OL] //Proc of the 5th Int Conf on Learning Representations. 2017 [2021-11-14]. https://openreview.net/pdf?id=B1xsqj09Fm
[83] Xu Han, Ma Yao, Liu Haochen, et al. Adversarial attacks and defenses in images, graphs and text: A review[J]. International Journal of Automation and Computing, 2020, 17(2): 151−178
[84] Gururangan S, Swayamdipta S, Levy O, et al. Annotation artifacts in natural language inference data[C] //Proc of the 16th Conf of the North American Chapter of the ACL: Human Language Technologies, Vol 2. Stroudsburg, PA: ACL, 2018: 107−112
[85] Zhang Guanhua, Bai Bing, Liang Jian, et al. Selection bias explorations and debias methods for natural language sentence matching datasets[C] //Proc of the 57th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, PA: ACL, 2019: 4418−4429
[86] Clark C, Yatskar M, Zettlemoyer L. Don’t take the easy way out: Ensemble based methods for avoiding known dataset biases[C] //Proc of the 2019 Conf on Empirical Methods in Natural Language Processing and the 9th Int Joint Conf on Natural Language Processing (EMNLP-IJCNLP). Stroudsburg, PA: ACL, 2019: 4060−4073 [87] Cadene R, Dancette C, Cord M, et al. Rubi: Reducing unimodal biases for visual question answering[C] //Proc of the 33rd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2019: 841−852
[88] Lu Kaiji, Mardziel P, Wu Fangjing, et al. Gender bias in neural natural language processing[G] //LNCS 12300: Logic, Language, and Security: Essays Dedicated to Andre Scedrov on the Occasion of His 65th Birthday. Berlin: Springer, 2020: 189−202 [89] Maudslay R H, Gonen H, Cotterell R, et al. It’s all in the name: Mitigating gender bias with name-based counterfactual data substitution[C] //Proc of the 2019 Conf on Empirical Methods in Natural Language Processing and the 9th Int Joint Conf on Natural Language Processing (EMNLP-IJCNLP). Stroudsburg, PA: ACL, 2019: 5270−5278 [90] Zmigrod R, Mielke S J, Wallach H, et al. Counterfactual data augmentation for mitigating gender stereotypes in languages with rich morphology[C] //Proc of the 57th Annual Meeting of the ACL. Stroudsburg, PA: ACL, 2019: 1651−1661
[91] Kaushik D, Hovy E, Lipton Z. Learning the difference that makes a difference with counterfactually-augmented data[C/OL] //Proc of the 8th Int Conf on Learning Representations. 2020 [2021-11-14]. https://openreview.net/pdf?id=Sklgs0NFvr
[92] Agarwal V, Shetty R, Fritz M. Towards causal VQA: Revealing and reducing spurious correlations by invariant and covariant semantic editing[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 9690−9698
[93] Chang Chunhao, Adam G A, Goldenberg A. Towards robust classification model by counterfactual and invariant data generation[C] //Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 15212−15221
[94] Wang Zhao, Culotta A. Robustness to spurious correlations in text classification via automatically generated counterfactuals[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 14024−14031
[95] Chen Long, Yan Xin, Xiao Jun, et al. Counterfactual samples synthesizing for robust visual question answering[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 10800−10809
[96] Wu Yiquan, Kuang Kun, Zhang Yating, et al. De-biased court’s view generation with causality[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 763−780 [97] Qi Jia, Niu Yulei, Huang Jianqiang, et al. Two causal principles for improving visual dialog[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 10860−10869
[98] Wang Tan, Huang Jiangqiang, Zhang Hanwang, et al. Visual commonsense R-CNN[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 10760−10770
[99] Zhang Dong, Zhang Hanwang, Tang Jinhui, et al. Causal intervention for weakly-supervised semantic segmentation[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 655−666
[100] Tang Kaihua, Niu Yulei, Huang Jianqiang, et al. Unbiased scene graph generation from biased training[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 3716−3725
[101] Tang Kaihua, Huang Jianqiang, Zhang Hanwang. Long-tailed classification by keeping the good and removing the bad momentum causal effect[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 1513−1524
[102] Niu Yulei, Tang Kaihua, Zhang Hanwang, et al. Counterfactual VQA: A cause-effect look at language bias[C] //Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 12700−12710
[103] Kuang Kun, Cui Peng, Athey S, et al. Stable prediction across unknown environments[C] //Proc of the 24th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining. New York: ACM, 2018: 1617−1626
[104] Shen Zheyan, Cui Peng, Kuang Kun, et al. Causally regularized learning with agnostic data selection bias[C] //Proc of the 26th ACM Int Conf on Multimedia. New York: ACM, 2018: 411−419
[105] Kuang Kun, Xiong Ruoxuan, Cui Peng, et al. Stable prediction with model misspecification and agnostic distribution shift[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 4485−4492
[106] Shen Zheyan, Cui Peng, Zhang Tong, et al. Stable learning via sample reweighting[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 5692−5699
[107] Zhang Xingxuan, Cui Peng, Xu Renzhe, et al. Deep stable learning for out-of-distribution generalization[J]. arXiv preprint, arXiv: 2104.07876, 2021
[108] Peters J, Bühlmann P, Meinshausen N. Causal inference by using invariant prediction: Identification and confidence intervals[J]. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 2016, 78(5): 947−1012
[109] Christina H D, Nicolai M, Jonas P. Invariant causal prediction for nonlinear models[J/OL]. Journal of Causal Inference, 2018, 6(2): 20170016 [2021-11-15]. https://www.degruyter.com/document/doi/10.1515/jci-2017-0016/pdf
[110] Pfister N, Bühlmann P, Peters J. Invariant causal prediction for sequential data[J]. Journal of the American Statistical Association, 2019, 114(527): 1264−1276
[111] Arjovsky M, Bottou L, Gulrajani I, et al. Invariant risk minimization[J]. arXiv preprint, arXiv: 1907.02893, 2019
[112] Zhang A, Lyle C, Sodhani S, et al. Invariant causal prediction for block MDPs[C] //Proc of the 37th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2020: 11214−11224
[113] Creager E, Jacobsen J H, Zemel R. Environment inference for invariant learning[C] //Proc of the 38th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2021: 2189−2200
[114] Kaushik D, Setlur A, Hovy E H, et al. Explaining the efficacy of counterfactually augmented data[C/OL] //Proc of the 9th Int Conf on Learning Representations. 2021 [2021-11-14]. https://openreview.net/pdf?id=HHiiQKWsOcV
[115] Abbasnejad E, Teney D, Parvaneh A, et al. Counterfactual vision and language learning[C] //Proc of the 33rd IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 10044−10054
[116] Liang Zujie, Jiang Weitao, Hu Haifeng, et al. Learning to contrast the counterfactual samples for robust visual question answering[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 3285−3292 [117] Teney D, Abbasnedjad E, van den Hengel A. Learning what makes a difference from counterfactual examples and gradient supervision[C] //Proc of the 16th European Conf on Computer Vision. Berlin: Springer, 2020: 580−599
[118] Fu T J, Wang X E, Peterson M F, et al. Counterfactual vision-and-language navigation via adversarial path sampler[C] //Proc of the 16th European Conf on Computer Vision. Berlin: Springer, 2020: 71−86
[119] Parvaneh A, Abbasnejad E, Teney D, et al. Counterfactual vision-and-language navigation: Unravelling the unseen[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 5296−5307
[120] Sauer A, Geiger A. Counterfactual generative networks[C/OL] //Proc of the 9th Int Conf on Learning Representations. 2021 [2021-11-14]. https://openreview.net/pdf?id=BXewfAYMmJw
[121] Mao Chengzhi, Cha A, Gupta A, et al. Generative interventions for causal learning[C] //Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 3947−3956
[122] Zeng Xiangji, Li Yunliang, Zhai Yuchen, et al. Counterfactual generator: A weakly-supervised method for named entity recognition[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 7270−7280 [123] Fu T J, Wang Xin, Grafton S, et al. Iterative language-based image editing via self-supervised counterfactual reasoning[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 4413−4422 [124] Pitis S, Creager E, Garg A. Counterfactual data augmentation using locally factored dynamics[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 3976−3990
[125] Zhang Junzhe, Kumor D, Bareinboim E. Causal imitation learning with unobserved confounders[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 12263−12274
[126] Coston A, Kennedy E, Chouldechova A. Counterfactual predictions under runtime confounding[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 4150−4162
[127] Atzmon Y, Kreuk F, Shalit U, et al. A causal view of compositional zero-shot recognition[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 1462−1473
[128] Yang Zekun, Feng Juan. A causal inference method for reducing gender bias in word embedding relations[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 9434−9441
[129] Schölkopf B, Hogg D W, Wang Dun, et al. Modeling confounding by half-sibling regression[J]. Proceedings of the National Academy of Sciences, 2016, 113(27): 7391−7398 doi: 10.1073/pnas.1511656113
[130] Shin S, Song K, Jang J H, et al. Neutralizing gender bias in word embedding with latent disentanglement and counterfactual generation[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing: Findings. Stroudsburg, PA: ACL, 2020: 3126−3140 [131] Yang Zekun, Liu Tianlin. Causally denoise word embeddings using half-sibling regression[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 9426−9433
[132] Yang Xu, Zhang Hanwang, Qi Guojin, et al. Causal attention for vision-language tasks[C] //Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 9847−9857
[133] Tople S, Sharma A, Nori A. Alleviating privacy attacks via causal learning[C] //Proc of the 37th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2020: 9537−9547
[134] Zhang Cheng, Zhang Kun, Li Yingzhen. A causal view on robustness of neural networks[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 289−301
[135] Sun Xinwei, Wu Botong, Liu Chang, et al. Latent causal invariant model[J]. arXiv preprint, arXiv: 2011.02203, 2020
[136] Mitrovic J, McWilliams B, Walker J C, et al. Representation learning via invariant causal mechanisms[C/OL] //Proc of the 9th Int Conf on Learning Representations. 2021 [2021-11-14]. https://openreview.net/pdf?id=9p2ekP904Rs
[137] Mahajan D, Tople S, Sharma A. Domain generalization using causal matching[J]. arXiv preprint, arXiv: 2006.07500, 2020
[138] Zhang Weijia, Liu Lin, Li Jiuyong. Robust multi-instance learning with stable instances[C] //Proc of the 24th European Conf on Artificial Intelligence. Ohmsha: IOS, 2020: 1682−1689
[139] Kleinberg J, Mullainathan S, Raghavan M. Inherent trade-offs in the fair determination of risk scores[J]. arXiv preprint, arXiv: 1609.05807, 2016
[140] Grgic-Hlaca N, Zafar M B, Gummadi K P, et al. The case for process fairness in learning: Feature selection for fair decision making[C/OL] //Proc of Symp on Machine Learning and the Law at the 30th Conf on Neural Information Processing Systems. 2016 [2021-11-17]. http: //www.mlandthelaw.org/papers/grgic.pdf [141] Dwork C, Hardt M, Pitassi T, et al. Fairness through awareness[C] //Proc of the 3rd Innovations in Theoretical Computer Science Conf. New York: ACM, 2012: 214−226
[142] Calders T, Kamiran F, Pechenizkiy M. Building classifiers with independency constraints[C] //Proc of the 9th IEEE Int Conf on Data Mining Workshops. Piscataway, NJ: IEEE, 2009: 13−18
[143] Hardt M, Price E, Srebro N. Equality of opportunity in supervised learning[C] //Proc of the 30th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2016: 3315−3323
[144] Xu Renzhe, Cui Peng, Kuang Kun, et al. Algorithmic decision making with conditional fairness[C] //Proc of the 26th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining. New York: ACM, 2020: 2125−2135
[145] Kusner M J, Loftus J, Russell C, et al. Counterfactual fairness[C] //Proc of the 31st Int Conf on Neural Information Processing Systems. New York: ACM, 2017: 4066−4076
[146] Kilbertus N, Rojas-Carulla M, Parascandolo G, et al. Avoiding discrimination through causal reasoning[C] //Proc of the 31st Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2017: 656−666
[147] Nabi R, Shpitser I. Fair inference on outcomes[C] //Proc of the 32nd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2018: 1931−1940
[148] Chiappa S. Path-specific counterfactual fairness[C] //Proc of the 33rd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2019: 7801−7808
[149] Wu Yongkai, Zhang Lu, Wu Xintao, et al. PC-fairness: A unified framework for measuring causality-based fairness[C] //Proc of the 33rd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2019: 3404−3414
[150] Wu Yongkai, Zhang Lu, Wu Xintao. Counterfactual fairness: Unidentification, bound and algorithm[C] //Proc of the 28th Int Joint Conf on Artificial Intelligence. Red Hook, NY: Curran Associates Inc, 2019: 1438−1444
[151] Huang P S, Zhang Huan, Jiang R, et al. Reducing sentiment bias in language models via counterfactual evaluation[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing: Findings. Stroudsburg, PA: ACL, 2020: 65−83 [152] Garg S, Perot V, Limtiaco N, et al. Counterfactual fairness in text classification through robustness[C] //Proc of the 33rd AAAI/ACM Conf on AI, Ethics, and Society. Menlo Park, CA: AAAI, 2019: 219−226
[153] Hu Yaowei, Wu Yongkai, Zhang Lu, et al. Fair multiple decision making through soft interventions[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 17965−17975
[154] Goel N, Amayuelas A, Deshpande A, et al. The importance of modeling data missingness in algorithmic fairness: A causal perspective[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 7564−7573
[155] Xu Depeng, Wu Yongkai, Yuan Shuhan, et al. Achieving causal fairness through generative adversarial networks[C] //Proc of the 28th Int Joint Conf on Artificial Intelligence. Red Hook, NY: Curran Associates Inc, 2019: 1452−1458
[156] Khademi A, Lee S, Foley D, et al. Fairness in algorithmic decision making: An excursion through the lens of causality[C] //Proc of the 28th World Wide Web Conf. New York: ACM, 2019: 2907−2914
[157] Zhang Junzhe, Bareinboim E. Fairness in decision-making—The causal explanation formula[C] //Proc of the 32nd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2018: 2037−2045
[158] Zhang Junzhe, Bareinboim E. Equality of opportunity in classification: A causal approach[C] //Proc of the 32nd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2018: 3671−3681
[159] Wang Hao, Ustun B, Calmon F. Repairing without retraining: Avoiding disparate impact with counterfactual distributions[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 6618−6627
[160] Creager E, Madras D, Pitassi T, et al. Causal modeling for fairness in dynamical systems[C] //Proc of the 37th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2020: 2185−2195
[161] Swaminathan A, Joachims T. Batch learning from logged bandit feedback through counterfactual risk minimization[J]. The Journal of Machine Learning Research, 2015, 16(1): 1731−1755
[162] Swaminathan A, Joachims T. The self-normalized estimator for counterfactual learning[C] //Proc of the 29th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2015: 3231−3239
[163] Wu Hang, Wang May. Variance regularized counterfactual risk minimization via variational divergence minimization[C] //Proc of the 35th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2018: 5353−5362
[164] London B, Sandler T. Bayesian counterfactual risk minimization[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 4125−4133
[165] Faury L, Tanielian U, Dohmatob E, et al. Distributionally robust counterfactual risk minimization[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 3850−3857
[166] Schnabel T, Swaminathan A, Singh A, et al. Recommendations as treatments: Debiasing learning and evaluation[C] //Proc of the 33rd Int Conf on Machine Learning. Cambridge, MA: JMLR, 2016: 1670−1679
[167] Yang Longqi, Cui Yin, Xuan Yuan, et al. Unbiased offline recommender evaluation for missing-not-at-random implicit feedback[C] //Proc of the 12th ACM Conf on Recommender Systems. New York: ACM, 2018: 279−287
[168] Bonner S, Vasile F. Causal embeddings for recommendation[C] //Proc of the 12th ACM Conf on Recommender Systems. New York: ACM, 2018: 104−112
[169] Narita Y, Yasui S, Yata K. Efficient counterfactual learning from bandit feedback[C] //Proc of the 33rd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2019: 4634−4641
[170] Zou Hao, Cui Peng, Li Bo, et al. Counterfactual prediction for bundle treatment[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 19705−19715
[171] Xu Da, Ruan Chuanwei, Korpeoglu E, et al. Adversarial counterfactual learning and evaluation for recommender system[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 13515−13526
[172] Lopez R, Li Chenchen, Yan Xiang, et al. Cost-effective incentive allocation via structured counterfactual inference[C] //Proc of the 34th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2020: 4997−5004
[173] Joachims T, Swaminathan A, Schnabel T. Unbiased learning-to-rank with biased feedback[C] //Proc of the 10th ACM Int Conf on Web Search and Data Mining. New York: ACM, 2017: 781−789
[174] Wang Xuanhui, Golbandi N, Bendersky M, et al. Position bias estimation for unbiased learning to rank in personal search[C] //Proc of the 11th ACM Int Conf on Web Search and Data Mining. New York: ACM, 2018: 610−618
[175] Ai Qingyao, Bi Keping, Luo Cheng, et al. Unbiased learning to rank with unbiased propensity estimation[C] //Proc of the 41st Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2018: 385−394
[176] Agarwal A, Takatsu K, Zaitsev I, et al. A general framework for counterfactual learning-to-rank[C] //Proc of the 42nd Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2019: 5−14
[177] Jagerman R, de Rijke M. Accelerated convergence for counterfactual learning to rank[C] //Proc of the 43rd Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2020: 469−478
[178] Vardasbi A, de Rijke M, Markov I. Cascade model-based propensity estimation for counterfactual learning to rank[C] //Proc of the 43rd Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2020: 2089−2092
[179] Jagerman R, Oosterhuis H, de Rijke M. To model or to intervene: A comparison of counterfactual and online learning to rank from user interactions[C] //Proc of the 42nd Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2019: 15−24
[180] Bottou L, Peters J, Quiñonero-Candela J, et al. Counterfactual reasoning and learning systems: The example of computational advertising[J]. The Journal of Machine Learning Research, 2013, 14(1): 3207−3260
[181] Lawrence C, Riezler S. Improving a neural semantic parser by counterfactual learning from human bandit feedback[C] //Proc of the 56th Annual Meeting of the ACL, Vol 1. Stroudsburg, PA: ACL, 2018: 1820−1830
[182] Bareinboim E, Forney A, Pearl J. Bandits with unobserved confounders: A causal approach[C] //Proc of the 29th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2015: 1342−1350
[183] Lee S, Bareinboim E. Structural causal bandits: Where to intervene?[C] //Proc of the 32nd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2018: 2568−2578
[184] Lee S, Bareinboim E. Structural causal bandits with non-manipulable variables[C] //Proc of the 33rd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2019: 4164−4172
[185] Haan P, Jayaraman D, Levine S. Causal confusion in imitation learning[C] //Proc of the 33rd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2019: 11698−11709
[186] Kyono T, Zhang Yao, van der Schaar M. CASTLE: Regularization via auxiliary causal graph discovery[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 1501−1512
[187] Yang Mengyue, Liu Frurui, Chen Zhitang, et al. CausalVAE: Disentangled representation learning via neural structural causal models[C] //Proc of the 34th IEEE/CVF Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 9593−9602
[188] Zinkevich M, Johanson M, Bowling M, et al. Regret minimization in games with incomplete information[C] //Proc of the 20th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2007: 1729−1736
[189] Brown N, Lerer A, Gross S, et al. Deep counterfactual regret minimization[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 793−802
[190] Farina G, Kroer C, Brown N, et al. Stable-predictive optimistic counterfactual regret minimization[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 1853−1862
[191] Brown N, Sandholm T. Solving imperfect-information games via discounted regret minimization[C] //Proc of the 33rd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2019: 1829−1836
[192] Li Hui, Hu Kailiang, Zhang Shaohua, et al. Double neural counterfactual regret minimization[C/OL] //Proc of the 8th Int Conf on Learning Representations. 2020 [2021-11-14]. https://openreview.net/pdf?id=ByedzkrKvH
[193] Oberst M, Sontag D. Counterfactual off-policy evaluation with Gumbel-max structural causal models[C] //Proc of the 36th Int Conf on Machine Learning. Cambridge, MA: JMLR, 2019: 4881−4890
[194] Buesing L, Weber T, Zwols Y, et al. Woulda, coulda, shoulda: Counterfactually-guided policy search[C/OL] //Proc of the 9th Int Conf on Learning Representations. 2019 [2021-11-14]. https://openreview.net/pdf?id=BJG0voC9YQ
[195] Chen Long, Zhang Hanwang, Xiao Jun, et al. Counterfactual critic multi-agent training for scene graph generation[C] //Proc of the 2019 IEEE/CVF Int Conf on Computer Vision. Piscataway, NJ: IEEE, 2019: 4613−4623 [196] Zhu Qingfu, Zhang Weinan, Liu Ting, et al. Counterfactual off-policy training for neural dialogue generation[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 3438−3448 [197] Choi S, Park H, Yeo J, et al. Less is more: Attention supervision with counterfactuals for text classification[C] //Proc of the 2020 Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 6695−6704 [198] Zhang Zhu, Zhao Zhou, Lin Zhejie, et al. Counterfactual contrastive learning for weakly-supervised vision-language grounding[C] //Proc of the 34th Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2020: 655-666
[199] Kocaoglu M, Snyder C, Dimakis A G, et al. CausalGAN: Learning causal implicit generative models with adversarial training[C] //Proc of the 6th Int Conf on Learning Representations, 2018 [2021-11-03]. https://openreview.net/pdf?id=BJE-4xW0W
[200] Kim H, Shin S, Jang J H, et al. Counterfactual fairness with disentangled causal effect variational autoencoder[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 8128−8136
[201] Qin Lianhui, Bosselut A, Holtzman A, et al. Counterfactual story reasoning and generation[C] //Proc of the 2019 Conf on Empirical Methods in Natural Language Processing and the 9th Int Joint Conf on Natural Language Processing (EMNLP-IJCNLP). Stroudsburg, PA: ACL, 2019: 5046−5056 [202] Hao Changying, Pang Liang, Lan Yanyan, et al. Sketch and customize: A counterfactual story generator[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 12955−12962.
[203] Madaan N, Padhi I, Panwar N, et al. Generate your counterfactuals: Towards controlled counterfactual generation for text[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 13516−13524
[204] Peysakhovich A, Kroer C, Lerer A. Robust multi-agent counterfactual prediction[C] //Proc of the 33rd Int Conf on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc, 2019: 3083−3093
[205] Baradel F, Neverova N, Mille J, et al. CoPhy: Counterfactual learning of physical dynamics[C/OL] //Proc of the 8th Int Conf on Learning Representations. 2020 [2021-11-14]. https://openreview.net/pdf?id=SkeyppEFvS
-
期刊类型引用(1)
1. 楚小茜,张建辉,张德升,苏珲. 基于改进GraphSAGE算法的浏览器指纹追踪. 计算机科学. 2024(06): 409-415 . 百度学术
其他类型引用(3)