
深度学习
文章平均质量分 81
just do it now
to do or not to do --> just do it
展开
-
小钢炮MiniCPM是如何炼成的?-面壁智能 智源大会
10:1steps,退火阶段需要更高质量的数据。原创 2024-06-23 21:48:39 · 332 阅读 · 0 评论 -
GPT BERT等模型如何添加新的token
这个方法是借助huggingface的transformer库进行实现,其中model可以为huggingface支持的任何一个模型,如bert,gpt,robert等,tokenizer可以为BertTokenizer GPT2Tokenizer 等。第二步:对模型token embedding 矩阵进行修改,大小由(voc_size, emd_size)改为添加新词后的大小(voc_size+new_token_num, emd_size),具体实现见以下代码。下面看看是如何进行添加的。原创 2023-02-22 18:30:29 · 2529 阅读 · 0 评论 -
Transformer 训练优化
深度学习中的一个众所周知的事实是,网络的底层学习输入数据的通用特征,而网络顶层学习目标任务特定的高级特征,所以在对预训练模型进行微调时,一般网络底层的参数都不怎么需要变,这些都是通用的知识,需要学习的是顶层的那些参数,当使用某种优化算法(如 SGD、AdamW 或 RMSprop)执行优化步骤时,网络的底层的梯度就都很小,因此参数几乎保持不变,这也被称为梯度消失,因此,与其花费大量的时间和算力来计算底层这些“无用”梯度,并对此类梯度很小的参数进行优化,不如直接冻结它们,直接不计算梯度也不进行优化。原创 2022-12-09 10:46:50 · 2724 阅读 · 0 评论 -
模型概率后校验方法
那么,为什么深度学习模型经常出现预测概率和真实情况差异大的问题?又该如何进行校准呢?这篇文章首先给大家介绍模型输出预测概率不可信的原因,再为大家通过10篇顶会论文介绍经典的校准方法,可以适用于非常广泛的场景。最早进行系统性的分析深度学习输出概率偏差问题的是2017年在ICML发表的一篇文章On calibration of modern neural networks(ICML 2017)。文中发现,相比早期的简单神经网络模型,现在的模型越来越大,效果越来越好,但同时模型的校准性越来越差。文中对比了简单模型转载 2022-09-29 18:31:05 · 1750 阅读 · 0 评论 -
AI论文Mark
文字生成图片,但是个性化预训练语言图像模型在视频识别中的应用扩散生成模型的原理是?int8 加速大语言模型推理,性能无损!低资源下使用分散式数据蒸馏进行联邦学习PeRFception:感知任务大规模隐式数据集用图像来训练视频分割模型,MinVIS 减少了标注和内存成本SawSing:一种歌声合成声码器模型机器人的公园漫步LCCDE:自动驾驶系统中的网络安全守护者。转载 2022-09-09 13:51:43 · 294 阅读 · 0 评论 -
梯度下降的可视化解释(Adam,AdaGrad,Momentum,RMSProp)
在一个表面上动画演示5个梯度下降法: 梯度下降(青色) ,momentum(洋红色) ,AdaGrad (白色) ,RMSProp (绿色) ,Adam (蓝色)。左坑是全局极小值,右坑是局部极小值在这篇文章中,我用了大量的资源来解释各种梯度下降法(gradient descents),想直观地介绍一下这些方法是如何工作的。......转载 2022-08-16 11:09:26 · 487 阅读 · 0 评论 -
入门cv必读的10篇baseline论文
NIPS-2012,Alexnet:深度学习CV领域划时代论文,具有里程碑意义《ImageNet Classification with Deep Convolutional Neural Networks》ICLR-2015,VGG net:开启3*3卷积堆叠时代《Very Deep Convolutional Networks for Large-Scale Image Recognition》CVPR-2015,googlenet v1:Google系列论文开创论文,提出多尺度卷积模.原创 2022-08-04 09:24:31 · 1680 阅读 · 0 评论 -
MarkBERT
MarkBERT一句话概述在Token中加入你感兴趣的词的边界标记。MarkBERT不是基于词的BERT,依然是基于字,但巧妙地将信息融入模型。这样可以统一处理任意词,无论是不是OOV。另外,MarkBERT还有两个额外的好处首先,在边界标记上添加单词级别的学习目标很方便,这是对传统字符和句子级预训练任务的补充;其次,可以通过用POS标签特定的标记替换通用标记来轻松合并更丰富的语义。...转载 2022-07-28 15:27:10 · 570 阅读 · 3 评论 -
开源数据标注工具
目前来看要做中文领域事件抽取样本标注,可选用的是YEDDA和BRAT。笔者已经使用过BRAT来进行事件抽取标注了,后续针对BRAT的使用方法会专门出一期文章。原创 2022-07-28 15:12:24 · 2296 阅读 · 0 评论 -
doccano数据标注平台使用
Step 1. 本地安装doccano(请勿在AI Studio内部运行,本地测试环境python=3.8)Step 2. 初始化数据库和账户(用户名和密码可替换为自定义值)Step 3. 启动doccanoStep 4. 运行doccano来标注实体和关系打开浏览器(推荐Chrome),在地址栏中输入后回车即得以下界面。 登陆账户。点击右上角的,输入Step 2中设置的用户名和密码登陆。创建项目。点击左上角的,跳转至以下界面。设置标签。在Labels一栏点击,手动设置或者从文件导入。导入数据。在Data原创 2022-07-14 17:21:41 · 2637 阅读 · 3 评论 -
BERTopic
BERTopic 方法的步骤如下:首先使用预训练模型计算 document embeddings (比如常用的 Sentence-BERT 等)因为 document embeddings 维度很高,在嵌入空间中就非常稀疏,不容易进行聚类,所以需要先进行降维,比如 PCA 或者 t-SNE 等方法,这里用的是 UMAP[4]基于层次和密度进行聚类,这里用的是典型的 HDBSCAN[5] 算法划重点:使用 class-based TF-IDF 变体提取每个簇的主题词因为上文所说的这个 gap 产生的原因,本质原创 2022-07-13 16:31:01 · 5964 阅读 · 5 评论 -
ALBERT 清晰解读
BERT 模型参数很多,进一步提升模型规模会受到 GPU/TPU 内存大小的限制。Google 提出了 ALBERT[1][2](A Lite BERT)来解决这个问题。ALBERT 使用了两项降低参数量的技术,并改进了 NSP 预训练任务:不管是 BERT,还是后续在 BERT 基础上改进的模型 XLNet,RoBERTa,他们的嵌入向量维度和隐藏层维度都是相等的,这样能进行残差连接的加和运算。这里以 BERT-base 为例,算下嵌入矩阵的参数量:BERT-base 的词表大小 V=30000,嵌入向量转载 2022-06-14 17:28:45 · 1450 阅读 · 0 评论 -
初步了解多任务学习
大家在做模型的时候,往往关注一个特定指标的优化,如做点击率模型,就优化AUC,做二分类模型,就优化f-score。然而,这样忽视了模型通过学习其他任务所能带来的信息增益和效果上的提升。通过在不同的任务中共享向量表达,我们能够让模型在各个任务上的泛化效果大大提升。这个方法就是我们今天要谈论的主题-多任务学习(MTL)。所以如何判定是不是多任务学习呢?不需要看模型结构全貌,只需要看下loss函数即可,如果loss包含很多项,每一项都是不同目标,这个模型就是在多任务学习了。有时,虽然你的模型仅仅是优化一个目标,同转载 2022-06-02 15:22:03 · 400 阅读 · 0 评论 -
DeBERTa
题图:DeBERTa的attention map比RoBERTa更“散”也没有不该存在的“竖条”DeBERTa模型是微软在2021年提出的,首发在ICLR 2021上,到现在其实已经迭代了三个版本。第一版发布的时候在SuperGLUE[1]排行榜上就已经获得了超越人类的水平,如今也成为了Kaggle上非常重要的NLP Backbone(BERT感觉已经没什么人用了)。比较奇怪的是,似乎这个模型被大家讨论并不多,于是最近看了两篇相关论文DeBERTa: Decoding-enhanced BERT w..转载 2022-05-06 18:21:48 · 2374 阅读 · 0 评论 -
面试题记111
Bert RoBerta改进 优化器 LSTM TextCNN原创 2022-04-14 16:51:27 · 123 阅读 · 0 评论 -
BatchNorm、LayerNorm、GroupNorm
BatchNorm是对不同样本间的同一维特征做归一化,即标准化某一特征整体的分布LayerNorm是对同一样本的不同维特征间做归一化,即标准化某一样本特征的分布原创 2022-04-13 15:21:42 · 1118 阅读 · 0 评论 -
NLP经典论文
ICLR2013,Word2Vec 词向量扛鼎之作《Efficient Estimation of Word Representation in Vector Space》EMNLP2014,Glove:最出名的词向量训练方法之一《GloVe: Global Vectors for Word Representation》EMNLP2015,Char Embedding 第一篇介绍字符嵌入的论文《Compositional character models for open vocabu原创 2022-03-26 17:40:55 · 995 阅读 · 0 评论 -
业界分享 | 阿里达摩院:超大规模预训练语言模型落地实践
2021年3月,阿里达摩院机器智能实验室AliceMind家族发布了最新训练的270亿参数规模的中文语言理解和生成统一模型--PLUG,但随着预训练模型规模越来越大,如何将大规模的预训练模型在下游任务上微调后直接部署成为了一个亟待解决的难题。因此,达摩院和计算平台PAI团队合作探索了基于稀疏的大规模语言模型落地方案,基于 PLUG 在各个任务上取得了超过同等规模小模型的结果,并在 BERT / Roberta / GPT 上也验证了其有效性。本文主要包括以下几方面内容: 超大规模语言模型P转载 2022-03-25 13:50:02 · 1296 阅读 · 0 评论 -
稀疏transorformer系列
原创 2022-03-24 14:16:23 · 422 阅读 · 0 评论 -
文本分类还停留在BERT?对偶对比学习框架也太强了
论文简介:对偶对比学习:如何将对比学习用于有监督文本分类论文标题:Dual Contrastive Learning: Text Classification via Label-Aware Data Augmentation 论文链接:https://arxiv.org/abs/2201.08702代码链接:https://github.com/hiyouga/dual-contrastive-learning 论文作者:{Qianben Chen}1论文摘要对比学习在无监...转载 2022-02-23 18:17:06 · 1188 阅读 · 0 评论 -
大模型分布式训练技术
大模型训练方法:1.MoE:Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer.motivation现在的模型越来越大,训练样本越来越多,每个样本都需要经过模型的全部计算,这就导致了训练成本的平方级增长。为了解决这个问题,即将大模型拆分成多个小模型,对于一个样本来说,无需经过所有的小模型去计算,而只是激活一部分小模型进行计算,这样就节省了计算资源。那么如何决定一个样本去经过哪些小模型.原创 2022-01-06 12:57:07 · 5210 阅读 · 0 评论 -
EMNLP2021 Best Paper
Best Long PaperVisually Grounded Reasoning across Languages and CulturesFangyu Liu, Emanuele Bugliarello, Edoardo Maria Ponti, Siva Reddy, Nigel Collier and Desmond ElliottBest Short PaperCHoRaL: Collecting Humor Reaction Labels from Millions of Soc原创 2021-11-01 09:42:05 · 270 阅读 · 0 评论 -
BlockShuffle-一个使模型训练速度提升20%的Trick
BlockShuffle,就是在训练过程中使用分块打乱替代随机打乱的一种方法,即将原始数据按照数据长度进行排序,然后进行batch划分,在对batch训练进行打乱。这样操作,可以减少数据padding长度,缩短训练时长。注意:该方法适用的前提是数据输入为变长。(不适合将所有数据padding到模型最大长度的代码)举例说明这里简单举个例子,大家就可以理解BlockShuffle为什么可以提高训练速度。假如,数据长度为[1,2,3,4,512,512,512,512],训练时batch_size转载 2021-10-19 17:52:53 · 593 阅读 · 0 评论 -
Batch Size对神经网络训练的影响
这篇文章非常全面细致地介绍了Batch Size的相关问题。结合一些理论知识,通过大量实验,文章探讨了Batch Size的大小对模型性能的影响、如何影响以及如何缩小影响等有关内容。在本文中,我们试图更好地理解批量大小对训练神经网络的影响。具体而言,我们将涵盖以下内容: 什么是Batch Size? 为什么Batch Size很重要? 小批量和大批量如何凭经验执行? 为什么大批量往往性能更差,如何缩小性能差距? 什么是Batch Size?训练神经网络以.转载 2021-10-14 11:26:38 · 1724 阅读 · 1 评论 -
BART-seq2seq
Bart模型作为一种Seq2Seq结构的预训练模型,是由Facebook在ACL 2020上提出。Bart模型的论文为:《BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension》Bart模型代码:transformers库Bart模型Bart模型为一种基于去噪自编码器seq2seq结构的预训练模型。Bart模型在预训练阶段,核.转载 2021-10-12 11:24:15 · 1088 阅读 · 0 评论 -
NLP文本分类大杀器:PET范式
Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference 论文:《Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference Timo》[1] 项目地址:https://github.com/timoschick/pet 大家思考一个问题,BER转载 2021-09-28 16:07:35 · 725 阅读 · 0 评论 -
GPU多卡并行训练
01为什么要使用多GPU并行训练简单来说,有两种原因:第一种是模型在一块GPU上放不下,两块或多块GPU上就能运行完整的模型(如早期的AlexNet)。第二种是多块GPU并行计算可以达到加速训练的效果。想要成为“炼丹大师“,多GPU并行训练是不可或缺的技能。02常见的多GPU训练方法1.模型并行方式:如果模型特别大,GPU显存不够,无法将一个显存放在GPU上,需要把网络的不同模块放在不同GPU上,这样可以训练比较大的网络。(下图左半部分)2.数据并行方式:将整个模型放在一块GPU转载 2021-09-28 15:43:46 · 1496 阅读 · 0 评论 -
对话系统最新进展-17篇EMNLP 2021论文
Neural Path Hunter论文标题:Neural Path Hunter: Reducing Hallucination in Dialogue Systems via Path Grounding论文链接:https://arxiv.org/abs/2104.08455项目地址:https://github.com/nouhadziri/Neural-Path-Hunter基于大型预训练语言模型的对话系统天然能够提供流畅自然的响应,但这些模型通...转载 2021-09-28 15:40:38 · 1613 阅读 · 0 评论 -
Autoformer-时序模型的突破
【导读】近日,清华大学软件学院机器学习实验室另辟蹊径,基于随机过程经典理论,提出全新Autoformer架构,包括深度分解架构及全新自相关机制,长序预测性能平均提升38%。尽可能延长预测时效是时序预测的核心难题,对于能源、交通、经济的长期规划,气象灾害、疾病的早期预警等具有重要意义。清华大学软件学院机器学习实验室的研究人员近日发表了一篇论文,探究了在信息有限的情况下预测更长期未来的这个难题。针对上述问题,作者大刀阔斧革新Transformer,提出全新的Autoformer模型,在长时序预测.转载 2021-07-09 17:49:56 · 13731 阅读 · 0 评论 -
文本生成评价指标-A Survey
文本生成是自然语言处理最基础的任务之一,应用广泛,包括闲聊、写诗、作曲、讲故事等等,如图是清华大学“九歌”机器人生成的五言绝句。本文聚焦于文本生成的评价方式,通过综述论文解读,介绍文本生成多种评价方式及优缺点。论文标题:Evaluation of Text Generation: A Survey链接:https://arxiv.org/abs/2006.14799文本生成的评价指标是一个很棘手的问题,因为语言表达具有多样性,比如在使用CVAE生成商品的描述时,同一种文本条件,能转载 2021-07-05 16:29:08 · 1230 阅读 · 0 评论 -
模型解释器-LIME
模型解释性--LIME算法简 介简单的模型例如线性回归,LR等模型非常易于解释,但在实际应用中的效果却远远低于复杂的梯度提升树模型以及神经网络等模型。现在大部分互联网公司的建模都是基于梯度提升树或者神经网络模型等复杂模型,遗憾的是,这些模型虽然效果好,但是我们却较难对其进行很好地解释,这也是目前一直困扰着大家的一个重要问题,现在大家也越来越加关注模型的解释性。本文介绍一种解释机器学习模型输出的方法LIME。LIMELIME(Local Interpretable Model-ag转载 2021-07-05 15:53:23 · 1629 阅读 · 5 评论 -
ACL2021主会议论文汇总及分类
转发自公众号:NLP工作站 知乎 刘聪NLP主要包括10个分类,如下:(1)预训练语言模型及应用(58篇);(2)表征学习(9篇);(3)问答及检索(42篇);(4)文本生成(29篇);(5)摘要(23篇);(6)小样本(16篇);(7)对话(32篇);(8)情感及情绪分析(15篇);(9)信息抽取(60篇);(10)其他(21篇)。一、预训练语言模型及应用Long(1)How Good is Your Tokenizer? On the Monolingual Performanc..转载 2021-07-01 18:00:52 · 3516 阅读 · 0 评论 -
检索 - BM25 vs 语义向量
虽然以SentenceBERT为代表的语义向量检索展现出了超越传统的以BM25为代表的稀疏向量检索的性能,但是还没有人研究过索引量和向量维数对稠密向量检索性能的影响。本文作者通过理论和实验来证明了随着索引量的增大,稠密向量检索的表现比起稀疏向量检索下降得更快,在极端情况下,稀疏向量检索反而优于稠密向量检索。论文:The Curse of Dense Low-Dimensional Information Retrieval for Large Index Sizes链接:https:/.转载 2021-06-25 18:25:51 · 699 阅读 · 0 评论 -
google又出骚姿势-傅里叶变换取代Transformer自注意力层
来自谷歌的研究团队表明,将傅里叶变换取代 transformer 自监督子层,可以在 GLUE 基准测试中实现 92% 的准确率,在 GPU 上的训练时间快 7 倍,在 TPU 上的训练时间快 2 倍。Transformer 自 2017 年推出以来,其架构就开始在 NLP 领域占据主导地位。Transformer 应用的唯一限制之一,即 Transformer 关键组件的巨大计算开销–一种自注意力机制,这种机制可以根据序列长度以二次复杂度进行扩展。基于此,来自谷歌的研究者建议用简单的线性变换替原创 2021-06-25 17:34:32 · 509 阅读 · 0 评论 -
BERT模型TensorFlow与Pytorch互相转换
1. pytorch转tensorflow# coding=utf-8"""Convert Huggingface Pytorch checkpoint to Tensorflow checkpoint."""import argparseimport osimport numpy as npimport tensorflow as tfimport torchdef convert_pytorch_checkpoint_to_tf(model: BertModel, ckpt_原创 2021-06-02 14:36:12 · 2904 阅读 · 1 评论 -
如何利用多任务学习提升模型性能?
转自 | NewBeeNLP公众号公众号专栏作者@上杉翔二提升模型性能的方法有很多,除了提出过硬的方法外,通过把神经网络加深加宽(深度学习),增加数据集数目(预训练模型)和增加目标函数(多任务学习)都是能用来提升效果的手段。(别名Joint Learning,Learning to learn,learning with auxiliary task....等)对于人类来说,我们往往学会了一件事,是能够触类旁通,举一反三的。即其他不同任务的经验性,能够带来一些有用的信息,这是多任务学习的..原创 2021-03-19 10:05:37 · 856 阅读 · 0 评论 -
WoBERT-基于词颗粒度的中文BERT
原文-https://kexue.fm/archives/7758当前,大部分中文预训练模型都是以字为基本单位的,也就是说中文语句会被拆分为一个个字。中文也有一些多颗粒度的语言模型,比如创新工场的ZEN和字节跳动的AMBERT,但这类模型的基本单位还是字,只不过想办法融合了词信息。目前以词为单位的中文预训练模型很少,据笔者所了解到就只有腾讯UER开源了一个以词为颗粒度的BERT模型,但实测效果并不好。那么,纯粹以词为单位的中文预训练模型效果究竟如何呢?有没有它的存在价值呢?最近,我们预训练并开源了以转载 2021-03-17 15:52:31 · 4831 阅读 · 0 评论 -
中文T5
©PaperWeekly 原创 ·作者|苏剑林单位|追一科技研究方向|NLP、神经网络不知道大家对 Google 去年的屠榜之作 T5 还有没有印象?就是那个打着“万事皆可 Seq2Seq”的旗号、最大搞了 110 亿参数、一举刷新了GLUE、SuperGLUE 等多个 NLP 榜单的模型,而且过去一年了,T5 仍然是 SuperGLUE[1]榜单上的第一,目前还稳妥地拉开着第二名 2% 的差距。然而,对于中文界的朋友来说,T5 可能没有什么存在感,原因很简单:没有中文版 ...转载 2021-03-17 15:37:45 · 1615 阅读 · 0 评论 -
必须要GPT-3吗?不,BERT的MLM模型也能小样本学习
©PaperWeekly 原创 ·作者|苏剑林单位|追一科技研究方向|NLP、神经网络大家都知道现在 GPT-3 风头正盛,然而,到处都是 GPT-3、GPT-3 地推,读者是否记得 GPT-3 论文的名字呢?事实上,GPT-3 的论文叫做Language Models are Few-Shot Learners[1],标题里边已经没有 G、P、T 几个单词了,只不过它跟开始的 GPT 是一脉相承的,因此还是以 GPT 称呼它。顾名思义,GPT-3 主打的是 Few-Shot L...转载 2021-03-17 15:12:28 · 669 阅读 · 0 评论 -
jieba分词原理
转自:作者:尘嚣看客链接:https://www.jianshu.com/p/2cccb07d9a4e来源:简书引言“结巴”分词是一个Python 中文分词组件,参见https://github.com/fxsjy/jieba可以对中文文本进行分词、词性标注、关键词抽取等功能,并且支持自定义词典。本文包括以下内容:1、jieba分词包的安装2、jieba分词的使用教程3、jieba分词的工作原理与工作流程4、jieba分词所涉及到的HMM、TextRank、TF-IDF等算法介原创 2021-03-15 13:50:10 · 4222 阅读 · 0 评论