企业中常常会收到监管合规的需求,对用户敏感数据和其他业务数据进行资产排查以配合监管工作,同时也需要对一些商业机密数据进行日常的排查和保护,为了满足这些需求就需要对不同数据类型进行分类构建数据资产清单。

常见需要保护的数据类型有 PII (Personally Identifiable Information) 数据,这些数据常常包含了如姓名、电话、地址、身份证号等信息,是企业监管合规的首要保护数据;此外还有商业机密数据,比如商品价格、GMV(Gross Merchandise Value)、商品销量等,这些商业机密数据是企业保持经营的重要指标。

传统数据分类方法

统计关键词 (召回低)

  • 方法: 使用简单的、硬编码的关键词列表(例如"电话"、“手机”、“地址”)进行匹配。
  • 特点: 这是最基础的一步。它的优点是执行速度极快,易于实现。
  • 局限性(召回低): 它只能找到字面上匹配的项。如果 PII 以非标准格式(例如,“Tel:“代替"电话"或将电话号码写成字符)出现,它就会漏掉。因此,它的召回率(Recall)很低(即错过了很多实际存在的 PII)。

正则校验 (误报高)

  • 方法: 使用正则表达式(Regex)来匹配 PII 的特定模式(例如,一个 11 位数字的模式 ^\d{11}$ 或身份证号码模式)。
  • 特点: 它可以识别出比简单关键词匹配更多样化的格式。
  • 局限性(误报高): 它缺乏上下文理解。例如,模式 ^\d{11}$ 可能会把一个 11 位的订单号或产品序列号错误地识别为手机号。因此,它的准确率(Precision)很低(即把很多非 PII 错误地标记为了 PII)。

机器学习分类方法

BERT & NER (提升准确率)

  • 方法: 引入基于 Transformer 的深度学习模型,如 BERT,并结合命名实体识别(NER)任务。
  • 特点: 这些模型可以"理解"单词在句子中的上下文。不再仅仅依赖模式,它们可以根据周围的词来判断"李华"是一个人名还是一个普通词,或者"13812345678"出现在"我的电话是…“之后就是一个电话号码。
  • 作用: 极大地提高了准确率(Precision),减少了正则校验带来的误报。

LLM (扩写上下文提升召回率)

  • 方法: 使用大型语言模型(LLM)对上下文信息进行补全,提升模型分类召回率。
  • 特点: LLM 具有强大的语言生成和理解能力。
  • 作用(提升召回率): 它可以被用来"扩写"或"重写"包含 PII 的句子的上下文,或者生成特定 PII 的同义词和变体。通过提供更多样化、更隐蔽的表达方式作为训练数据,它可以帮助 BERT/NER 模型学习识别那些以前可能漏掉的、非标准的 PII 表达。这主要用于提升系统的召回率

迁移学习分类方法

LLM 分类 Skills

  • 方法: 让大参数量的模型对长文本内容进行分类推理,使用 Skills 来对分类提示词进行固化和维护。
  • 特点: 方便上线和维护分类策略,对于复杂场景中的识别比较有效果,如识别一个上下文句子中是否包含了员工敏感信息还是用户敏感信息。
  • 作用: 提升分类准确率,但由于完全黑箱的分类非常依赖基座模型的推理能力。

蒸馏小模型分类

  • 方法: 对于所有数据都进行数据分类会造成大量的 Token 费用这样长期下来往往不太划算,对少量数据使用优秀的大模型进行数据标注,将这些标注数据训练出一个只用于分类的小模型。
  • 特点: 依赖大模型进行数据标注训练出一个低成本高效运行的小模型用于日常分类。
  • 作用: 成本和效率的权衡,具有统计学意义的解释性。