当前位置: 首页 > article >正文

LLMs 系列科普文(13)

十三、AlphaGO

提到强化学习的历史,不得不提到 alphago,如果你不记得这是什么了,那你是否还曾记得,早些年 AI 已经可以在围棋中击败人类选手了。

AlphaGO 系统又 DeepMind 公司开发,你可以在网络上找到当初人机大战的视频,它与顶尖的人类选手对弈的过程。当我们翻到 AlphaGo 的原始论文1时,会发现一个非常有趣的图(图 3)。

这张图让我觉得似曾相识——我们正在更开放的通用问题解决领域中重新发现它,而非局限于围棋这个封闭的特定领域。本质上他们观察到的现象(随着技术成熟,我们在大语言模型领域也将看到类似规律)是:左图中对比了监督学习训练出的模型(紫色)与强化学习训练出的模型(蓝实线)在围棋对弈中的实力差距,图中标注了人类顶尖棋手李世石的水平(蓝虚线)作为参照。

因此,监督学习模型是在模仿人类专业棋手。如果你只是获取大量由专业棋手对弈的围棋棋局,并试图模仿他们,你的水平会有所提升。但之后你会遇到瓶颈,永远无法超越围棋界最顶尖的几位棋手。所以你永远无法达到那个境界,因为你只是在模仿人类玩家。如果你只是模仿人类玩家,你本质上就无法超越人类玩家。但在强化学习的过程中,它的能力要强大得多。

在围棋的强化学习中,这意味着系统正在采取那些经验上和统计上能带来胜利的走法。因此,AlphaGo 是一个通过自我对弈的系统,并利用强化学习来生成棋局推演。所以这里的结构图完全相同,但没有提示词,因为它只是一个固定的围棋对局。但它会尝试多种解决方案,尝试各种玩法,然后那些能带来胜利的游戏方式——而非某个特定答案——会被强化。这些成功的策略会变得更强大。因此,系统本质上是在学习那些从经验和统计角度能赢得游戏的行动序列。而强化学习不会受到人类表现的限制。强化学习可以做得更好,甚至能超越像李世石这样的顶尖选手。所以他们可能本来可以让这个运行得更久,只是选择在某个时候停止,因为这需要花费很多资金。

但这确实是一个强化学习的强大示范。我们才刚刚开始在大型语言模型中看到这种推理问题图的雏形。因此,仅仅模仿专家是无法让我们走得太远的。我们需要更进一步,建立类似小型游戏环境,让系统自主发现独特的推理路径或解题方法——那些行之有效的独特方式。关于独特性这一点要注意:进行强化学习时,系统完全可能偏离人类玩家的行为分布。比如回顾 AlphaGo 的搜索过程时,其中一个被提出的改进方案被称为"第 37 手"。

而 AlphaGo 的第 37 步棋指的是一个特定时刻,当时 AlphaGo 下出了一步人类专家根本不会走的棋。据评估,人类棋手走出这步棋的概率约为万分之一,因此这是一步极其罕见的棋。但回过头来看,这步棋堪称神来之笔。AlphaGo 在强化学习过程中发现了一种人类未曾知晓却事后看来精妙绝伦的棋路策略。如果你对围棋比较了解,你可以在网络上搜索到关于 AlphaGo 第 37 手的有关讲解视频进行学习,我个人对围棋几乎一窍不通。

总之,人们之所以如此震惊,是因为这是人类绝不会下的一手棋,而 AlphaGo 却这样下了。因为在它的训练中,这手棋似乎是个好主意,只不过碰巧这不是人类会采取的策略。因此,这再次体现了强化学习的力量。从理论上讲,如果我们继续在语言模型中扩展这种范式,我们实际上可以看到其等效性。而具体会是什么样子,目前还不得而知。

那么,以人类都无法企及的方式解决问题意味着什么?如何才能比人类更擅长推理或思考?如何超越仅仅是一个会思考的人类?也许这意味着发现人类无法创造的类比。或者,这可能是一种全新的思考策略。这确实有点难以想象。也许这是一种全新的语言,甚至根本不是英语,也许它发现了一种更适合思考的语言,也许它会选择另一种语言来思考,或者创造出自己的语言。因此从原则上讲,系统的行为更加难以界定。它可以自由采取任何有效的方式。

而且它还能逐渐偏离其训练数据的分布。但这一切只有在拥有大量多样化的问题集时才能实现,这些策略可以在这些问题中得到完善和优化。因此,这正是当前前沿大语言模型研究的重点所在。它试图创建那些规模庞大且多样化的提示分布。这些就像是大型语言模型可以练习思考的游戏环境。这有点像编写这些练习题。我们必须为所有知识领域创建练习题。如果我们有大量练习题,模型就能通过强化学习掌握这些内容,并生成类似的图表,但这是在开放思维领域而非围棋这样的封闭领域。


  1. alphago paper: https://discovery.ucl.ac.uk/id/eprint/10045895/1/agz_unformatted_nature.pdf ↩︎

相关文章:

LLMs 系列科普文(13)

十三、AlphaGO 提到强化学习的历史,不得不提到 alphago,如果你不记得这是什么了,那你是否还曾记得,早些年 AI 已经可以在围棋中击败人类选手了。 AlphaGO 系统又 DeepMind 公司开发,你可以在网络上找到当初人机大战的…...

kubernetes jenkins pipeline优化拉取大仓库性能指定分支+深度

有时候我们历史的git仓库,提交了某个比较大的文件如果不限制 depth ,就会拉取所有的历史提交记录,这样在历史仓库比较大的时候 clone 非常之慢,而实际上我们只需要最新的代码来构建就行了,为了优化性能,我们…...

element-plus 单选组件 el-radio,选不上,又没报错,直接复制官网也不行解决方案

在使用 Vue 框架开发项目时,Element UI 是常用的组件库。最近在开发中遇到了 Element 单选框组件el-radio的双向绑定问题,直接复制element官网上的的案例下来也是不得,经过调试和探索,终于找到了解决方案,特此记录分享…...

UDP:简洁高效的报文结构解析与关键注意事项

UDP(User Datagram Protocol)以其无连接、低开销的特性,成为实时应用(如视频、游戏、DNS)的首选传输协议。深入理解其报文结构和注意事项,是高效利用UDP的基础。 一、UDP报文结构:简洁的四段式 …...

idea 启动jar程序并调试

添加一个JAR 应用程序,填写以下内容: JAR路径:填写你要启动的jar程序的绝对路径 虚拟机选项:-Xmx1G -Xms1G -agentlib:jdwptransportdt_socket,servery,suspendn,address*:5005 程序实参(可选,minecraft专用…...

CSS 轮廓(Outline)与边框(Border)的深度解析

在 CSS 中,轮廓(outline)和边框(border)是两个用于装饰元素的重要属性,但它们在功能、渲染机制和应用场景上存在显著差异。下面从多个维度进行详细对比: 一、基础定义与语法差异 边框&#xf…...

Spring Boot 2 中 default-autowire 的使用

Spring Boot 2 中 default-autowire 的使用 在 Spring Boot 2 中,default-autowire 这个来自传统 XML 配置的概念仍然存在,但它的使用已经大大减少,因为现代 Spring Boot 应用主要使用注解驱动的配置方式。 default-autowire 在 Spring Boo…...

Docker 部署 Python 的 Flask项目

文章目录 一、构建运行 Docker 容器1. 查找合适镜像2.本地docker 拉取镜像3.项目配置1. python项目下生成 requirements.txt 依赖文件2. 生成Dockerfile文件3.忽略不必要文件4. 构建镜像 4. 运行容器5.测试 二、常见问题与解决方案 一、构建运行 Docker 容器 1. 查找合适镜像 …...

12.vite,webpack构建工具

😺😺 😺1.vite 介绍和对比 🏷️ Vite 是什么? 👉 Vite 是一个 前端构建工具 开发服务器, 可以帮你: • 开发阶段:秒开项目,改代码能瞬间热更新(…...

Vue入门到实战之第一篇【超基础】

Vue入门到实战之第一篇 学习路线1. Vue 概念1.1 Vue 是什么 2. 创建Vue实例,初始化渲染3. 插值表达式 {{ }}4. Vue响应式特性5. 开发者工具 学习路线 1. Vue 概念 1.1 Vue 是什么 概念: Vue是一个用于 构建用户界面1 的 渐进式2 框架3 1:基…...

Selenium自动化操作

1、跳转页面播放视频 我们以b站为例,测试是否可以点击模块进行播放视频 //点击页面看是否视频正常播放public void turn() throws InterruptedException {driver.findElement(By.cssSelector("#i_cecream > div.bili-feed4 > main > div.feed2 >…...

实时数据分析的技术架构:Lambda vs Kappa架构选择

文章目录 引言:实时数据分析架构的重要性Lambda架构深度解析Kappa架构技术特性架构对比分析维度性能与可扩展性评估技术栈选型指南实际应用场景分析成本效益对比模型混合架构与演进策略企业级决策框架最佳实践与案例研究技术趋势与未来展望引言:实时数据分析架构的重要性 在…...

MongoDB慢查询临时开启方法讲解

1、首先连接数据库 mongosh "mongodb://localhost:27017" 2、选择目标数据库 show databases;#显示所有数据库 use lidb;#使用某数据库 3、查看当前分析级别 db.getProfilingStatus() 输出 { was: 0, slowms: 100, sampleRate: 1, ok: 1 } #was0表示关闭&…...

springboot2.x升级springboot3.x

springboot2.x升级springboot3.x 背景升级jdk版本为17以上springboot版本修改javax包更新mybatis-plus升级swagger升级springdocspringdoc配置 背景 当前项目是springboot2.5.9版本的springbootmybatis-plus项目,需要升级到springboot3.5.0项目。 升级jdk版本为17…...

Python训练打卡Day43

复习日 1.卷积神经网络的基本概念 2.kaggle找到一个图像数据集,用cnn网络进行训练并且用grad-cam做可视化 进阶:并拆分成多个文件 tips:注册kaggle的注意事项 安装插件:Header Editor 然后打开扩展选项: 输入网址:ht…...

227.2018年蓝桥杯国赛 - 交换次数(中等)- 贪心

227. 交换次数(贪心) 1. 2018年蓝桥杯国赛 - 交换次数(中等) 标签:2018 暴力 国赛 1.1 题目描述 IT 产业人才需求节节攀升。业内巨头百度、阿里巴巴、腾讯(简称 BAT )在某海滩进行招聘活动。…...

STM32入门学习之系统时钟配置

1. 时钟就是单片机的心脏。单片机根据时钟频率来控制每个部件的工作,时钟是单片机的脉搏,决定了每条命令运行的速率,没有时钟单片机将停止工作。 如何理解“时钟决定了单片机每条命令运行的速率”? 首先需要去理解单片机中的时…...

【ArcGIS Pro微课1000例】0072:如何自动保存编辑内容及保存工程?

文章目录 一、自动保存编辑内容二、自动保存工程在使用ArcGIS或者ArcGIS Pro时,经常会遇到以下报错,无论点击【发送报告】,还是【不发送】,软件都会强制退出,这时如果对所操作没有保存,就会前功尽弃。 此时,自动保存工作就显得尤为重要,接下来讲解两种常见的自动保存方…...

AU音频软件|Audition 2025网盘下载与安装教程指南

说起AU,有些小伙伴可能第一印象是化学元素金(Aurum)。实际上,本文要介绍的AU,全称是Adobe Audition,是一款专业音频编辑和混音软件‌,广泛应用于音乐制作、广播、电影及视频声音设计等领域。 目…...

网络编程(TCP编程)

思维导图 1.基础流程 流程图中是TCP连接的基础步骤&#xff0c;其他操作都是在此基础上进行添加修改。 2.函数接口 2.1 创建套接字&#xff08;socket&#xff09; int socket(int domain, int type, int protocol); 头文件&#xff1a;#include <sys/types.h> …...

[论文阅读] 人工智能+软件工程 | 结对编程中的知识转移新图景

当AI成为编程搭档&#xff1a;结对编程中的知识转移新图景 论文信息 论文标题&#xff1a;From Developer Pairs to AI Copilots: A Comparative Study on Knowledge Transfer&#xff08;从开发者结对到AI副驾驶&#xff1a;知识转移的对比研究&#xff09; 作者及机构&#…...

热成像实例分割电力设备数据集(3类,838张)

在现代电力系统的运维管理中&#xff0c;红外热成像已经成为检测设备隐患、预防故障的重要手段。相比传统可见光图像&#xff0c;红外图像可揭示设备温度分布&#xff0c;从而更直观地反映过热、老化等问题。而在AI赋能下&#xff0c;通过实例分割技术对热成像中的电力设备进行…...

用电脑通过USB总线连接控制keysight示波器

通过USB总线控制示波器的优势 在上篇文章我介绍了如何通过网线远程连接keysight示波器&#xff0c;如果连接的距离不是很远&#xff0c;也可以通过USB线将示波器与电脑连接起来&#xff0c;实现对示波器的控制和截图。 在KEYSIGHT示波器DSOX1204A的后端&#xff0c;除了有网口…...

uni-app学习笔记二十四--showLoading和showModal的用法

showLoading(OBJECT) 显示 loading 提示框, 需主动调用 uni.hideLoading 才能关闭提示框。 OBJECT参数说明 参数类型必填说明平台差异说明titleString是提示的文字内容&#xff0c;显示在loading的下方maskBoolean否是否显示透明蒙层&#xff0c;防止触摸穿透&#xff0c;默…...

基于 React Native for HarmonyOS5 的跨平台组件库开发指南,以及组件示例

基于 React Native for HarmonyOS5 的跨平台组件库开发&#xff0c;需融合分层架构设计、鸿蒙原生能力桥接及性能优化技术&#xff0c;核心指南如下&#xff1a; ‌一、分层架构设计‌ 采用 ‌模块化分层结构‌&#xff0c;隔离平台差异逻辑&#xff1a; ├── common_har …...

【Linux】centos软件安装

目录 Linux下安装软件的办法什么是yum使用yum试着安装软件查看yum源配置额外的第三方库 Linux下安装软件的办法 做为一个操作系统&#xff0c;与win和mac一样&#xff0c;安装软件无可厚非。那Linux下安装软件有哪些办法呢&#xff1f;第一种是直接下载源代码本地编译安装&…...

基于Vue3.0的在线工具网站

文章目录 1、初始化项目1.1 创建项目1.2 安装vue路由1.3 安装UI库2、首页搭建2.0 页面布局2.1 页头2.2 侧边栏2.3 内容显示区域3、字符串加密解密功能实现3.1 页面构建3.2 实现加密/解密4、Json工具4.1 Json格式化4.1.1 搭建页面4.1.2 实现Json格式化4.2 Json转XML4.1.1 搭建页…...

STM32H562----------串口通信(UART)

1、串口介绍 1.1、 数据通信概念 在单片机中我们常用的通信方式有 USART、IIC、SPI、CAN、USB 等; 1、数据通信方式 根据数据通信方式可分为串行通信和并行通信两种,如下图: 串行通信基本特征是数据逐位顺序依次传输,优点:传输线少成本低,抗干扰能力强可用于远距离传…...

C++基础进阶:函数、内联函数与Lambda函数详解

引言 在C编程的旅程中&#xff0c;函数是构建复杂程序的基本单元。它们像乐高积木一样&#xff0c;允许我们将代码分解成更小、更易于管理的部分。今天&#xff0c;我们将深入探讨C中的三种重要函数类型&#xff1a;普通函数、内联函数以及Lambda函数。掌握它们&#xff0c;将…...

大话软工笔记—需求调研的准备

需求调研前需做好充分的准备&#xff1a; 1. 背景资料来源 可以通过企业官网、宣传资料、人员沟通获取客户企业信息。 ​​​​​​​2. 背景资料汇总 根据获得的信息做出一份背景分析报告&#xff0c;主要包含以下内容&#xff1a; 2.1 企业基本信息 企业发展愿景&#…...