自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(156)
  • 资源 (6)
  • 收藏
  • 关注

原创 记录重要的NLP学习资源链接

整理一些NLP学习资源(不止NLP,本人主要关注NLP),如果有更好的,欢迎分享^_^1. NLP 中文自然语言处理相关资料https://github.com/crownpku/Awesome-Chinese-NLPContents 列表1.Chinese NLP Toolkits 中文NLP工具 Toolkits 综合NLP工具包 Popular NL...

2019-02-17 17:22:55 1775

原创 ModuleNotFoundError: No module named ‘fused_layer_norm_cuda‘

按照以下方式安装,可解决问题。

2023-04-22 16:30:01 742 1

转载 大语言模型增强传统推荐的全新范式-Chat-REC

当遇到新的物品推荐时,计算物品嵌入与用户请求和偏好的嵌入之间的相似性,然后根据相似性检索最相关的物品信息,并构建一个提示输入到 ChatGPT 进行推荐,如图 3 的下半部分所示。除了一个领域的目标产品,如电影,LLMs 不仅对许多其他领域的产品有广泛的了解,如音乐和书籍,而且还了解上述各领域的产品之间的关系。左边的对话显示,当用户询问为什么推荐这部电影时,LLM 可以根据用户的喜好和推荐电影的。1. 用户与物品的历史交互,指的是用户过去与物品的互动,比如他们点击过的物品,购买过的物品,或者评价过的物品。

2023-04-09 18:38:31 384

原创 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 2172

原创 WIN10点击任务栏资源管理器报错:该文件没有与之关联的应用来执行操作。请安装应用,若已安装应用,请在”默认应用设置“页面中创建关联。

有一天 莫名其妙的,任务栏上的 文件资源管理器就打不开了,看了很多方法,就下面这个管用,特此拿来分享。

2023-02-14 22:36:22 3201

原创 Transformer 训练优化

深度学习中的一个众所周知的事实是,网络的底层学习输入数据的通用特征,而网络顶层学习目标任务特定的高级特征,所以在对预训练模型进行微调时,一般网络底层的参数都不怎么需要变,这些都是通用的知识,需要学习的是顶层的那些参数,当使用某种优化算法(如 SGD、AdamW 或 RMSprop)执行优化步骤时,网络的底层的梯度就都很小,因此参数几乎保持不变,这也被称为梯度消失,因此,与其花费大量的时间和算力来计算底层这些“无用”梯度,并对此类梯度很小的参数进行优化,不如直接冻结它们,直接不计算梯度也不进行优化。

2022-12-09 10:46:50 2386

原创 PyTorch分布式训练

0。

2022-10-23 10:57:47 4867 1

转载 如何向大模型注入知识?-阿里达摩院出品

机器之心专栏作者:李永彬、惠彬原、黄非团队:达摩院-自然语言-对话智能团队SPACE-1:注入对话策略知识,AAAI 2022 长文录用;SPACE-2:注入对话理解知识,COLING 2022 长文录用,并获 best paper award 推荐;SPACE-3:集对话理解 + 对话策略 + 对话生成于一体的模型, SIGIR 2022 长文录用。达摩院对话大模型 SPACE-1/2/3 在 11 个国际对话数据集取得 SOTA。图 1 SPACE 系列模型在 11 个国际对话数据集取得 SOTA,包含

2022-10-14 15:11:07 861

原创 机器学习可解释性框架

它提供全方位可解释的人工智能和可解释的机器学习能力来解决实践中机器学习模型在产生中需要判断的几个问题。对于需要在ML过程的各个阶段解释各种类型的数据、模型和解释技术的数据科学家、ML研究人员,OmniXAI希望提供一个一站式的综合库,使可解释的AI变得简单。InterpretML展示了两种类型的可解释性:glassbox模型——为可解释性设计的机器学习模型(如:线性模型、规则列表、广义可加模型)和黑箱可解释性技术——用于解释现有系统(如:部分依赖,LIME)。在可解释性领域,最早出名的方法之一是LIME。

2022-10-09 11:16:37 385

转载 模型概率后校验方法

那么,为什么深度学习模型经常出现预测概率和真实情况差异大的问题?又该如何进行校准呢?这篇文章首先给大家介绍模型输出预测概率不可信的原因,再为大家通过10篇顶会论文介绍经典的校准方法,可以适用于非常广泛的场景。最早进行系统性的分析深度学习输出概率偏差问题的是2017年在ICML发表的一篇文章On calibration of modern neural networks(ICML 2017)。文中发现,相比早期的简单神经网络模型,现在的模型越来越大,效果越来越好,但同时模型的校准性越来越差。文中对比了简单模型

2022-09-29 18:31:05 1351

转载 AI论文Mark

文字生成图片,但是个性化预训练语言图像模型在视频识别中的应用扩散生成模型的原理是?int8 加速大语言模型推理,性能无损!低资源下使用分散式数据蒸馏进行联邦学习PeRFception:感知任务大规模隐式数据集用图像来训练视频分割模型,MinVIS 减少了标注和内存成本SawSing:一种歌声合成声码器模型机器人的公园漫步LCCDE:自动驾驶系统中的网络安全守护者。

2022-09-09 13:51:43 190

转载 梯度下降的可视化解释(Adam,AdaGrad,Momentum,RMSProp)

在一个表面上动画演示5个梯度下降法: 梯度下降(青色) ,momentum(洋红色) ,AdaGrad (白色) ,RMSProp (绿色) ,Adam (蓝色)。左坑是全局极小值,右坑是局部极小值在这篇文章中,我用了大量的资源来解释各种梯度下降法(gradient descents),想直观地介绍一下这些方法是如何工作的。......

2022-08-16 11:09:26 393

原创 基于布朗运动的文本生成方法-LANGUAGE MODELING VIA STOCHASTIC PROCESSES

本篇文章可谓是开放域对话的又一开山制作,众所周知,开放域对话是无状态的,不能像任务式对话那样进行状态的追踪,也即不可控性。本文则提出了一种基于布朗桥的文本生成方法,对对话过程进行编码,构建布朗桥来控制对话的过程。 首先训练一个编码器,将句子从文本空间X映射到隐空间Z, 记为f:X->Z。在隐空间中的移动轨迹应遵循布朗桥运动。也就是说,该轨迹的起点和终点固定,设为z0和zT则在时间点 t 时, zt 服从以下正态分布: 其均值是z0和zT之间随时间变化的线性插值。方差部分,可以直观

2022-08-04 11:26:35 344

原创 入门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 1416

转载 MarkBERT

MarkBERT一句话概述在Token中加入你感兴趣的词的边界标记。MarkBERT不是基于词的BERT,依然是基于字,但巧妙地将信息融入模型。这样可以统一处理任意词,无论是不是OOV。另外,MarkBERT还有两个额外的好处首先,在边界标记上添加单词级别的学习目标很方便,这是对传统字符和句子级预训练任务的补充;其次,可以通过用POS标签特定的标记替换通用标记来轻松合并更丰富的语义。...

2022-07-28 15:27:10 525 3

原创 开源数据标注工具

目前来看要做中文领域事件抽取样本标注,可选用的是YEDDA和BRAT。笔者已经使用过BRAT来进行事件抽取标注了,后续针对BRAT的使用方法会专门出一期文章。

2022-07-28 15:12:24 1892

原创 DialogRPT-Dialog Ranking Pretrained Transformers

  寻找合适的人类反馈数据  想要得这样的机器人,首先需要通过合适的数据了解人类的偏好。这样的数据应该是一对多的聊天形式,即在同一个聊天场景下有多条回复,每个回复有反应其受欢迎程度的指标,表示该回复所收到的反馈的热烈程度。  然而,直接收集一对多的聊天数据并雇佣人类进行标注费时耗力。况且反馈热烈程度的标注不是一位标注者就可以的,而需要多人进行投票。同时,其他常规的可以自动计算的质量评测指标,如词语多样性等,也并不能反映人类的偏好程度。 图1:社交媒体中帖子的回复的树状结构。有三个可以衡量的人类反馈程度的指标

2022-07-25 18:15:22 854

原创 可控文本生成系列-A Survey of Controllable Text Generation using Transformer-based Pre-trained

ControlableTextGeneration,可控制的文本生成,就是能够在传统的文本生成的基础上,增加对生成文本一些属性、风格、关键信息等等的控制,从而使得生成的文本符合我们的某种预期。如果给一个明确的定义的话,文中引用了另一篇更早的综述的定义论文中给出了两个简单的例子第一个例子就是给定一个故事线,要求模型按照这样的思路去生成。第二个例子是关于传统人机对话中如果机器生成文本时不受控制可能带来的问题,比如会给出有害的建议,甚至说脏话,这个时候就需要我们在模型生成的时候加以控制。.............

2022-07-20 16:03:51 6693 3

原创 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 2155 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 5116 5

原创 X-VLM多模态模型解读

现有的多模态预训练模型大致分为两类:1)依赖目标检测器提取基于物体(例如:车、人、树、背包)的特征来表示图片,这种方法可以学习到物体级别的视觉和语言对齐,如图1中(a)所示。这些方法要么直接利用预先训练的目标检测器,要么将目标检测过程合并到多模态预训练中;2)用 ResNet 或者 Vision Transformer 编码整张图片,只学习图片和文本之间的对齐,如图1(b)所示。这两种方法都存在一定的问题。首先,基于目标检测的方法会识别图片中所有可能的物体,其中不乏一些与配对文本无关的。此外,这种方法所提取

2022-06-22 11:38:22 750

转载 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 1205

转载 BERT知识蒸馏

预训练模型BERT以及相关的变体自从问世以后基本占据了各大语言评测任务榜单,不断刷新记录,但是,BERT庞大的参数量所带来的空间跟时间开销限制了其在下游任务的广泛应用。基于此,人们希望能通过Bert得到一个更小规模的模型,同时基本具备Bert的能力,从而为下游任务的大规模应用提供可能性。目前许多跟Bert相关的蒸馏方法被提出来,本章节就来分析下这若干蒸馏方法之间的细节以及差异。 知识蒸馏由两个模型组成,teacher模型跟student模型,一般teacher模型规模跟参数量都比较庞大,所以能力更强,

2022-06-08 17:24:45 1403

转载 深度学习分布式训练

主要从以下几个方面进行总结:分布式训练的基本原理TensorFlow的分布式训练PyTorch的分布式训练框架Horovod分布式训练无论哪种机器学习框架,分布式训练的基本原理都是相同的。本文主要从 并行模式、架构模式、同步范式、物理架构、通信技术 等五个不同的角度来分类。分布式训练的目的在于将原本巨大的训练任务拆解开撑多个子任务,每个子任务在独立的机器上单独执行。大规模深度学习任务的难点在于:训练数据巨大:这种情况我们需要将数据拆解成多个小模型分布到不同的node上训练模型的参数巨大(NLP的预训练模型实

2022-06-02 15:27:27 1787

转载 初步了解多任务学习

大家在做模型的时候,往往关注一个特定指标的优化,如做点击率模型,就优化AUC,做二分类模型,就优化f-score。然而,这样忽视了模型通过学习其他任务所能带来的信息增益和效果上的提升。通过在不同的任务中共享向量表达,我们能够让模型在各个任务上的泛化效果大大提升。这个方法就是我们今天要谈论的主题-多任务学习(MTL)。所以如何判定是不是多任务学习呢?不需要看模型结构全貌,只需要看下loss函数即可,如果loss包含很多项,每一项都是不同目标,这个模型就是在多任务学习了。有时,虽然你的模型仅仅是优化一个目标,同

2022-06-02 15:22:03 332

转载 RuntimeError: CUDA error: device-side assert triggered

原因模型的数据处理出了问题,一般是类似于数组访问越界的问题1.例如分类的标签是数据处理的时候是1-10,但是torch在计算交叉熵是默认是0-92.embedding模块的词表长度问题,比如embedding中词表总长度是100,但是具体数据的token_id超过100,也会报错。3.其他越界问题错误定位torch在使用cuda计算是报错的位置的代码不一定是错的,所以这点一定要注意(推测cuda并行计算,不能清楚的定位到具体错误位置)这时候要注意一点,把所有数据,模型不要放在cuda上计

2022-05-16 16:33:25 407

原创 对话系统-ACL2022 paper

A Model-agnostic Data Manipulation Method for Persona-based Dialogue GenerationA Taxonomy of Empathetic Questions in Social DialogsAchieving Conversational Goals with Unsupervised Post-hoc Knowledge InjectionAchieving Reliable Human Assessment of Ope

2022-05-15 11:29:41 1038 1

转载 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 2063

原创 面试题记111

Bert RoBerta改进 优化器 LSTM TextCNN

2022-04-14 16:51:27 76

原创 torch. gather 函数介绍

官方介绍如下:链接功能就是从原tensor中获取指定dim和指定index的数据。直接例子说明:import torcht= torch.arange(0, 16).view(4, 4)print(tensor)输出:tensor([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11], [12, 13, 14, 15]])输入行向量index,并替换行索引(dim=0)..

2022-04-13 16:15:45 663

原创 BatchNorm、LayerNorm、GroupNorm

BatchNorm是对不同样本间的同一维特征做归一化,即标准化某一特征整体的分布LayerNorm是对同一样本的不同维特征间做归一化,即标准化某一样本特征的分布

2022-04-13 15:21:42 1010

原创 pytorch分布式训练之 TypeError: function takes exactly 5 arguments(1 given)

在使用pytorch进行分布式训练时老是

2022-04-13 14:47:45 4238 3

原创 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 914

转载 业界分享 | 阿里达摩院:超大规模预训练语言模型落地实践

2021年3月,阿里达摩院机器智能实验室AliceMind家族发布了最新训练的270亿参数规模的中文语言理解和生成统一模型--PLUG,但随着预训练模型规模越来越大,如何将大规模的预训练模型在下游任务上微调后直接部署成为了一个亟待解决的难题。因此,达摩院和计算平台PAI团队合作探索了基于稀疏的大规模语言模型落地方案,基于 PLUG 在各个任务上取得了超过同等规模小模型的结果,并在 BERT / Roberta / GPT 上也验证了其有效性。本文主要包括以下几方面内容: 超大规模语言模型P

2022-03-25 13:50:02 1165

原创 稀疏transorformer系列

2022-03-24 14:16:23 365

转载 GLUE基准数据集介绍

​图1: 整篇文章的思维导图一、简介自然语言处理(NLP)主要自然语言理解(NLU)和自然语言生成(NLG)。为了让NLU任务发挥最大的作用,来自纽约大学、华盛顿大学等机构创建了一个多任务的自然语言理解基准和分析平台,也就是GLUE(General Language Understanding Evaluation)。GLUE包含九项NLU任务,语言均为英语。GLUE九项任务涉及到自然语言推断、文本蕴含、情感分析、语义相似等多个任务。像BERT、XLNet、RoBERTa、ERINE、T.

2022-03-24 09:08:47 7352

转载 pack_padded_sequence 和 pad_packed_sequence

首先需要申明的是,本文中所使用到的 PyTorch 版本为:1.4.0 。当采用 RNN 训练序列样本数据时,会面临序列样本数据长短不一的情况。比如做 NLP 任务、语音处理任务时,每个句子或语音序列的长度经常是不相同。难道要一个序列一个序列的喂给网络进行训练吗?这显然是行不通的。为了更高效的进行 batch 处理,就需要对样本序列进行填充,保证各个样本长度相同,在 PyTorch 里面使用函数 pad_sequence 对序列进行填充。填充之后的样本序列,虽然长度相同了,但是序列里面可能填充了很多

2022-03-16 20:00:37 1499 2

原创 pytorch如何查看显存利用情况

最近搞LSTM优化,但是显存利用率不稳定,想看一下LSTM的显存占用情况,搜罗了一通,发现一个不错的开源工具,记录分享一下。首先上项目地址:https://github.com/Oldpan/Pytorch-Memory-Utils这里也有作者写的博客:https://oldpan.me/archives/pytorch-gpu-memory-usage-track代码库就两个python文件modelsize_estimate.py和gpu_mem_track.py,需要先将这两个文件复制..

2022-03-15 11:44:40 12343

原创 统一的NER识别模型-Unified NER

头尾token,头尾产生联系,表示出不连续实体的头尾关系,并且和。下一个相邻词/字,表示两个字之间的关系。

2022-03-08 16:27:30 1707

转载 时间序列数据的预处理

来源:Deephub Imba时间序列数据随处可见,要进行时间序列分析,我们必须先对数据进行预处理。时间序列预处理技术对数据建模的准确性有重大影响。在本文中,我们将主要讨论以下几点: 时间序列数据的定义及其重要性。 时间序列数据的预处理步骤。 构建时间序列数据,查找缺失值,对特征进行去噪,并查找数据集中存在的异常值。 首先,让我们先了解时间序列的定义:时间序列是在特定时间间隔内记录的一系列均匀分布的观测值。时间序列的一个例子是黄金价格。在这种情况.

2022-02-24 18:03:43 1444 3

MarkBERT论文 Marking Word Boundaries Improves Chinese BERT

MarkBERT论文 Marking Word Boundaries Improves Chinese BERT

2022-11-01

李宏毅助教姜同学讲解GNN.pdf

李宏毅助教姜同学讲解GNN.pdf

2021-03-19

五道经典编程试题.pdf

五道经典编程试题.pdf

2021-03-19

深度学习笔记-数学基础.pdf

深度学习笔记-数学基础.pdf

2021-03-19

上海交大-中国人工智能医疗白皮书107页.pdf

上海交大-中国人工智能医疗白皮书107页.pdf

2021-03-18

计算机网络课后答案 计算机网络课后答案

计算机网络课后答案

2016-03-25

实用软件工程 第2版 课件

实用软件工程 第2版 课件

2016-03-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除