Source-linked AI summary
Polisis: Automated Analysis and Presentation of Privacy Policies Using Deep Learning
Hamza Harkous, Kassem Fawaz, Rémi Lebret, Florian Schaub, Kang G. Shin, Karl Aberer
TL;DR
Privacy policies are difficult to understand and existing notice automation does not scale well across policies and their changes. Polisis addresses this with fine-grained policy annotation, a privacy-specific language model, and hierarchical neural classifiers, evaluated through icon assignment and PriBot. It achieves 88.4% average accuracy for privacy-icon assignment, while PriBot places a correct answer in its top three for 82% of test questions and a relevant answer there for 89% of questions.
Problem
Privacy policies are long and difficult to process, while existing automated analysis is limited to a handful of queries and scalable notice maintenance requires substantial human effort.
Method
Polisis combines a privacy-specific language model trained on more than 130,000 policies with hierarchical neural classifiers that annotate segments at high-level and fine-grained levels.
Results
88.4% average accuracy was achieved for privacy-icon assignment; PriBot placed a correct answer in its top three for 82% of test questions and a relevant answer there for 89%.
Takeaways & Limitations
Polisis supports structured and free-form querying applications for processing privacy policies at scale.
Takeaways & Limitations
Polisis may be limited by the employed privacy taxonomy, which does not fully capture certain application types.
Abstract
from arXiv · showhide
Privacy policies are the primary channel through which companies inform users about their data collection and sharing practices. These policies are often long and difficult to comprehend. Short notices based on information extracted from privacy policies have been shown to be useful but face a significant scalability hurdle, given the number of policies and their evolution over time. Companies, users, researchers, and regulators still lack usable and scalable tools to cope with the breadth and depth of privacy policies. To address these hurdles, we propose an automated framework for privacy policy analysis (Polisis). It enables scalable, dynamic, and multi-dimensional queries on natural language privacy policies. At the core of Polisis is a privacy-centric language model, built with 130K privacy policies, and a novel hierarchy of neural-network classifiers that accounts for both high-level aspects and fine-grained details of privacy practices. We demonstrate Polisis' modularity and utility with two applications supporting structured and free-form querying. The structured querying application is the automated assignment of privacy icons from privacy policies. With Polisis, we can achieve an accuracy of 88.4% on this task. The second application, PriBot, is the first freeform question-answering system for privacy policies. We show that PriBot can produce a correct answer among its top-3 results for 82% of the test questions. Using an MTurk user study with 700 participants, we show that at least one of PriBot's top-3 answers is relevant to users for 89% of the test questions.
1 Introduction
Privacy policies are long, difficult to process, and costly to retrofit with scalable notices, while existing automation covers only limited queries. Polisis addresses this gap through fine-grained policy annotation and applications for structured and free-form querying.
- Privacy policies remain excessively long and difficult to follow despite their role in informing users about data practices.
- Users, researchers, and regulators lack effective tools for processing and understanding privacy-policy content at scale.
- Existing alternative notice formats face substantial human effort for retrofitting and ongoing maintenance, while prior automation supports only a handful of queries.
- Polisis annotates previously unseen policies at segment level with high-level and fine-grained privacy labels, enabling scalable, dynamic, and multidimensional queries.
- 88.4% average accuracy was achieved for automatically assigning privacy icons using labels compared with manual annotations by three legal experts.
- PriBot placed at least one correct answer in its top three for 82% of test questions and a relevant answer in its top three for 89% of questions in a 700-person MTurk study.
2 Framework Overview
Polisis organizes policy analysis into application, data, and machine-learning layers. Together, these layers segment policies, produce privacy annotations, and match policy information to user queries.
- Polisis comprises Application, Data, and Machine Learning layers that operate over semantically coherent policy segments and a privacy-practice taxonomy.
- Application Layer: The Application Layer receives user queries, matches their privacy classes to policy-segment classes, and supports modular querying.
- Data Layer: The Data Layer scrapes policy webpages and partitions them into independently consumable, semantically coherent segments.
- Machine Learning Layer: The Machine Learning Layer assigns each segment probabilistic class–value pairs describing its data practices.
3 Data Layer
The Data Layer converts a policy webpage into semantically coherent segments through extraction, list handling, and segmentation. Its scraping procedure captured nearly all manually retrieved content in a 200-website check.
- The Data Layer requires only a privacy-policy link and preprocesses policies through extraction, list handling, and segmentation.
- Policy Extraction: The segmenter loads policy webpages in headless Chrome and removes irrelevant HTML elements after JavaScript execution.
- Policy Extraction: 99.08% of manually fetched policy content was covered on average across the top 200 global websites evaluated.
- List Aggregation: Lists require special treatment because whole-list segments can produce noisy annotations, whereas isolated list items may lack sufficient context.
- List Aggregation: Short list items are merged with their introductory statement, while longer items become separate paragraphs prefixed by that statement.
- Policy Segmentation: Policy segmentation first uses HTML div and p tags, then applies GraphSeg to subdivide long segments into semantically coherent groups.
4 Machine Learning Layer
The Machine Learning Layer combines privacy-domain embeddings with hierarchical neural classifiers to label policy segments at multiple granularities. The hierarchy supports category-aware fine-grained predictions.
- The ML Layer builds privacy-domain word embeddings from unlabeled policies and trains hierarchical neural classifiers for segment and query analysis.
- Privacy Embeddings: 130K privacy policies from Google Play apps formed the corpus for custom privacy-policy embeddings.
- Training Data: The OPP-115 dataset contributes 115 manually annotated privacy policies and 23K annotated data practices for fine-grained classifier training.
- Hierarchical Classification: The hierarchy uses one multi-label classifier for high-level categories and attribute-level classifiers for values beneath each attribute.
- Hierarchical Classification: Attribute-level outputs are interpreted only for attributes descending from the relevant high-level category.
- CNN Classifiers: CNNs integrate pretrained embeddings and recognize class-indicating token sets independently of their positions in a segment.
- CNN Classifiers: The CNN architecture applies convolution, max pooling, dense layers, and sigmoid outputs with multi-label cross-entropy loss.
- Evaluation: Top-level classifiers predict privacy categories with high accuracy, with metrics reported as macro-averages over label presence and absence.
5 Application Layer
Polisis supports structured and free-form privacy-policy queries that serve users, researchers, and regulators. Its outputs can populate refreshed notices, support conversational access, and enable analysis at scale.
- Polisis supports structured queries over predicted privacy classes and policy segments, alongside free-form natural-language questions.Structured responses return segments satisfying predicates; free-form responses return segments matching the user’s question.
- Users: Polisis can automatically populate short notices such as nutrition tables and privacy icons, refreshing them when policies or generation rules change.The framework can also support privacy-centered comparative shopping through policy-level privacy metrics.
- Users: Polisis can return relevant policy segments for conversational interfaces and potentially rephrase answers into simpler language.A rule engine can generate text from the predicted classes of an answer segment.
- Researchers: Researchers can query policy datasets at scale to analyze companies’ data-collection claims, including collection of health data by apps.Queries can combine information types with first-party or third-party collection categories.
- Regulators: Regulators can use Polisis to scale studies that previously assessed the permissiveness of compliance checks across only tens of policies.The framework supports processing regulator-defined queries over large datasets.
6 Privacy Icons
Polisis assigns privacy icons by translating icon rules into queries over automatically predicted privacy labels, then compares those assignments with expert annotations and existing services. It achieves 88.4% average accuracy against aggregated expert labels, while alternative interpretations expose substantial differences from Disconnect’s distributions.
- 6.1 Predicting Privacy Icons: Polisis uses Disconnect icons as a proof-of-concept for structured privacy-policy queries and compares automatic assignments with law-student annotations.The evaluation also investigates the permissiveness of icons assigned from the TRUSTe dataset.
- 6.1 Predicting Privacy Icons: Disconnect icon descriptions are translated into explicit first-order logic queries over OPP-115 privacy labels.The interpretation targets automatic processing rather than reverse-engineering the original icon-creation logic.
- 6.1 Predicting Privacy Icons: 88.4% average accuracy matched icons based on experts’ aggregated OPP-115 annotations across 50 held-out privacy policies.The comparison uses the union of three experts’ labels and reports substantial to almost perfect Cohen’s κ values.
- 6.2 Auditing Compliance Metrics: 0.71 and 0.61 Hellinger distances separated Polisis and Disconnect distributions for Expected Use and Expected Collection under the initial strategy.Disconnect’s distributions were dominated by yellow opt-out icons.
- 6.2 Auditing Compliance Metrics: 0.47 and 0.50 Hellinger distances resulted when yellow was assigned if at least one concerned segment included an opt-in or opt-out choice.The permissive interpretation produced significantly more red-dominated icons and suggested choices often occur outside data-use segments.
- 6.2 Auditing Compliance Metrics: 0.22 and 0.19 Hellinger distances brought Disconnect and Polisis distributions within reasonable proximity under the most permissive policy-wide interpretation.Manual analysis found that collection and sharing discussions often separate data practices from user-choice language.
- 6.3 Discussion: Polisis’ comprehensive labels allow developers to adapt icon definitions or extract additional icons without rebuilding the underlying analysis.The framework is intended to assist human annotators, especially where legal liability issues arise, rather than replace them.
7 Free-form Question-Answering
PriBot answers free-form questions by ranking segments from previously unseen privacy policies. It combines policy and question classifications, semantic proximity, categorization certainty, and vocabulary coverage to select and qualify answers.
- 7 Free-form Question-Answering: PriBot targets free-form privacy questions motivated by conversation-first devices where linking to or reading privacy policies aloud is unusable.
- 7.1 Problem Formulation: The system passes the question to its machine-learning layer and the policy link to its data layer for probabilistic category and attribute-value annotation.
- 7.1 Problem Formulation: Policy segments form the candidate-answer pool, with correctness determined by membership in the ground-truth answer subset.
- 7.2 PriBot Ranking Algorithm: PriBot ranks each candidate by computing a proximity score between the question and answer representations in the Class Comparison module.
- 7.2 PriBot Ranking Algorithm: Category probabilities are squared during comparison, giving greater weight to high-probability categories.
- 7.2 PriBot Ranking Algorithm: The proximity score emphasizes features significant in both question and answer, then normalizes the result to [0,1].The method uses a minimum function and denominator for normalization.
- 7.2 PriBot Ranking Algorithm: For a third-party-release question, PriBot ranked a matching disclosure segment at 0.63 and a security segment at 0.The ranking distinguished the segments because the question and first answer shared the same high-level category despite overlapping terms.
- 7.2 PriBot Ranking Algorithm: PriBot’s confidence indicator lowers confidence for semantic mismatch, ambiguous categorization, or unknown words.Unknown words include non-English terms or questions with many spelling mistakes.
8 PriBot Evaluation
PriBot is evaluated on a privacy-question dataset built from real user tweets, using predictive accuracy and user-perceived relevance. It outperforms baseline approaches, with performance varying by ranking depth, policy length, and embedding choice.
- 8.1 Twitter Dataset: 120 Twitter questions formed PriBot’s test dataset after filtering 4,743 tweet pairs to 260 and validating 182 questions as valid.The dataset was sampled from questions users asked companies and was used for testing rather than training.
- 8.1 Twitter Dataset: Two annotators created ground-truth answer segments, agreeing on at least one answer for 88% of matching questions with Cohen’s κ = 0.65.The resulting dataset includes questions, policy segments, and ground-truth answers.
- 8.3 Predictive Accuracy Evaluation: PriBot’s top-k score at k = 1 was 0.68, compared with 0.39 for Retrieval, 0.27 for SemVec, and 0.08 for Random.PriBot reached top-k scores of 0.75, 0.82, and 0.87 for k ∈{2,3,4}.
- 8.3 Predictive Accuracy Evaluation: PriBot consistently achieved higher NDCG than the other models, indicating stronger ranking performance when low values of k matter most.NDCG evaluates the ordering of correct answers among the returned results.
- 8.3 Predictive Accuracy Evaluation: PriBot’s advantage over Retrieval was small for short policies but large for medium policies and still considerable for long policies.Policy-length groups used 28 and 46 segments as the 33rd and 66th percentiles.
- 8.3 Predictive Accuracy Evaluation: Policies Embeddings outperformed alternatives at every k, scoring 14% more at k = 1 and 5% more at k = 2 than the closest variant.The embeddings combine domain specificity with subword embeddings for out-of-vocabulary words.
9 Discussion
Polisis supports scalable privacy-policy applications but remains bounded by its taxonomy, classification errors, and vulnerability to adversarial wording. The authors recommend modular extensions, confidence scores, and human involvement where legal implications matter.
- Polisis may not fully capture every application because its OPP-115 privacy taxonomy omits some types of applications.The authors suggest filtering relevant data at a high level or adding new categories and attributes.
- Automated misclassification requires applications to account for confidence in reported answers, icons, or other short notices.Confidence scores are proposed as one mitigation.
- Polisis is not guaranteed to withstand adversarially constructed policies that preserve meaning while misleading its classifiers.Synonym substitutions far from the model’s embedding space could cause segments to be misclassified.
- A human-in-the-loop deployment can balance Polisis’ utility with legal implications in customer-support settings.Companies and service providers can use PriBot as an assistance tool for support agents handling privacy inquiries.
10 Related Work
Prior work introduced alternative privacy-notice formats and automated analyses, but adoption and scalability remained limited. Polisis extends this work with generic, fine-grained analysis and a question-answering system for complex privacy-policy questions.
- Alternative privacy presentations include nutrition labels, icons, machine-readable standards, and short notices, but many require substantial human effort to retrofit and maintain.P3P was not adopted by browser developers and service providers.
- Polisis can automate generation of alternative privacy notices without relying on service providers to create them themselves.This connects its analysis framework to previously proposed icons, nutrition labels, and machine-readable presentations.
- Earlier automated privacy-policy research largely addressed limited tasks, such as vagueness modeling and detecting inconsistencies between app practices and policies.The OPP-115 dataset enabled several of these studies.
- Polisis is presented as the first generic system for automated privacy-policy analysis, improving comprehensiveness and accuracy over prior approaches.It supports annotation with up to 10 high-level and 122 fine-grained classes.
- PriBot targets complex, open-ended non-factoid questions and achieves results described as comparable to state-of-the-art systems in other domains.Its approach does not require a dataset containing questions and answers.
11 Conclusion
The paper presents Polisis as a generic framework for detailed, scalable privacy-policy analysis, demonstrated through structured notices and free-form question answering. Its evaluations report expert-level accuracy while opening opportunities for additional privacy-policy presentation tools.
- Polisis is a generic framework that extracts high-level practices and fine-grained information from privacy policies for processing at scale.The system uses a hierarchy of neural networks to support this extraction.
- The demonstrated applications support structured querying through privacy icons and free-form querying through PriBot.The paper also uses the icon application to audit TRUSTe’s policy analysis approach.
- The evaluations report that Polisis matches the accuracy of expert privacy-policy analysis across the demonstrated applications.PriBot answers users’ free-form questions in real time and with high accuracy.
- Polisis could support further privacy-policy presentation mechanisms, including simpler-language summaries and comparative shopping applications.These are presented as opportunities enabled by the extracted information.
Appendix A: Full Classification Results
The appendix reports classification results for the Segment Classifier at the category level and for 15 selected attribute levels. The supplied appendix passages identify the evaluated attributes and provide an overall average.
- Classification scope: The appendix presents category-level results for the Segment Classifier and results at 15 selected attribute levels.The experiments use the hyperparameters listed in Table 1.
Appendix B: Applications’ Screenshots
The appendix presents screenshots of PriBot answering privacy-policy questions and of a web application visualizing Polisis results. The examples illustrate confidence-aware answers, robustness to misspellings and unknown queries, discrepancy warnings, and interactive policy-result exploration.
- PriBot web app: PriBot screenshots cover questions about third-party sharing, data retention, unknown queries, missing answers, misspellings, and discrepancies across policy segments.The appendix identifies these examples as screenshots of PriBot’s web app answering questions about multiple companies.
- PriBot web app: Confidence-aware responses can show only a high-confidence answer, explain unknown queries, or explain when no policy answer is found.The figures show confidence reducing irrelevant distractions, accounting for unknown words, and explaining no-answer cases using detected high-level categories.
- PriBot web app: Subword embeddings help PriBot find a relevant answer despite a significantly misspelled question, while segment discrepancies trigger a warning to the user.These examples involve a misspelled data-deletion question and discrepancies across policy segments.
- Polisis web application: The Polisis web application visualizes data flows, collection purposes, user choices, security aspects, and the policy statements linked to each result.Users can inspect related policy statements by hovering over data-flow links or expanding listed items.