Tools and methods for detecting and anonymizing Personally Identifiable Information (PII) using AI-driven approaches. This repository includes implementations of fine-tuned models and comparative evaluations for enhancing data privacy in educational content.
10
stars
36
commits
Python
primary language
Nov 14, 2025
updated
Code for our experiments on PII detection using Presidio, Azure AI Language, prompted GPT-4o-mini, fine-tuned GPT-4o-mini, and Verifier models on the CRAPII and TSCC datasets.
To access the TSCC dataset, see the paper (instructions inside for how to request the data):
https://ecp.ep.liu.se/index.php/sltc/article/view/575
Download the following files and place them in the data/ directory:
obfuscated_data_06.jsonpii_true_entities.csvoriginal_transcripts.txtplaceholder_locations_new.txtCreate the Base Train Set, Verifier Train Set, and Test Set from CRAPII:
python mk_train.py
Run inference with Presidio (en_core_web_lg and en_core_web_trf) on the Test Set:
python presidio_inference.py lg
python presidio_inference.py trf
Run the Azure model on the CRAPII Test Set:
azure_inference.ipynbOpen and run all cells in:
prompted_gpt_inference.ipynbFine-tune on the CRAPII Base Train Set:
ft_gpt_training.ipynbThen evaluate on the CRAPII Test Set:
ft_gpt_inference.ipynbCreate the dataset and train the Verifier models:
verifier_training.ipynbThen perform inference on the Test Set:
verifier_inference.ipynbCreate and split the TSCC dataset into train/test:
python TSCC_dataset_creation.py
Fine-tune GPT-4o-mini on the TSCC train split:
gpt_ft_tscc.ipynbRun experiments on TSCC:
TSCCIf you use this repository, please cite our paper:
arXiv: https://arxiv.org/abs/2501.09765
This project is licensed under the MIT License – see the LICENSE file for details.
36 commits
Python
53.7%
Jupyter Notebook
46.3%
Tools and methods for detecting and anonymizing Personally Identifiable Information (PII) using AI-driven approaches. This repository includes implementations of fine-tuned models and comparative evaluations for enhancing data privacy in educational content.
10
stars
36
commits
Python
primary language
Nov 14, 2025
updated
Code for our experiments on PII detection using Presidio, Azure AI Language, prompted GPT-4o-mini, fine-tuned GPT-4o-mini, and Verifier models on the CRAPII and TSCC datasets.
To access the TSCC dataset, see the paper (instructions inside for how to request the data):
https://ecp.ep.liu.se/index.php/sltc/article/view/575
Download the following files and place them in the data/ directory:
obfuscated_data_06.jsonpii_true_entities.csvoriginal_transcripts.txtplaceholder_locations_new.txtCreate the Base Train Set, Verifier Train Set, and Test Set from CRAPII:
python mk_train.py
Run inference with Presidio (en_core_web_lg and en_core_web_trf) on the Test Set:
python presidio_inference.py lg
python presidio_inference.py trf
Run the Azure model on the CRAPII Test Set:
azure_inference.ipynbOpen and run all cells in:
prompted_gpt_inference.ipynbFine-tune on the CRAPII Base Train Set:
ft_gpt_training.ipynbThen evaluate on the CRAPII Test Set:
ft_gpt_inference.ipynbCreate the dataset and train the Verifier models:
verifier_training.ipynbThen perform inference on the Test Set:
verifier_inference.ipynbCreate and split the TSCC dataset into train/test:
python TSCC_dataset_creation.py
Fine-tune GPT-4o-mini on the TSCC train split:
gpt_ft_tscc.ipynbRun experiments on TSCC:
TSCCIf you use this repository, please cite our paper:
arXiv: https://arxiv.org/abs/2501.09765
This project is licensed under the MIT License – see the LICENSE file for details.
36 commits
Python
53.7%
Jupyter Notebook
46.3%