写点什么

(1-15/15) 预训练模型 + 微调范式下如何做到文本数据安全

作者:mtfelix
  • 2022 年 1 月 18 日
  • 本文字数:1057 字

    阅读完需:约 3 分钟

(1-15/15) 预训练模型+微调范式下如何做到文本数据安全

2022.1.18 周二 mtfelix


今天在过一个项目方案的时候,碰到一个蛮有意思的技术需求。

预训练模型+微调范式

先给大家做个背景铺垫。


现在做自然语言处理,大都采用「预训练模型+微调」的技术范式。


简单解释下就是,基于某种架构设计的大参数模型,先经过海量的公开数据集(比如全量中文 wikipedia、全网中文网页等)进行训练,得到一个预先训练好的模型。期望(仅仅是期望)这个模型能把很多常见语言知识学个差不多。


然后在具体任务(比如,微博情感分类)上,利用针对这个具体任务标注的数据(比如,1 万条带情感极性标注的微博数据)进行微调训练。


这样,一个可以做具体任务的模型就出炉了。


一般把这个具体任务称为是「下游任务」。

假设下游任务的数据无法明文获取怎么办?

今天碰到的需求是:项目中处理的文本数据,是非常核心的资产数据。


不是因为涉及用户信息(数据脱敏)这种,而是因为这个数据价值非常大,所以数据持有部门无法批量明文式提供给我们。


这样的话,对我们的模型训练就提出了不小的挑战。


目前我们盘点的几个解决思路:

  • (1) 持有方加密,我们只能拿到密文文本。这样的话预训练模型就无法适应。

  • - 这里还有一个加密方式的问题,如果是简单的词表映射式加密,是可逆的,那还是不安全。

  • - 其他的把文本语义都损失掉的加密方式,更不可行。

  • (2) 我们的训练过程托管给数据持有方来做。相当麻烦,我们和对方都无法接受。

  • (3) 语义向量化(embedding)。为了能利用好预训练模型,需要构造一个能保留语义信息的向量化方式。比如,

  • - 持有方用一个固定的预训练模型专门做向量化(类似于编码器)

  • - 给到我们的数据就是一个语义向量(embedding)

  • - 我们拿这种语义向量化后的数据去做下游训练,将来线上服务也是如此

  • 这个方式有个潜在的问题是,编码器给出的向量表示,会损失语义信息,对下游模型的效果会有影响,具体影响多大,需要各种尝试。

  • 这个方式的数据是不可逆的,所以能保证明文数据的安全。


在其他机制不变的情况下,目前我们觉得(3)是一个折中方案。


这个问题有意思的地方在于:想利用明文训练的预训练模型,去做一个无法获取明文的下游任务。


不知道大家有没有更好的建议?

和联邦学习有没有关系?

有一种保护数据隐私,不共享数据但又能联合学习的范式叫联邦学习。

大概查了下,和我们的挑战应该不是一回事。

联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。联邦学习作为分布式的机器学习范式,可以有效解决数据孤岛问题,让参与方在不共享数据的基础上联合建模,能从技术上打破数据孤岛,实现 AI 协作。

发布于: 刚刚阅读数: 3
用户头像

mtfelix

关注

内心平静是一生的追求 2018.01.17 加入

简单的技术人

评论

发布
暂无评论
(1-15/15) 预训练模型+微调范式下如何做到文本数据安全