🚀 Piiranha-v1:保护您的个人信息!
Piiranha 模型(遵循 cc-by-nc-nd-4.0 许可协议)经过训练,可在六种语言中检测 17 种类型的个人身份信息(PII)。它能够成功捕获 98.27% 的 PII 标记,整体分类准确率达到 99.44%。尤其在检测密码、电子邮件(准确率达 100%)、电话号码和用户名方面表现出色。
🚀 快速开始
Piiranha 模型可用于协助从文本中编辑个人身份信息(PII)。不过,请自行承担使用风险,我们不承担模型预测错误的任何责任。
✨ 主要特性
- 多语言支持:支持英语、西班牙语、法语、德语、意大利语和荷兰语。
- 高精度检测:能够检测 17 种类型的 PII,在 PII 与非 PII 分类任务中表现出色,准确率高达 99.44%。
- 特定类型检测准确:对密码、电子邮件、电话号码和用户名等特定类型的 PII 检测准确率极高。
📦 安装指南
文档未提供安装步骤,故跳过此章节。
💻 使用示例
文档未提供代码示例,故跳过此章节。
📚 详细文档
模型描述
Piiranha 是 microsoft/mdeberta-v3-base 的微调版本。上下文长度为 256 个 Deberta 标记。如果您的文本长度超过此限制,只需将其拆分即可。
支持的语言:英语、西班牙语、法语、德语、意大利语、荷兰语。
支持的 PII 类型:账号号码、建筑物编号、城市、信用卡号码、出生日期、驾照号码、电子邮件、名字、姓氏、身份证号码、密码、社会安全号码、街道地址、税务号码、电话号码、用户名、邮政编码。
在包含约 73,000 个包含 PII 的句子的测试集上,该模型取得了以下结果:
- 准确率:99.44%
- 损失:0.0173
- 精确率:93.16%
- 召回率:93.08%
- F1 值:93.12%
请注意,上述指标考虑了 18 种可能的类别(17 种 PII 和 1 种非 PII),因此这些指标低于仅针对 PII 与非 PII 的二元分类指标。
按 PII 类型的性能
由于类别不平衡(大多数标记不是 PII),报告的性能指标低于 99.44% 的整体准确率。然而,由于 PII 检测的目的,该模型比以下结果更有用。模型有时会将一种 PII 类型误分类为另一种,但最终仍能将该标记识别为 PII。例如,模型经常将名字误判为姓氏,但这并不影响它将该名字标记为 PII。
实体 |
精确率 |
召回率 |
F1 分数 |
支持度 |
ACCOUNTNUM |
0.84 |
0.87 |
0.85 |
3575 |
BUILDINGNUM |
0.92 |
0.90 |
0.91 |
3252 |
CITY |
0.95 |
0.97 |
0.96 |
7270 |
CREDITCARDNUMBER |
0.94 |
0.96 |
0.95 |
2308 |
DATEOFBIRTH |
0.93 |
0.85 |
0.89 |
3389 |
DRIVERLICENSENUM |
0.96 |
0.96 |
0.96 |
2244 |
EMAIL |
1.00 |
1.00 |
1.00 |
6892 |
GIVENNAME |
0.87 |
0.93 |
0.90 |
12150 |
IDCARDNUM |
0.89 |
0.94 |
0.91 |
3700 |
PASSWORD |
0.98 |
0.98 |
0.98 |
2387 |
SOCIALNUM |
0.93 |
0.94 |
0.93 |
2709 |
STREET |
0.97 |
0.95 |
0.96 |
3331 |
SURNAME |
0.89 |
0.78 |
0.83 |
8267 |
TAXNUM |
0.97 |
0.89 |
0.93 |
2322 |
TELEPHONENUM |
0.99 |
1.00 |
0.99 |
5039 |
USERNAME |
0.98 |
0.98 |
0.98 |
7680 |
ZIPCODE |
0.94 |
0.97 |
0.95 |
3191 |
微平均 |
0.93 |
0.93 |
0.93 |
79706 |
宏平均 |
0.94 |
0.93 |
0.93 |
79706 |
加权平均 |
0.93 |
0.93 |
0.93 |
79706 |
预期用途和限制
Piiranha 可用于协助从文本中编辑 PII。请自行承担使用风险,我们不承担模型预测错误的任何责任。
训练和评估数据
文档未提供相关详细信息,故跳过此章节。
训练过程
训练超参数
训练期间使用了以下超参数:
- 学习率:5e-05
- 训练批次大小:128
- 评估批次大小:128
- 随机种子:42
- 优化器:Adam(β1 = 0.9,β2 = 0.999,ε = 1e-08)
- 学习率调度器类型:线性
- 学习率调度器预热比例:0.05
- 训练轮数:5
- 混合精度训练:原生 AMP
训练结果
训练损失 |
轮数 |
步数 |
验证损失 |
精确率 |
召回率 |
F1 值 |
准确率 |
0.2984 |
0.0983 |
250 |
0.1005 |
0.5446 |
0.6111 |
0.5759 |
0.9702 |
0.0568 |
0.1965 |
500 |
0.0464 |
0.7895 |
0.8459 |
0.8167 |
0.9849 |
0.0441 |
0.2948 |
750 |
0.0400 |
0.8346 |
0.8669 |
0.8504 |
0.9869 |
0.0368 |
0.3931 |
1000 |
0.0320 |
0.8531 |
0.8784 |
0.8656 |
0.9891 |
0.0323 |
0.4914 |
1250 |
0.0293 |
0.8779 |
0.8889 |
0.8834 |
0.9903 |
0.0287 |
0.5896 |
1500 |
0.0269 |
0.8919 |
0.8836 |
0.8877 |
0.9907 |
0.0282 |
0.6879 |
1750 |
0.0276 |
0.8724 |
0.9012 |
0.8866 |
0.9903 |
0.0268 |
0.7862 |
2000 |
0.0254 |
0.8890 |
0.9041 |
0.8965 |
0.9914 |
0.0264 |
0.8844 |
2250 |
0.0236 |
0.8886 |
0.9040 |
0.8962 |
0.9915 |
0.0243 |
0.9827 |
2500 |
0.0232 |
0.8998 |
0.9033 |
0.9015 |
0.9917 |
0.0213 |
1.0810 |
2750 |
0.0237 |
0.9115 |
0.9040 |
0.9077 |
0.9923 |
0.0213 |
1.1792 |
3000 |
0.0222 |
0.9123 |
0.9143 |
0.9133 |
0.9925 |
0.0217 |
1.2775 |
3250 |
0.0222 |
0.8999 |
0.9169 |
0.9083 |
0.9924 |
0.0209 |
1.3758 |
3500 |
0.0212 |
0.9111 |
0.9133 |
0.9122 |
0.9928 |
0.0204 |
1.4741 |
3750 |
0.0206 |
0.9054 |
0.9203 |
0.9128 |
0.9926 |
0.0183 |
1.5723 |
4000 |
0.0212 |
0.9126 |
0.9160 |
0.9143 |
0.9927 |
0.0191 |
1.6706 |
4250 |
0.0192 |
0.9122 |
0.9192 |
0.9157 |
0.9929 |
0.0185 |
1.7689 |
4500 |
0.0195 |
0.9200 |
0.9191 |
0.9196 |
0.9932 |
0.018 |
1.8671 |
4750 |
0.0188 |
0.9136 |
0.9215 |
0.9176 |
0.9933 |
0.0183 |
1.9654 |
5000 |
0.0191 |
0.9179 |
0.9212 |
0.9196 |
0.9934 |
0.0147 |
2.0637 |
5250 |
0.0188 |
0.9246 |
0.9242 |
0.9244 |
0.9937 |
0.0149 |
2.1619 |
5500 |
0.0184 |
0.9188 |
0.9254 |
0.9221 |
0.9937 |
0.0143 |
2.2602 |
5750 |
0.0193 |
0.9187 |
0.9224 |
0.9205 |
0.9932 |
0.014 |
2.3585 |
6000 |
0.0190 |
0.9246 |
0.9280 |
0.9263 |
0.9936 |
0.0146 |
2.4568 |
6250 |
0.0190 |
0.9225 |
0.9277 |
0.9251 |
0.9936 |
0.0148 |
2.5550 |
6500 |
0.0175 |
0.9297 |
0.9306 |
0.9301 |
0.9942 |
0.0136 |
2.6533 |
6750 |
0.0172 |
0.9191 |
0.9329 |
0.9259 |
0.9938 |
0.0137 |
2.7516 |
7000 |
0.0166 |
0.9299 |
0.9312 |
0.9306 |
0.9942 |
0.014 |
2.8498 |
7250 |
0.0167 |
0.9285 |
0.9313 |
0.9299 |
0.9942 |
0.0128 |
2.9481 |
7500 |
0.0166 |
0.9271 |
0.9326 |
0.9298 |
0.9943 |
0.0113 |
3.0464 |
7750 |
0.0171 |
0.9286 |
0.9347 |
0.9316 |
0.9946 |
0.0103 |
3.1447 |
8000 |
0.0172 |
0.9284 |
0.9383 |
0.9334 |
0.9945 |
0.0104 |
3.2429 |
8250 |
0.0169 |
0.9312 |
0.9406 |
0.9359 |
0.9947 |
0.0094 |
3.3412 |
8500 |
0.0166 |
0.9368 |
0.9359 |
0.9364 |
0.9948 |
0.01 |
3.4395 |
8750 |
0.0166 |
0.9289 |
0.9387 |
0.9337 |
0.9944 |
0.0099 |
3.5377 |
9000 |
0.0162 |
0.9335 |
0.9332 |
0.9334 |
0.9947 |
0.0099 |
3.6360 |
9250 |
0.0160 |
0.9321 |
0.9380 |
0.9350 |
0.9947 |
0.01 |
3.7343 |
9500 |
0.0168 |
0.9306 |
0.9389 |
0.9347 |
0.9947 |
0.0101 |
3.8325 |
9750 |
0.0159 |
0.9339 |
0.9350 |
0.9344 |
0.9947 |
联系信息
如有问题,请联系:william (at) integrinet [dot] org
框架版本
- Transformers 4.44.2
- Pytorch 2.4.1+cu121
- Datasets 3.0.0
- Tokenizers 0.19.1
🔧 技术细节
文档未提供具体技术实现细节,故跳过此章节。
📄 许可证
该模型遵循 cc-by-nc-nd-4.0 许可协议。