微信扫码
与创始人交个朋友
我要投稿
Generatived AI 的快速发展导致许多公司纷纷将它整合到业务中。其中最常见的方式是RAG(Retrieval Augmented Generation),即建立可以解答知识库中信息问题的AI系统。
在现有解决方案中,RAG被视为扩展语言模型应用领域的简便且经济的手段:将大量文档存储在数据库中,让 AI 根据给定输入检索最相关的文档,然后根据检索的文档重新构造 prompt 来启发 LLMs 的回答。关于RAG的内容可以阅读之前的文章 [来快速了解下RAG]。
一般来说,RAG 系统通过使用 Embedding 向量(由Embedding model生成的文档的向量表示)来判定 query 与文档的相关性。由于 Embedding 向量可以表示相似性概念,与 query 相关的文档在 Embedding 空间中具有更高的相似性。
RAG 的广泛应用催生了 Vector Database (专为存储和搜索大量嵌入向量而设计的新型数据库)的兴起。Vector Database 只接收文本数据的 Embedding 向量,无需对应的实际文本,返回匹配文档的索引结果。
然而,Vector Database 中的隐私风险并未被全面关注。对于给定的 Embedding 向量,可能存在被他人重构初始文本的风险。
虽然神经网络的输出通常非常复杂,很难逆向推导出输入。而且,在通过客户端访问神经网络时,通常无法直接访问模型的权重或梯度。但我们可以构建一个逆向网络来根据 <input, output>
组合将输出映射回输入空间。在 CV 领域的Feedforward Inversion研究已经证明了,我们可以根据输出层的logits近似地恢复输入图像。
一个引人注目的问题是:如果我们可以根据图像的Embedding恢复原始图像,那么我们是否能够根据文本的Embedding恢复原始文本呢?
如果能从文本 Embedding 中重构原始文本,说明文本 Embedding 向量不再是一种安全的信息存储或通信模式,这可能意味着目前的 Vector Database 存在较大的隐私风险。
本文介绍这个课题的论文 Text Embeddings Reveal (Almost) As Much As Text
:
URL: https://arxiv.org/abs/2310.06816
代码:https://github.com/jxmorris12/vec2text
作者将文本恢复问题定义为受控生成(Controlled Generation)问题,即寻求生成尽可能接近给定 Embedding 向量的文本。并提出了 Vec2Text 方法通过逐步迭代的方式实现了根据原始 Embedding 生成近似输入文本。
实验结果表明,Vec2Text 以接近完美的 的 BLEU 恢复了 个 Token 的输入,并且有 的完全恢复率。
这表明,使用 Embedding 向量编码的文本数据可能存在隐私风险,应该对待文本 Embedding 向量的方式与对待原始数据相同,即谨慎保护。
在设计模型由 Embedding 学习原始文本时,最直接的方法如下图所示:
使用 Decoder-only Transformer 模型根据 Embedding 直接预测原始文本。实验结果表明,模型可以猜到输入文本的主题,并预测到其中一些单词,但并不能很好预测词的顺序,并且大部分单词都是错的。最终只有不到 30 的 BLEU,几乎没有能精确匹配的。
作者强调,很难在单次前向传递中要求模型逆转另一个模型的输出,但模型在恢复输入文本方面可能会猜测主题和一些单词。作者又尝试了一个优化版,采用Encoder-Decoder Transformer,如下图所示:
在该模型中:
其中,EmbToSeq可以表示为:
其中,,,是序列长度。
通过这个操作之后,模型预测的BLEU 达到了50。
作者从这个版本中得到启发:
实验发现,这版模型生成文本的 Embedding 与原始 Embeddign 有 的余弦相似度。这意味着模型能生成与真实文本在 Embedding 空间中非常接近但又并非完全相同的文本。
最后,作者提出的 Vec2Text 采用了逐步迭代的方式,来逐步优化模型预测文本的 Embedding 向量,使其在空间上逐步接近原始 Embedding 向量。
也就是说,原始输入的 Embedding 可以看作基准(要到达的目标),当前的预测文本及其 Embedding 可以视为当前状态。通过优化模型使其输出更接近于基准。
Vec2Text总体框图如下图所示:
其公式化表示如下:
其中,表示迭代次数, 是 Embedding 模型将文本表示为对应 Embedding 向量。
Vec2Text模型结构如下图所示:
模型根据原始 Embedding 、上一阶段预测的文本以及对应的 Embedding 来预测出原始 Embedding 的文本序列。
在实验中,模型可以进行递归查询。给定当前的文本和其 Embedding,可以运行多个步骤的优化,迭代地生成文本,在 re-embedding 它们,并将它们作为输入传递给模型。
针对 32 个 Token 长度的文本,通过 50 步迭代,模型的完全恢复率达 92%,并且 BLEU 分达到 97。这意味着模型几乎能完美地重构了每个句子。
本文介绍了在论文Text Embeddings Reveal (Almost) As Much As Text
中提出的 Vec2Text 方法。该方法通过逐步迭代的方式,在latent space中优化模型预测文本的Embedding 向量,使其在空间上逐步接近原始 Embedding,最终预测出原始向量对应的真实文本。
实验中Vec2Text 以 的准确率恢复了长度为 的文本。这表明文本 Embedding 在很大程度上揭示了原始文本的内容。因此,文本 Embedding 和原始文本之间存在某种等价性,这种等价性对于 Embedding 的匿名化具有重大挑战:Embedding 应被视为是高度敏感的隐私数据,并且应以与原始文本相同的方式在技术上和可能在法律上受到保护。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-03-30
2024-04-26
2024-05-10
2024-04-12
2024-05-28
2024-04-25
2024-05-14
2024-07-18
2024-08-13
2024-04-26