前言
本文是吴恩达(Andrew Ng)的视频课程《Generative AI for Everyone》(给所有人的生成式 AI 课)的学习笔记。由于原课程为全英文视频课程(时长约 3 个小时),且国内访问较慢,阅读本文可快速学习课程内容。
课程介绍
本课程帮助大家了解生成式人工智能的工作原理,以及如何在生活和工作中使用它。适合任何有兴趣了解生成式人工智能在当前和未来的用途、影响和底层技术的人。它不需要任何编码技能或事先了解人工智能知识。
课程分为三个部分,每个部分约 1 个小时,我会结合课程内容进行相关的解读和筛选,以便国内用户更好地理解。
- 第一部分
- 第二部分(待发布)
- 第三部分(待发布)
课程链接
第一部分
生成式人工智能简介
什么是生成式人工智能
什么是生成式人工智能(Generative AI)?它是指可以生成高质量内容( 特别是文本、图像和音频)的人工智能系统。
ChatGPT 是最著名的生成式 AI 系统之一,它可以按照指示执行任务,例如为社交媒体上某个产品的帖子写三个评价,并产生各种创意产出。许多用户熟悉可以生成此类文本的网站或应用程序,如 Bing Chat,国内的 Kimi、豆包等。现在有许多公司都提供了用户界面,允许你输入一些被称为提示的文本,并生成响应。除了这些应用程序之外,生成式人工智能的另一种应用从长远来看可能会更具影响力,那就是使用生成式人工智能作为开发者工具。人工智能已经渗透到我们的生活中,我们中的许多人每天都会使用它数十次甚至更长时间,或根本不加考虑。
生成式人工智能如何工作
我们可以将人工智能视为一组工具。人工智能中最重要的工具之一就是监督学习(Supervised learning),事实证明它非常擅长标记事物。其次是生成式人工智能(Generative AI),它直到最近才开始运作良好。如果你研究人工智能,可能会意识到还有其他工具,例如无监督学习(Unsupervised learning)和强化学习(Reinforcement learning)。
生成式人工智能就是使用监督学习构建的。而监督学习是一种技术,它用于处理从输入 A 生成相应的输出 B。例如,给定一封电子邮件,监督学习可以判断该电子邮件是否为垃圾邮件。输入 A 是一封电子邮件,输出 B 为零或一,其中零不是垃圾邮件,一是垃圾邮件。这就是当今垃圾邮件过滤器的工作原理。
2010-2020 年左右的十年是大规模监督学习快速发展的十年。而这为现代生成式人工智能奠定了基础。从 2010 年左右开始,我们发现对于许多小型 AI 模型,即使我们向其提供更多数据,它的性能也不会好很多。但是,越来越多的研究人员开始意识到,如果你要训练一个非常大型的人工智能模型,也就是在非常快速、非常强大、内存充足的计算机上训练人工智能模型,那么当你向它提供越来越多的数据时,它的性能就会越来越好。如今,大规模监督学习仍然很重要,但是这种使用超大型模型来标记事物的想法是我们今天获得生成式人工智能的方式。
让我们来看看生成式 AI 如何使用一种被称为大型语言模型(Large Language Model,缩写为 LLM)的技术生成文本。给定诸如“ 我喜欢什么”之类的输入,这被称为提示,然后,LLM 可以用苏打饼和奶油芝士来完成这句话,或者如果你再运行一次,它可能会说“妈妈做的肉饼”。
大型语言模型 LLM 是如何生成此输出的?LLM 是通过使用监督学习来构建的。它使用监督学习来反复预测下一个单词是什么。LLM 的大量数据意味着数千亿个单词,在某些情况下,可能超过一万亿个单词。
作为思想伙伴的 LLM
LLM 提供了一种查找信息的新方法。但 LLM 有时可能会编造事实,我们称之为“幻觉”。如果你真的依赖于问题的正确答案,那么在指望答案之前,向权威来源仔细检查答案可能会很有用。有时候 LLM 反复对话交流也会很有帮助,例如,如果你问 LLM 代表什么,它可能会回答,LLM 代表 LGUM Magister,这是法律中使用的术语,它实际上是互联网上最常见的缩略词 LLM 的用法。但是,如果你说,在人工智能的背景下呢?然后它能在人工智能的背景下说,LLM 指的是大语言模型。有时,这种对话交流可以帮助你提供正确的背景信息。
LLM 也可以成为思想伙伴,帮助你仔细思考问题。例如,当你在寻找信息时,你可能会想:“我应该使用网络搜索引擎还是使用 LLM?”吴恩达建议,如果有网页提供了权威的回答,例如某个常见的食谱,搜索引擎可以找到权威且值得信赖的来源。而 LLM 可能会编造事实,有时在编造事实时听起来非常权威和自信,所以在听从建议之前,可能需要仔细检查一下它所说的内容。但是,如果目前没有一个网页可以很好地回答这个问题。例如,一种创新的没有见过的食物搭配做法,LLM 可以提供一些很有用的思考灵感。
人工智能是一种通用技术
人工智能是一种通用技术,它可以用来做很多事情。
首先,生成式 AI 可以生成文本。LLM 也擅长回答问题,如果你允许他们访问公司的特定信息, 他们可以帮助你的团队成员找到他们需要的信息。
除了写作之外,生成式 AI 还有助于完成阅读任务。你可以给它提供相对较长的信息,让它生成一个简短的输出。例如,如果你经营一家在线购物网站,你收到了很多不同的客户评价,生成式 AI 可以读取客户的评价,帮助你快速确定这些评价是否是投诉,这可以用来帮助将投诉转到相应的部门以便快速处理。
最后,生成式 AI 还用于许多聊天机器人类型的任务。而 ChatGPT 就是最著名的通用聊天机器人。
生成式人工智能应用
写作
由于大语言模型经过训练可以反复预测下一个单词,因此它们非常擅长写作。可以使用 LLM 的 Web 界面作为头脑风暴的伙伴。也可以使用 LLM 来进行翻译。实际上,LLM 有时甚至比专用的机器翻译引擎还要好,特别是对于互联网上有大量文本的语言。
阅读
事实证明,LLM 对许多阅读任务也很有用。首先就是校对阅读。其次是总结长篇文章。最后还能用来做声誉监控,可以在仪表盘中使用 LLM,以跟踪一段时间内对某个业务或产品的正面或负面客户情绪。
聊天
今天,不同的公司正在开发各种各样的专业聊天机器人,它们非常擅长回答问题。其中一些机器人能够进行对话并提供建议,另一些机器人还可以与公司的软件系统进行交互,并采取诸如下订单交付之类的操作。
一个常见的设计要点是让机器人辅助人类。其中机器人将为员工生成建议的消息,但员工将重新检查该消息,如果消息看起来不错,则予以批准。或者有机会在消息实际发回给客户之前对其进行编辑。这种类型的设计通常也被称为循环中的人为设计。
由于流量庞大,让人工检查每条消息可能不切实际。但是,根据机器人说错话的风险和流量,来确定人类参与其中的程度,这些是公司用来尝试安全部署聊天机器人的一些模式。
大语言模型能做什么和不能做什么
现在,让我们来看看 LLM 的一些具体限制。
首先,是知识界限。LLM 在训练时对世界的了解就被冻结了。例如,根据 2022 年 1 月之前抓取的互联网数据进行训练的模型,将没有关于最近事件的信息。因此,这被称为知识截止期, LLM 只了解它训练前的世界。
LLM 的第二个局限性是它们有时会编造事实,我们称之为“幻觉”。有时候,LLM 可以用一种非常自信、权威、明确的语气编造事实。这可能会误导人们以为这种虚构的东西实际上可能是真实的。幻觉可能会产生严重的后果。因此,如果你使用它来制作具有实际影响的文档,那么了解限制是很重要的。
LLM 还有一个技术限制,即输入长度是有限的,也就是提示的长度是有限的,它可以生成的文本的输出长度也是有限的。许多 LLM 最多只能接受几千字的提示,因此你可以给出的上下文总量是有限的。从技术上讲,LLM 对所谓的上下文长度有限制,而上下文长度实际上是总输入 + 输出大小的限制。
最后,生成式 AI 的一个局限性是它们目前不能很好地处理结构化数据。这个结构化数据是指表格数据,例如存储在 Excel 电子表格中的那种数据。相比之下,生成式 AI 往往最适合处理非结构化数据。非结构化数据是指文本、图像、音频、视频。
最后,LLM 可能会使输出产生偏差,有时还会输出有害的言论。例如,LLM 是根据互联网上的文本进行训练的,而互联网上的文字可能反映出社会中的某些偏见。幸运的是,所有主要的 LLM 提供商都在努力提高这些模型的安全性,因此随着时间的推移,大多数模型都变得更加安全。
提示技巧
我们将介绍三个主要的提示技巧。
- 细节和具体
- 引导模型思考答案
- 实验和迭代
首先要详细和具体。这种提示不仅可以为 LLM 提供足够的背景信息,还可以非常清楚地告诉它你想做什么,这更有可能给你带来你想要的结果。
第二个技巧是指导模型思考答案。如果你已经想到了一个流程,那么给出明确的分步说明可能会非常有效。
第三个是进行实验和迭代。例如,如果你不喜欢这个结果,可以澄清一下,然后说更正其中的任何语法和拼写错误。如果它仍然没有给出想要的结果,可以进一步澄清一下,然后用其他方式重写。
因此,提示过程通常不是从正确的提示开始。这是从某件事开始,然后看看结果是否令人满意,并知道如何调整提示以使其更接近你想要的答案。
这就是为什么我们说提示是一个高度迭代的过程。有时你必须尝试几件事才能得到想要的结果。
图像生成
我们把大部分注意力集中在文本生成上。文本生成是许多用户正在使用的东西,在生成式人工智能的所有工具中,其影响最大。但是,生成式人工智能的另一个用途是图像生成。目前,越来越多的模型可以生成文本或图像,这些模型有时被称为多模态模型,因为它可以在多种模式 、文本或图像中运行。
当今的图像生成主要是通过一种被称为扩散模型的方法完成的。扩散模型已经从互联网上或其他地方发现的大量图像中吸取了经验,扩散模型的核心就是监督学习。假设该算法在互联网上找到了一张像这样的苹果的图片,它想从这样的照片以及数亿张其他图片中学习如何生成图像。第一步是拍摄这张图像,然后逐渐向其添加越来越多的噪点。你可以从这张漂亮的苹果照片,到更模糊的照片,再到最后一张看起来像纯噪点的照片。所有的像素都是随机选择的,看起来完全不像苹果。
然后,扩散模型使用此类图像作为数据,通过监督学习进行学习,将噪点图像作为输入,输出噪点稍小的图像。具体而言,它将创建一个数据集,其中第一个数据点表示如果给定第二个输入图像,我们希望监督学习算法学会输出这个苹果的更简洁版本。这是另一个数据点,鉴于第三张图像的噪点更大,我们希望算法学会输出这样的噪点稍微少一点的版本。最后,假定像第四张图像这样的纯噪点图像,我们希望它能学会在这里输出一张噪点稍低一点的图像,以暗示苹果的存在。经过对大概数亿张图像的训练,当你想用它来生成一个新图像时,它将从纯噪点图像开始。
首先拍一张照片,照片中的每个像素都是完全随机选择的。然后,我们将这张照片反馈到我们在上一段中训练的监督学习算法中。当我们输入纯噪点时,它会学会从这张照片中去除一点噪点,最后你可能会得到一张画面,暗示中间有某种水果,但我们还不太确定它是什么。给定第二张照片,我们再次将其反馈给模型,然后它带走了更多的噪点,现在看来我们可以看到一张模糊的西瓜画面。然后,如果你再应用一次,我们最终会得到第四张图片,它看起来像一张漂亮的西瓜照片。但实际上对于扩散模型,可能更典型的是大约 100 步,该算法将用于完全随机生成图片。
从大型数据集中吸取经验后,当你想应用这个算法来生成例如一根绿色香蕉时,和以前一样,我们从纯噪点的图像开始。每个像素都是完全随机选择的。现在它知道你想要一根绿色香蕉,首先能输出一张图片看不清香蕉,但中间可能有一些绿色水果的暗示,这是图像生成的第一步。下一步是,我们在右边拍摄这张图片,有一个输出 B,然后输入 A,再提示一下 “绿色香蕉”,让它生成噪点稍微少一点的画面,现在我们看得很清楚,看起来像有一根绿色香蕉,但是噪点很多。 我们再做一次,它终于消除了大部分噪点,直到我们最终得到那张漂亮的绿色香蕉的照片。这就是扩散模型生成图像的方式。同样地,这种生成精美图像的神奇过程的核心是监督学习。
第一部分完。