2023年2月

公司AI大模型模型参数训练数据发布时间应用场景AIGC应用场景
百度文心·NLP大模型
文心·CV大模型
跨模态大模
--发布时间智能搜索
智能云
自动驾驶
智能地图
汽车智能化
解决方案
智能家居
AI作画
AI写作
AI编剧
AI语音
AI视频创作
数字人
阿里M610万亿-发布时间阿里云
钉钉
AI海报设计
openAIGPT-1
GPT-2
GPT-3
ChatGPT
1.17亿
15亿
1750亿
1750亿
5G
40G
45T
2018年6月
2019-2
2020-5
2022-11
对话对话
元语智能ChatYuan百亿-2022-11-对话
华为盘古----对话
华为+中科院自动化所紫极太初千亿---对话
北京智源人工智能研究院悟道1.75万亿悟道1.0
悟道2.0
--对话

一、元语AI-ChatYuan

1.官网:

https://github.com/clue-ai/ChatYuan

2.简介:

hatYuan: 元语功能型对话大模型

这个模型可以用于问答、结合上下文做对话、做各种生成任务,包括创意性写作,也能回答一些像法律、新冠等领域问题。它基于PromptCLUE-large结合数亿条功能对话多轮对话数据进一步训练得到。

PromptCLUE-large:在1000亿token中文语料上预训练,累计学习1.5万亿中文token,并且在数百种任务上进行Prompt任务式训练。针对理解类任务,如分类、情感分析、抽取等,可以自定义标签体系;针对多种生成任务,可以进行采样自由生成。

3.预训练代码:

https://github.com/google-research/text-to-text-transfer-transformer

4.训练数据集合:

https://github.com/CLUEbenchmark/pCLUE
pCLUE: Large-scale Prompt-based Dataset for Multi-task and Zero-shot Learning in Chinese
pCLUE:基于提示的大规模预训练数据集,用于多任务学习和零样本学习
数据量: 120万训练数据,73个Prompt

  1. 训练集 train.json: 1,200,705
  2. 验证集 dev.json: 100,000
  3. 公开测试集 test_public.json: 129,556
  4. 测试集 test.json: 250,461
5.目前已经有包含9个数据集:

1.单分类tnews
2.单分类iflytek
3.自然语言推理ocnli
4.语义匹配afqmc
5.指代消解-cluewsc2020
6.关键词识别-csl
7.阅读理解-自由式c3
8.阅读理解-抽取式cmrc2018
9.阅读理解-成语填空chid

二、百度文心

1.官网:

https://github.com/PaddlePaddle/ERNIE

2.简介:

文心大模型ERNIE是百度发布的产业级知识增强大模型,涵盖了NLP大模型和跨模态大模型。2019年3月,开源了国内首个开源预训练模型文心ERNIE 1.0,此后在语言与跨模态的理解和生成等领域取得一系列技术突破,并对外开源与开放了系列模型。

3.底层模型:

ERNIE 1.0
ERNIE 2.0
ERNIE 3.0

4.对话大模型:

文心一言,暂未发布,3月份发布

三、GPT系列

1.官网:

GPT-1:
GPT-2:https://github.com/openai/gpt-2
GPT-3:https://github.com/openai/gpt-3
ChatGPT: https://chat.openai.com/

2.介绍:

GPT-1、GPT-2:模型均是开源的,GPT-3模型没有开源

3.论文:

GPT-1:https://cdn.openai.com/research-covers/language-unsupervised/language_understanding_paper.pdf
GPT-2:https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
GPT-3:https://arxiv.org/pdf/2005.14165.pdf
instructGPT:https://arxiv.org/pdf/2203.02155.pdf

作者:机器之心
链接:https://zhuanlan.zhihu.com/p/597100830
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

在机器学习中,模型的能力是指模型执行特定任务或一组任务的能力。模型的能力通常通过它能够优化其目标函数的程度来评估。例如,用来预测股票市场价格的模型可能有一个衡量模型预测准确性的目标函数。如果该模型能够准确预测股票价格随时间的变化,则认为该模型具有很高的执行能力。一致性关注的是实际希望模型做什么,而不是它被训练做什么。它提出的问题是「目标函数是否符合预期」,根据的是模型目标和行为在多大程度上符合人类的期望。假设要训练一个鸟类分类器,将鸟分类为「麻雀」或「知更鸟」,使用对数损失作为训练目标,而最终目标是很高的分类精度。该模型可能具有较低的对数损失,即该模型的能力较强,但在测试集上的精度较差,这就是一个不一致的例子,模型能够优化训练目标,但与最终目标不一致。原始的 GPT-3 就是非一致模型。类似 GPT-3 的大型语言模型都是基于来自互联网的大量文本数据进行训练,能够生成类似人类的文本,但它们可能并不总是产生符合人类期望的输出。事实上,它们的目标函数是词序列上的概率分布,用来预测序列中的下一个单词是什么。但在实际应用中,这些模型的目的是执行某种形式的有价值的认知工作,并且这些模型的训练方式与期望使用它们的方式之间存在明显的差异。尽管从数学上讲,机器计算词序列的统计分布可能是建模语言的高效选择,但人类其实是通过选择最适合给定情境的文本序列来生成语言,并使用已知的背景知识和常识来辅助这一过程。当语言模型用于需要高度信任或可靠性的应用程序(如对话系统或智能个人助理)时,这可能是一个问题。

json.load()json.loads()json.dump()json.dumps() 是 Python 中 json 模块提供的方法,用于处理 JSON 数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。下面是这些方法的具体区别:

  1. json.load()

    • 这个方法用于从文件对象中读取 JSON 数据。
    • 它接受一个文件对象作为参数,并将其内容解析为 Python 对象(通常是字典或列表)。
    • 使用 json.load() 时,你需要先打开一个文件,并将其文件对象传递给这个方法。

示例:

import json

with open('data.json', 'r') as file:
    data = json.load(file)
  1. json.loads()

    • 这个方法用于从字符串中解析 JSON 数据。
    • 它接受一个 JSON 格式的字符串作为参数,并将其解析为 Python 对象。
    • json.load() 不同,json.loads() 处理的是字符串而不是文件对象。

示例:

import json

json_str = '{"name": "John", "age": 30}'
data = json.loads(json_str)
  1. json.dump()

    • 这个方法用于将 Python 对象写入文件对象,并将其转换为 JSON 格式的字符串。
    • 它接受两个参数:要序列化的 Python 对象和文件对象。
    • 使用 json.dump() 时,你需要先打开一个文件,并将其文件对象传递给这个方法。

示例:

import json

data = {"name": "John", "age": 30}
with open('data.json', 'w') as file:
    json.dump(data, file)
  1. json.dumps()

    • 这个方法用于将 Python 对象转换为 JSON 格式的字符串。
    • 它接受一个要序列化的 Python 对象作为参数,并返回一个 JSON 格式的字符串。
    • json.dump() 不同,json.dumps() 返回的是字符串而不是写入文件。

示例:

import json

data = {"name": "John", "age": 30}
json_str = json.dumps(data)
print(json_str)

总结来说,loadloads 是用来解析 JSON 数据的,区别在于 load 从文件对象读取,而 loads 从字符串读取。dumpdumps 是用来序列化 Python 对象为 JSON 数据的,区别在于 dump 将数据写入文件对象,而 dumps 返回 JSON 格式的字符串。

在深度学习中,向量、矩阵和张量是数学概念,它们用于表示和处理数据。下面是它们的定义:

微信截图_20240528152854.png

一、向量(Vector):

向量是一个一维数组,可以表示为一个有序的数值列表,通常用于表示单个数据点的特征。在数学上,向量可以是列向量(垂直于行向量)或行向量(水平于列向量)。在深度学习中,向量通常用来表示单个样本的特征。

  • 向量是一组有序排列的数,可以是行向量或列向量。
  • 行向量是一个水平排列的数值集合,通常表示为 $ \mathbf{v} = [v_1, v_2, \ldots, v_n]$
  • 列向量是一个垂直排列的数值集合,通常表示为
    微信截图_20240528151534.png

在深度学习中,向量通常用来表示一组特征或者是神经网络中的权重

二、矩阵(Matrix):

矩阵是一个二维数组,由行和列组成。矩阵可以被看作是向量的集合,其中每个向量可以是列向量或行向量。在深度学习中,矩阵常用于表示多个数据点的特征集合,例如,一个矩阵的每一行可以代表一个样本,每一列代表一个特征。

  • 矩阵是一个由数字按照矩形排列成的数组,有行和列的概念。
  • 一个 m times nm×n 的矩阵可以表示为$ A = [a_{ij}] $,其中 $a_{ij} $ 表示位于第 ii 行第 jj 列的元素。
  • 在深度学习中,矩阵常被用来表示权重参数、输入数据以及中间计算结果。

三、张量(Tensor):

张量是向量和矩阵的推广。一个张量可以有任意数量的维度,而不仅仅是一维或二维。张量的阶数(order)或秩(rank)是指它的维度数。例如:

0阶张量是一个标量(scalar),是一个单一的数值。
1阶张量是一个向量。
2阶张量是一个矩阵。
3阶张量可以被看作是一个立方体,有三层维度。
4阶张量可以被看作是一个四维数组,等等。
在深度学习中,张量用于表示复杂的数据结构,如多维数组,这些数据结构可以包含图像、视频帧、序列数据等。张量运算(如加法、乘法等)是深度学习算法中的基础,它们允许我们执行复杂的数学操作来处理数据。