中科大:LLM知识遗忘评估与优化

在这里插入图片描述

📖标题:A Closer Look at Machine Unlearning for Large Language Models
🌐来源:arXiv, 2410.08109

🌟摘要

🔸大型语言模型(LLM)可能会记住敏感或受版权保护的内容,从而引发隐私和法律问题。由于从头开始再培训的成本很高,研究人员试图采用机器学习来从LLM中删除特定内容,同时保持整体性能。
🔸本文讨论了LLM机器学习中的几个问题,并提供了我们对可能方法的见解。为了解决遗忘后模型输出评估不足的问题,我们引入了三个额外的指标来评估标记多样性、句子语义和事实正确性。然后,我们将忘却方法分为无目标和有目标,并分别讨论它们的问题。具体来说,非定向忘却试图近似的行为是不可预测的,可能涉及幻觉,现有的正则化不足以进行定向忘却。为了缓解这些问题,我们建议使用最大化熵(ME)的目标来实现非目标忘却,并将答案保留(AP)损失作为目标忘却的正则化。
🔸在三种情境下的实验结果,即虚拟忘却、持续忘却和现实世界忘却,证明了我们方法的有效性。该代码可在以下网址获得https://github.com/sail-sg/closer-look-LLM-unlearning.

🛎️文章简介

🔸研究问题:如何让大语言模型(LLM)遗忘特定信息后,还能保持其他知识和任务性能?
🔸主要贡献:论文引入了三个新的评估指标来更全面地评估遗忘模型的输出,并提出了一种新的正则化损失(AP损失)来防止模型在遗忘过程中变得过于无知。

📝重点思路

🔺相关工作

🔸LLM的记忆:LLM通过广泛的语料库学习,可能会无意中记住涉及隐私和版权的信息,而过滤这些语料很困难。
🔸LLM的机器遗忘:主流方法主要依赖于参数优化,通常涉及在遗忘集上微调模型以产生未学习的版本,有可能损害整体性能,其他技术包括对比解码、任务向量、上下文学习以及输入处理和检测。
🔸评估指标:ROUGE®衡量模型输出与问题与真实答案的词级匹配度,概率(P)衡量模型预测真实答案的能力,真值比(TR)衡量模型是否更喜欢问题的正确答案或错误答案。

🔺论文方案

🔸评估指标:分析传统指标,提出三个新的评估指标,以更全面地评估遗忘模型的输出。
🔸分类现有方法:将现有的遗忘方法分为两类,分别是无目标遗忘和有目标遗忘,并分析了它们的潜在问题。
🔸提出新的正则化损失:称为答案保留损失(Answer Preservation, AP损失),以防止模型在遗忘过程中变得过于无知。
🔸实验设计:在虚拟遗忘、持续遗忘和现实世界遗忘三种场景实验,评估了不同方法的效果。

🔺新评估指标

🔸令牌熵(TE):衡量模型输出中令牌的多样性。
🔸余弦相似度(CS):衡量模型在学习前后输出的语义相似度。
🔸蕴涵分数(ES):衡量一组问题的模型输出相对于真实答案的事实正确性。
🔸模型效用(MU):在保留集上计算所有上述指标,并将它们的调和平均值作为MU。

🔎分析总结

🔸遗忘方法优化:无目标遗忘推荐最大化熵(ME)以减少幻觉风险 ,有目标遗忘推荐答案保留(AP)损失以防止模型过度遗忘。
🔸有目标遗忘方法的效果:实验结果显示,只有论文提出的IDK+AP方法在所有三个任务中都能保持稳定的遗忘效果。
🔸遗忘集大小对效果的影响:随着遗忘集大小的增加,基线方法的遗忘效果会迅速下降,导致模型变得过于无知,而IDK+AP方法仍能保持较高的遗忘效果。
🔸现实世界遗忘场景的评估:论文提出的方法在保持模型性能的同时,能够有效防止信息泄露。

💡个人观点

论文的核心是提出了新的评估指标和遗忘方法。

🧩附录

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/912717.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

django+postgresql

PostgreSQL概述 PostgreSQL 是一个功能强大的开源关系数据库管理系统(RDBMS),以其高度的稳定性、扩展性和社区支持而闻名。PostgreSQL 支持 SQL 标准并具有很多先进特性,如 ACID 合规、复杂查询、外键支持、事务处理、表分区、JS…

Flink CEP 入门

1.复杂事件处理 大数据应用领域存在业务逻辑非常复杂的应用系统,比如,一个应用要检测特定顺序先后发生的一组事件,对事件组进行分析或报警提示,若使用SQL 或者DataStream API 处理这类应用,过程相对来说比较…

CSS教程(三)- CSS 三大特性

1. 层叠性 介绍 多组CSS样式共同作用于一个元素,就会出现 覆盖(层叠) 另一个冲突的样式。 层叠原则 样式冲突:遵循就近原则(哪个样式离结构近,就执行哪个样式) 样式不冲突,就不会重…

粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测

粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测 目录 粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现PSO-BiTCN-BiGRU-Attention粒子…

Unity引擎智能座舱解决方案

作为全球领先的 3D 引擎之一,Unity引擎为车载3D HMI提供全栈支持。即为从概念设计到量产部署的整个 HMI 工作流程提供创意咨询、性能调优、项目开发等解决方案,从而为车载信息娱乐系统和智能驾驶座舱打造令人惊叹的交互式体验。 专为中国车企打造的HMI引…

ctfshow(316,317,318)--XSS漏洞--反射性XSS

反射型XSS相关知识 Web316 进入界面: 审计 显示是关于反射性XSS的题目。 思路 首先想到利用XSS平台解题,看其他师傅的wp提示flag是在cookie中。 当前页面的cookie是flagyou%20are%20not%20admin%20no%20flag。 但是这里我使用XSS平台,…

python 爬虫 入门 六、Selenium

Selenium本来是一个自动测试工具,用于模拟用户对网站进行操作。在爬虫领域也有其用处。 一、下载安装Selenium及附属插件 pip install Selenium 安装完成后还需要安装一个浏览器驱动,来让python能启动浏览器。 如果是Edge或者其他基于Chromium的浏览器…

Linux环境基础和基础开发工具使用

文章目录 一、yum软件管理器1、包管理器2、yum3、apt4、安装源 二、编辑器vim1、各种模式2、打开时直接让光标定位到指定号3、!加命令字符 三、命令模式1、i 进入插入模式2、**Shift :** 进入底行模式3、光标定位4、ZZ(大写)保存并退出vim5、…

java设计——日历可视化

设计目标 设计的这个日历既可以捕捉当天的日期&#xff0c;并且使用红色圆圈圈起来以及实时具体时间&#xff0c;而且将月份和年份设计了下拉框&#xff0c;可以自行选择具体的月份年份&#xff0c;也可以通过<和>两个按键实现对月份的转变&#xff0c;同时年份和月份的…

校园官网练习---web

HTML&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>西安工商学院</title><…

【数据结构实战】从零开始打造你的专属链表

&#x1f3dd;️专栏&#xff1a;【数据结构实战篇】 &#x1f305;主页&#xff1a;f狐o狸x 目录 一、链表的概念及结构 二、链表的分类 2.1 单向的或双向的 2.2 带头的或不带头的 2.3 循环或非循环 三、链表的实现 3.1 打印和动态申请一个结点 3.2 尾插一个数 3.3 头插一个…

Axure PR 9 多级下拉选择器 设计交互

​ 大家好&#xff0c;我是大明同学。 Axure选择器是一种在交互设计中常用的组件&#xff0c;这期内容&#xff0c;我们来探讨Axure中多级下拉选择器设计与交互技巧。 下拉列表选择输入框元件 创建选择输入框所需的元件 1.在元件库中拖出一个矩形元件。 2.选中矩形元件&…

HiveSQL 中判断字段是否包含某个值的方法

HiveSQL 中判断字段是否包含某个值的方法 在 HiveSQL 中&#xff0c;有时我们需要判断一个字段是否包含某个特定的值。下面将介绍几种常用的方法来实现这个功能。 一、创建示例表并插入数据 首先&#xff0c;我们创建一个名为employee的表&#xff0c;并插入一些示例数据&am…

【日常问题排查小技巧-连载】

线上服务CPU飙高排查 先执行 top&#xff0c;找到CPU占用比较高的进程 id&#xff0c;&#xff08;比如 21448&#xff09; jstack 进程 id > show.txt&#xff08;jstack 21448 > show.txt&#xff09; 找到进程中CPU占用比较高的线程&#xff0c;线程 id 转换为 16 进…

jmeter常用配置元件介绍总结之jsr223执行python脚本

系列文章目录 安装jmeter jmeter常用配置元件介绍总结之jsr223执行python脚本 1.安装jsr223执行python插件2.基础语法介绍2.1.log2.2.parameters向脚本传参与接参2.3.vars2.4.props2.5.prev 3.常用脚本3.1.MD5加密单个参数&#xff1a;3.2.MD5加密多个参数&#xff1a;3.3.URLe…

【数据结构】插入排序——直接插入排序 和 希尔排序

直接插入排序 和 希尔排序 一、直接插入排序二、直接插入排序的弊端三、希尔排序&#xff08;1&#xff09;对插入排序的联想&#xff08;2&#xff09;希尔排序的思路 四、直接插入排序和希尔排序效率对比1>随机生成10000个数2>我们随机生成100000个数3>我们随机生成…

基于Tkinter的深度学习图像处理界面开发(二)

现在很多搞算法的人&#xff0c;跑跑代码&#xff0c;比如训练和测试代码搞得飞溜&#xff0c;但想把算法代码打包成一个软件&#xff0c;比如给它包装一个界面&#xff0c;就不会了&#xff0c;有些人会推荐用qt做界面&#xff0c;但qt的上手难度还是比较高&#xff0c;如果我…

【设计模式】结构型模式(四):组合模式、享元模式

《设计模式之结构型模式》系列&#xff0c;共包含以下文章&#xff1a; 结构型模式&#xff08;一&#xff09;&#xff1a;适配器模式、装饰器模式结构型模式&#xff08;二&#xff09;&#xff1a;代理模式结构型模式&#xff08;三&#xff09;&#xff1a;桥接模式、外观…

Scala 中 set 的实战应用 :图书管理系统

1. 创建书籍集合 首先&#xff0c;我们创建一个可变的书籍集合&#xff0c;用于存储图书馆中的书籍信息。在Scala中&#xff0c;mutable.Set可以用来创建一个可变的集合。 val books mutable.Set("朝花惜拾", "活着") 2. 添加书籍 我们可以使用操作符…

Flink安装和Flink CDC实现数据同步

一&#xff0c;Flink 和Flink CDC 1&#xff0c; Flink Apache Flink是一个框架和分布式处理引擎&#xff0c;用于对无界和有界数据流进行有状态计算。 中文文档 Apache Flink Documentation | Apache Flink 官方文档 &#xff1a;https://flink.apache.org Flink 中文社区…