NLP
文章平均质量分 60
y4ung
这个作者很懒,什么都没留下…
展开
-
BART源码阅读
在大航哥的建议下,阅读了Transformers的Bart源代码原创 2022-06-21 16:40:00 · 3181 阅读 · 4 评论 -
pytorch加载模型时报错:RuntimeError: Cuda error: out of memory
在加载训练好的模型进行测试时,遇到了RuntimeError: Cuda error: out of memory。觉得很诧异,明明模型也不是很大,怎么就爆显存了。后面去pytorch 论坛上找到了答案,原来是加载模型的时候需要先通过torch.load()的map_location参数加载到cpu上,然后才放到gpu上。def load_model(model, model_save_path, use_state_dict=True): print(f"[i] load model fro原创 2021-12-31 07:40:11 · 2908 阅读 · 1 评论 -
stanza和DBPedia的安装与使用
项目中需要通过Stanford的CoreNLP提取一些linguistic features。在官网的介绍中提到,用python语言来调用CoreNLP的best practice是使用他们开发的stanza 库。We are actively developing a Python package called Stanza, with state-of-the-art NLP performance enabled by deep learning. Besides, this package a原创 2021-06-21 10:38:16 · 1423 阅读 · 0 评论 -
TP、FP、TN、FN傻傻分不清楚
我在计算Precision、Recall和F1的时候,总觉得TP、FP、TN、FN傻傻分不清楚的。(好像计算这三个指标的时候不需要TN…这四个情况的含义如下:TP — True Positive,实际上是正,预测为正。在抽取的任务中,就是预测出了这个span,实际上也有这个spanFP — False Positive,实际上是负,预测为正。在抽取的任务中,就是预测出了这个span,实际上没有这个spanTN — True Negative,实际上是负,预测为负。在抽取的任务中,就是没预测出这个s原创 2021-05-01 10:27:59 · 2701 阅读 · 1 评论 -
GPU高显存占用、低使用率的原因分析过程
今天在训练模型的时候,发现GPU的显存都快满了,但是GPU的利用率很低,基本是隔几秒才会到100%,然后马上恢复为0。如下图所示。训完一个epoch要一天左右,心态都给我整崩了在网上找到了一些不错的资料:训练效率低?GPU利用率上不去?快来看看别人家的tricks吧~深度学习PyTorch,TensorFlow中GPU利用率较低,CPU利用率很低,且模型训练速度很慢的问题总结与分析GPU: high memory usage, low GPU volatile-util猜测在train函数原创 2021-04-26 19:08:31 · 13718 阅读 · 5 评论 -
torch.matmul() 张量相乘
如果是二维的矩阵相乘,那就跟平时咱们做的矩阵乘法一样:a = torch.tensor([[1,2], [3,4]])aOut[31]: tensor([[1, 2], [3, 4]]) b = torch.tensor([[2,2], [3,4]])bOut[33]: tensor([[2, 2], [3, 4]]) torch.matmul(a, b)Out[34]: tensor([[ 8, 10],原创 2021-04-14 09:18:14 · 6144 阅读 · 3 评论 -
“迷人”的np.where()
最近看代码,发现这个np.where()太难理解了。这返回的是个啥,太迷了吧下面用一个例子来看一下。在这里,我定义了一个矩阵a,我的需求是找出a中所有超过阈值0.5的索引。我们观察矩阵a,发现大于0.5的,只有0.7(a[0,1,1]),0.8(a[1,0,0]),0.9(a[1,0,1]),0.6(a[1,1,2])In [78]: a = np.array([[[0.1, 0.2, 0.5], [0.5, 0.7, 0.1]], [[0.8, 0.9, 0.2], [0.4, 0.5, 0.6]]原创 2021-03-25 20:58:14 · 194 阅读 · 0 评论 -
NER中多特征做Embedding时的维度记录
1. 前言在这个NER 的练手项目中,我对每个word额外提取了词性、词位、偏旁部首、拼音四种特征。下面记录一下多的这四种特征做embedding嵌入时,特征是如何拼接处理的。( 仅仅是自己做笔记用…2. 流程2.1 Embedding在得到了word的index序列,以及其余四个特征的index序列以后,需要做Embedding。简单的理解为是到目标空间中去查找词向量。如下图,假设上面的矩阵是目标空间中的词向量,下面的矩阵是两个句子的word或者其他特征的index序列。那么,对于第一个原创 2021-03-15 21:32:42 · 1621 阅读 · 3 评论 -
torch.cat 示例
前言最近学nlp,看到网上的示例代码有个torch.cat,不是很明白,自己写了点代码测试了一下。示例In [54]: a = torch.ones(1,2,3)In [55]: aOut[55]:tensor([[[1., 1., 1.], [1., 1., 1.]]])In [56]: b = torch.ones(1,2,3)In [57]: bOut[57]:tensor([[[1., 1., 1.], [1., 1., 1.]]])原创 2021-03-15 09:27:13 · 155 阅读 · 0 评论