NLP
文章平均质量分 73
lcomecon
这个作者很懒,什么都没留下…
展开
-
应用深度学习(三)
语言模型1,RNN,梯度消失与爆炸,?BPTT?原创 2022-09-13 23:44:59 · 300 阅读 · 0 评论 -
应用深度学习(二)
搞懂反向传播计算公式与推导原创 2022-09-12 23:09:28 · 377 阅读 · 0 评论 -
应用深度学习(一)
应用深度学习一原创 2022-09-11 23:13:31 · 284 阅读 · 0 评论 -
模型之T5,UniLM,MASS,GPT
公司项目上有个文本生成的任务,难度比较大,花了相对不短的时间去熟悉这些模型,当然也没话太久,大概也就是读了下论文,以及网友们的一些介绍,现在记录总结下,后续应该会去阅读以及改写相关源码,便于做预训练以及fine-tune。T5(text-to-text transfer transformer)论文地址万物皆可text的感觉,先看一下下面的图:在上图中,包含了四个人物,机器翻译、文本分类、相似度得分、文本生成。个人感觉T5主要是作者依托公司强大的计算能力,进行各种各样的对比实验,得出一系列的结论。原创 2022-01-17 15:49:35 · 1942 阅读 · 1 评论 -
深度学习的优化器学习(一)---梯度下降算法
之前的状态是只对优化器有个大概的了解,但是深入的细节原理不是太清楚,目前项目中也因此遇到了一定瓶颈,遂决定过一遍优化器的原理,以确保后续能选取更好的优化器算法和优化器参数来提高算法的性能。梯度下降算法:批梯度下降BGD(batch gradient descent)随机梯度下降SGD(stochastic gradient descent)小批梯度下降MBGD(Mini-batch gradient descent)1. BGD每次用全部的数据样本计算loss,在进行梯度下降,公式为:θ=原创 2021-07-05 14:41:34 · 219 阅读 · 0 评论 -
bert源码家族系列之bert源码解读
没啥解释的,之前写过的一篇,再次回顾之后,发现之前在似懂非懂的情况下写的,貌似还行,那就之前贴过来了,后续有其它的感悟,再来补充:bert详解(一)----预训练源码原创 2021-04-25 11:02:02 · 136 阅读 · 0 评论 -
bert家族系列之bert
接着公司项目相对没有那么忙的空档,梳理一下相关的文档,便于后续的回顾与学习。BERT: Bidirectional Encoder Representation from Transformers有一种说法,NLP任务分成两部分,预训练产生词(字)向量和对词向量进行操作;体现在的bert中就是预训练网络作为产生词向量的网络,然后fine-tune就是对词向量操作(NLP的下游任务)一、预训练网络1. 词向量模型:词向量的进化史,是从word2vec—> ELMo ----> BERT原创 2021-04-23 11:42:19 · 253 阅读 · 0 评论 -
pytorch踩坑记录
链接一:inplace的操作的坑解决方式: .data出现inplace后,叶子节点变为非叶子节点原创 2020-11-18 15:22:55 · 146 阅读 · 0 评论 -
bert实践2---NER
数据集:2014人民日报.zip源码:https://github.com/circlePi/Bert_Chinese_Ner_pytorch# B_PER代表人名的开头,B_T代表时间的开头,B_ORG代表组织的开头,B_LOC代表位置的开头# I_*代表不是开头的中间词语,O是标签,无意义labels = ["B_PER", "I_PER", "B_T", "I_T", "B_ORG", "I_ORG", "B_LOC", "I_LOC", "O"]使用BERT得到len(label)的输出原创 2020-09-22 12:37:46 · 900 阅读 · 0 评论 -
bert实践1---情感分析
数据来源: 微博,网上下载的格式:前面的是label,后面的是内容数据预处理:没有做预处理,应该去掉转述别人的内容,只保留自己的。构建平行语料def get_data(): pd_all = pd.read_csv("weibo_senti_100k.csv") print('评论数目(总体):%d' % pd_all.shape[0]) print('评论数目(正向):%d' % pd_all[pd_all.label==1].shape[0]) print('评论数目(负向):原创 2020-09-20 18:12:10 · 952 阅读 · 0 评论 -
bert详解(一)----预训练源码
参考论文:Attention Is All You Need参考论文:BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding源码地址:BERT-pytorch介绍,源码主要完成了bert预训练的两个TASKMasked LM(Masked Language Model)一个句子中每个词有15%的概率会被选中进行设置,设置的规则有三种:80%的概率设置为[MASK]用于学习10%的概率设原创 2020-09-17 16:05:50 · 3053 阅读 · 1 评论 -
【转载】一文读懂BERT(原理篇)
一文读懂BERT(原理篇)2018年的10月11日,Google发布的论文《Pre-training of Deep Bidirectional Transformers for Language Understanding》,成功在 11 项 NLP 任务中取得 state of the art 的结果,赢得自然语言处理学界的一片赞誉之声。本文是对近期关于BERT论文、相关文章、代码进行学习后的知识梳理,仅为自己学习交...转载 2020-09-14 16:56:17 · 776 阅读 · 0 评论 -
word2vec
重新整理一下word2vec,也回顾一下,为面试做准备,不过也有些新的收获。1 CBOW设置window_size,根据前后[-windown_size, window_size]大小的单词去推测中心词。结构大概是:2.skip_gram可以理解为CBOW的逆操作,根据中心词去预测它周围的词。结构大致为:训练方法为:层次softmax与负例采样CBOW用于数据集相对较少的,数据集较多的一般使用skip_gram,关于数学公式的理论推导见cs224n的课程:cs224n 第二讲cs224原创 2020-09-12 00:39:02 · 203 阅读 · 0 评论 -
摘要,Pointer-Generator Networks
参考论文:Get To The Point: Summarization with Pointer-Generator Networks参考代码:atulkum/pointer_summarizer使用的模型是seq2seq + attention,也就是前面有提到的做翻译的模型,之前写的有些问题,也是由于自己不太理解吧;现在结合这个代码,再来重新梳理一遍。baseline model(不加attention 和 Pointer-Generator Networks)介绍:encoder是双向原创 2020-07-01 00:12:31 · 218 阅读 · 0 评论 -
Seq2Seq + Attention
Seq2Seq原理Seq2Seq指输入是一个序列,输出也是一个序列;输入的序列是将不同的长度的数据转化为等长的向量表示,然后输出也是将不同长度的序列用等长的向量表示,又叫做encoder-decoder,encoder和decoder都是RNN模型,首先利用输入序列,使用最后的隐状态作为decoder的初始隐状态和输入相关的状态带入,然后再decoder中得到最终的输出。为什么要加入Attention时间过长,即序列的长度较长的时候,会引起梯度消散的结果,此时引入注意力模型为了记住更好的效果。S.原创 2020-06-14 00:44:50 · 322 阅读 · 2 评论 -
基于统计的机器翻译(SMT)
1 中文数据预处理a. 中文分词预处理b. 用正则表达式,对特殊类型进行泛化,比如:数字,时间,日期,网址等等c. 组织机构的名词不捆绑,为了信息抽取更方便,比如同济大学土木工程学院拆分成"同济大学"和"土木工程学院"更合理2 英语数据预处理a. 将所有的大写字母改为小写b. 将符号与单词用空格隔开c. 与1中b处理一样Note:还有全角字符转化成半角字符,同一类型泛化名字最好一致等等Ext 1: 中文分词结巴分词(直接分析源码吧):jieba.cut(sel.原创 2020-06-03 16:28:24 · 2436 阅读 · 0 评论