一文读懂“生成式 AI”

news2024/11/24 16:35:23

一、前言

本文基于谷歌的:《Introduction to Generative AI》 并且借助 ChatGPT 整理而成,帮助大家理解生成式 AI 这个概念。
image.png
image.png
主要包括 4 个部分:

  • 生成式 AI 的定义
  • 生成式 AI 的工作原理
  • 生成式 AI 模型的分类
  • 生成式 AI 的应用

二、生成式 AI 介绍

2.1 生成式 AI 的定义

人工智能不等于机器学习

人工智能是关于赋予机器以模拟人类智能的能力的广泛领域。它涉及使计算机系统能够执行类似于人类智能的任务,如语音识别、图像识别、自然语言处理和决策制定等。
image.png

人工智能旨在使机器具备像人类一样的推理、学习、问题解决和决策能力
image.png

机器学习是人工智能的一个分支,它是通过数据和统计模型来让机器自动学习和改进的一种方法。机器学习的目标是设计和开发算法,使计算机系统能够从数据中学习,而无需明确地编程。通过训练模型,机器学习使机器能够识别模式、做出预测和进行决策

简而言之,人工智能是一个更广泛的概念,涵盖了使机器拥有人类智能的目标和技术。机器学习是实现人工智能的一种方法,通过让机器从数据中学习和自动调整模型来实现任务。因此,机器学习是人工智能的一个子集,但人工智能不仅限于机器学习,还包括其他方法和技术。

机器学习中的监督学习和无监督学习


监督学习和无监督学习是机器学习中两种不同的学习方法。
image.png
监督学习是一种通过使用带有标签的训练数据来训练模型的学习方法。在监督学习中,训练数据包含输入特征和对应的标签或输出结果。模型通过学习输入特征与标签之间的关系,从而能够对新的未标记数据进行预测。常见的监督学习算法包括线性回归、逻辑回归、决策树和支持向量机等。监督学习适用于需要进行分类、回归和预测等任务。

image.png
无监督学习是一种在没有标签的情况下从未标记的数据中自动发现模式和结构的学习方法。在无监督学习中,训练数据不包含标签信息,模型需要通过对数据进行聚类、降维或关联规则挖掘等技术来发现隐藏的结构和模式。无监督学习可以帮助我们理解数据的分布、发现异常点、进行数据可视化和特征提取等。常见的无监督学习算法包括聚类算法(如K均值聚类)、主成分分析(PCA)和关联规则挖掘等。

image.png

简而言之,监督学习使用有标签的训练数据来训练模型,并根据已知的输入和输出之间的关系进行预测。无监督学习则是在没有标签的情况下对未标记数据进行学习,通过发现数据中的模式和结构来获得洞察和理解。这两种学习方法在解决不同类型的问题和应用场景中发挥着重要的作用。

深度学习

深度学习是机器学习的分支。
image.png
机器学习是一种通过算法和模型让计算机系统从数据中学习的方法。它的目标是使机器能够自动从数据中发现模式、进行预测和做出决策,而无需明确地编程。机器学习算法可以根据给定的输入数据进行学习,并通过调整模型的参数来优化性能。常见的机器学习算法包括线性回归、决策树、支持向量机和随机森林等。
image.png

深度学习是机器学习的一个特定领域,它利用人工神经网络模型进行学习和训练。深度学习模型由多个层次(称为神经网络的层)组成,每一层都会对输入数据进行变换和表示。这些网络层通过一系列的非线性转换将输入数据映射到输出结果。深度学习模型的核心是深度神经网络(Deep Neural Network,DNN),它可以通过大量的标记数据进行训练,从而实现高度准确的预测和分类任务。
image.png

总的来说,机器学习是一种更通用的学习方法,可以使用各种算法和技术,而深度学习是机器学习的一个特定分支,使用深度神经网络来实现学习和预测。深度学习的主要优势在于它可以自动从原始数据中学习更高级别的特征表示,从而提供更准确和复杂的模型。然而,深度学习通常需要更大规模的数据和更高的计算资源来进行训练,相对于传统机器学习算法而言更为复杂。

生成式 AI 和深度学习的关系

image.png
生成式 AI 是深度学习的分支。

判别模型和生成模型

生成式模型主要包括判别模型(Discriminative Model)和生成模型(Generative Model)。
image.png判别模型(Discriminative Model)和生成模型(Generative Model)是机器学习中两种不同类型的模型,它们的主要区别在于其对数据的建模方式和应用领域。
image.png
判别模型是一种直接对条件概率进行建模的模型。它主要关注的是给定输入数据,预测输出类别或标签的概率分布。判别模型通过学习输入和输出之间的关系来建立决策边界,从而对新的输入数据进行分类。常见的判别模型包括逻辑回归、支持向量机和深度神经网络等。判别模型通常用于分类、回归和标注等任务。
image.png
生成模型是一种对联合概率分布进行建模的模型。它不仅学习输入和输出之间的关系,还学习了生成输入数据的过程。生成模型可以通过学习数据的分布和特征之间的关系来生成新的样本数据。常见的生成模型包括高斯混合模型(Gaussian Mixture Model,GMM)和生成对抗网络(Generative Adversarial Network,GAN)等。生成模型通常用于生成新的图像、语言模型和数据增强等任务。
image.png
判别模型和生成模型的选择取决于具体的问题和任务需求。判别模型更关注分类和预测的准确性,可以直接对输入和输出之间的关系进行建模。而生成模型更关注数据的生成过程,可以模拟数据的分布和生成新的样本。生成模型可以用于生成新的数据,但在分类和预测任务上可能不如判别模型准确。
image.png
总的来说,判别模型关注输入和输出之间的关系,用于分类和预测等任务。生成模型关注数据的生成过程,可以生成新的样本数据。选择判别模型还是生成模型应根据具体问题的需求和任务目标来决定。

生成式 AI 的监督、半监督和无监督学习

image.png
传统的监督、无监督学习,将训练数据和标注数据喂给模型,可以作出预测、分类和聚类。

image.png
生成式 AI 的监督、半监督、无监督学习,将训练数据、打标数据和未打标数据给基础模型,然后生成新的内容,最终实现文本、代码和图片的生成。

生成式 AI 和传统的编程和神经网络的区别

image.png
传统的编程方式,需要硬编码来描述猫的一些特征。
image.png
神经网络算法可以通过学习是不是猫的样本,然后你给出一张图片它可以判断是否为一个猫。
image.png
LaMDA 、PaLM、GPT 等生成式模型在喂了大量内容后,可以直接问猫是什么?它讲给出它所知道的答案。

生成式 AI 的定义

image.png
生成式 AI 是什么?

  • 生成式 AI 是人工智能的一个分支,可以根据已经学习的内容生成新的内容。
  • 从现有的内容中学习的过程叫做训练,训练的结果是创建一个统计模型。
  • 当用户给出提示词,生成式 AI 将会使用统计模型去预测答案,生成新的文本来回答问题。

生成式模型的分类

image.png

【生成式语言模型】是基于自然语言处理的技术,通过学习语言的规律和模式来生成新的文本。它可以根据之前的上下文和语义理解生成连贯的句子或段落。生成式语言模型的训练基于大规模的文本数据,例如新闻文章、小说或网页内容。通过学习文本中的单词、短语和句子之间的关系,生成式语言模型可以自动生成新的、具有逻辑和语法正确性的文本,如文章、对话和诗歌等。
【生成式图片模型】是基于计算机视觉的技术,通过学习图像的特征和结构来生成新的图像。它可以从之前的训练数据中学习到图像的特征表示和统计规律,然后使用这些知识生成新的图像。生成式图片模型的训练通常基于大规模的图像数据集,例如自然图像或艺术作品。通过学习图像的纹理、颜色、形状和物体之间的关系,生成式图片模型可以生成具有视觉真实感或艺术风格的新图像,如自然风景、人像或抽象艺术作品等。

image.png
生成式 AI 输入图片,输出可以是文本(看图说话、可视化问答、图片搜索)、图片(超分辨率,图片修改)和视频(动画)。

super resolution 是超分辨率的英文表达,它是指通过硬件或软件的方法提高原有图像的分辨率,通过一系列低分辨率的图像来得到一幅高分辨率的图像的过程。

image.png
生成式 AI 输入是文本,输出可以是文本(翻译、总结、问答、语法纠正)、图片(图片、视频)、音频(文本到发音)、决策(玩游戏)。

2.2 生成式 AI 的工作原理

image.png

生成式语言模型学习训练数据中的语言模式,然后给出一些文本,它们将会预测后面的内容是什么。
image.png

image.png

image.png

image.png

将用户的输入进入 Transformer 模型的编码器和解码器进行处理,然后在生成式预训练模型中进行处理,最终将结果输出给用户。

预训练:

  • 海量数据
  • 数十亿参数
  • 无监督学习

image.png
模型通过学习大量的文本数据,尝试预测下一个单词或短语。然而,有时候模型会生成一些不符合语法规则或意义不明的词语或短语,这被称为"幻觉(hallucinations)"。
image.png

幻觉可以视为模型在生成过程中的错误或缺陷,可能由于训练的数据量不够、模型的训练数据质量差、没有给模型足够的上下文、没有给模型足够的约束导致的。

image.png
提示词是作为大语言模型输入的一段文本,它可以以各种方式用来控制模型的输出。

image.png
提示词设计是创建提示的过程,从而从大型语言模型中生成期望的输出。正如我们之前提到的,生成 AI 在很大程度上取决于你输入的训练数据。它分析输入数据的模式和结构,生成内容。因此输入的质量决定了输出的质量。

2.3 生成式模型的类型

image.png
文本到文本生成模型旨在接收一个文本输入,并生成一个相关的文本输出。这种模型可用于机器翻译、文本摘要、对话生成、故事生成等任务。生成模型可以学习从输入到输出的映射关系,以生成具有语义和语法正确性的新文本。

常见应用场景:

  • 机器翻译:将一种语言的文本翻译成另一种语言。
  • 文本摘要:从长篇文本中生成简洁的摘要或概括。
  • 对话生成:生成自然流畅的对话,可用于虚拟助手或聊天机器人。
  • 故事生成:自动生成连贯、有趣的故事或叙述。

image.png
文本到图像生成模型接收一个文本描述作为输入,并生成对应的图像输出。这种模型可以将自然语言描述转化为视觉内容,用于图像生成、图像标注、图像编辑等任务。通过学习文本描述和图像之间的语义关联,模型可以生成与文本描述相匹配的图像。

常见应用场景:

  • 图像生成:根据文本描述生成与之相匹配的图像。
  • 图像标注:将图像描述转化为自然语言标注。
  • 图像编辑:通过文本指令实现图像编辑,如添加、修改或删除特定内容。

image.png
文本到视频或三维生成模型接收一个文本输入,并生成相应的视频或三维模型输出。这些模型可以用于视频生成、场景合成、三维模型生成等任务。模型可以学习从文本描述到视频序列或三维模型的转换过程,生成与文本描述相符的动态视频或立体模型。

常见应用场景:

  • 视频生成:根据文本描述生成与之相符的动态视频。
  • 场景合成:根据文本描述生成三维场景或虚拟现实体验。
  • 三维模型生成:根据文本描述生成具有特定属性或形状的三维模型。

image.png
文本到任务生成模型旨在根据文本输入执行特定任务。这些模型可以接收自然语言指令或问题,并生成相应的任务执行结果。例如,问答生成模型可以接收问题,并生成相应的答案;代码生成模型可以接收自然语言描述,并生成相应的代码实现。这种模型能够将文本指令转化为任务执行的具体操作。

常见应用场景:

  • 问答生成:根据问题生成相应的答案或解决方案。
  • 代码生成:将自然语言描述转化为代码实现。
  • 指令执行:根据自然语言指令执行特定的任务,如图像处理、数据操作等。

image.png

image.png
模型花园:Google Vertex AI 中有很多语言和视觉方面的基础模型可以选择。

image.png

2.4 生成式 AI 应用

image.png
生成式 AI 在文本(生成写作、AI 笔记、销售文案、聊天机器人、邮件编写等)、代码(代码生成、代码文档、文本转SQL、Web 应用构建等)、图片、发音、视频、3D 等领域都有大量的市场。

Bard 代码生成演示:
image.png

image.png
image.png

Bard 代码生成能力:
image.png

GenAI Studio 介绍:
image.png

生成式 AI App 构建器不需要任何编码就可以可以帮助你构建 AI 应用。
image.png

PaLM API 和 MakerSuite 可以简化生成式开发更容易。
image.png

image.png


创作不易,如果本文对你有帮助,欢迎点赞、收藏加关注,你的支持和鼓励,是我创作的最大动力。
在这里插入图片描述

欢迎加入我的知识星球,知识星球ID:15165241 一起交流学习。
https://t.zsxq.com/Z3bAiea 申请时标注来自CSDN。

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

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

相关文章

【数据结构】双向带头循环链表的实现

目录 全部代码 图例(双向带头循环链表) 各个功能的实现 创建该链表的节点 创建初始链表 链表的头插 链表的尾插 链表的随机插入 链表的头删 链表的尾删 链表的随机删除 链表的销毁 链表是否为空的判断 链表节点的创建 总结 全部代码 typ…

命令行更新Windows

命令行更新Windows powershell命令行更新安装 Windows Update module for Windows Powershell连接到 Windows Update 服务器并下载更新安装下载好的 Windows Update 更新 cmd执行Windows update更新检查更新下载 Windows Update 更新安装更新安装更新后重新启动设备 win10以下版…

Python中Pandas库的相关操作

目录 Pandas库 常用操作 创建DataFrame 查看数据 数据选择和过滤 数据排序和排名 缺失数据处理 数据聚合和分组 数据的合并和连接 Pandas库 Pandas是Python中常用的数据处理和分析库,它提供了高效、灵活且易于使用的数据结构和数据分析工具。 1.Series&a…

实例35---字符串反转,如将字符串 “www.runoob.com“ 反转为 “moc.boonur.www“。

文章目录 前言一、题目描述 二、题目分析 三、解题 1.解题方法一--- for循环来将字符的下标数值进行对每一个字符进行交换 ---程序运行代码 2.解题方法二------ 指针 ------ 程序运行代码(1)程序运行代码优化 总结 前言 本系列为C语言菜鸟100道基础经典例题详解刷题系列。点滴…

微服务:服务发现

1. 服务发现 eureka、nacos、Consul、etcd 和 zk 都是主流的服务发现工具,而 Dubbo 和 Polaris Mesh 则是基于服务发现的 RPC 框架。 它们的主要区别在于: eureka 是 Netflix 开源的一个服务发现组件,支持高可用和数据同步,具有…

如何使用Linkage Mapper揭示栖息地变化的故事

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Linkage Mapper解密数字世界链接 文章目录 引言1.1 定义和作用1.2 Linkage Mapper的历史和发展2.1 揭示栖息地变化的重要性2.2 Linkage Mapper的优势和不足

Windows下载安装RocketMq

Windows下载安装RocketMq 下载安装包启动NAMESERVER 和 BROKER启动NAMESERVER启动BROKER 安装可视化插件 下载安装包 RockitMQ官网下载地址:https://rocketmq.apache.org/release-notes/ 解压到指定的文件夹下 先配置JAVA_HOME 配置ROCKETMQ_HOME环境变量 …

使用Maple的Python API :OpenMaple(Windows下的解决方案)

在Maple 2023(按照软件文档,Maple 2018及以上版本均适用;我目前测试的版本为2023)的安装目录下,有软件附带的解释器,如D:\Program Files\Maple 2023\Python.X86_64_WINDOWS\Python.exe。这一Python解释器的…

Python中NumPy库的相关操作

目录 NumPy库 常用操作 创建数组 数组属性 索引和切片 数组运算 数组重塑 NumPy库 NumPy(Numerical Python)是Python中常用的数值计算库,它提供了高性能的多维数组对象和对数组进行操作的函数。 1.多维数组对象(ndarray&…

Java 课程设计 —— 扫雷

一、团队课程设计博客链接: https://www.cnblogs.com/luomeili/p/10280310.html 二、个人负责模块或任务说明: 模块:文件操作 Minefield 类实现 三、自己的代码提交记录截图 四、自己负责模块或任务详细说明 1.Minefield 类实现 Minefie…

Java中的CountDownLatch和CyclicBarrier有什么作用?

在Java并发编程中,CountDownLatch和CyclicBarrier是两个非常有用的工具,它们可以帮助我们更加方便地进行线程通信和协作。在本文中,我将从面试的角度,详细讲解Java中的CountDownLatch和CyclicBarrier的概念、作用和实现方式&#…

基于卷积的图像分类识别(六):DenseNet FractalNet

系列文章目录 本专栏介绍基于深度学习进行图像识别的经典和前沿模型,将持续更新,包括不仅限于:AlexNet, ZFNet,VGG,GoogLeNet,ResNet,DenseNet,SENet,MobileN…

如何搭建自己的git服务器

GitHub,Gitee 想来大家都用过,我们的代码就是托管在这些平台上的。因此,你可能好奇为什么我们不自己搭建一个 git 呢服务器?下面,就开始教大家如何一步步搭建自己的 git 服务器(试验成功的那一刻还是很让人…

Java 中 ArrayList 和 LinkedList 有什么区别

在Java中,ArrayList和LinkedList是两种常见的集合类。它们都实现了List接口,提供了类似数组的功能,可以存储任意类型的对象。虽然它们都可以实现相同的功能,但是它们的底层实现方式有所不同,因此在性能和用途上也存在一…

dom4j解析XML文件

主要为了讲解Mybatis中如何用dom4j解析XML,这里当作dom4j解析.XML文件的练习 引入mybatis配置文件和一个.xml文件 都是.xml <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN…

【C++】| 04——STL | 容器_vector

系列文章目录 【C】| 01——泛型编程 | 模板 【C】| 02——STL | 初识 【C】| 03——STL | 迭代器 【C】| 04——STL | 容器_vector 文章目录 1. vector容器2. vector库2.1 迭代器相关函数2.1 ww 1. vector容器 vector 与 动态数组 相似&#xff0c;可以自动调节自身大小。元素…

基于SpringBoot的美容院管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SpringBoot 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录 一、项目简介 二、系…

Windows10中英文切换按钮消失?一招解决

目录 问题场景&#xff1a; 问题描述 原因分析&#xff1a; 解决方案&#xff1a; 1. 打开设置&#xff0c;选择时间和语言 2. 进入日期时间设置 3. 进入高级键盘设置 4. 勾选这个勾选框&#xff0c;问题解决 问题场景&#xff1a; 博主玩道德与法治V在线模式时&#…

BGP防环,路由反射器,BGP联盟

数据的出口是路由的入口 ospf内部&#xff1a;10 ospf外部&#xff1a;150 静态路由&#xff1a;60 RIP&#xff1a;100 BGP&#xff1a;255 当下一跳是0.0.0.0 表示的是自己 display bgp peer //查看bgp邻居表 display bgp routing-table //查看bgp数据库 display i…

WPF MaterialDesign 初学项目实战(3)动态侧边栏

其他文章 WPF MaterialDesign 初学项目实战&#xff08;0&#xff09;:github 项目Demo运行 WPF MaterialDesign 初学项目实战&#xff08;1&#xff09;首页搭建 WPF MaterialDesign 初学项目实战&#xff08;2&#xff09;首页导航栏样式 创建侧边栏实体类 新建MenuBar文件…