广州外贸网站建设推广,优秀网站psd,中国菲律宾数据,成都旅游景点大全排名1.大模型相关概念#xff08;了解即可#xff09;
1.1 GPT
GPT#xff0c;全称为Generative Pre-training Transformer#xff0c;是OpenAI开发的一种基于Transformer的大规模自然语言生成模型。GPT模型采用了自监督学习的方式#xff0c;首先在大量的无标签文本数据上进…1.大模型相关概念了解即可
1.1 GPT
GPT全称为Generative Pre-training Transformer是OpenAI开发的一种基于Transformer的大规模自然语言生成模型。GPT模型采用了自监督学习的方式首先在大量的无标签文本数据上进行预训练然后在特定任务的数据上进行微调。
GPT模型的主要结构是一个多层的Transformer解码器但是它只使用了Transformer解码器的部分没有使用编码器-解码器的结构。此外为了保证生成的文本在语法和语义上的连贯性GPT模型采用了因果掩码causal mask或者叫自回归掩码auto-regressive mask这使得每个单词只能看到其前面的单词而不能看到后面的单词。
在预训练Pre-training阶段GPT模型使用了一个被称为Masked Language ModelMLM的任务也就是预测一个句子中被遮盖住的部分。预训练的目标是最大化句子中每个位置的单词的条件概率这个概率由模型生成的分布和真实单词的分布之间的交叉熵来计算。
在微调fine-tuning阶段GPT模型在特定任务的数据上进行训练例如情感分类、问答等。微调的目标是最小化特定任务的损失函数例如分类任务的交叉熵损失函数。
GPT模型的优点在于由于其预训练-微调的训练策略它可以有效地利用大量的无标签数据进行学习并且可以轻松地适应各种不同的任务。此外由于其基于Transformer的结构它可以并行处理输入序列中的所有单词比基于循环神经网络的模型更高效。
GPT演进了三个版本
1GPT-1用的是自监督预训练有监督微调5G文档1亿参数这种两段式的语言模型其能力还是比较单一即翻译模型只能翻译填空模型只能填空摘要模型只能摘要等等要在实际任务中使用需要各自在各自的数据上做微调训练这显然很不智能。
2GPT-2用的是纯自监督预训练相对于GPT-1它可以无监督学习即可以从大量未标记的文本中学习语言模式而无需人工标记的训练数据。这使得GPT-2在训练时更加灵活和高效。它引入了更多的任务进行预训练40G文档15亿参数能在没有针对下游任务进行训练的条件下就在下游任务上有很好的表现。
3GPT-3沿用了GPT-2的纯自监督预训练但是数据大了好几个量级570G文档模型参数量为 1750 亿GPT-3表现出了强大的零样本zero-shot和少样本few-shot学习能力。这意味着它可以在没有或只有极少示例的情况下理解并完成新的任务它能生成更连贯、自然和人性化的文本理解文本、获取常识以及理解复杂概念等方面也比GPT-2表现得更好。
1.2.InstructGPT
GPT-3 虽然在各大 NLP 任务以及文本生成的能力上令人惊艳但模型在实际应用中时长会暴露以下缺陷很多时候他并不按人类喜欢的表达方式去说话
1提供无效回答没有遵循用户的明确指示答非所问。
2内容胡编乱造纯粹根据文字概率分布虚构出不合理的内容。
3缺乏可解释性人们很难理解模型是如何得出特定决策的难以确信回答的准确性。
4内容偏见有害模型从数据中获取偏见导致不公平或不准确的预测。
5连续交互能力弱长文本生成较弱上下文无法做到连续。
在这个背景下OpenAI 提出了一个概念“Alignment”意思是模型输出与人类真实意图对齐符合人类偏好。因此为了让模型输出与用户意图更加 “align”就有了 InstructGPT 这个工作。
InstructGPT相对于GPT的改进主要是使用了来自人类反馈的强化学习方案—— RLHF Reinforcement Learning with human feedback来微调 GPT-3这种技术将人类的偏好作为激励信号来微调模型。
以摘要生成任务为例详细展示如何基于人类反馈进行强化学习最终训练完成得到 InstructGPT 模型。主要分为三步
1. 收集人类反馈使用初始化模型对一个样本生成多个不同摘要人工对多个摘要按效果进行排序得到一批排好序的摘要样本
2. 训练奖励模型使用第1步得到的样本集训练一个模型该模型输入为一篇文章和对应的一个摘要模型输出为该摘要的得分
3. 训练策略模型使用初始化的策略模型生成一篇文章的摘要然后使用奖励模型对该摘要打分再使用打分值借助 PPO 算法重新优化策略模型
InstructGPT可以更好地理解用户意图通过指令-回答对的数据集和指令-评价对的数据集InstructGPT可以学习如何根据不同的指令生成更有用、更真实、更友好的输出。 1.3 ChatGPTGPT3.5/GPT4.0
ChatGPT由OpenAI公司在2022年11月30日发布。在同样由OpenAI开发的GPT-3.5模型基础上ChatGPT通过无监督学习与强化学习技术进行微调并提供了客户端界面支持用户通过客户端与模型进行问答交互。ChatGPT不开源但通过WebUI为用户提供免费的服务。
OpenAI没有公布ChatGPT的论文和相关的训练和技术细节GPT-3.5没有开源但根据OpenAI所言ChatGPT相对于InstructGPT的主要改进在于收集标注数据的方法上而整个训练过程没有什么区别因此可以推测ChatGPT的训练过程应该与InstructGPT的类似大体上可分为3步
1.预训练一个超大的语言模型
2.收集人工打分数据训练一个奖励模型
3.使用强化学习方法微调优化语言模型。
相对于GPT-3GPT-3.5拥有3个变体每个变体有13亿、60亿和1750亿参数当前ChatGPT提供了基于GPT-4的版本相对于GPT-3.5GPT-4模型据说有1万亿个参数GPT4是一个多模态multimodal模型即它可以接受图像和文本作为输入并输出文本而GPT3.5只能接受文本作为输入并输出文本。这使得GPT4可以处理更复杂且具有视觉信息的任务如图像描述、图像问答、图像到文本等。
1.4 Transformer
Transformer 是一种基于自注意力机制self-attention mechanism的深度学习模型最初是为了处理序列到序列sequence-to-sequence的任务比如机器翻译。由于其优秀的性能和灵活性它现在被广泛应用于各种自然语言处理NLP任务。Transformer模型最初由Vaswani等人在2017年的论文Attention is All You Need中提出。
Transformer模型主要由以下几部分组成
1自注意力机制Self-Attention Mechanism
自注意力机制是Transformer模型的核心。它允许模型在处理一个序列的时候考虑序列中的所有单词并根据它们的重要性给予不同的权重。这种机制使得模型能够捕获到一个序列中的长距离依赖关系。
2位置编码Positional Encoding
由于Transformer模型没有明确的处理序列顺序的机制所以需要添加位置编码来提供序列中单词的位置信息。位置编码是一个向量与输入单词的嵌入向量相加然后输入到模型中。
3编码器和解码器Encoder and Decoder
Transformer模型由多层的编码器和解码器堆叠而成。编码器用于处理输入序列解码器用于生成输出序列。编码器和解码器都由自注意力机制和前馈神经网络Feed-Forward Neural Network组成。
4多头注意力Multi-Head Attention
在处理自注意力时Transformer模型并不只满足于一个注意力分布而是产生多个注意力分布这就是所谓的多头注意力。多头注意力可以让模型在多个不同的表示空间中学习输入序列的表示。
5前馈神经网络Feed-Forward Neural Network
在自注意力之后Transformer模型会通过一个前馈神经网络来进一步处理序列。这个网络由两层全连接层和一个ReLU激活函数组成。
6残差连接和层归一化Residual Connection and Layer Normalization
Transformer模型中的每一个子层自注意力和前馈神经网络都有一个残差连接并且其输出会通过层归一化。这有助于模型处理深度网络中常见的梯度消失和梯度爆炸问题。 左侧为 Encoder block右侧为 Decoder block。红色圈中的部分为 Multi-Head Attention是由多个 Self-Attention组成的可以看到 Encoder block 包含一个 Multi-Head Attention而 Decoder block 包含两个 Multi-Head Attention (其中有一个用到 Masked)。Multi-Head Attention 上方还包括一个 Add Norm 层Add 表示残差连接 (Residual Connection) 用于防止网络退化Norm 表示 Layer Normalization用于对每一层的激活值进行归一化。
Transformer模型的优点在于它能够并行处理序列中的所有单词这使得它在处理长序列时比循环神经网络RNN更高效。另外自注意力机制使得模型能够捕获到序列中长距离的依赖关系这是RNN难以做到的。 1.5 大模型
有学者称之为“大规模预训练模型”(large pretrained language model也有学者进一步提出”基础模型”(Foundation Models)的概念。
2021年8月李飞飞、Percy Liang等百来位学者联名发布了文章On the Opportunities and Risks of Foundation Models[1]提出“基础模型”(Foundation Models)的概念基于自监督学习的模型在学习过程中会体现出来各个不同方面的能力这些能力为下游的应用提供了动力和理论基础称这些大模型为“基础模型”。
“小模型”针对特定应用场景需求进行训练能完成特定任务但是换到另外一个应用场景中可能并不适用需要重新训练我们现在用的大多数模型都是这样。这些模型训练基本是“手工作坊式”并且模型训练需要大规模的标注数据如果某些应用场景的数据量少训练出的模型精度就会不理想。
“大模型”在大规模无标注数据上进行训练学习出一种特征和规则。基于大模型进行应用开发时将大模型进行微调在下游小规模有标注数据进行二次训练或者不进行微调就可以完成多个应用场景的任务实现通用的智能能力。
人工智能的发展已经从“大炼模型”逐步迈向了“炼大模型”的阶段。ChatGPT只是一个起点其背后的Foundation Module的长期价值更值得被期待。
大模型发展的前期被称为预训练模型预训练技术的主要思想是迁移学习。当目标场景的数据不足时首先在数据量庞大的公开数据集上训练模型然后将其迁移到目标场景中通过目标场景中的小数据集进行微调 使模型达到需要的性能 。在这一过程中这种在公开数据集训练过的深层网络模型被称为“预训练模型”。使用预训练模型很大程度上降低下游任务模型对标注数据数量的要求从而可以很好地处理一些难以获得大量标注数据的新场景。
2018年出现的大规模自监督self-supervised神经网络是真正具有革命性的。这类模型的精髓是从自然语言句子中创造出一些预测任务来比如预测下一个词或者预测被掩码遮挡词或短语。这时大量高质量文本语料就意味着自动获得了海量的标注数据。让模型从自己的预测错误中学习10亿次之后它就慢慢积累很多语言和世界知识这让模型在问答或者文本分类等更有意义的任务中也取得好的效果。没错说的就是BERT 和GPT-3之类的大规模预训练语言模型也就是我们说的大模型。
2022年8月Google发表论文重新探讨了模型效果与模型规模之间的关系。结论是当模型规模达到某个阈值时模型对某些问题的处理性能呈现快速增长。作者将这种现象称为Emergent Abilities即涌现能力。
大模型的典型架构就是Transformer 架构其自2018年开始统治NLP领域NLP领域的进展迎来了井喷。为何预训练的transformer有如此威力其中最重要的思想是attention也就是前面提到过的注意力机制。就是句子中每个位置的表征representation一般是一个稠密向量是通过其他位置的表征加权求和而得到。
为什么这么简单的结构和任务能取得如此威力原因在其通用性。预测下一个单词这类任务简单且通用以至于几乎所有形式的语言学和世界知识从句子结构、词义引申、基本事实都能帮助这个任务取得更好的效果。大模型也在训练过程中学到了这些信息让单个模型在接收少量的指令后就能解决各种不同的NLP问题。也许大模型就是“大道至简”的最好诠释。
大模型通常是具有大量的参数它们定义了模型的复杂性和学习能力。实现大模型主要涉及以下几个步骤
(1) 模型架构设计大模型通常具有更深的网络架构更多的层和/或更宽的层更多的神经元。这种设计可以使模型拥有更强大的表示能力可以学习和记忆更复杂的模式比如Transformer 架构。
(2) 数据准备训练大模型需要大量的数据。这些数据为模型提供了学习的机会使其能够捕捉到数据中的潜在模式。大量的训练数据也有助于防止模型过拟合这是深度学习模型常常需要面临的问题。
(3) 计算资源大模型需要大量的计算资源来进行训练包括强大的GPU和足够的内存。大模型的训练通常需要并行化和分布式计算来处理大量的计算任务。
(4) 优化算法训练大模型需要高效的优化算法。这些算法如随机梯度下降及其变体用于调整模型的参数以最小化预测错误。
(5) 正则化技术大模型由于其复杂性更容易过拟合训练数据。因此训练大模型通常需要使用正则化技术如权重衰减、dropout等来防止过拟合。
(6) 模型并行和数据并行由于大模型的规模训练过程常常需要在多个GPU或者多个机器上进行。模型并行和数据并行是两种常用的策略前者是将模型的不同部分分布在不同的设备上后者是将数据分布在不同的设备上。
这些是实现大模型的一般步骤和要求。然而这也带来了一些挑战如计算资源的需求、训练时间的增加、过拟合的风险等。因此选择合适的模型规模以平衡性能和效率是深度学习中的一个重要任务。
除了GPT-3、GPT-3.5及GPT-4当前还有BERT、RoBERTa、T5、XLNet等大模型。这些模型都是由不同的公司和组织开发的它们都有自己的优点和缺点。以下是这些模型的简要介绍
1BERTBERT是由Google开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。BERT有340M和1.1B两个版本其中1.1B版本有33亿个参数。
2RoBERTaRoBERTa是Facebook AI Research开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。RoBERTa有125M、250M、500M、1.5B和2.7B五个版本其中2.7B版本有27亿个参数。
3T5T5是由Google开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。T5有11B和22B两个版本其中22B版本有220亿个参数。
4XLNetXLNet是由CMU和Google Brain开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。XLNet有两个版本分别为XLNet-Large和XLNet-Base其中XLNet-Large有18亿个参数。
5GShardGShard是由Google开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。GShard有两个版本分别为GShard-Large和GShard-Base其中GShard-Large有6亿个参数。
6Switch TransformerSwitch Transformer是由CMU开发的一种预训练语言模型它在自然语言处理领域取得了很大的成功。Switch Transformer有两个版本分别为Switch Transformer-Large和Switch Transformer-Base其中Switch Transformer-Large有1.6亿个参数。
1.6 AIGC人工智能生成内容
AIGCArtificial Intelligence Generated Content / AI-Generated Content中文译为人工智能生成内容一般认为是相对于PCG专业生成内容、UCG用户生成内容而提出的概念。AIGC狭义概念是利用AI自动生成内容的生产方式。广义的AIGC可以看作是像人类一样具备生成创造能力的AI技术即生成式AI它可以基于训练数据和生成算法模型自主生成创造新的文本、图像、音乐、视频、3D交互内容等各种形式的内容和数据以及包括开启科学新发现、创造新的价值和意义等。
下面示例了AIGC能做的事情 AIGC技术中耳熟能详的当属Transformer、GPT、Diffusion、CLIP、Stable Diffusion下面简要介绍下Diffusion、CLIP、Stable Diffusion。
1Diffusion
“扩散” 来自一个物理现象当我们把墨汁滴入水中墨汁会均匀散开这个过程一般不能逆转但是 AI 可以做到。当墨汁刚滴入水中时我们能区分哪里是墨哪里是水信息是非常集中的当墨汁扩散开来墨和水就难分彼此了信息是分散的。类比于图片这个墨汁扩散的过程就是图片逐渐变成噪点的过程从信息集中的图片变成信息分散、没有信息的噪点图很简单逆转这个过程就需要 AI 的加持了。 研究人员对图片加噪点让图片逐渐变成纯噪点图再让 AI 学习这个过程的逆过程也就是如何从一张噪点图得到一张有信息的高清图。这个模型就是 AI 绘画中各种算法如Disco Diffusion、Stable Diffusion中的常客扩散模型Diffusion Model。 2CLIP Contrastive Language-Image Pre-Training大规模预训练图文表征模型
如果让你把下面左侧三张图和右侧三句话配对你可以轻松完成这个连线。但对 AI 来说图片就是一系列像素点文本就是一串字符要完成这个工作可不简单。 大规模预训练图文表征模型用4亿对来自网络的图文数据集将文本作为图像标签进行训练。一张图像和它对应的文本描述希望通过对比学习模型能够学习到文本-图像对的匹配关系。CLIP为CV研究者打开了一片非常非常广阔的天地把自然语言级别的抽象概念带到计算机视觉里。
3 Stable Diffusion
Diffusion算法针对任意噪声图片去噪后得到的图片是不可控的如果让Diffusion算法能够接受文字的提示从而生成想要的图片这就是当下AIGC的另一个大热点AI绘画只输入文字描述即可自动生成各种图像其核心算法-Stable Diffusion就是上面提到的文字到图片的多模态算法CLIP和图像生成算法DIffusion的结合体CLIP就是作为作为文字提示用的进而对DIffusion施加影响生成所需的图片。
1.7 AGI通用人工智能
AGI 是 Artificial General Intelligence通用人工智能的缩写它指的是一种理论上的形式的人工智能具有全面理解、学习和应用知识的能力与人类智能在各方面上都相当或者超越。这种类型的AI能够理解、学习和应用其在一个领域学到的知识到任何其他领域。可能会提问AGI,AIGC,chatgpt之间的关系
通用人工智能与当前存在的人工智能通常被称为弱人工智能或窄人工智能有很大的不同。当前的AI系统通常在一个非常特定的任务或一组任务中表现出超人的性能例如围棋、语言翻译、图像识别等但它们缺乏在一个任务上学到的知识应用到其他任务的能力也没有真正理解它们正在做什么的能力。
当前火热的GPT等大模型仍然是一种窄人工智能Narrow AI或特定人工智能Specific AI。它们被训练来执行特定的任务在这种情况下是生成文本而并不具有广泛的理解能力或适应新任务的能力这是AGI的特征。
然而GPT和AGI的关联在于GPT是当前AI研究为实现AGI所做出的努力中的一部分。它表明了预训练模型的潜力并给出了一种可能的路径通过不断增加模型的规模和复杂性可能会接近AGI。但是这仍然是一个未解决的问题并且需要更多的研究来确定这是否可行以及如何安全有效地实现这一目标。
尽管GPT在生成文本上表现出了强大的性能但它并不理解它正在说什么。GPT没有意识也没有理解或意愿它只是学会了模拟人类语言模式的统计模型。这是目前所有AI系统包括GPT与AGI之间的一个关键区别。
我们仍然远离实现通用人工智能。实现这个目标需要解决许多重大的科学和技术挑战包括但不限于语义理解、共享和迁移学习、推理和规划以及自我知觉和自我理解。此处可能会提问我们能不能实现通用人工智能会面临什么挑战 1.8 LLM大型语言模型
大语言模型英文Large Language Model缩写LLM也称大型语言模型是一种人工智能模型旨在理解和生成人类语言。它们在大量的文本数据上进行训练可以执行广泛的任务包括文本总结、翻译、情感分析等等。LLM的特点是规模庞大包含数十、成百、上千亿的参数这种模型可以捕获语言的复杂模式包括句法、语义和一些上下文信息从而生成连贯、有意义的文本。
GPT3、ChatGPT、BERT、T5、文心一言等都是典型的大型语言模型。
1.9 羊驼Alpaca
ChatGPT 大热让人惊叹其强大的对话、上下文理解、代码生成等等能力但另一方面由于 GPT-3以后得 系列模型 ChatGPT 均未开源再加上高昂的训练成本所构成的坚不可摧的护城河让普通人 公司望而却步。
2023年3月Meta开源了一个新的大模型系列 ——LLaMALarge Language Model Meta AI参数量从 70 亿到 650 亿不等。130 亿参数的 LLaMA 模型在大多数基准上可以胜过参数量达 1750 亿的 GPT-3而且可以在单块 V100 GPU 上运行。
时隔几天斯坦福基于 LLaMA 7B 微调出一个具有 70 亿参数的新模型 Alpaca他们使用了 Self-Instruct 论文中介绍的技术生成了 52K 条指令数据同时进行了一些修改在初步的人类评估中Alpaca 7B 模型在 Self-Instruct 指令评估上的表现类似于 text-davinci-003GPT-3.5模型。
然后斯坦福学者联手 CMU、UC 伯克利等再次推出一个全新模型 ——130 亿参数的 Vicuna俗称「小羊驼」骆马。Vicuna 是通过在 ShareGPT 收集的用户共享对话上对 LLaMA 进行微调训练而来训练成本近 300 美元。
研究人员设计了 8 个问题类别包括数学、写作、编码对 Vicuna-13B 与其他四个模型进行了性能测试。测试过程使用 GPT-4 作为评判标准结果显示 Vicuna-13B 在超过 90% 的情况下实现了与 ChatGPT 和 Bard 相匹敌的能力。同时在超过 90% 的情况下胜过了其他模型如 LLaMA 和斯坦福的 Alpaca。
1.10 Fine-tuning微调
Fine-tuning微调是一种机器学习技术用于调整已预训练的模型以适应新的任务。预训练的模型是在大量数据集如整个互联网的文本上训练的并且已经学习了该数据的许多基本模式。然后这些模型可以被微调即在更小、特定的数据集上进行额外的训练以适应特定的任务。
例如你可以取一个已经在大量的英文文本上预训练的模型这样它已经学会了英语的语法和许多词汇然后在一个小的数据集上进行微调这个数据集包含医学文本。微调后的模型将能更好地理解和生成医学相关的文本因为它已经适应了这个特定的领域前面提到的GPT-1就用到了微调技术。
微调的一个关键优势是预训练的模型已经学习了许多有用的基本模式因此只需要相对较小的数据集就可以对其进行微调。这样微调可以更快、更有效地训练模型尤其是在数据有限的情况下。
1.11自监督学习Self-Supervised Learning
自监督学习是从数据本身找标签来进行有监督学习。 无监督学习没有标拟合标签的过程而是从数据分布的角度来构造损失函数。自监督学习的代表是语言模型无监督的代表是聚类。自监督不需要额外提供label只需要从数据本身进行构造。
这种方法的一个常见示例是预测文本中的下一个单词或缺失的单词。模型的输入可能是一个句子中的一部分目标或标签是句子中的下一个单词或缺失的单词。通过这种方式模型可以在大量未标记的文本数据上进行训练并学习语言的语法和语义。
自监督学习的一个主要优点是可以利用大量的未标记数据进行训练。在许多情况下获取未标记的数据要比获取标记的数据容易得多。例如互联网上有大量的文本数据可以用来训练语言模型但只有一小部分数据有人工标记。
虽然自监督学习可以学习数据的内在模式但它可能需要额外的监督学习步骤例如fine-tuning来执行特定的任务。例如预训练的语言模型如GPT-3首先使用自监督学习来学习语言的模式然后可以在特定任务的标记数据上进行微调。
1.12 自注意力机制Self-Attention Mechanism
自注意力机制也被称为自我注意力或者是转换模型Transformers中的注意力机制是一种捕获序列数据中不同位置之间相互依赖性的技术。这种机制使得模型可以在处理一个元素例如一个词时考虑到序列中其他元素的信息。
在自注意力机制中每一个输入元素例如一个单词都会被转换为三种向量查询向量、键向量Key vector和值向量Value vector。在自注意力机制中计算一个词的新表示的步骤如下
1计算查询向量与所有键向量即输入元素的点积以此来获取该词与其他词之间的相关性。
2将这些相关性得分经过softmax函数转化为权重以此使得与当前词更相关的词获得更高的权重。
3用这些权重对值向量进行加权平均得到的结果就是当前词的新表示。
举个例子我们考虑英文句子 I love my dog. 在自注意力机制处理后每个词的新表示会是什么样的。我们将关注I这个词。
原始的词嵌入向量 I 可能只包含了 I 这个词本身的信息比如它是一个代词通常用于表示说话者自己等。但在自注意力机制处理后I 的新表示将包含与其有关的上下文信息。比如在这个句子中I后面跟着的是 love my dog所以新的表示可能会包含一些与“喜爱”和“狗”有关的信息。
通过这种方式自注意力机制可以捕获到序列中长距离的依赖关系而不仅仅是像循环神经网络RNN那样只能捕获相邻词之间的信息。这使得它在处理诸如机器翻译、文本生成等需要理解全局信息的任务中表现得尤为优秀。
1.13 中文LangChain
中文LangChain 开源项目最近很火其是一个工具包帮助把LLM和其他资源比如你自己的领域资料、计算能力结合起来实现本地化知识库检索与智能答案生成。
LangChain的准备工作包括
1、海量的本地领域知识库知识库是由一段一段的文本构成的。
2、基于问题搜索知识库中文本的功能性语言模型。
3、基于问题与问题相关的知识库文本进行问答的对话式大语言模型比如开源的chatglm、LLama、Bloom等等。
其主要工作思路如下
1、把领域内容拆成一块块的小文件块、对块进行了Embedding后放入向量库索引 为后面提供语义搜索做准备。
2、搜索的时候把Query进行Embedding后通过语义检索找到最相似的K个Docs。
3、把相关的Docs组装成Prompt的Context基于相关内容进行QA让chatglm等进行In Context Learning用人话回答问题。
2. OpenAI Sora
2.1 Soar 简介
2024/02/15OpenAI发布了王炸级别Sora
Sora可以根据文字描述生成长达60s的视频画面非常流畅真实度很高。一下子在国内互联网炸开了锅得到了广泛的传播。目前Sora生成视频的质量基本上秒杀了市面上所有的文字生成视频的产品。对比其他产品Pika是3秒Runway是4秒Sora生成的视频是60秒简直就是秒杀而且生成的分辨率也非常高几乎可以做到以假乱真。Sora注定会像ChatGPT一样成为一个颠覆很多行业的产品。
2.2 Soar原理
Sora是一个在不同时长、分辨率和宽高比的视频及图像上训练而成的扩展模型同时采用了Transformer架构也就是一种扩散型Transformer。
简单来说Soar整合了自家的GPT和DALL-E模型。其中GPT-4就是基于Transformer架构的大型神经网络目前是最强大的大预言模型。而最新的DALL-E3是基于文本提示生成图像的图像生成模型。
关于具体技术细节官方报告简单提出了以下6点
视觉数据的补片化 在具体操作中模型先将视频压缩到低维潜空间中然后将它们表示分解为时空补片从而将视频转换为补片。
视频压缩网络技术 降低视觉数据维度输入视频输出时空上压缩的潜表示。OpenAI为此训练了一个专门的解码器。
时空补片技术 给定一个压缩的输入视频模型提取一系列时空补片充当Transformer的token。基于补片的表示Sora就够对不同分辨率、持续时间和长宽比的视频和图像进行训练。这种技术就类似于目前很多手机看视频都在使用的动态插帧技术一样。
扩展Transformer OpenAI发现扩散型Transformer不仅可以用在ChatGPT的文本生成领域同样能在视频模型领域中完成高效扩展。
视频多样化 相比较其他的文字生成视频技术OpenAI是在直接视频数据的原始尺寸上进行了训练。所以Sora就可以不同分辨率、时长、宽高比的视频这一点也是其他的产品无法比拟的。
语言理解 毋庸置疑ChatGPT Plus是目前市面上最为强大的大预言模型。OpenAI也用GPT来将用户简短的提示转换为更长的详细说明然后发送给Sora。Sora的文字理解能力也表现得非常出色。
2.3 Sora 视频案例
原始提示词 A stylish woman walks down a Tokyo street filled with warm glowing neon and animated city signage. She wears a black leather jacket, a long red dress, and black boots, and carries a black purse. She wears sunglasses and red lipstick. She walks confidently and casually. The street is damp and reflective, creating a mirror effect of the colorful lights. Many pedestrians walk about. 对应效果是 2.4 Sora的视频特点
高质量的视觉呈现
Sora模型升级和训练解决了很大一部分物理逻辑问题能够理解和模拟现实中的运动。Sora生成的视频不仅完整清晰更不会给人以现实的突兀感几乎可以和专业人士花费大量时间制作的专业视频相媲美了。
时长一分钟
其他AI视频工具像Runway、Pika、Domo AI生成的视频时长很短只有5秒左右给人的感觉其实就是一个GIF的动图。而Sora生成的视频是60秒。其中的视频画面是一直保持动态并且有交互过程。这些是其他的视频工具无论是时长还是质量上都无法超越的。
多角度视觉呈现
通过前面的示例视频也可以发现Sora可以生成多种角度的视频包括特写、远景、航拍、拉远、推进等等角度。
就算是旋转镜头也能保持视觉主体的稳定与清晰完全可以和高质量的CG作品比拼了。
真实的画面感 其他AI视频工具像Runway、Pika、Domo AI生成的视频很容易辨别出来时AI画作的无论是镜头语言还是整个画面的色彩丰富度基本上都是保持不变的这也就是我们常说的AI味。Sora模拟呈现的镜头感非常真实并不会随着元素的运动而混乱或丢失。在某些情况下甚至可以达到以假乱真的地步。
精准的文本理解
Sora使用了DALL·E 3中的重新标注技术准备了大量带有文本标题的视频数据通过训练一个高度描述性的标题模型为所有视频生成文本标题来提高文本准确性改善了视频质量。同时Sora利用GPT将用户简短的提示转化为更长、更详细的标题指导视频的生成过程从而使Sora能够生成高质量的视频并准确地遵循用户的指示。
其他模型在这块做得不够好所以是通过图片合成视频。并且其他的模型也没有OpenAI在ChatGPT的大预言模型方便的强大的技术实力所以如果需要生成令人满意的视频需要花费大量的时间和精力去矫正。