提示工程的前世今生

news2024/9/27 23:27:00

原文链接:芝士AI吃鱼

通过提示进行情境学习

在生物学中,涌现是一种令人难以置信的特性,由于相互作用的结果,各个部分聚集在一起,表现出新的行为(称为涌现),这是你在较小的尺度上看不到的。更令人难以置信的是,即使较小比例的版本看起来与较大比例相似,但事实上较大比例由更多部分和交互组成,它最终表现出一组完全不同的行为。

这一切都始于以无人监督的方式训练这些人工智能模型的能力。事实上,无监督学习一直是这场人工智能革命的关键原则之一,它阻碍了过去几年人工智能的进步。

2017 年之前,大多数人工智能都是通过小型结构化数据集利用监督学习来工作,这可以在非常狭窄的任务上训练机器学习模型。2017 年之后,随着一种名为 Transformer 的新架构的出现,情况开始发生变化。

这种新架构可以与无监督学习方法一起使用。机器学习模型可以在非常大的非结构化数据集上进行预训练,目标函数非常简单:文本到文本预测。

令人兴奋的方面是,机器学习模型为了学习如何正确执行文本到文本的预测(这可能看起来非常简单的任务),开始学习围绕数据的一系列模式和启发式方法它接受过训练。

这使得机器学习模型能够学习各种各样的任务。

大型语言模型不再尝试执行单个任务,而是开始从数据中推断模式,并在执行新任务时重新使用这些模式。

这是一场核心革命。另外,随着GPT-3论文的出现,另一个转折点是能够提示这些模型。

简而言之,它使这些模型能够通过自然语言指令进一步学习用户的上下文,这可能会极大地改变模型的输出。

这另一个方面也是新兴的,因为没有人明确要求这一点。因此,这就是我们通过提示作为当前机器学习模型的核心、新兴属性来获得上下文学习的方式。

了解提示工程

提示工程是当前人工智能范式的一个关键的、新兴的属性。

Prompt Engineering 最有趣的方面之一是它作为扩展 Transformer 架构以训练大型语言模型的新兴属性而出现。

就像你表达的愿望可能会反对你一样,当你提示机器时,你表达它需要做什么的方式可以极大地改变输出。

最有趣的部分是什么?提示并不是人工智能专家开发的功能。这是一个新兴的特征。简而言之,通过开发这些巨大的机器学习模型,提示成为让机器执行输入的方式。没有人要求这样做;就这样发生了!

在 2021 年的一篇论文中,斯坦福大学的研究人员强调了基于 Transformer 的模型如何成为基础模型。

正如同一篇论文中所解释的:

人工智能的故事一直是一个不断涌现和同质化的故事。随着机器学习的引入,任务的执行方式从示例中浮现(自动推断);通过深度学习,用于预测的高级特征出现;通过基础模型,甚至可以出现情境学习等高级功能。同时,机器学习使学习算法同质化(例如逻辑回归),深度学习使模型架构同质化(例如卷积神经网络),基础模型使模型本身同质化(例如GPT-3)。

提示工程是人工智能中使用的一个过程,其中一个或多个任务被转换为基于提示的数据集,然后训练语言模型进行学习。

从表面上看,提示工程背后的动机可能很难理解,所以让我们用一个例子来描述这个想法。

想象一下,您正在建立一个在线食品配送平台,并且您拥有数千张不同蔬菜的图像可以包含在该网站上。唯一的问题是,没有任何图像元数据描述哪些蔬菜在哪些照片中。此时,你可以对图像进行繁琐的排序,并将土豆照片放入土豆文件夹中,将西兰花照片放入西兰花文件夹中,依此类推。

你还可以通过分类器运行所有图像,以更轻松地对它们进行排序,但是,正如您发现的那样,训练分类器模型仍然需要标记数据。 使用提示工程,你可以编写你认为会产生最佳图像分类结果的基于文本的提示。

例如,可以告诉模型显示“包含土豆的图像”。该提示的结构——或者定义模型如何识别图像的语句——是提示工程的基础。 写出最好的提示通常需要反复试验。事实上,提示“包含土豆的图像”与“土豆的照片”或“土豆的集合”有很大不同。

提示工程最佳实践

与大多数流程一样,输入的质量决定输出的质量。设计有效的提示可以增加模型返回有利且符合上下文的响应的可能性。编写好的提示就是理解模型“了解”世界的内容,然后相应地应用这些信息。有些人认为这类似于猜谜游戏,演员为他们的搭档提供足够的信息,以利用他们的智力找出单词或短语。

将该模型视为代表猜谜游戏中的伙伴,通过训练提示为模型提供了足够的信息来计算出模式并完成手头的任务。一次性让模型超载所有信息并中断其自然智能流是没有意义的。

快速工程和 CLIP 模型

CLIP(对比语言-图像预训练)模型由人工智能研究实验室OpenAI于2021年开发。

研究人员表示,CLIP 是“一种在各种(图像、文本)对上进行训练的神经网络。可以用自然语言指示它在给定图像的情况下预测最相关的文本片段,而无需直接优化任务,类似于 GPT-2 和 3 的零样本功能。 ”

基于神经网络 模型,CLIP 接受了超过 4 亿个图像文本对的训练,其中包含与标题匹配的图像。使用这些信息,人们可以将图像输入到模型中,模型将生成它认为最准确的标题或摘要。上面的引述还涉及到 CLIP 的零样本功能,这使得它在机器学习模型中有些特殊。

例如,大多数经过训练来识别苹果和橙子的分类器预计在对苹果和橙子进行分类时表现良好,但通常不会检测香蕉。某些型号(包括 CLIP、GPT-2 和 GPT-3)可以识别香蕉。换句话说,他们可以执行未经过明确培训的任务。这种能力被称为零样本学习。

提示工程示例

截至 2022 年,AI 模型的演变正在加速。这使得提示工程变得越来越重要。我们首先使用 GPT-3、BERT 等语言模型进行文本到文本的处理。然后我们使用 Dall-E、Imagen、MidJourney 和 StableDiffusion 进行文本到图像转换。在这个阶段,我们正在通过 Meta 的 Make-A-Video 转向文本到视频,现在 Google 正在开发自己的 Imagen Video。如今有效的人工智能模型专注于用更少的钱获得更多的东西!一个例子是 DreamFusion:使用 2D Diffusion 的文本转 3D,由 Google 研究实验室构建。

简而言之,人工智能扩散模型是生成模型,这意味着它们产生的输出与其经过训练的输出相似。根据定义,扩散模型的工作原理是向训练数据添加噪声,并通过噪声过程的逆转恢复该数据来生成输出。Google Research 的 DreamFusion 能够将文本转换为 3D 图像,而无需拥有大规模的标记 3D 数据数据集(目前不可用)。

就是这样!正如研究小组所解释的:

“使这种方法适应 3D 合成需要大规模的标记 3D 数据数据集和用于去噪 3D 数据的高效架构,而这两者目前都不存在。在这项工作中,我们通过使用预训练的 2D 文本到图像扩散模型来执行文本到 3D 合成,从而规避了这些限制。”

为什么这很重要?在二十多年来主要基于文本或基于 2D 图像的网络中,现在是时候启用增强格式,例如可以在 AR 环境中良好运行的 3D。

简而言之,想象一下您戴着 Google 的 AR 眼镜,下面的这些 AI 模型可以通过 3D 对象动态增强现实世界,从而使您能够使 AR 体验更加引人注目。

与此同时,OpenAI 宣布推出 Whisper 语音转文本功能。结合起来,这些人工智能模型将创建一个多模式环境,一个人或小团队可以利用所有这些工具进行内容生成、电影制作、医学等!这意味着随着进入壁垒的消除,一些以前无法进入的行业变得更容易扩展。可以更快地测试/启动/迭代,从而使市场更快地发展。

互联网发展了近 30 年,但许多行业(从医疗保健到教育)仍然局限于旧模式。十年的人工智能可能会彻底重新洗牌。每个人工智能模型都会以相同的方式进行提示,但提示机器的方式可能非常微妙,由于提示的变化,机器可以产生许多不同的输出。

就在 2022 年 10 月:

  • Stability AI 宣布为开源人工智能提供 1.01 亿美元资金。

  • Jasper AI 是一家开发“人工智能内容”平台的初创公司,已融资 1.25 亿美元,估值为 15 亿美元。Jasper 正在收购人工智能初创公司 Outwrite,这是一家拥有超过 100 万用户的语法和风格检查器。

  • OpenAI 估值近 200 亿美元,正在与微软就更多资金进行高级谈判。

如今,通过提示,您可以生成越来越多的输出。

OpenAI 的一些用例可以通过提示生成。从问答到分类器和代码生成器。人工智能通过提示实现的用例数量呈指数级增长。

另一个很酷的应用程序?您可以根据提示设计自己的鞋子:

 

提示 DreamStudio AI 生成一双定制运动鞋。

及时的工程实例和案例研究

这是一个快速的工程示例,其中包含该过程中的一些最佳实践。

ChatGPT 提示示例

代码生成

内容创作

数据分析

教育和培训

决策和解决问题

要点:

  • 提示工程是一种自然语言处理 (NLP) 概念,涉及发现可产生所需或有用结果的输入。

  • 与大多数流程一样,提示工程中输入的质量决定了输出的质量。设计有效的提示可以增加模型返回有利且符合上下文的响应的可能性。

  • CLIP(对比语言-图像预训练)模型由 OpenAI 开发,是利用提示对超过 4 亿个图像-标题对中的图像和标题进行分类的模型示例。

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分别基于红黑树、timefd、多级时间轮实现定时器

文章目录 一、定时器的应用二、定时器的触发方式2.1 网络事件和定时事件在一个线程中处理2.2 二、定时器的设计2.1 接口设计2.2 数据结构设计2.2.1 红黑树2.2.3 最小堆2.2.4 时间轮 三、利用红黑树实现定时器3.1 数据结构3.2 接口实现3.2.1 初始化定时器3.2.2 添加定时器3.2.3 …

【CPU】关于x86、x86_64/x64、amd64和arm64/aarch64

为什么叫x86和x86_64和AMD64? 为什么大家叫x86为32位系统? 为什么软件版本会注明 for amd64版本,不是intel64呢? x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令…

Github 标星68.5K,不愧是阿里P8架构师整理的 Java 面试复盘笔记

Java 面试 2021 已经过半,不知道大家在今年的金三银四是否拿到了自己理想的 Offer?大家的技术面一共面了多少轮?作为一名程序员,技术面试是不可避免的一个环节,一般技术面试官都会通过自己的方式去考察程序员的技术功…

Java性能诊断利器:arthas详细教程

目录 1.概述 2.使用 2.1.安装使用 2.2.启动 2.3.全局监控 2.4.方法级别的监控 2.4.1.插件 2.4.2.watch 2.3.3.trace 2.3.4.stack 2.4.线上问题定位 2.4.1.反编译 2.4.2.CPU占用率 2.4.3.死锁 1.概述 arthas是Alibaba推出的一款JVM性能诊断调优工具,主…

C++之代理模式

目录 模式思想 简介 组成 优点 代码实现 情景 如果不使用代理的话: 加代理的话: 结果 模式思想 简介 代理模式: 通过代理类,来控制实际对象的访问权限。 在某些情况下,一个对象不适合或者不能直接引用另…

深入理解java虚拟机精华总结:硬件的效率与一致性、Java内存模型、Java与线程、Java与协程

深入理解java虚拟机精华总结:硬件的效率与一致性、Java内存模型、Java与线程、Java与协程 硬件的效率与一致性Java内存模型主内存与工作内存内存间交互操作对于volatile型变量的特殊规则针对long和double型变量的特殊规则原子性、可见性与有序性原子性可见性有序性 …

数学建模之灰色预测方法

数学建模之灰色预测方法 目录灰色关联度矩阵关联系数关联矩阵 GM(1,1)模型相关原理matlab程序 目录 灰色关联度矩阵 关联系数 计算关联系数公式 步骤 第一步 第二步 求参考数列和待比较数列矩阵数值做差之后的最小值和最大值 第三步利用公式计算关联度系数,其中将…

【C++修炼之路】32.智能指针

每一个不曾起舞的日子都是对生命的辜负 智能指针 一.为什么需要智能指针?二.智能指针解决new抛异常的示例三.智能指针的使用及其原理3.1 RAII3.2 SmartPtr存在的问题3.3 std::auto_ptr3.4 std::unique_ptr3.5 std::shared_ptrstd::shared_ptr的基本设计std::shared_…

海明码(汉明码)原理及其计算方法

海明码(汉明码)是一种利用奇偶性检测和纠正错误的编码方法。在传输和储存数据时,可能会发生传输错误或数据损坏。海明码通过在数据中添加冗余位来检测错误并进行纠正,提高了传输和存储数据的可靠性。 基本原理:将原始…

【数据结构复习】汉诺塔:快速回忆汉诺塔问题

题目 题解 众所周知这是一个递归问题( 我们只需要注意两点:①什么时候退出递归 ②怎么从n-1推出n ①什么时候退出递归:很明显啦,n1的时候,我们直接把A位置的唯一盘子移到C上,大功告成。 ②怎么从n-1推出n…

Vision Pro销售策略曝光,面罩/头带/屈光镜片加大零售难度

彭博社Mark Gurman再次发布了关于苹果Vision Pro的销售策略,以及零售方面的难题。 一、销售计划和策略 1,2024年初先在美国部分门店销售,仅线下购买,线上暂不开放。购买方式是先线上预约(可能要提供面部扫描图、眼镜…

Python 利用opencv识别某象旋转验证码,识别率达95%以上

本期介绍某象旋转验证码识别,识别的思想其实与上篇文章识别滑动还原验证码相似,也是借鉴过来的,但是旋转验证码更加复杂,实现起来稍加困难,下面来看一下,原始数据集和识别之后数据集。 原始数据集: 将圆图旋转成功之后的数据集: 注意:我这里仅仅抓取了几十张作为数据…

c++使用回调函数

前言 回调函数的使用场景&#xff0c;当内部逻辑不知道用户的类型时&#xff0c;让用户自己提供对应数据类型的函数。 代码 #include<iostream> using namespace std;/// <summary> /// 万能打印函数。用户调用 /// </summary> /// <param name"d…

操作系统第六章之进程同步

操作系统第六章之进程同步 参考资料来源竞争同步临界区问题标准解决方案Peterson solution 硬件同步TestAndSet指令Swap介绍 信号量SemaphoresCritical Section of n n n Processes 信号量的实现Semaphore Implementation死锁和饥饿 经典同步问题有限缓冲问题生产者进程的结构…

笔记2(DCL指令)

用处&#xff1a;用来管理数据库 用户&#xff0c;控制数据库的访问 权限 DCL – 用户管理 1.查询用户 use mysql; select * from user; 2.创建用户 create user 用户名主机名 identified by 密码; 例如&#xff1a; create user xiaojielocalhost identified by 4620; 创建…

可重入函数、volatile关键字、SIGCHLD信号

目录 一、可重入函数 二、volatile关键字 三、SIGCHLD信号 一、可重入函数 以一个链表头插为例子 main函数调用insert函数像一个链表head中插入节点node1&#xff0c;插入操作分为两步&#xff0c;刚做完第一步的时候因为硬件中断使进程切换到内核&#xff0c;再次回到用户…

Visual studio 2015下载安装以及缺包提示的处理方法

最近要加入的比赛团队需要用到Visual studio 2015&#xff0c;百度后找到很多资源&#xff0c;自己也转到了百度网盘。中英文都有&#xff0c;需要的可以下载。 链接&#xff1a;https://pan.baidu.com/s/12gpVwXfQxfdkXub-IwhWFw?pwds325 提取码&#xff1a;s325 --来自百…

linux安装交叉编译环境

1、安装系统自带的交叉编译环境 sudo apt install gcc-arm-linux-gnueabihf sudo apt install g-arm-linux-gnueabihf 2、选择特定交叉编译器版本 版本路径&#xff1a;Linaro Releases 当前选择版本&#xff1a;4.9 、64位的版本

ArcGIS栅格影像数据处理

ArcGIS栅格影像数据处理 文章目录 ArcGIS栅格影像数据处理1. 栅格影像数据坐标系转换2. 栅格数据16bit转8bit3. 栅格数据波段变换参考链接 1. 栅格影像数据坐标系转换 点击【ArcToolbox】>【数据管理工具】>【投影和变换】>【栅格】>【投影栅格】。 2. 栅格数据16…

Jetpack compose——深入了解recomposition的工作原理

一、compose怎么 实现响应式编程的 Jetpack Compose 是 Android 的现代 UI 工具包&#xff0c;它使用 Kotlin 语言的声明式 UI 模式来简化 UI 开发。在这种模式中&#xff0c;你只需描述 UI 应该如何根据应用的状态进行显示&#xff0c;而 Compose 会在状态发生变化时自动更新…