论文研读:PoliGraph : Automated Privacy Policy Analysis using Knowledge Graphs

作者:Hao Cui, Rahmadi Trimananda, Athina Markopoulou, Scott Jordan

年份:2023年

会议:USENIX Security Symposium

研究机构:University of California, Irvine

主要内容:提出了一种基于知识图谱的隐私政策文本表示方法PoliGraph,同时,开发了一种自动从文本中提取 PoliGraph的 NLP 工具 PoliGraph-er。该工具可用于表示不同隐私政策文本的基本模式,评估隐私政策中定义的术语的正确性。此外,还可用于检测隐私政策中的矛盾,分析隐私政策和网络流量的一致性。

1.问题分析

现有NLP 分析工具存在局限性,具体表现为:

1.   忽略隐私政策语句间的关系,仅将其提取为不连贯的标签。导致不清楚哪个实体收集了哪种数据类型。

2.   由于上下文不完整,需要创建手动或半自动化的方式映射,但这只是适合特定问题,不具有普遍性,可能产生模糊或错误的结果。

2.研究方案

1.PoliGraph

PoliGraph能够提取隐私策略中的信息,包括数据类型、与哪些实体共享、使用目的,并将其编码到知识图谱。如下图2.1所示。

图2.1 PoliGraph示例

PoliGraph由三个类元素组成。

  1. Nodes:包括Data Type(被收集的数据的类型)和Entity(收集数据的组织,第一方或者第三方)。
  2. Edge:包括COLLECT edge(表示一个实体n可以收集某种数据类型d)和SUBSUME edge(表示一种包含关系)。
  3. Edge attributes:将目的作为属性列表(如Purposes(ec)={p1, p2,...})分配给每个COLLECT边作为边属性。

本体可以通用术语和特定术语联系起来。但现有研究提出的本体并不具有普遍性,因此基于这些本体定义的隐私策略分析方法会导致错误。为此,PoliGraph重新定义了两种本体。

  1. Local Ontologies:指在特定政策中定义的数据和实体之间的层次关系。它通过数据类型或实体之间的SUBSUME edge形成一个有向无环图,能捕捉更通用和更具体术语之间的关系。
  2. Global Ontologies:指编码外部知识的本体,即超出特定政策的知识,这能够补充政策中缺失的定义。文中定义了基于 CCPA的全局数据本体(用于后续评估术语正确性)以及全局实体本体(用于对无组织的数据类型和实体进行分类)。

2. PoliGraph-er

PoliGraph-er是作者实现的从文本中提取 PoliGraph的 NLP 工具,其结构如下图2.2所示。PoliGraph-er由三个部分组成。

  1. Structured Documents:处理隐私政策的HTML 文档以生成简化的文档树结构,之后使用pipeline标记文本(包括词干、词性、句子分割和句法依存树)。最后,使用NER模型识别策略中的数据类型和实体。
  2. Annotators:对标注的句子进行注释,识别短语之间关系,以生成包含所有注释的短语图。作者共提出了五种不同的Annotators。
  3. Building PoliGraph:将相同含义的短语(数据类型和实体)合并到一个节点。同时训练了一个sentence transformer模型,对目的注释器识别出的目的短语进行分类(分为服务、安全、法律、广告和分析五类)。最终将具有相同规范化形式的短语合并到一个节点中,从而使短语图转换为 PoliGraph。

图2.2     PoliGraph-er结构示意图

3.实验评估

1.数据集

基于PoliCheck数据集,作者使用爬虫脚本检索截至2023年3月的策略的最新版本。在过滤掉非英文、无效和重复的网页后,最终得到了与13,626个应用程序相关的6,084个隐私策略。作者随机从中选取了 200 条策略作为测试集。

2.准确性评估

PoliGraph-er 成功为 5,255 份隐私策略生成了对应的 PoliGraph。剩余的策略因为声称未收集数据或因使用了不规则的HTML 标签而无法处理。

为了验证准确性,作者随机选择选取了100个PoliGraph 中并从中抽取 5 条边,并读取相应的策略文本以验证每条边是否从文本中正确提取。结果显示,COLLECT edges的精度为 90.4%,SUBSUME edges的精度为 87.7%。

此外,作者还评估了sentence transformer模型的效果,模型的precision 为91.0%,recall为94.8%。

从实验结果看,PoliGraph-er 能够有效生成精确的 PoliGraph,在边缘提取和目的分类方面都有很高的精确度。

图2.3 COLLECT edges和SUBSUME edges的准确性评估结果

3.与PolicyLint的对比试验

作者将PoliGraph 中的collect(n,d) 关系转换为PolicyLint的tuples〈n, collect, d〉,例如〈we, collect, data type〉 or 〈third party, collect, data type〉,选择了一小部分精确的数据类型进行对比试验(如“mac地址”、“路由器SSID”、“Android ID”、“广告标识符”、“电子邮件地址”等)。

作者认为,由于PoliGraph-er只考虑了数据类型的子集,因此排除了许多错误标记的数据类型,因此precision较高;由于使用图结构和改进的 NLP 技术,recall相对于PolicyLint提高了许多,但是受限于语言分析方法,PoliGraph-er不能分析使用列表或表格的策略,或会遗漏长句或复杂句子中的数据类型和实体,造成recall绝对值较低。

图2.4 对比试验结果

4. 性能改进实验

文中进行了消融实验,以了解每个组件和设计决策如何促进 PoliGraph-er 的性能改进。

图2.5 消融实验结果

5.应用1:隐私策略总结

作者使用 PoliGraph 总结数据集中的所有政策并揭示其中的共同模式,包括每种数据类型的收集频率、哪种实体收集这些数据类型以及这些数据类型的用途。结果如下图2.6所示。

图2.6 隐私策略总结结果

6.应用2:评估术语定义的正确性

作者定义了基于California Consumer Privacy Act (CCPA)的全局数据本体,并检查政策中各个数据类型术语定义是否符合CCPA本体。结果显示,数据集中 25.5% (1,339 / 5,255) 的政策存在不同定义,如图2.7所示。

同时,作者发现许多政策使用非标准术语。它们在不同的政策中可以有广泛或不同的定义,如图2.8所示。

图2.7 PoliGraph 中关于全局数据本体的不同定义

图2.8 政策中存在的非标准术语及其可能的定义

7.应用3:矛盾分析

作者扩展了PoliGraph,修改了collection annotator以考虑负面收集语句,并将其表示为 NOT_COLLECT edges。文中对PolicyLint报告的矛盾tuples映射到PoliGraph edges,实验结果如下图2.9所示。由于PoliGraph考虑了上下文信息,因此显著减少了误报,提高了对矛盾声明的准确性。

图2.9 PolicyLint ⽭盾的重新分类结果

8.应用4:数据流到策略的一致性分析

文中将PoliGraph-er与PoliCheck进行对比,结果如图2.10所示。PoliGraph-er对明确披露表现较好,而模糊披露比 PoliCheck差。

图2.10 PoliGraph 与 PoliCheck 中每种数据类型的流到策略一致性结果

4.优缺点

优点:

  1. PoliGraph 使用语义角色标记分析策略,进而生成策略文本的知识图谱,这样的图结构能够推断跨段落和章节的文本,因而解决了传统元组表示造成的语义不完整问题。
  2. 文中提出了全局本体作为外部知识补充,能够对表述模糊的政策文本进行分析。
  3. 文中实验部分非常充分,不仅评估了PoliGraph-er自身的准确性,还进行了消融实验以探究不同模块对于PoliGraph-er性能的影响程度。

缺点:

  1. 由于是图结构,一旦生成了错误的COLLECT edge或SUBSUME edge,推理的错误将会传递下去,造成更大程度的错误。
  2. 使用NER模型识别策略中的数据类型和实体,无法解析表格和一些列表形式的数据。并且,NER模型可能会产生识别错误或者遗漏信息的情况,造成最终得到的知识图谱不够正确或不够完整。
  3. 文中的Collection Annotator仅使用隐私政策的肯定句提取实体和数据类型,并在这些句子中添加从实体到数据类型的 COLLECT 边,但是隐私政策文本中存在一定的疑问句,这个可能会导致遗漏部分关键信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值