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

AIGC技术的学习 系列二

文章目录

  • 前言
  • 一、AIGC是什么?
    • 1.1. 基本概念
    • 1.2机器学习分类
  • 二、 语言模型
    • 2.1. 基于统计的语言模型。
    • 2.2. 基于神经网络的语言模型。
    • 2.3. 基于预训练机制的的语言模型/大语言模型
  • 三、读入数据
    • 3.1. 不得不说的Transformer
    • 3.2. 影响力
    • 3.3. 根据人类反馈的强化学习
    • 3.4. 生成式AI
    • 3.5. AIGC
  • 四. 各个领域最新的技术进展及应用
    • 4.1. 网站
    • 4.2. Text-to-Text
    • 4.3. GPT-4
    • 4.4. 其他LLM
    • 4.5. Text-to-Image
    • 4.6. Image-to-Text
    • 4.7. Speech-to-Text
    • 4.8. Text-to-Audio/Text-to-Speech
    • 4.9. Text-to-Video
    • 4.10. Text-to-3D
    • 4.11. Text-to-Code
    • 4.12. CV
    • 4.13. Agents
    • 4.14. Others
  • 五、思考
  • 总结


前言

从2022年11月30日OpenAI发布ChatGPT以来,人工智能的相关话题就一直占据新闻的头条,这个领域的相关技术更是日新月异,有人开玩笑说是“天天文艺复兴,日日工业革命”。虽然,这个说法略显夸张,但是还是说明这个话题目前的进展快速,而且收到了广泛的关注。

ChatGPT的爆火让大家感受到了大模型的能力,各大公司都在投入资源和人力去开发大模型。“对于大模型,当然会全力以赴,坚决拥抱”,这是雷总4月14号发微博表达的小米对于大模型技术的态度,我们也成立了大模型组去开发自己的大模型。我们是小米互联网业务部,对于大模型我们也应该全面拥抱,但是作为业务部门,我们拥抱大模型的方式应该是去想怎么用使用大模型,怎么去培养AI思维方式和理念,去助力业务发展。

大模型这个术语,是为了区分不同参数规模下的语言模型,研究团体创造的术语,大语言模型代指大型的预训练模型(如包含数百亿或数千亿个参数)。 从技术概念上讲,目前大家说的大模型都属于生成式AI(GAI,Generative Artificial Intelligence)。事实上,ChatGPT和其他生成式人工智能(GAI)技术可以统一到人工智能生成内容(AIGC)的范畴,这涉及到通过AI模型创建数字内容,如图像、音乐和自然语言等等。AIGC的目标是使内容创建过程更高效、更易于使用,从而以更快的速度生产高质量的内容。AIGC是通过从人类提供的指令中提取和理解意图信息,并根据其知识和意图信息生成内容来实现的。

那么,目前AIGC领域相关的技术都有哪些?技术是怎么演进的?目前SOTA(state-of-the-art)的技术都能做什么?本篇报告就是回答这些问题。希望大家看了本篇报告之后,能够对生成式AI技术的有一个简单的了解,然后能够把一些技术跟自己负责业务的一些功能点联系起来,能够有机会有能力助力业务发展。


一、AIGC是什么?

1.1. 基本概念

  1. 人工智能(AI):人工智能是指让计算机模拟人类智能的一种技术,它旨在使计算机能够执行复杂的任务,如学习、推理、感知、理解等。
  2. 机器学习(ML):机器学习是一种实现人工智能的方法,它允许计算机通过数据自动学习和改进性能,而无需事先进行编程。
  3. 深度学习(DL):深度学习是机器学习的一个子领域,它利用神经网络模型来学习数据的表示和特征。深度学习在图像识别、语音识别和自然语言处理等领域取得了显著的成果。

神经网络(NN):神经网络是一种模拟人脑神经元连接的计算模型,通常由多个神经元层组成。神经网络通过调整连接权重来学习和识别输入数据中的模式。
5. ANI(窄域人工智能,Artificial Narrow Intelligence),也称为弱人工智能。窄域人工智能专注于执行特定任务,如语音识别、图像识别或推荐系统等。这些系统虽然在特定领域的表现优秀,但缺乏在多种任务和领域中进行泛化和适应的能力。
6. AGI(通用人工智能,Artificial General Intelligence)是一种具有广泛应用和理解能力的人工智能系统。通用人工智能的目标是让机器能够像人类一样处理各种任务,理解并学习新的概念,解决问题,以及在各种环境中进行适应和自主决策。关于通用人工智能没有特别明确的统一的定义,一种定义是它是一种非常普遍的智力能力,其中包括推理、计划、解决问题、抽象、思考、理解复杂概念、快速学习和从经验中学习的能力 。

请添加图片描述

1.2机器学习分类

请添加图片描述

判别式学习(Discriminative Learning)
学习P(Y|X),其目标是学习输入数据(特征)与输出数据(标签)之间的映射关系。判别式学习关注于直接建立一个决策边界或函数,以便将不同类别的数据分开。它不能反映训练数据本身的特性,但它寻找不同类别之间的最优分裂面,反映的是异类数据之间的差异,直接面对预测往往学习准确度更高。具体来说有以下特点:

  • 对条件概率建模,学习不同类别之间的最优边界。

  • 捕捉不同类别特征的差异信息,不学习本身分布信息,无法反应数据本身特性。

  • 学习成本较低,需要的计算资源较少。

  • 需要的样本数可以较少,少样本也能很好学习。

  • 预测时拥有较好性能。

  • 无法转换成生成式。

    生成式学习(Generative Learning)
    学习P(Y,X),其目标是学习输入数据和输出数据的联合概率分布。生成式学习关注于为每个类别建立一个生成模型,从而能够生成与训练数据相似的新样本。它可以从统计的角度表示分布的情况,能够反映同类数据本身的相似度,它不关心到底划分不同类的边界在哪里。当存在隐变量时,依旧可以用生成式模型,此时判别式方法就不行了。具体来说,有以下特点:

  • 对联合概率建模,学习所有分类数据的分布。

  • 学习到的数据本身信息更多,能反应数据本身特性。

  • 学习成本较高,需要更多的计算资源。

  • 需要的样本数更多,样本较少时学习效果较差。

  • 推断时性能较差。

  • 一定条件下能转换成判别式。

二、 语言模型

语言模型简单来说就是建模一个字符序列是一个句子的概率,是人工智能领域的一个重要研究领域,其发展历程可以分为以下几个阶段:

2.1. 基于统计的语言模型。

这一阶段的语言模型通过统计方法分析大量语料,并对语言中各个单词出现的概率进行建模。
N-gram模型就是这一阶段最常用的模型。
请添加图片描述

2.2. 基于神经网络的语言模型。

随着深度学习技术的发展,语言模型开始采用神经网络模型进行建模,从而更好地模拟人类语言理解的过程。
2003年Bengio提出神经网络语言模型NNLM。

请添加图片描述
从今天再看,网络结构非常简单。它的意义是把深度学习和语言模型结合起来,为之后的工作搭好了基础。

2.3. 基于预训练机制的的语言模型/大语言模型

  • Autoregressive language modeling (Decoder-only)
  • Masked language modeling (Encoder-only)请添加图片描述

请添加图片描述

三、读入数据

3.1. 不得不说的Transformer

  1. 介绍
    Transformer是大多数大模型的核心架构,例如GPT-3、DALL-E-2、Codex和stable diffusion等等等等。毫不夸张的说,就是因为Transformer架构的提出,大模型才能这么好效果,包括NLP和CV,才有多模态领域的突破发展。
    它首次被提出是为了解决传统模型(如RNN)在处理可变长度序列和上下文感知方面的局限性。Transformer架构主要基于自注意力机制,使模型能够关注输入序列中的不同部分。
    Transformer由编码器和解码器组成。编码器接收输入序列并生成隐藏表示,而解码器接收隐藏表示并生成输出序列。编码器和解码器的每一层都由多头注意力和前馈神经网络组成。多头注意力是Transformer的核心组件,它学会根据词元的相关性为它们分配不同的权重。这种信息路由方法使模型在处理长期依赖关系方面表现更好,从而提高了在广泛NLP任务中的性能。
    Transformer的另一个优点是其架构使其具有高度可并行性,并允许数据优于归纳偏差。这种属性使Transformer非常适合大规模的预训练,使基于Transformer的模型能够适应不同的下游任务。
    它设计上的一些优点有:
  • 自注意力机制(Self-Attention Mechanism):Transformer通过自注意力机制在输入序列中捕捉长距离依赖关系,克服了循环神经网络(RNN)和长短时记忆网络(LSTM)在处理长序列时梯度消失和梯度爆炸的问题。
  • 并行计算能力:与RNN和LSTM串行处理序列数据不同,Transformer可以同时处理整个序列,从而显著提高计算效率和模型训练速度。
  • 可扩展性:Transformer架构易于扩展,可以通过堆叠多个编码器和解码器层来增加模型的深度和容量,从而提高模型性能。
  • 位置编码(Positional Encoding):Transformer通过位置编码为模型提供序列中每个元素的位置信息,弥补了自注意力机制中无法获取位置信息的缺陷。
  • 多头自注意力(Multi-Head Attention):多头自注意力可以让模型在不同的表示子空间中同时学习多个注意力分布,从而提高模型的表达能力和捕获不同级别依赖关系的能力。
  • 层次归一化(Layer Normalization):Transformer中使用的层次归一化有助于加速训练过程并提高模型的泛化能力。
  • 残差连接(Residual Connections):Transformer中的残差连接可以减轻梯度消失问题,帮助深度模型更有效地训练。
  1. 网络结构
    在这里插入图片描述请添加图片描述

3.2. 影响力

请添加图片描述

3.3. 根据人类反馈的强化学习

尽管在大规模数据上进行训练,但人工智能生成内容(AIGC)并不总是能产生与用户意图一致的输出,其中包括输出内容的有用性和真实性,而这块是非常重要的。为了更好地使AIGC的输出与人类的偏好相一致,人类反馈的强化学习(RLHF)已经被应用于对各种应用中的模型进行微调。

  • RLHF
  • RLAIF

3.4. 生成式AI

生成式AI是深度学习的一个子集,是上面说的生成式学习在深度学习领域的运用,使用大模型的方式解决生成式学习的问题。
Google的一个关于生成式AI的课程https://www.youtube.com/watch?reload=9&app=desktop&v=G2fqAlgmoPo

  • 单模态
  • 多模态请添加图片描述

相关文章:

AIGC技术的学习 系列二

文章目录 前言一、AIGC是什么?1.1. 基本概念1.2机器学习分类二、 语言模型2.1. 基于统计的语言模型。2.2. 基于神经网络的语言模型。2.3. 基于预训练机制的的语言模型/大语言模型三、读入数据3.1. 不得不说的Transformer3.2. 影响力3.3. 根据人类反馈的强化学习3.4. 生成式AI3…...

惊艳!AI模型DIAMOND可模拟《反恐精英》,单张RTX 3090就能运行

最近,研究人员开发了一种名为 DIAMOND(Diffusion for World Modelling)的 AI 模型,它能够在神经网络中模拟著名的电脑游戏《反恐精英:全球攻势》(CS:GO)。 这个模型在一张 Nvidia RTX3090显卡上运行,能够达到每秒10帧…...

中波长线天线耦合的一个方法

围绕窗外墙外牵了10米的室外天线。 短波,fm都是很简单,一个夹子直接夹在拉杆天线上面,效果已经很好。 今天偶尔听到中波前面大约510khz的地方有个摩尔斯码。是成都附近机场的NDB。这个平时要在楼顶或者很空旷的地方才能收到。音量比较小&am…...

Java基础(6)

深拷贝和浅拷贝区别了解吗?什么是引用拷贝?关于深拷贝和浅拷贝区别,我这里先给结论:浅拷贝:浅拷贝会在堆上创建一个新的对象(区别于引用拷贝的一点),不过,如果原对象内部…...

[JAVAEE] 线程安全问题

目录 一. 什么是线程安全 二. 线程安全问题产生的原因 三. 线程安全问题的解决 3.1 解决修改操作不是原子性的问题 > 加锁 a. 什么是锁 b. 没有加锁时 c. 加锁时 d. 死锁 e. 避免死锁 3.2 解决内存可见性的问题 > volatile关键字 (易变的, 善变的) a. 不加…...

k8s 集群给用户生成 kubeconfig 文件

在 k8s 集群的 RBAC 里有用到用户、组的概念,但是它又不直接管理这些资源,而是通过外部身份验证机制(Authentication Mechanisms)来管理和定义的,比如证书进行签名时,将其配置为 Subject: O system:master…...

(八)Proteus仿真STM32单片机GPIO驱动数码管

1,参考上篇,将LED点阵屏更换成数码管如下图 2,修改驱动函数,数组seg[14]前10个是0-9数字的编码,后四个是空格,点,横线,下划线 char seg_decode(char num)//数字解码 {const char se…...

Python进阶知识1

Python函数 定义一个函数 1.什么是函数:函数是可以重复执行的语句块,可以重复调用 2.作用:用于封装语句块, 提高代码的重用性。 函数是面向过程编程的最小单位 def 语句 1.作用:用来定义( 创建)函数 2…...

单片机设计|基于STM32实现具有室内定位功能的智能手环的设计

作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,…...

计算机网络——运输层(可靠传输、超时重传、选择确认、流量控制和拥塞控制、TCP连接和释放)

TCP可靠传输的实现 我们假定数据传输只在一个方向进行,即A发送数据,B给出确认。这样的好处是使讨论限于两个窗口,即发送方A的发送窗口和接收方B的接收窗口。 以字节为单位滑动窗口 发送方构造窗口 窗口前沿和后沿的移动情况 描述发送窗口的状…...

Web安全实践

前言 安全无小事,成败在细节,网络有风险,灾难弹指间。 安全一般情况下看不见,在你周围漂浮着,显现出来后,往往会刻骨铭心。正因为安全看不见,所以往往不受重视,因为感知到的概率真…...

【算法篇】动态规划类(2)——01背包+完全背包(笔记)

目录 一、理论基础 1. 问题类型 2. 01背包问题 3. 完全背包问题 4. 解题步骤 (1)确定dp数组(dp table)以及下标的含义。 (2)确定递推公式。 (3)dp数组如何初始化。 &#x…...

基于SpringBoot的“社区医院管理服务系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“社区医院管理服务系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统首页界面图 用户注册界面图 医生界面…...

二进制漏洞利用 | 整数溢出探究

什么是整数溢出? 整数溢出是指当算术运算的结果超出用于存储该结果的数据类型的容量时发生的现象。简单来说,就是当一个数值变得过大(对于有符号整数来说,也可能是过小),无法被正常存储,从而导…...

10种经典的螺栓防松设计

螺栓防松在机械设计中至关重要,不同方式的螺栓防松有哪些特点一起来看一下。 01双螺母 双螺母防松也称对顶螺母防松,当两个对顶螺母拧紧后,两个对顶的螺母之间始终存在相互作用的压力,两螺母中有任何一个要转动都需要克服旋合螺纹…...

开放式蓝牙耳机哪个品牌好用?开放式耳机排行榜测评!

开放式耳机,因其特殊的不入耳佩戴模式,让使用者在享受音乐或者进行通话的过程中,依然可以对外界声音保持敏感。在户外运动场景下,这种特性优势尽显,既保证了耳机佩戴的稳定和舒适,又提高了运动的安全性。为…...

新能源行业必会基础知识---电力现货问答---第5问---何为电力中长期市场?与电力现货市场之间有何关系?国内试点地区如何衔接?国外有哪些经验值得借鉴?

新能源行业必会基础知识-----电力现货问答-----主目录-----持续更新https://blog.csdn.net/grd_java/article/details/142909208 虽然这本书已经出来有几年了,现货市场已经产生了一定变化,但是原理还是相通的。还是推荐大家买来这本书进行阅读观看&#…...

如何将数据从 AWS S3 导入到 Elastic Cloud - 第 2 部分:Elastic Agent

作者:来自 Elastic Hemendra Singh Lodhi 了解将数据从 AWS S3 提取到 Elastic Cloud 的不同选项。 这是多部分博客系列的第二部分,探讨了将数据从 AWS S3 提取到 Elastic Cloud 的不同选项。 在本博客中,我们将了解如何使用 Elastic Agent…...

DTL698电表数据 转 profinet IO协议项目案例

目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 配置VFBOX网关 2 5 用PROFINET IO协议转发数据 4 6 其他说明 6 7 案例总结 7 1 案例说明 设置网关采集DLT698电表数据数据把采集的数据转成profinet IO协议转发给其他系统。 2 VFBOX网关工作原理 VFBOX网关是协议转…...

CSS @规则(At-rules)系列详解___@font-face规则使用方法

CSS 规则(At-rules)系列详解 ___font-face规则使用方法 本文目录: 零、时光宝盒 一、CSSfont-face规则定义和用法 二、font-face语法 三、font-face使用方法例子 3.1、指定一种字体 3.2、font-face 里添加文本的描述符 3.3、设置多个 font-face 规则。 3.4…...

如何通过CDN优化网站服务器访问速度?

CDN,即内容分发网络(Content Delivery Network),在现代互联网中起着重要作用。它可以显著提升网站服务器的访问速度。以下是CDN在加速网站访问方面的主要优势及其工作原理。 1. 全球分布的服务器节点 CDN通过在全球范围内布设多个…...

JAVA学习-练习试用Java实现“自定义函数之字符反转”

问题: 写一函数,使输入的一个字符串按反序存放,在主函数中输入并输出反序后的字符串(不包含空格)。 示例 :输入一行字符123456abcdef,输出逆序后的字符串fedcba654321。 解答思路: …...

大衍数列——考研408考试科目之数据算法——未来之窗学习通

一、大衍数列 中国古代文献中,曾记载过“大衍数列”, 主要用于解释中国传统文化中的太极衍生原理。 它的前几项是:0、2、4、8、12、18、24、32、40、50 … 其规律是:对偶数项,是序号平方再除2,奇数项,是…...

JVM(HotSpot):直接内存及其使用建议

文章目录 一、什么是直接内存?二、特点三、使用案例四、直接内存的管理 一、什么是直接内存? Direct Memory:系统内存 普通IO,运行原理图 磁盘到系统内存,系统内存到jvm内存。 NIO,运行原理图 划分了一块…...

centos7安装mysql5.7

1. 更新系统软件包 首先,确保您的系统是最新的。打开终端并运行: sudo yum update -y 2. 安装MySQL 5.7的YUM仓库 MySQL提供了自己的YUM仓库,您可以通过下载并安装官方提供的RPM包来添加这个仓库。 wget https://dev.mysql.com/get/mysql57-c…...

如何在JVS逻辑引擎中巧妙运用包含查询功能?

在实际业务场景中,数据查询是不可或缺的一环,包含查询在实际业务场景中经常用到,被广泛应用于各类业务系统中。当我们需要查询状态为指定几种状态的数据时,类似SQL语句中的IN查询就显得尤为重要。为了满足这一需求,在J…...

Spring Boot视频网站:安全与可扩展性设计

4 系统设计 4.1系统概要设计 视频网站系统并没有使用C/S结构,而是基于网络浏览器的方式去访问服务器,进而获取需要的数据信息,这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的B/S结构&#xff0c…...

深入理解 Flutter 鸿蒙版的 Stack 布局:适配屏幕与层叠样式布局

目录 写在前面 什么是 Stack 布局? Stack 的基本用法 Stack 布局的核心概念 屏幕适配与 Stack 布局 使用 MediaQuery 获取屏幕尺寸 使用 LayoutBuilder 进行自适应布局 高级层叠样式布局示例 1. 照片展示与文字描述 2. 动态调整层叠布局 写在最后 写在前…...

JavaScript中Number相关特性

目录 非 VIP 用户可前往公众号“前端基地”进行免费阅读 数值范围 小数注意问题 NaN isNaN()判断是不是NaN JavaScript可以表示的进制 数值扩展 非 VIP 用户可前往公众号“前端基地”进行免费阅读 数值范围 数字类型主要涵盖整数与小数。在数值范围方面,存在特…...

Redis中String类型数据扩容原理分析

大家好,我是 V 哥。在 Java 中,我们有动态数组ArrayList,当插入新元素空间不足时,会进行扩容,好奇 Redis 中的 String 类型,C 语言又是怎样的实现策略,带着疑问,咱们来了解一下。 最…...