# 紫东太初多模态大模型
“紫东太初”跨模态通用人工智能平台是由中国科学院自动化研究所研发的以多模态大模型为核心、基于全栈国产化基础软硬件平台,可支撑全场景AI应用。依托面向超大规模的高效分布式训练框架,自动化所构建了具有业界领先性能的中文预训练模型、语音预训练模型、视觉预训练模型,并开拓性地通过跨模态语义关联实现了视觉-文本-语音三模态统一表示,构建了三模态预训练大模型,赋予跨模态通用人工智能平台多种核心能力。
“紫东太初”兼具跨模态理解和生成能力,具有了在无监督情况下多任务联合学习、并快速迁移到不同领域数据的强大能力。对更广泛、更多样的下游任务提供模型基础支撑,达成AI在如视频配音、语音播报、标题摘要、海报创作等更多元场景的应用。
**特色:**
- **全球首个多模态图文音预训练模型**
- **多层次多任务自监督学习**
- **弱关联多模态数据语义统一表达**
- **兼顾任务感知和推理增强的中文预训练模型**
- **多粒度学习与注意力指导的视觉预训练模型**
- **基于自监督预训练的多任务语音建模技术**
## 中文预训练模型
文本预训练模型使用条件语言模型作为自监督目标进行训练,和GPT一样,模型根据上文来预测当前词汇,最终训练得到的模型可以生成流畅的中文表达。
本次开源的中文文本预训练模型由40层Transformer组成,隐层维度2560,包含32个注意力头,共32亿参数。训练语料丰富多样,包括新闻、百科、散文等,文本生成能力强大。
中文预训练模型基础上还可以进行微调操作,充分利用少量有监督数据增强模型在下游任务上的表现,如文本分类,对话生成、古诗创作等;除此之外,中文预训练模型还能够实现简单的少样本学习,如下图所示,输入已知的部分样例,模型能够捕捉类似的规律进行文本生成。
<img src="text.png" alt="text" style="zoom:50%;" />
#### 安装与使用
具体安装步骤请参见[text](text/README.md).
## 视觉预训练模型
#### 模型介绍
<img src="./vision.png" alt="show" width="765" height="371" align="bottom" />
现有的掩码语言模型的随机遮蔽方式容易对图像中重要的前景目标遮蔽,让模型产生误解,不利于快速收敛。然而,在无监督的情况下,如何自适应的调整遮蔽区域是一个非常关键的难点问题。为此,我们巧妙的利用Transformer中的自注意力机制,并且设计了一种动态掩码机制来对图像进行预训练。
具体来说,我们的视觉动态掩码机制采用teacher网络中最后的自注意力图作为指导,以一定的概率选择响应较低的区域对student网络的输入进行动态遮蔽
$\begin{equation}
Attn =
\frac{1}{H}\sum_{h=1}^{H} Softmax(Q_h^{cls}\cdot \frac{K_h^T}{\sqrt{d}})
\end{equation}$
$\begin{equation}
m_i =
\begin{cases}
1, & prob_i < p \ and \ Atten_i < \tau\\\\
0, & otherwise
\end{cases}
\end{equation}$
相比BERT中MLM的随机遮蔽方式,动态遮蔽方式**避免了破坏图像/目标的关键结构**,而这些关键结构的遮蔽往往使得训练中的模型产生误解,降低预训练模型的关注度。下图展示了我们的动态掩码与随机掩码的区别,可以看出,通过动态掩码的方式,图像中目标的完整结构得以保留。
![avatar](./vision2.png)
进一步,被遮蔽的局部块与剩余的局部块一起送入全局图像解码器,以恢复图像的完整结构。最后,我们的损失函数为对比损失+图像重建损失,两种损失都采用自监督的方式进行学习,并结合动态掩码机制,**显示捕捉图像局部上下文信息并保留全图语义信息**。图像解码器部分采用经典的特征金字塔结构,**完美保留图像空间信息**,因此对下游密集预测任务更加友好,无缝支持下游目标检测、语义分割任务的微调。
#### 安装说明
具体安装步骤请参见[vision](vision/README.md).
#### 目标检测结果展示
<img src="./detection1.gif" alt="show" />
#### 语义分割结果展示
<img src="./segmentation.gif" alt="show" />
#### 注意力对比图
<img src="./output1.gif" alt="show" />
<img src="./output2.gif" alt="show" />
## 语音预训练模型
#### 模型介绍
语音预训练采用wav2vec2.0的自监督学习技术。
与BERT类似,wav2vec2.0是通过预测语音被掩盖部分(masked parts)的语音单元来完成建模任务的。
wav2vec 2.0 模型首先使用CNN网络提取原始音频信号的潜在特征表示。
这些表征向量被喂到量化器(quantizer)和transformer中。量化器从学习的码本(codebook)中选择一个量化语音单元。
一部分表征在输入transformer前会被掩盖,模型需要通过掩盖位置识别正确的量化语音单元。
基于wav2vec2.0的语音预训练技术能够学习的任务无关的优质的特征表示,在多种下游任务中都能获得良好的性能。
wav2vec2.0配合多任务学习方法进行训练得到的多任务通用语音模型能够很好的应用于各种场景。
![speech_taichu](./speech_taichu.png)
#### 模型安装与使用
具体模型安装与使用示例请参考[speech](./speech)
## 轻量化图文预训练模型
#### 模型介绍
现有的图文预训练模型主要针对英文文本描述进行图像生成,本次开源的图文预训练模型可以根据中文文本描述实现图像生成,采用千万级训练数据进行自监督训练,并通过知识蒸馏算法实现了模型的大幅度压缩,在尽可能保留模型性能的同时,实现了预训练模型的轻量化。
<img src="DALLE_KD.png" alt="dalle_kd" style="zoom:30%;" />
轻量化图文预训练模型由DALL-E和CLIP两个模型组成,DALL-E模型由8层Transformer组成,隐层维度为512,包含32个注意力头,约1亿参数;CLIP模型由6层Vision Transformer和3层Transformer组成,Vision Transformer的隐层维度为256,包含16个注意力头,Transformer的隐层维度为192,包含12个注意力头,约1700万参数。
本次开源的图文预训练模型以8亿参数的DALL-E和4亿参数的CLIP大模型作为Teacher,1亿参数的DALL-E和1700万参数的CLIP作为Student进行知识蒸馏,针对Vision Transformer和Transformer输入的Embedding层、各层各个注意力头的Attention Score以及各层的输出进行蒸馏,与Student模型的训练损失一同进行优化,以实现大模型的信息向小模型的传递。具体损失如下:
$\begin{equation}
L_{kd}(S_m,T_{g(m)}) =
\begin{cases}
L_{embed}(S_0, T_0), & m=0 \\\\
L_{hidn}(S_m,T_{g(m)}) + L_{attn}(S_m,T_{g(m)}) , & M \ge m \gt 0 \\\\
L_{pred} (S_{M+1},T_{N+1}) , & m = M + 1
\end{cases}
\end{equation}$
$\begin{equation}
L_{total} = \alpha_1 L_{kd} + \alpha_2 L_{student}
\end{equation}$
轻量化图文预训练模型可以完成通用领域的中文文本图像生成任务,也可以在特定图像生成任务上进行微调,充分利用少量有监督数据增强模型在下游任务的表现,实现在下游任务的高效部署与应用。
#### 模型安装与使用
具体模型安装与使用示例请参考[light_vision_text](./light_vision_text)
#### 图像生成结果展示
![avatar](DALLE图像生成.png)
#### 图像检索结果展示
![avatar](CLIP图像检索.png)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
“紫东太初”跨模态通用人工智能平台是由中国科学院自动化研究所研发的以多模态大模型为核心、基于全栈国产化基础软硬件平台,可支撑全场景AI应用。依托面向超大规模的高效分布式训练框架,自动化所构建了具有业界领先性能的中文预训练模型、语音预训练模型、视觉预训练模型,并开拓性地通过跨模态语义关联实现了视觉-文本-语音三模态统一表示,构建了三模态预训练大模型,赋予跨模态通用人工智能平台多种核心能力。 “紫东太初”兼具跨模态理解和生成能力,具有了在无监督情况下多任务联合学习、并快速迁移到不同领域数据的强大能力。对更广泛、更多样的下游任务提供模型基础支撑,达成AI在如视频配音、语音播报、标题摘要、海报创作等更多元场景的应用。
资源推荐
资源详情
资源评论
收起资源包目录
大语言模型-紫东太初多模态大模型 (608个子文件)
make.bat 805B
docutils.conf 25B
token_block_utils_fast.cpp 1.01MB
data_utils_fast.cpp 929KB
helpers.cpp 26KB
layer_norm_cuda.cpp 7KB
edit_dist.cpp 6KB
libbleu.cpp 3KB
scaled_masked_softmax.cpp 2KB
scaled_upper_triang_masked_softmax.cpp 2KB
binding.cpp 2KB
dynamicconv_cuda.cpp 1KB
lightconv_cuda.cpp 1KB
dynamiconv_cpu.cpp 841B
module.cpp 791B
theme_overrides.css 192B
layer_norm_cuda_kernel.cu 25KB
edit_dist.cu 10KB
lightconv_cuda_kernel.cu 10KB
cuda_utils.cu 6KB
dynamicconv_cuda_kernel.cu 6KB
scaled_masked_softmax_cuda.cu 3KB
scaled_upper_triang_masked_softmax_cuda.cu 3KB
lightconv_cuda.cuh 2KB
dynamicconv_cuda.cuh 1KB
detection1.gif 9.85MB
detection1.gif 9.85MB
detection.gif 9.84MB
segmentation.gif 3.4MB
segmentation.gif 3.4MB
fairseq.gif 2.54MB
output2.gif 2.4MB
output2.gif 2.4MB
output1.gif 2.16MB
output1.gif 2.16MB
.gitignore 1KB
scaled_masked_softmax.h 19KB
scaled_upper_triang_masked_softmax.h 19KB
type_shim.h 5KB
compat.h 895B
edit_dist.h 659B
MANIFEST.in 65B
cat.jpg 14KB
dog.jpg 9KB
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
.keep 0B
LICENSE 14KB
LICENSE 11KB
LICENSE 1KB
convert_model.lua 3KB
convert_dictionary.lua 787B
Makefile 607B
Makefile 279B
README-fairseq.md 11KB
README.md 7KB
README.md 6KB
CODE_OF_CONDUCT.md 3KB
README.md 2KB
README.md 2KB
README.md 2KB
README.md 2KB
CONTRIBUTING.md 1KB
cog-pretrain.model 998KB
DALLE图像生成.png 2.27MB
CLIP图像检索.png 1.58MB
DALLE_KD.png 437KB
text.png 296KB
model.png 174KB
vision2.png 170KB
vision2.png 170KB
vision1.png 159KB
speech_taichu.png 90KB
LRSR.png 87KB
wenda.png 78KB
vision.png 72KB
vision.png 72KB
fairseq_logo.png 71KB
xuxie.png 19KB
vgg.pth 7KB
dalle_pytorch.py 58KB
model_kd.py 44KB
transformer.py 42KB
training.py 41KB
test_binaries.py 39KB
wav2vec2.py 38KB
model.py 38KB
trainer.py 38KB
vggtransformer.py 36KB
共 608 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
十小大
- 粉丝: 9110
- 资源: 2552
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功