强化学习:原理与Python实战||一分钟秒懂人工智能对齐

文章目录

  • 1.什么是人工智能对齐
  • 2.为什么要研究人工智能对齐
  • 3.人工智能对齐的常见方法
    • 延伸阅读

1.什么是人工智能对齐

人工智能对齐(AI Alignment)指让人工智能的行为符合人的意图和价值观。

人工智能系统可能会出现“不对齐”(misalign)的问题。以ChatGPT这样的问答系统为例,ChatGPT的回答可能会含有危害祖国统一、侮辱先烈、丑化中华民族、教唆暴力、出口成“脏”等违法或不符合社会主义核心价值观的言论,也可能会出现阿谀奉承、威逼利诱、信口雌黄等干预用户达到预定目标的情况。消除人工智能系统不对齐的过程就称为人工智能对齐。

请添加图片描述

图 ChatGPT的不对齐行为

2.为什么要研究人工智能对齐

根据人工智能对齐的定义,所有的人工智能问题(包括AI伦理、AI治理、可解释性AI,甚至是最基本的回归和分类问题)都可以算是人工智能对齐问题。那么为什么学术界还要发明“人工智能对齐”这个新概念?研究“人工智能对齐”这个新概念有什么价值呢?

事实上,人工智能对齐这一概念和ChatGPT这样的通用大模型的诞生密不可分。对于通用大模型而言,一个模型可以同时完成多种任务,而且不同的任务有着不同的期望:有的任务希望能够更有想象力,有的任务希望能够更尊重事实;有的任务希望能够理性客观,有的任务希望能有细腻丰富的情感。任务的多样性导致了需要对大模型进行全方面的对齐,而不仅仅是就某些方面进行对齐。传统的研究往往针对某个方面进行对齐,对于ChatGPT这样的通用模型会导致“按下葫芦浮起瓢”,无法面面俱到。

随着机器学习模型规模的不断变大以及神经网络的大量应用,人类已经无法完全理解和解释人工智能的某些行为。例如,用于围棋AlphaGo下的某些棋迄今也不能被人类所完全理解。在未来,有可能会出现全方面碾压人类的人工智能(比如《流浪地球》里的MOSS)。传统的对齐方法显然不能满足对这样的人工智能的对齐需求。

3.人工智能对齐的常见方法

人工智能对齐离不开人的接入。人对人工智能系统进行评估和反馈,可以确认人工智能中不对齐的情况,并指导其进行改进。

人工智能对齐的方法包括模仿学习和人类反馈强化学习。ChatGPT就采用了这些对齐方法。

图片

ChatGPT训练步骤

(图片来源:https://openai.com/blog/chatgpt)

上图是ChatGPT的训练步骤图。步骤一利用收集到的数据进行监督学习,这一部分就是在用模仿学习进行人工智能对齐。不过,ChatGPT的训练团队认为,仅仅用模仿学习并不能完全达到要求。

模仿学习不能完全满足对齐需求的原因可能如下:模仿学习使用的数据集能覆盖到的数据范围是有限的,不可能包括所有的情况。用这样数据集训练出来的人工智能难免有些边脚情形的表现不对齐。另外,虽然训练后能够让训练目标基本上达到最优,但是在训练目标最优情况下还是会出现在某些样本点上表现不好的情况。而这些样本点也许还挺重要,这些不好的样本点可能会涉及到重大的法律或是舆论风险。

为此,ChatGPT的训练过程进一步地使用了人类反馈强化学习。步骤图中的第二步和第三步就用到了人类反馈强化学习。

第二步通过人类的反馈构建奖励模型。在这一步中,提供反馈的人可以就其认为需要重点关注的问题进行着重考察,来确保在哪些重要的问题上奖励模型是正确的。并且在后续的测试中如果发现了之前没有预料到的新问题,还可以通过提供更多反馈样本来为奖励模型打上补丁。这样,通过人工干预、不断迭代反馈,奖励模型就趋于完善。这样,就让奖励模型的人类的期望对齐。

在利用反馈进行奖励模型对齐的训练过程中,对于每个样本,先由语言模型输出几个备选的回答,然后再由人类对这些回答进行排序。这样的做法与直接让用户提供参考答案相比,更能够激发语言模型本身的创造力,也能使得反馈更快更省钱。

第三步利用奖励模型进行强化学习。步骤中提到的PPO算法就是一种强化学习算法。通过使用强化学习算法,使得系统的行为和奖励模型对齐。

基于反馈的强化学习在ChatGPT等大模型上的成功应用使得该算法称为最受关注的大模型对齐算法。目前绝大多数的大模型都采用了这个技术进行对齐。

延伸阅读

图片

《强化学习:原理与Python实战》

肖智清 著

解密ChatGPT关键技术PPO和RLHF

理论完备:涵盖强化学习主干理论和常见算法,带你参透ChatGPT技术要点;

实战性强:每章都有编程案例,深度强化学习算法提供TenorFlow和PyTorch对照实现;

配套丰富:逐章提供知识点总结,章后习题形式丰富多样。还有Gym源码解读、开发环境搭建指南、习题答案等在线资源助力自学。

  • 🎁本次送书1~3本【取决于阅读量,阅读量越多,送的越多】👈
  • ⌛️活动时间:截止到2023-11月18号
  • ✳️参与方式:关注博主+三连(点赞、收藏、评论)

私信我进送书互三群有更多福利哦可以在文章末尾或主页添加微信

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle(18)Auditing

文章目录 一、基础知识1、审计介绍2、Auditing Types 审计类型3、Auditing Guidelines 审计准则4、Auditing Categories 审核类别5、Database Auditing 数据库审计6、Auditing User SYS 审计sys用户7、Getting Auditing Informatio 获取审计信息8、获取审计记录通知 二、基础操…

postgresql实现job的六种方法

简介 在postgresql数据库中并没有想oracle那样的job功能,要想实现job调度,就需要借助于第三方。本人更为推荐kettle,pgagent这样的图形化界面,对于开发更为友好 优势劣势Linux 定时任务(crontab) 简单易用…

Python入门教程:12个常用基础语法详解

文章目录 前言1.多个字符串组合为一个字符串2. 字符串拆分为子字符串列表3. 统计列表中元素的次数4.使用try-except-else-block模块5. 使用枚举函数得到key/value对6. 检查对象的内存使用情况7. 合并字典8. 计算执行一段代码所花费的时间9. 列表展开10. 列表采样11. 数字化12. …

如何解决网页中的pdf文件无法下载?pdf打印显示空白怎么办?

问题描述 偶然间,遇到这样一个问题,一个网页上的附件pdf想要下载打印下来,奈何尝试多种办法都不能将其下载下载,点击打印出现的也是一片空白 百度搜索了一些解决方案都不太行,主要解决方案如:https://zh…

基于ubuntu 22, jdk 8x64搭建图数据库环境 hugegraph--google镜像chatgpt

基于ubuntu 22, jdk 8x64搭建图数据库环境 hugegraph download 环境 uname -a #Linux whiltez 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64 x86_64 x86_64 GNU/Linuxwhich javac #/adoptopen-jdk8u332-b09/bin/javac which java #/adoptopen-jdk8u33…

如何在Jupyter Lab中安装不同的Kernel

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

Citespace的使用

CiteSpace CiteSpace的相关介绍运行CiteSpace CiteSpace的相关介绍 CiteSpace作为一款优秀的文献计量学软件,能够将文献之间的关系以科学知识图谱的方式可视化地展现在我们面前。简单来说,面对海量的文献,CiteSpace能够迅速锁定自己需要关注…

《QT从基础到进阶·二十五》界面假死处理

假如有这样一种情况,我们在主线程写了一个死循环,当程序运行到主线程的死循环代码后界面便卡死点了没有反应,这里提供几种方法处理界面假死的情况,保证比如主线程在执行死循环没有退出的时候点击界面不会卡死能继续执行其他功能。…

[C/C++]数据结构 深入挖掘环形链表问题

前言 在上一篇文章中讲述了如何判断链表是否带环,在观看本片文章时建议先了解一下这篇文章的内容[C/C]数据结构 链表OJ题:环形链表。本篇文章我们将讲述关于环形链表的几种不同的情况如下,同时我们要解决另一个环形链表问题----找到入环点 slow一次走一步fast一次走两步一定会…

达索系统SOLIDWORKS 2024钣金和结构系统新功能

达索系统SOLIDWORKS钣金和结构系统是大家比较熟悉的模块了,在2024版本中钣金和结构系统功能也做了很棒的提升。接下来让我们看看如何使用达索系统SOLIDWORKS 2024钣金和结构系统的一些新功能快速完成相应的设计。 达索系统SOLIDWORKS 2024的钣金提供了槽口延伸功能…

链表经典面试题之二

今天我们做一道环形链表的题目力扣141题https://leetcode.cn/problems/linked-list-cycle/ 这道题让我们分析链表中是否存环,存在的话返回true,不存在返回false。首先看到这道题我们要捋顺思路,怎么才能达到它要的效果?要找出是否…

【Python大数据笔记_day05_Hive基础操作】

一.SQL,Hive和MapReduce的关系 用户在hive上编写sql语句,hive把sql语句转化为MapReduce程序去执行 二.Hive架构映射流程 用户接口: 包括CLI、JDBC/ODBC、WebGUI,CLI(command line interface)为shell命令行;Hive中的Thrift服务器允许外部客户端…