GPT系列模型技术路径演进

目录

  • 前言
  • Transformer
  • GPT-1
  • BERT
  • GPT-2
  • GPT-3
  • InstructGPT/ChatGPT
  • GPT-4
  • 类ChatGPT产品
    • Google Bard(诗人)
    • facebook LLaMA(羊驼)
    • 复旦 MOSS
    • 清华 ChatGLM-6B/130B
    • 百度 文心一言
  • 总结
  • 参考:

前言

在这里插入图片描述
人工智能发展的历程如上图所示,从基于规则统计方法到机器学习的方法使用了近40年的时间,从机器学习到深度学习花费了20年的时间,而基于Transoformer预训练模型的发展时间大概是5年,而类ChatGPT模型的推出又将深度学习向前推进一步。

在自然语言处理领域根据对语言的处理方式的不同,可分为**自然语言理解(NLU)**和 **自然语言生成(NLG)**两个子方向,自然语言理解:是理解语言、文本,从中提取出有用的信息,用于下游任务中,也就是让自然语言结构化。如:文本分类、信息抽取、信息检索等任务;自然语言生成:将输入的文本根据任务形式生成人类可理解的自然语言内容,下游任务如:翻译、摘要总结、生成式对话等任务。

在自然语言处理领域中,基于深度学习的大规模预训练模型架构可分为三部分,基于Transformer的编码器,如:BERT、RoBERTa等自编码(Auto-Encoding)系列模型,该系列模型主要应用于自然语言理解任务;基于Transformer的编码器和解码器,如:T5、Bart等序列到序列(Seq2seq)系列模型,基于Transformer的解码器,如:GPT-1、GPT-2等自回归(Auot-Regressive)系列模型,序列到序列(Seq2seq)和自回归(Auot-Regressive)主要应用于自然语言生成任务。

ChatGPT就是从第三条分支发展得到的,接下来主要介绍GPT系列模型的发展历程。

模型发布时间层数参数量预训练数据量
GPT-12018年6月121.17亿(0.117B)约5GB
GPT-22019年2月4815亿(1.5B)40GB
GPT-32020年5月961,750亿(175B)45TB
InstructGPT2022年3月961,750亿(175B)几万条
ChatGPT2022年12月------------
GPT-42023年3月------------

GPT系列的模型结构秉承了不断堆叠transformer的思想,通过不断的提升训练语料的规模和质量,提升网络的参数数量来完成GPT系列的迭代更新的。GPT也证明了,通过不断的提升模型容量和语料规模,模型的能力是可以不断提升的。

Transformer

在介绍GPT之前,我们需要稍微回顾一下Transformer,2017年,Google Brain发表了一篇《Attention Is All You Need》论文,提出了一种新型的神经网络模型-Transformer,该模型不需要使用CNN和RNN等传统的序列模型,仅基于注意力机制实现了在自然语言处理领域中的优秀表现。简单的来说,Transformer的提出解决了模型无法数据并行计算序列长期依赖的问题。
在这里插入图片描述
图1 Transformer模型结构图

Transformer特点如下:

1.使用了Attention机制,将序列中的任意两个位置之间的距离缩小为一个常量,Transformer中的自注意力机制允许模型在生成序列时,对输入序列中的任意位置进行关注。这样可以使模型更好地理解输入序列的不同部分之间的关系。

2.抛弃了RNN的顺序结构,因此具有更好的并行能力,符合现有的GPU框架,Transformer相比于传统的基于RNN的模型,具有更快的训练速度和更好的性能表现。

GPT-1

2018年,OpenAI发表了《 Improving Language Understanding by Generative Pre-Training》论文,提出了一种新型的预训练模型-Generative Pre-Training Transformer(GPT),该模型通过大规模无标签文本数据的预训练,可以为了各种下游自然语言处理任务提供良好的特征表示。GPT模型结构,如下图2所示:

在这里插入图片描述
图2 GPT-1模型结构图

在GPT-1之前,传统的NLP模型往往使用大量的数据对有监督的模型进行任务相关的模型训练,但是这样由监督学习的任务存在两个缺点:

1.需要大量的标注数据,高质量的标注数据往往需要花费大量的人工进行标注;

2.当前任务训练的模型很难泛化到其他任务中,该模型只能拟合当前任务的数据;

GPT-1的思想是先通过在无标签的数据上学习一个生成式语言模型,然后再根据特定的任务进行微调,后来这样的思想成为了NLP领域的第三范式 -“预训练+微调”。

预训练阶段,使用BookCorpus数据集来训练语言模型,该数据集包含了7,000本没有发布的书籍。训练任务是语言建模,通过训练模型预测一个给定上下文中的下一个单词。

微调阶段,在下游任务上,GPT-1通过微调来适用不同的任务。但是不同任务的输入是不一致的,有的只有一个输入,有的则有多组形式的输入。对于不同的输入,GPT-1有不同的处理方式,如:分类任务:将起始和终止token加入到原始序列两端,输入GPT-1中得到特征向量,最后经过一个全连接层得到预测的概率分布;自然语言推理:将前提(premise)和假设(hypothesis)通过分隔符(Delimiter)隔开,两端加上起始和终止token。再依次通过transformer和全连接得到预测结果;
在这里插入图片描述
图3 GPT-1微调阶段-不同任务的输入形式

在有监督学习的12个任务中,GPT-1在9个任务上的表现超过了state-of-the-art的模型(当时SOTA是LSTM)。在没有见过数据的zero-shot任务中,GPT-1的模型要比基于LSTM的模型稳定,且随着训练次数的增加,GPT-1的性能也逐渐提升,表明GPT-1有非常强的泛化能力,能够用到和有监督任务无关的其它NLP任务中。

GPT-1在未经微调的任务上虽然也有一定效果,但是其泛化能力远远低于经过微调的有监督任务,说明了GPT-1只是一个简单的领域专家,而非通用的语言学家。

BERT

2018年,Google发表了《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》论文,提出了一种自然语言理解的预训练模型-BERT,论文强调了不再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接的方法进行预训练,BERT模型结构,如下图4所示:
在这里插入图片描述
图4 BERT模型结构图

BERT的训练思想类似于GPT-1,先在大规模无标签数据上学习一个语言模型,然后再根据特定的任务进行微调,与GPT-1不同的是,BERT的预训练任务分为两个:掩码语言模型(Mask Language Model,MLM)和下一句预测(Next Sentence Prediction,NSP)。

  • 掩码语言模型:句子在输入模型前,将中的每个词以15%的概率去遮盖;其中,80%的概率用[MASK]特殊标识符去替换,10%的概率保持不变,10%的概率随机替换为其他词。完成后输入模型,让模型预测[MASK]对应词是什么。
  • 下一句预测,将两个句子用[SEP]特殊标识符拼接,如:A[SEP]B。将拼接好的句子输入到模型中,让模型预测B是否为A的下一句话,如果是则输出1,如果不是则输出0。

通过这两个预训练任务,BERT分别学习句子内与句子之间的语义关系,能够增强在下游任务中的语义编码能力。

微调阶段,根据任务形式不同,BERT也有不同的处理方式,但和GPT-1类似。如下图5所示,分类任务:将起始和终止token加入到原始序列两端,输入BERT中得到特征向量,最后经过一个全连接层得到预测的概率分布;自然语言推理:将前提(premise)和假设(hypothesis)通过分隔符(SEP)隔开,两端加上起始和终止token。再依次通过transformer和全连接得到预测结果;

在这里插入图片描述
图5 BERT微调阶段-不同任务的输入形式

在有监督学习的11个任务中获得了新的state-of-the-art的结果,如下图6所示,可以发现,BERT的效果远高于GPT-1的表现。
在这里插入图片描述
图6 部分榜单展示

GPT-2

2019年,OpenAI发表了《 Language Models are Unsupervised Multitask Learners 》论文,模型被称为GPT-2,其目标旨在训练一个泛化能力更强的词向量模型,它并没有对GPT-1的网络进行过多的结构的创新与设计,采用更多的网络参数和更大的数据集,并且提出了一个更难的任务:zero-shot,零少样本学习,即将预训练好的模型,直接应用到下游任务,模型根据给定的指令理解任务。

GPT-2的文章取自于Reddit上高赞的文章,命名为WebText。数据集共有约800万篇文章,累计体积约40G。

GPT-2的学习目标是使用无监督的预训练模型做有监督的任务。因为文本数据的时序性,一个输出序列可以表示为一系列条件概率的乘积:
p ( x ) = ∏ i = 1 n p ( s n ∣ s 1 , . . . , s n − 1 ) p(x)=\prod_{i=1}^{n}p({s}_{n}|{s}_{1},...,{s}_{n-1}) p(x)=i=1np(sns1,...,sn1)
上述公式的实际意义是根据已知的上文
i n p u t = s 1 , s 2 , . . . , s n − 1 input={{s}_{1},{s}_{2},...,{s}_{n-1}} input=s1,s2,...,sn1
来预测未知的下文
o u t p u t = s n output={s}_{n} output=sn
,因此
p ( o u t p u t ∣ i n p u t ) p(output|input) p(outputinput)
语言模型可表示为,对于一个监督任务来讲,它可以建模为
p ( o u t p u t ∣ i n p u t , t a s k ) p(output|input,task) p(outputinput,task)
的形式。

这样做是希望能够让模型理解任务的本质并给出答案,而不是像GPT-1一样进行微调,可以将分类任务、自然语言推理、语义分析、问答等多个任务统一建模为一个任务形式,无需为每个子任务单独设计一个模型。

例如:在英语到法语的翻译任务中,给模型一个英语句子,后面跟着单词French提示符(=),模型应理解为翻译任务,并给出英语句子的法语对照句;阅读理解任务:不对GPT-2训练,直接输入文本和问题qA:,模型会理解这是一个问答题目,并输出答案。
在这里插入图片描述
图 7 GPT-2统一各类任务形式示意

对比GPT-1,GPT-2并未在模型结构上大作文章,只是使用了更多参数的模型和更多的训练数据。OpenAI作者认为,当一个语言模型的容量足够大时,它就能足以覆盖所有的有监督任务,也就是说所有的有监督学习都是无监督语言模型的一个子集,当模型的容量非常大且数据量足够丰富时,仅仅靠训练语言模型的学习便可以完成其他有监督学习的任务,这个思想也是提示学习(Prompt Learning)的前身。

提示学习的目的是去挖掘语言模型本身具备的知识。提示(Prompt)激发语言模型的补全能力,使其形式上模拟模型预训练过程使用的数据与任务,例如根据上半句生成下半句,或是完形填空等。
例:给女朋友买了这个项链,她很喜欢,这个项链太____了。
在这里插入图片描述
图 8 GPT-2效果图对比

如上图5所示,在8个语言模型任务中,仅仅通过zero-shot学习,GPT-2就有7个超过了state-of-the-art的方法;“LAMBADA”是测试模型捕捉长期依赖的能力的数据集,GPT-2将困惑度从99.8降到了8.6;但是GPT-2在文本总结的表现不理想,但是它的效果也和有监督的模型非常接近。

GPT-2的最大贡献是验证了通过海量数据和大量参数训练出来的词向量模型有迁移到其它类别任务中而不需要额外的训练。但是很多实验也表明,GPT-2的无监督学习的能力还有很大的提升空间,甚至在有些任务上的表现不比随机的好。尽管在有些zero-shot的任务上的表现不错,但是我们仍不清楚GPT-2的这种策略究竟能做成什么样子。GPT-2表明随着模型容量和数据量的增大,其潜能还有进一步开发的空间。

GPT-3

2020年,GPT-3发布,相比之前的GPT,GPT-3的显著特点是参数很多,是一个巨型模型,参数量高达1750亿参数量,如下图所示:
在这里插入图片描述
图 9 历代模型的参数量

GPT-3仅需要zero-shot或者few-shot,GPT-3就可以在下游任务中表现很好,表现好的原因是依赖于GPT-3的1750亿的参数量,45TB的训练数据以及高达1,200万美元的训练费用。

GPT-3尝试在下游任务中不去微调,直接适用预训练模型进行预测,作者提出了三种训练策略,以下策略均不对模型参数进行更新。

zero-shot,直接应用于下游任务
在这里插入图片描述
图 10 Zero-shot图示

one-shot,在预测时将一个例子也作为输入输入模型
在这里插入图片描述
图 11 One-shot图示

few-shot,在预测时将一些例子也作为输入输入模型,也成为上下文学习(in-context learning)
在这里插入图片描述
图 12 Few-shot图示

作者对这3种学习方式分别进行了实验,实验结果表明,三个学习方式的效果都会随着模型容量的上升而上升,且few shot > one shot > zero shot。
在这里插入图片描述
图 13 在Lambda数据集上表现

在大量的语言模型数据集中,GPT-3超过了绝大多数的zero-shot或者few-shot的state-of-the-art方法。另外GPT-3在很多复杂的NLP任务中也超过了微调之后的state-of-the-art方法,例如闭卷问答,模式解析,机器翻译等。除了这些传统的NLP任务,GPT-3在一些其他的领域也取得了非常震惊的效果,例如进行数学加法,文章生成,编写代码等。

但是GPT-3还有一些缺点的:

1.由于40TB海量数据的存在,很难保证GPT-3生成的文章不包含一些非常敏感的内容,例如种族歧视,性别歧视,宗教偏见等;

2.对于一些命题没有意义的问题,GPT-3不会判断命题有效与否,而是拟合一个没有意义的答案出来;

3.受限于transformer的建模能力,GPT-3并不能保证生成的一篇长文章或者一本书籍的连贯性,存在下文不停重复上文的问题。

InstructGPT/ChatGPT

预训练模型自诞生之始,一个备受诟病的问题就是预训练模型的偏见性。因为预训练模型都是通过海量数据在超大参数量级的模型上训练出来的,对比完全由人工规则控制的专家系统来说,预训练模型就像一个黑盒子。没有人能够保证预训练模型不会生成一些包含种族歧视,性别歧视等危险内容,因为它的几十GB甚至几十TB的训练数据里几乎肯定包含类似的训练样本。这也就是InstructGPT和ChatGPT的提出动机,论文中用3H概括了它们的优化目标:

  • 有用的(Helpful);
  • 可信的(Honest);
  • 无害的(Harmless)

2021和2022年OPenAI分别发表InstructCPT和ChatGPT,InstructGPT/ChatGPT整体训练流程如下:

在这里插入图片描述
图 14 InstructGPT/ChatGPT训练流程

从图10中,我们可以看出,InstructGPT/ChatGPT的训练可以分成3步,其中第2步和第3步是的奖励模型和强化学习的SFT模型可以反复迭代优化。

  1. 根据采集的SFT数据集对GPT-3进行有监督的微调(Supervised FineTune,SFT);
  2. 收集人工标注的对比数据,训练奖励模型(Reword Model,RM);
  3. 使用RM(奖励模型)作为强化学习的优化目标,利用PPO算法微调SFT模型。

整体技术路线上,InstructGPT/ChatGPT在效果强大的GPT 3.5大规模语言模型(LLM,Large Language Model)基础上,引入“人工标注数据+强化学习”(RLHF,Reinforcement Learning from Human Feedback ,这里的人工反馈其实就是人工对模型输出进行排序)来不断微调预训练语言模型。

主要目的是让LLM模型学会理解人类的命令指令的含义(比如:给我写一段小作文生成类问题、知识回答类问题、头脑风暴类问题等不同类型的命令),以及让LLM学会判断对于给定的prompt输入指令(用户的问题),什么样的答案是优质的(富含信息、内容丰富、对用户有帮助、无害、不包含歧视信息等多种标准)。

在这里插入图片描述

因为InstructGPT/ChatGPT是在GPT-3.5基础上做的微调,而且因为涉及了人工标注,它们数据总量并不大,如上表展示了三份数据的来源及其数据量。

GPT-4

2023年3月14日,OpenAI发布了《 GPT-4 Technical Report》,并且在官网上说明,GPT-4是OpenAI目前最先进的系统,能生成更有用、更安全的回复。
在这里插入图片描述
相比于ChatGPT,GPT-4具有以下特点

  • 创造性
    GPT-4可以生成、编辑和迭代用户的创意和写作能力,如:创作歌曲、写剧本或者学习用户的写作风格。
    在这里插入图片描述
    更进一步,翻译部分,采用ChatGPT进行翻译,对比百度翻译, ChatGPT翻译更符合语法和流畅性。
    在这里插入图片描述
  • 兼容图片
    GPT-4可以接受图像作为输入,并生成字幕、分类以及分析。
    在这里插入图片描述
  • 更长的输入
    GPT-4能够处理超过25,000个单词的文本,适用于长篇内容创作、长时间的对话以及文档搜索和分析等适用场景。

在这里插入图片描述
当然,GPT-4并不是完美无缺,在一些领域上仍然存在已知的局限性,如:生成幻觉、社会偏见。

类ChatGPT产品

Google Bard(诗人)

发布日期:2023年2月7月

Bard是由LaMDA提供支持的全新实验性对话谷歌AI服务,LaMDA 模型参数多达 137B 个参数,展示了接近人类水平的对话质量。

但发布当前,Bard存在事实错误,生成幻觉问题,谷歌 Demo 的一 GIF 显示,在回答问题「关于詹姆斯韦伯太空望远镜(JWST)有哪些新发现,我可以告诉我 9 岁孩子哪些内容?」Bard 提供了三个要点,其中一个指出「该望远镜拍摄了太阳系外行星的第一张照片。」

然而,推特上的一些天文学家指出这是不正确的,第一张系外行星图像是在 2004 年拍摄的。

在这里插入图片描述

facebook LLaMA(羊驼)

发布日期:2023年2月25日

facebook一次性发布了7B、13B、33B和65B四种参数量级的类GPT模型,所有模型均开源。65B的LLaMA效果超越了GPT-3,它在大多数测试上优于GPT-3。
如:常识推理:
在这里插入图片描述
或者说一些基础问题的解决:
在这里插入图片描述
可部署+微调
但中文能力较差。

低成本复现,效果堪比GPT-3.5
https://github.com/tatsu-lab/stanford_alpaca

复旦 MOSS

发布日期:2023年3月底

参数量规模百亿级别,基于CPT底层模型,CPT是201年邱老师团队提出的中文预训练模型,既可以做NLU也可以做NLG。

待发布+可部署

清华 ChatGLM-6B/130B

发布日期:2023年1月21日

清华大学在2023年1月21日发表《GLM: General Language Model Pretraining with Autoregressive Blank Infilling》论文,提出了GLM大规模预训练模型,同时开源了6B和130B两个参数量级,130B表现优于GPT-3,最重要中文能力更强。
在这里插入图片描述

ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B已经生成相当符合人类偏好的回答。

部署尝试:

  • Text2SQL:将文本转为SQL语句
    在这里插入图片描述
  • 舆情:主体识别和舆情状态分析

在这里插入图片描述
可部署 + 微调

  • 推理:GPU 1张 3090 CPU 10 核20线程10-i900k
  • 训练:GPU 8张 3090 CPU 10核20线程 10-i900k

百度 文心一言

发布日期:2023年3月16日
内测中…
理解能力较差
在这里插入图片描述
知乎评测链接
https://www.zhihu.com/question/589955024/answer/2940079055

支持云服务+私有化部署

总结

从GPT-1的基础模型到GPT-2的大规模预训练和GPT-3的Few-shot Learning到今天的ChatGPT和GPT-4,证明了基于深度学习的方法使用更多的数据和更多的算力能够创建能力越来越强的语言模型。

参考:

ChatChatGPT 研报告GPT 调研报告-哈尔滨工业大学-自然语言处理研究所(HIT-NLP)
https://zhuanlan.zhihu.com/p/350017443
https://zhuanlan.zhihu.com/p/590311003
https://zhuanlan.zhihu.com/p/473001104
https://mp.weixin.qq.com/s/VYv8BRgGnp9ZTuXxaSuFwg
https://mp.weixin.qq.com/s/V0BTumv8Ax5ToMn8V2DdAA
https://openai.com/research/gpt-4
https://mp.weixin.qq.com/s/TcV88Wi2J0SmHNoYfYmUaw
https://mp.weixin.qq.com/s/ZzxsOf8HaNcJUV3xIpWlOw
https://github.com/THUDM/GLM-130B

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何利用 GPT4创建引人注目的流程图

如何利用 GPT4创建引人注目的流程图 流程图是可视化复杂思想和过程的首选工具。然而,创建一个好的流程图可能需要很多时间。 在本文中,我将向你展示如何在不到一分钟的时间内使用ChatGPT(最好是GPT-4)创建令人惊叹的流程图。 生…

CSS3---选择器分类,最全版

目录 标签选择器(元素选择器) 类选择器 id选择器 通配符选择器 伪类选择器 链接伪类选择器 结构伪类选择器 目标伪类选择器 标签选择器(元素选择器) 标签选择器,是指用HTML标签名称作为选择器,按照标签名称分类,为某一类标签指定统一的…

ChatGPT已过时?Auto-GPT迅速走红,无需人类插手自主解决复杂任务,GitHub标星5万

来源: AI前线 微信号:ai-front 作者 | Luke Larsen ChatGPT 之所以能风靡全球,很大程度上要归功于其简单的功能框架。作为一款 AI 聊天机器人,它唯一的作用就是生成令人信服的自然语言文本、顺畅回应用户的提问。 但 AI 聊天机器人的使用体…

ChatGPT已过时?Auto-GPT迅速走红,无需人类插手自主解决复杂任务,GitHub标星5万...

来源:AI前线 作者:Luke Larsen 译者:核子可乐 策划:冬梅 ChatGPT 之所以能风靡全球,很大程度上要归功于其简单的功能框架。作为一款 AI 聊天机器人,它唯一的作用就是生成令人信服的自然语言文本、顺畅回应用…

telegram纯协议电报群发,自动加群,引流自动化解放双手*

全自动协议批量发送,一键简便操作,极大节省时间和精力。遇到问题时,日志自动诊断,整个过程无需人工干预。目前市场上功能最全面的国内外营销软件,吸引流量效果卓越!

智能黑白图像自动上色——C++实现

前言 《Colorful Image Colorization》是加里福利亚大学Richard Zhang发表在ECCV 2016上的文章,论文主要解决的问题是给灰度图的自动着色,算法并不是为恢复灰度图的真实颜色,而是用灰度图中物体的纹理、语义等信息作为线索,来预测…

解密银行客户经理展业利器系列一:商机共享、创收增长

2023年银行业面临存款、贷款、利润三大变局,与此同时,商业银行的数字化转型正延展至前台建设,期望通过科技手段布局应对,数字化重装身处一线的客户经理,带动单位时间创收提升,更有力地支撑银行业务战略发展…

chatgpt赋能python:Python安装paramiko,实现SSH远程连接

Python安装paramiko,实现SSH远程连接 作为一种开源的Python库,Paramiko提供了SSH 协议的实现方式,使得Python程序能够方便地与SSH服务器通信,完成以SSH协议为基础的操作,比如服务器批量管理、远程执行命令和文件传输等…

GPT4 api 申请

从官网申请 GPT4 api 的申请权限,似乎在这之前您必须是一个ChatGPT的plus会员 填写表格 注意,组织ID,从图所示的小字部分点击链接,获取组织ID,也可以点击这How do you primarily plan to use GPT-4? * 这个选项可以…

Unity3d 使用Chart And Graph插件进行数据可视化(柱状图、折线图、饼图等)基本使用

前言 首先来夸夸这个插件,美观性、响应速度和互动性。易于上手和快速设置。每项功能都可以从代码和编辑器中自定义。“图形和图表”兼容性强,包括 VR/AR、移动端、网页和桌面端等。与 UGUI Canvas 完美集成。一句话数据可视化选它完美。 使用 插件导入…

R:热图解释 | pheatmap包参数及详细聚类图绘制流程(一篇解决热图绘制问题)

热图解释及pheatmap绘制热图 一、热图绘制原理1.1 热图介绍1.2 热图绘制准备——均一化1.3 热图绘制方式1.4 热图数据查看示例 二、pheatmap包简介2.1 pheatmap介绍2.2 pheatmap详细参数解释2.3 pheatmap安装及加载 三、pheatmap包绘制热图示例3.1 数据准备3.2 数据导入及绘图3…

R | 可视化 | 热图(Heatmap)

1 基础绘制 R绘制热图时&#xff0c;数据需要输入一个矩阵&#xff0c;可以用as.matrix()把它转换成矩阵。这里利用R自带的数据集绘制热图。 > # 数据 > data <- as.matrix(mtcars) > > # 绘制热图 > heatmap(data) OUTPUT: 热图的每一列是一个变量&…

TeeChart绘制Gant图

软件安装 及使用 VS2010 使用TeeChart绘图控件 - 之一 - 控件和类的导入_尘中远的博客-CSDN博客_teechartVS2010 使用TeeChart绘图控件 - 之一 - 控件和类的导入VS2010 使用TeeChart绘图控件 - 之二 - 绘制图形&#xff08;折线图&#xff0c;柱状图&#xff09;TeeChart绘图控…

使用GraphInsight打造TuGraph可视化分析应用

图的可视化是分析和理解图数据的一种重要手段。TuGraph 内置了TuGraph Browser&#xff0c;为大多数用户提供了一个简单易用的图可视化界面。由于 TuGraph Browser 不支持自定义界面&#xff0c;因此一些有自定义界面需求的用户只能选择自行搭建新的前端界面。11月22日&#xf…

热图 -- pheatmap or ggplot2

文章目录 brief数据准备 pheatmap实例最朴素的方式数据缩放取消聚类更改每个小方格的大小聚类以及聚类方式和参数修改热图呈现的颜色修改legend ggplot2实例ggplot2实例变式添加 group bar做成dotplot pheatmap 多图组合问题 brief 这里主要记录了pheatmap 以及 ggplot2实现热…

GTK渲染摄像头图像数据

GTK渲染摄像头图像数据 1.GDK简介 绘图工具集(GDK&#xff0c;Graphics Drawing Kit)是在GTK 和特定操作系统的应用编程接口(API,Application Program Interface)之间的低级绘图制层—— Linux的API是Xlib。由于GTK和机器的API之间没有直接接口&#xff0c;移植GTK就成为移植G…

Pheatmap热图的绘制及如何调整图片

Pheatmap热图的绘制及如何调整图片 Pheatmap包是R语言绘制热图比较强大的软件包&#xff0c;当然现在也有很多资料介绍这个包的使用&#xff0c;但是今天我写的重点不是如何使用这个包绘制热图&#xff0c;而是如何绘制出更好看的热图。&#xff08;我使用的矩阵是1663x594&am…

unity可视化图表插件XCharts绘制折线图、饼图、柱状图

一、简介 一款基于UGUI的功能强大、易用、参数可配置的数据可视化图表插件。支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。 特性&#xff1a; 内置丰富示例和模板&#xff0c;参数可视化配置&#xff0c;效果实时预览&#xff0c;纯代码绘制。 支持折线图、柱…

日语学习软件推荐——五十音图APP:AI纠正你的日语发音

每个自学日语的人&#xff0c;想必都经历过“哑巴日语”的苦恼。收集了很多学习资料&#xff0c;努力积累词汇量&#xff0c;一开口却暴露了“散装口语”的短板。 但是现在就不怕这个问题啦&#xff0c;五十音图APP可以让你从入门开始&#xff0c;练就一口流利的地道日语&…

白痴学日语系列之初识日语(二)

每日记单词 間[あいだ]0 a i da 间&#xff0c;间隔 【记】あい&#xff08;合い→互相之间&#xff09;だ&#xff08;是&#xff09;→间隔 青[あお]1 a o 蓝色&#xff1b;青色&#xff1b;绿色&#xff1b;不成熟 【记】あ&#xff08;上&#xff09;お&#xff08;う→…