
NLP
文章平均质量分 86
导师方向为认知图谱,从感知智能向认知智能的第三代人工智能。所以不一定成为热门。。。先学吧
卢容和
这个作者很懒,什么都没留下…
展开
-
计算上理解LayerNorm,为何泄露信息,知识追踪
pytorch 中layernorm 的使用首先给出官网的解释,torch.nn.LayerNorm( normalized_shape: Union[int, List[int], torch.Size], eps: float = 1e-05, elementwise_affine: bool = True)其中注意:LayerNorm中不会像BatchNorm那样跟踪统计全局的均值方差,因此train()和eval()对LayerNorm没有影原创 2021-09-24 13:33:50 · 1222 阅读 · 0 评论 -
Transformer的调研及其进展
第一篇ICLR2020最新Transformers进展(上)涉及模型:[1] Attention is All You Need[4] BERT[5] Transformer-XL[6] Lite Transformer with Long-Short Range Attention[7] Tree-Structured Attention with Hierarchical Accumulation[8] Reformer: The Efficient Transformer[9] Tr原创 2021-05-16 18:31:08 · 1745 阅读 · 0 评论 -
official.nlp.transformer调研
背景知识追踪方向涉及NLP的知识不多,涉及Transform的模型就更少了。而现在bert和Transformer发展太快,有很多应用在不同应用的预训练模型,所以需要调用别人写好的库。加上框架不同,TensorFlow、keras、pytorch都分别有不同出名的库。要真的研究具体某一方向时,比如文本分析,语音识别、机器翻译,才需要熟练地调用别人已经写好的模型库,加载别人训练好的参数。确实知识追踪也用Transformer,不过只需要一层,如SAKT、AKT,都是作者自己手写encoder结构,不需要原创 2021-04-18 15:56:53 · 858 阅读 · 0 评论 -
local attention
Luong, Minh-Thang, Hieu Pham, and Christopher D. Manning. “Effective approaches to attention-based neural machine translation.” arXiv preprint arXiv:1508.04025 (2015).转载1转载2Local attention原来是上面这篇论文提出的。没看代码实现。原理简单:假设1:源序列和目标序列大致单调对齐Monotonic alignmen原创 2021-03-14 11:37:09 · 981 阅读 · 0 评论 -
莫烦nlp-GPT 单向语言模型
视频链接:https://mofanpy.com/tutorials/machine-learning/nlp/gpt/学习原因:GPT比bert的学习效率高在莫烦代码中,bert是继承GPT的,学习GPT较快知识追踪领域中,使用前一题预测后一题,不能对后面的预测泄露信息,属于单向模型。那就开始我们的学习吧。模型Generative Pre-Training (GPT) 模型越来越大的好处很显而易见,模型能用更多非线性能力处理更复杂的问题。但是由此带来另一个难题,就是难以训练。每训练一个原创 2021-03-06 01:56:37 · 741 阅读 · 0 评论 -
莫烦nlp-BERT双向语言模型
莫烦视频:https://mofanpy.com/tutorials/machine-learning/nlp/bert/跳过了GPT模型;但代码里面bert模型继承了GPT模型。。。本节不涉及莫烦对于bert的训练改进(trick),模型的任务改变,或者说标签不一样。改进版存在的问题莫烦在他的主页文字部分有详细解释。所以这里只是介绍最基本的bert模型,它的任务和标签是什么,即怎么训练此模型。bert是什么 BERT 和 GPT 还有 ELMo 是一个性质的东西。 它存在的意义是要变成一种原创 2021-03-04 20:54:55 · 1027 阅读 · 0 评论 -
莫烦nlp——ELMO一词多义
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-02-22 14:56:17 · 1349 阅读 · 0 评论 -
tensorflow、keras对于变长序列的处理方法
转载:https://blog.youkuaiyun.com/qq_27825451/article/details/88991529参考链接:https://blog.youkuaiyun.com/songbinxu/article/details/80150019对于NLP,怎么处理变长序列是基本问题。问题来源:mask_zero=True是干嘛的?网上mask_zero的解释少,转载的文章能帮你轻松理解。总结:Embedding的关键字参数mask_zero=True不会改变Word2vector的结果,即不是讲转载 2021-02-22 11:12:13 · 565 阅读 · 0 评论 -
莫烦nlp——transformer(2)
视频链接:https://mofanpy.com/tutorials/machine-learning/nlp/intro-attention/这一节来细读Transformer的代码,Class Transformer(keras.Model)中包含class PositionEmbedding(keras.layers.Layer):class Encoder(keras.layers.Layer):class Decoder(keras.layers.Layer)中class Decoder原创 2021-02-16 03:25:35 · 661 阅读 · 0 评论 -
莫烦nlp——transformer(1)
视频链接:https://mofanpy.com/tutorials/machine-learning/nlp/intro-attention/Transformer原理我看过几遍了,只是一直没用。多次注意力的思想是这次收获,以前只是明白它的结构。莫烦更多使用比喻介绍结构,没用公式或实际输入输出结构。我做的李宏毅视频+博客的总结语言多次注意力 使用了三次注意力,每次注意的时候都是基于上次注意后的理解。通过反复地回忆、琢磨才能研究透一句话背后的意思。所以,如果深刻理解是通过注意力产生的,那么肯定也原创 2021-02-03 17:14:22 · 411 阅读 · 0 评论 -
莫烦nlp——seq2seq with attention
视频链接:https://mofanpy.com/tutorials/machine-learning/nlp/intro-attention/非小白,所以下面相当于摘录思想语言的注意力 模型通读完之后,得到一个对于这句话的理解,熟悉AI的人应该知道这东西叫句向量。 单独靠一个句向量我们实际上是通过全局信息来生成对话(任务:生成回复),那么注意力是局部信息,我们可以将全局信息配合局部信息一起来生成每一个回复的词。所以女生回复的“樱桃红”可以是注意到的“亮樱桃红色”这句销售话术,而“买它”则可能是原创 2021-01-13 17:59:20 · 458 阅读 · 0 评论 -
莫烦nlp——理解句子seq2seq
视频链接:https://mofanpy.com/tutorials/machine-learning/nlp/intro-w2v/任务目的:机器通过模型对于一句话的理解转化成一个向量。前提:在以前的视频中,我提到过我们人类理解句子的前提是理解句子中每个词语的含义,然后将词语组成句,看似我们已经找到了一条通往理解句子的光明大道。可是即便计算机能够通过 w2v 拿到对词语的向量化理解,我们要怎么使用,才能把它变成对句子的理解呢?方法:最常见的方案就是使用神经网络做这样的复杂乘法运算,让一个空间(词语)原创 2021-01-09 20:44:16 · 612 阅读 · 0 评论 -
莫烦nlp——词向量—skim_gram
莫烦认为CBOW的上下文的词向量相加没有很好地表示上下文信息,即没有从词空间转换到上下文空间。相比之下,skim-gram make sense一些。实际上,两种方法的效果差不多。数字卧底‘9’将训练的句子人工分为两派(数字派,字母派),虽然都是文本,但是期望模型能自动区分出在空间上,数字和字母是有差别的。因为数字总是和数字一同出现, 而字母总是和字母一同出现。卧底数字 9 的任务就是把字母那边的情报向数字通风报信。 所以期望的样子就是数字 9 不但靠近数字,而且也靠近字母。上一节已经介绍了CBO原创 2021-01-07 21:12:57 · 582 阅读 · 0 评论 -
莫烦nlp——词向量—CBOW
由于不是第一次接触,本文只摘录莫烦关于词向量的观点。更多的关注代码。上一次系统学习莫烦教程已经一年半了,时间过得太快了。转载:https://mofanpy.com/tutorials/machine-learning/nlp/intro-w2v/自然语言处理学会语言,往往是从学会词语的意思开始,将词组成话,才让语言有了意义。计算机识别图片就是在这些图片背后的数字上寻找规律。那么在语言上怎样用数字表达呢?答:计算机之所以能看懂字里行间的感情,理解文字,处理文字,并不是因为它理解的我们普罗万象的人原创 2021-01-07 19:45:26 · 1056 阅读 · 2 评论 -
莫烦谈nlp--实现TF-IDF
本文目的是记录莫烦大佬的视频,仅方便自己回顾。https://mofanpy.com/tutorials/machine-learning/nlp/多模态搜索:图片、视频、文本都转成数值表示,计算相关性。搜索方式倒排索引: 在第一次拿到所有材料时,把它们通读一遍,然后构建关键词和文章的对应关系。当用户在搜索特定词的时候,比如“红”,就会直接返回“红”这个【关键词索引】下的文章列表。通过倒排索引找到的文章可能依然是海量。如果能有种方法对这些文章进行排序操作,再选取排名靠前的文章列表也能帮我们节省大量原创 2021-01-06 16:52:10 · 385 阅读 · 0 评论 -
pytorch官方教程3 translation with seq2seq and attention 拓展(3)
前言该代码来源:《深度学习理论与实战:基础篇》的ch4章节,编著:李理。github,第一篇探索attention原理时发现的大神。代码形式与官网大致相似,也有优化的地方。Variable可以训练的PyTorch模块要求输入是Variable而不是Tensor。Variable除了包含Tensor的内容之外,它还会跟踪计算图的状态,从而可以进行自动梯度的求值。def variable_from_sentence(lang, sentence): indexes = indexes_原创 2020-12-03 21:24:32 · 205 阅读 · 0 评论 -
pytorch官方教程3 translation with seq2seq and attention(2)
前言 Encoder-Decoder模型可应用于机器翻译、文本摘要、对话机器人。 没有AM(attention model)时,句子X中任意单词对生成某个目标单词yiy_iyi来说影响力是相同的,没有区别,单词自身的信息消失,丢失很多细节信息。 AM模型需要解决的问题:输入句子单词注意力分配概率分布值怎么计算?如(句子:Tom chase Jerry,翻译Tom时的概率分布值为:(Tom,0.6)、(chase,0.2)、(Jerry,0.2))。 使用decoder输出i−1i-1i−1时刻的隐藏原创 2020-12-03 11:20:56 · 261 阅读 · 0 评论 -
pytorch官方教程3 translation with seq2seq and attention
前言在看李宏毅的hw8:seq-to-seq时,发现要动手完成下面任务,懵了。我还是个初学者,虽然我最近看了李宏毅关于语音辨识部分,也看完hw4,但代码能力还是0。网上找不到这次作业任务的实现,找到pytorch官网关于seq-to-seq的实现,先学一下。资料知识都是借鉴和查出来的。pytorch官网,建议还是看英文。csdn博客,也是应用attention原理在hw4作业的那一位,but他也没实现hw8。torchtext:对此模块没了解过We hope after you com原创 2020-11-29 17:51:21 · 346 阅读 · 0 评论 -
李宏毅hw4,训练+调优
本次作業為 Twitter 上收集到的推文,每則推文都會被標注為正面或負面https://blog.youkuaiyun.com/iteapoy/article/details/105931612https://www.cnblogs.com/zyb993963526/p/13784199.html原创 2020-10-28 13:55:33 · 1101 阅读 · 2 评论 -
终于碰上torch.nn.Embedding
转载:https://my.oschina.net/earnp/blog/1113896https://zhuanlan.zhihu.com/p/69898755?from_voters_page=true词向量实现(word embedding)是通过nn.Embedding函数来实现。一个保存了固定字典和大小的简单查找表。这个模块常用来保存词嵌入和用下标检索它们。模块的输入是一个下标的列表,输出是对应的词嵌入。import numpy as npimport torchimport t原创 2020-10-20 21:41:17 · 3242 阅读 · 0 评论 -
词集模型、词袋模型、词向量模型
分词与统计词集模型(set of words): 单词构成的集合,集合里面的元素不重复,有且只有一个。所以该模型仅仅考虑词是否在文本中出现,不考虑词频,只需一维。不足:一个词在文本在文本中出现1次和多次特征处理是一样的,所有词同等对待。词袋模型(Bag of Words): 将所有词语装进一个袋子里,把每一个单词都进行统计,同时计算每个单词出现的次数,所以需要两个维度进行统计。不足:不考虑词法和语序的问题,不考虑文本中词与词之间的上下文关系,即每个词语都是独立的,丢失一部分文本的语义。只考虑词的权重原创 2020-10-15 16:27:05 · 2920 阅读 · 0 评论 -
精确率、召回率到AUC
TP:预测是正样本,预测对了TN:预测是负样本,预测对了FP:预测是正样本,预测错了(误报)——真实是负样本FN:预测是负样本,预测错了(漏报)——真实是正样本召回率:Recall / True positive rate,TPR / 查全率 针对原有的样本而言,它表示的是样本中的正例有多少被预测正确了。那也有两种可能,一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。 R = TP/(TP+FN) 所有正样品中预测为正样品原创 2020-10-08 17:06:30 · 517 阅读 · 0 评论 -
谈自然语言处理
摘取清华大学刘知远老师的NLP研究入门之道系列文章的第二篇——自然语言处理简介。好记性不如烂笔头,而且简介很容易看完就忘,所以有必要记一下重点。 自然语言处理,计算机科学与语言学的交叉学科,又称为计算语言学。体现了人工智能的最高任务与境界。(顿时充满使命感) 语言涉及语法分析、语义分析、篇章理解等,语音涉及识别及文语转换,反正很多。 自然语言处理的兴起与机器翻译这一具体任务有着密切联系。“人工智能”被作为一个研究问题正式提出来的时候,创始人把计算机国际象棋和机器翻译作为两个标志性的任务。 四十原创 2020-09-30 13:34:36 · 262 阅读 · 0 评论 -
ELMO,BERT——让机器读懂文字
引言 上一节word embedding,主要讲的是Prediction based思想。本小白只知道nlp中有Bert和Transformer模型,所以先看个究竟,也不求完全理解。视频开头说明主题:如何让机器明白人类的词汇,one-hot是不行的,使用word embedding代替,用embedding表示一个词汇。word represent 问题:一词多义,bank可以表示银行,也可以表示河堤。但同一个词只能embedding同一个向量,这显然不够好。...原创 2020-09-28 20:41:26 · 395 阅读 · 0 评论 -
Transformer,bert—t for transformers
关系bert是unsupervise-train 的transformertransformer是seq2seq model with “self-attention”RNN:不能并行运算,得到b4之前要先算b3,但b4能结合前面的信息。CNN:能同时处理a1至a4的word vector。但对于前面的层,filter只能扫描一部分词语,后面的层才能结合更长的词语。Self-attention Layer的出现就是为了替代RNN,它的目的与RNN一样:input一个sequence,outpu原创 2020-09-27 21:13:40 · 374 阅读 · 0 评论 -
transformer之前的attention
前言 写着写着Transformer又新开一篇介绍Attention机制,因为一个模型往往不是腾空出世的,它建立在许多基础之上。但精力有限,我们又不能从一点深究到很远,所以要选择自己觉得有必要花时间看的知识点。 这篇文章就看看transformer中的self-attention与attention机制到底有什么牵连。主要总结两篇博客,但建议还是找国外的好一点。【1】https://zhuanlan.zhihu.com/p/127774251 开头【2】https://blog.youkuaiyun.com/u原创 2020-09-27 18:15:44 · 225 阅读 · 0 评论 -
Word Embedding (word2vector)
引言 通过上一个看得吃力的视频,现在word embedding给我的印象就是cv中的auto-encoder,只不过网络不一样。目测不难,接下来看个究竟。word represent(word2vec)1-of-N Encoding cv中的one-hot。如果1w个单词,vector的维度也是1w。每个vector只有一个维是1,其余是0。 vector之间没有任何联系,生活中猫和狗属于动物;没有充分利用vector的空间,网络无法训练这么长的vector。Word Embedding原创 2020-09-19 20:45:49 · 628 阅读 · 0 评论 -
Recurrent Neutral Network(RNN)- 李宏毅part2
引言 在part1中介绍了LSTM的结构,现在要研究网络如何训练,训练通常需要训练集sentence、标签label(reference vector)、损失函数定义loss。 Training:通过gradient descent调整weights,RNN需要改进成Backpropagation through time,BPTT,这里没有细讲。 Training时loss波动大不稳定不收敛。需要增加一个trick:Clipping, 给gradient设置一个threshold(阈值),使其不原创 2020-09-19 11:35:04 · 313 阅读 · 0 评论 -
Recurrent Neutral Network(RNN)- 李宏毅part1
引言 从cv转向nlp,大家一起来学习。 还没看nlp的学习路线,第一感觉就是先学一下RNN,LSTM,先把实际问题弄清楚。 个人认为nlp是处理时序性数据的,例如句子:I would like to arrive Taipei on November。我们想要知道这句话的语义信息,包括目的地,出发时间,出发地等。而除了Taipei、November之外,其他词在目前 看来是没有用的。所以这两个词为这句话的关注点。官方称为Slot Filling,槽填充 。槽,那些位置凹进去就代表我们需要的信息。R原创 2020-09-17 20:33:03 · 228 阅读 · 0 评论