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

《ChatGPT原理最佳解释,从根上理解ChatGPT》

【热点】

2022年11月30日,OpenAI发布ChatGPT(全名:Chat Generative Pre-trained Transformer), 即聊天机器人程序 ,开启AIGC的研究热潮。

ChatGPT是人工智能技术驱动的自然语言处理工具,它能够基于在预训练阶段所见的模式和统计规律,来生成回答,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论文 等任务。

自从ChatGPT发布以后,大家对其的探索就从未停脚步,在这半年的时间里,其引发的关注、产生的影响、改变的方式,已经深深震撼广大的信息技术从业者,甚至有人提出了信息技术革命已经到来。

各目前,行各业已经开始思考如何在这“浪潮”之中让自己处于不败之地,毕竟ChatGPT已经开始改变人们的工作和思考的方式了。当然了,要利用好它就得充分了解和认识它,从现在从未来的角度来认识这个绝佳的“帮手”,纵观整个学术界和工业级对它的解释,讲解原理最为透彻的出版丛书就属于斯蒂芬·沃尔弗拉姆的《这就是ChatGPT》了。

【发展】

从最早的统计机器学习开始,我们走过了漫长的岁月。

过去十年多的时间,基于机器学习和深度学习打造的最强的工具就属于ChatGPT了,属于成功者中的“别人家的孩子”。许多学者觉得ChatGPT的成功不仅仅是因为其提供了一个聊天工具那么简单,更重要的是这个理论的成功,只要理论这条道路走得通,剩余的也就是脑指挥手的事情了。

对于这个高智能的系统来说,有时候在一些场景下的结果是令人不满意的,甚至会在简单的一些任务场景下进行“胡言乱语”,但我们知道这个大模型存在着巨大的潜力,随着新版的ChatGPT的迭代,那些明显的错误也就随着消失,但这并不意味着我们对“模型微调”将成为LLM大模型的主流之路,而应该将更多的工作放在了通用型人工智能(AGIC)的发展上。

 

回想起人工智能近些年的发展:

(1)1950年,图灵发表了论文《计算机器与智能》(Computing Machinery and Intelligence),提到了著名的“图灵测试”。

(2)2006年,深度学习概念被杰弗里·辛顿正式提,因此2006年被称为深度学习元年。

(3)2016年3月,AlphaGo战胜了韩国围棋选手李世石。

(4)2018年,OpenAI发布了GPT-1。

(5)2020年6月,OpenAI发布了GPT-3。

(6)2022年11月,OpenAI发布了ChatGPT3.5。

(7)2023年4月,OpenAI发布了ChatGPT4,进一步提升模型参数量。

这些标志性的事件无一在说明,人工智能的发展是多么的迅速,迅速是因为需求驱动。另外,这种迅速是建立在人们对于大模型真的可以带来变革的信心之上。

ChatGPT迅速走红之后,国内外的企业纷纷跟进,微软、腾讯、阿里、华为、百度都发布了自己的大模型,一些大模型也都给了试用的网址,走在最前方的清华大学的ChatGLM2-6B模型已经开源,真勇气也。

【解释】

在各方的报道之中,我们大体知道ChatGPT 的工作原理是基于自然语言处理技术,通过学习大量的人类对话和文本数据,从而掌握语言的语法、语义和上下文信息。在 ChatGPT 中,对话生成模型使用了基于GPT的指令微调技术,这是一种特殊的训练技术,能够使人工智能更好地理解人类的指令和意图。

微调技术是一种基于人类反馈的强化学习技术,它通过不断地接收人类的反馈,从而不断地优化模型的生成结果。在ChatGPT 中,当用户提出一个问题时,ChatGPT 会根据问题生成一个回答,然后根据用户的反馈进行调整,不断地提高回答的质量。

ChatGPT 还使用了基于人类反馈的强化学习技术(RLHF),这是一种能够让人工智能更好地理解人类意图的技术。通过 RLHF 技术,ChatGPT 能够学习到人类的喜好和厌恶,从而生成更符合人类需求的回答。

这些解释过于学术了,好在现在这本书《这就是ChatGPT》可以快速帮助我们了解ChatGPT的全貌,我们来看这本数的目录部分:

全书内容分为两大章:

(1)第一章从原理上对ChatGPT要使用到的相关技术进行讲解,如神经网络技术,词嵌入的原理等等。基于这些理论的解释和补充作者在最后总结出基于ChatGPT能够做啥,能为我们的生活和工作带来什么样的变化。

(2)第二章作者为ChatGPT赋予了思想,在Wolfram|Alpha的加持下,Wolfram|Alpha利用其自然语言理解能力转换为精确的 Wolfram语言,基于此形式的表示,为ChatGPT赋予计算超能力,可谓是大胆实践的先驱啊。另外本章节最后使用一些实例来让读者感受ChatGPT的魅力所在。

【未来】

这本书更多的是在介绍ChatGPT的原理部分,对于如何使用ChatGPT去进行二次开发没有过多的涉及,另外比较火热的模型微调也没有进行讲述,可能作者是为了留给读者自己进行学习和研究吧。虽然有一些内容这本书没有涉及,但是也不影响这本书作为解释ChatGPT相关知识的全面性和优势性质。

目前各大公司都在基于大模型LLM进行公司内部的开发,试图在内部原有系统上进行功能增广,提升员工工作效能。尤其ChatGLM-6B模型的开源之后,基于大模型来进行自己业务场景的搭建以及构建自身知识库对模型进行微调的工作将变得越来越多。

相信未来LLM,AIGC等的发展会为我们的工作、生活带来巨大的变化。

相关文章:

《ChatGPT原理最佳解释,从根上理解ChatGPT》

【热点】 2022年11月30日,OpenAI发布ChatGPT(全名:Chat Generative Pre-trained Transformer), 即聊天机器人程序 ,开启AIGC的研究热潮。 ChatGPT是人工智能技术驱动的自然语言处理工具,它能够…...

大数据Flink(五十):流式计算简介

文章目录 流式计算简介 一、数据的时效性 二、流式计算和批量计算...

13-4_Qt 5.9 C++开发指南_基于QWaitCondition 的线程同步_Wait

在多线程的程序中,多个线程之间的同步实际上就是它们之间的协调问题。例如上一小节讲到的3个线程的例子中,假设 threadDAQ 写满一个缓冲区之后,threadShow 和 threadSaveFile 才能对缓冲区进行读操作。前面采用的互斥量和基于 OReadWriteLock…...

STM32(HAL)多串口进行重定向(printf函数发送数据)

目录 1、简介 2.1 基础配置 2.1.1 SYS配置 2.1.2 RCC配置 2.2 串口外设配置 2.3 项目生成 3、KEIL端程序整合 4、效果测试 1、简介 在HAL库中,常用的printf函数是无法使用的。本文通过重映射实现在HAL库多个串口可进行类似printf函数的操作。 2.1 基础配置 2.…...

29_互联网(The Internet)(IP数据包;UDP;TCP;DNS;OSI)

上篇介绍了计算机网络的基础知识,也提到互联网(The Internet),本篇将会详细介绍互联网(The Internet)。 文章目录 1. 互联网(The Internet)组成及数据包传输过程2. IP 数据包的不足3…...

xShell常用命令

xShell常用命令 一、文件夹目录1、cd-更改目录2、mkdir-建立目录3、rm-删除目录4、pwd-查看当前路径5、rmdir-删除空目录 二、文件操作1、cat-显示文件内容2、diff-比较文件内容3、查看文件的名字和后缀4、ls-列出文件5、cp-复制文件6、mv-移动和重命名文件找不同:选…...

React性能优化之Memo、useMemo

文章目录 React.memo两种方式参数应用场景 拓展useMemouseMemo(calculateValue, dependencies) 参考资料 React.memo React 的渲染机制,组件内部的 state 或者 props 一旦发生修改,整个组件树都会被重新渲染一次,即时子组件的参数没有被修改&…...

IDEA开启并配置services窗口

前言: 一般一个spring cloud项目中大大小小存在几个十几个module编写具体的微服务项目。此时,如果要调试测需要依次启动各个项目比较麻烦。 方法一: 默认第一次打开项目的时候,idea会提示是否增加这个选项卡,如果你没…...

vue2企业级项目(三)

vue2企业级项目(三) 引入mockjs,i18n 1、mockjs 项目下载依赖 npm install --save-dev mock根目录创建mock文件夹,并创建mock/index.js import Mock from "mockjs";// 设置全局延时 没有延时的话有时候会检测不到数据…...

QT 在label上透明绘图

一、新建TransparentDemo工程 二、在界面上添加label,修改样式表,将底色置为红色,作为北京 三、新建一个TransparentLabel类,继承自QLabel 此时,工程包括文件 五、在transparentlabel.h中添加 头文件 #include …...

SAM(Segment Anything)大模型论文汇总

A Comprehensive Survey on Segment Anything Model for Vision and Beyond 论文:https://arxiv.org/abs/2305.08196 25页综述,198篇参考文献!52个开源项目!本文第一个全面回顾了分割一切模型(SAM)的研究和应用进展,…...

金融翻译难吗,如何做好金融翻译?

我们知道,金融翻译涉及企业经济这块的,是影响各公司发展很重要的一方面,翻译做得好,可以促进公司内外的交流,及时掌握各种信息,做好应对。那么,金融翻译难吗,如何做好金融翻译&#…...

Java面试题(Tomcat与Nginx)

Tomcat 什么是Tomcat&#xff1f; 简单来说是一个运行Java的网络服务器&#xff0c;也是jsp和serlvet的一个容器 Tomcat的缺省端口是多少&#xff0c;怎么修改? conf文件夹下修改server.xml文件 <Connector connectionTimeout"20000" port"8080" p…...

React-使用mobx

React 中使用 mobx 配置开发环境 安装mobx和中间件工具 mobx-react-lite 只能函数组件中使用 yarn add mobx mobx-react-lite初始化 mobx 定义数据状态 state在构造器中实现数据响应式处理 makeAutoObservble定义修改数据的函数 action实例化 store 并导出 import { compute…...

LeetCode ACM模式——哈希表篇(一)

刷题顺序及部分思路来源于代码随想录&#xff0c;网站地址&#xff1a;https://programmercarl.com 部分思路来源于力扣官方题解&#xff0c;作者主页&#xff1a;https://leetcode.cn/u/leetcode-solution/ 242. 有效的字母异位词 给定两个字符串 s 和 t &#xff0c;编写一个…...

WPF实战学习笔记31-登录界面全局通知

UI添加消息聚合器 <md:Snackbarx:Name"LoginSnakeBar"Grid.ColumnSpan"2"Panel.ZIndex"1"MessageQueue"{md:MessageQueue}" />注册提示消息 文件&#xff1a;Mytodo.Views.LoginView.cs构造函数添加内容 //注册提示消息 aggre…...

通用商城项目(中)

金山编译器出问题了。下面段落标号全出问题了&#xff0c;排版也出问题了。懒得改了。 使用对象存储OSS&#xff0c;保存品牌logo 新建Module&#xff0c;提供上传、显示服务 有些不明所以的&#xff0c;按照steinliving-commodity配置了一通pom.xml 新建application.yml&…...

谨慎使用JSON.stringify

谨慎使用JSON.stringify 为了避免因为对象是引用类型而造成的数据源污染&#xff0c;我们通常使用 JSON.stringify 将其转换为字符串&#xff0c;而后通过JSON.parse方法将字符串转化一个新对象来实现深拷贝。但是在这个过程中也会存在一些问题&#xff0c;本文就介绍一下使用…...

驱动开发day8

编写LED灯的驱动&#xff0c;使用GPIO子系统&#xff0c;里面添加按键的中断处理 1.应用程序发送指令控制LED亮灭 2.按键1 按下&#xff0c;led1电位反转 按键2按下&#xff0c;led2电位反转 按键3 按下&#xff0c;led3电位反转 驱动程序 #include <linux/init.h> #i…...

CAS 机制

问题分析与思考&#xff1a; CAS 是 Java 中 Unsafe 类里面的方法&#xff0c;它的全称是 CompareAndSwap&#xff0c;比较并交换 的意思。 它的主要功能是能够保证在多线程环境下&#xff0c;对于共享变量的修改的原子性。 举个例子&#xff0c;比如说有这样一个场景&#xff…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

&#x1f4cc; LRU 缓存机制详解与实现&#xff08;Java版&#xff09; 一、&#x1f4d6; 问题背景 在日常开发中&#xff0c;我们经常会使用 缓存&#xff08;Cache&#xff09; 来提升性能。但由于内存有限&#xff0c;缓存不可能无限增长&#xff0c;于是需要策略决定&am…...