自然语言处理
文章平均质量分 71
listwebit
这个作者很懒,什么都没留下…
展开
-
lstm算法
1.网络社交媒体的抽象情感分类面临着文本语境语义缺失的问题?缺失指的什么?文本语言不全,用表情符号,或者标点符号表示原创 2022-05-15 13:10:08 · 796 阅读 · 0 评论 -
nlp知识
https://ld246.com/article/1623062353029原创 2022-01-20 17:32:48 · 498 阅读 · 0 评论 -
huggingface的pytorch使用
一、 如何使用 使用transformers前需保证当前环境下pytorch版本>=1.1.0;以下代码均在pytorch== 1.2.0,transformers==4.1.1环境下运行成功。项目组件pytorch版本bert预训练模型文件主要由三部分组成,建议可以官方模型库手动先下载到本地方便调用:配置文件 —— config.json模型文件 —— *.bin词表文件 —— vocab.txt三个文件分别由 BertConfig、BertModel、BertTokenizer调原创 2021-10-30 22:53:23 · 1341 阅读 · 0 评论 -
2020-09-23
1、第一种方式主要是利用同义替换的思想。 文中介绍了几个相关的方法,主要还是在于字、词、和句子结构层面上做数据增强。除了传统的字典、词向量相似度替换的方法,我觉得用mlm的方式去做数据增强这个点更加新颖和符合intuition。样本生成模型预测通过上述两个图,能很容易理解,就是预测mask位置的token,本身模型输出的是概率值,所以可以进行一个有效排序,而生成top k个近似的结果。2、第二种就是通过“回译”的方法,这在阅读理解领域的榜单中一度有人使用过,比如说《attention is al原创 2020-09-23 19:46:21 · 104 阅读 · 0 评论 -
transformer-xl原理
一、背景语言模型的建模依赖对长期依赖的建模。而在序列数据中将长期依赖引入神经网络又是一项有挑战的工作。RNN 特别是 LSTM 之前是标准化的的解决方案。但 RNN 由于有梯度消失和梯度爆炸的问题,其优化非常困难。而在 LSTM 中仅仅引入门机制和梯度裁剪可能并不足以解决这个问题。从经验来看,LSTM 大概可以使用200个单词的上下文信息。Attention相对于CNN和RNN,有以下优点:1.每个元素可以像CNN一样和全局的信息进行交互,忽略距离。2.突破了 RNN 模型不能并行计算的限制。3.原创 2020-09-19 23:45:20 · 241 阅读 · 0 评论 -
XLNet算法详解
一、背景自从Bert打开两阶段模式的魔法盒开关后,在这条路上,会有越来越多的同行者,Bert系列的算法层出不穷,比较注明的有RoBerta,ALBert。Bert系列的算法都属于AutoEncode LM。与之相对应的还要AutoRegressive LM。1.自回归语言模型(Autoregressive LM)定义在ELMO/BERT出来之前,大家通常讲的语言模型其实是根据上文内容预测下一个可能跟随的单词,就是常说的自左向右的语言模型任务,或者反过来也行,就是根据下文预测前面的单词,这种类型的原创 2020-08-21 11:56:05 · 426 阅读 · 0 评论 -
roberta算法详解
一、背景bert系列的算法论文越来越多,比较出名和有效果的有,Roberta、ALbert。另一个系列的是XLnet。全名:RoBERTa:A Robustly Optimized BERT Pretraining Approach官方源码:https://github.com/pytorch/fairseq中文预训练模型1:https://github.com/brightmart/roberta_zh此模型为某个公司训练中文预训练模型2:https://github.com/ymcui/Ch原创 2020-08-20 15:28:25 · 2496 阅读 · 1 评论 -
xlnet源码分析
http://fancyerii.github.io/2019/06/30/xlnet-codes/原创 2020-08-20 10:20:51 · 542 阅读 · 0 评论 -
transformer算法详解
一、背景NLP作为AI的子领域,一直以来被认为比较难的学科。特征抽取一直以来都作为NLP的核心任务。概况来说在深度学习为基础的体系中,特征抽取经历了以下几个阶段:DNN->CNN->RNN->Transformer。自从2017年6月份《Attention is all you need》论文作为机器翻译算法提出后,transform已经逐步替代了以CNN和RNN为首的特征抽取,特别是2018年bert一战成名后,目前所有的主流方法几乎都是transformer系的变体。二、架构原创 2020-08-07 12:01:07 · 8607 阅读 · 0 评论 -
bert面试
总结一下bert面试相关问题1.bert基本原理是什么作者:Adherer要加油呀~链接:https://www.nowcoder.com/discuss/351902来源:牛客网BERT是“Bidirectional Encoder Representations from Transformers”的首字母缩写,整体是一个自编码语言模型(Autoencoder LM),并且其设计了两个任务来预训练该模型。第一个任务是采用MaskLM的方式来训练语言模型,通俗地说就是在输入一句话的时候,随机地选原创 2020-06-28 13:47:53 · 275 阅读 · 0 评论 -
bert算法原理
bert可以分为两个阶段,预训练和微调一、预训练二、微调原创 2020-06-27 22:34:05 · 1396 阅读 · 0 评论 -
bert 源码解读
一、目录结构||—create_pretraining_data.py||—run_pretraining.py 预训练文件||—modeling.py 模型文件||—extract_features.py||—optimization.py||—run_classifiter.py||—run_squad.py||—tokenization.py原创 2020-06-19 18:41:28 · 237 阅读 · 0 评论 -
transformer源码详解
参考文献:1.https://zhuanlan.zhihu.com/p/110800071原创 2020-06-11 18:31:28 · 1779 阅读 · 0 评论 -
NLP发展历程-bert详解
ERT优点Transformer Encoder因为有Self-attention机制,因此BERT自带双向功能因为双向功能以及多层Self-attention机制的影响,使得BERT必须使用Cloze版的语言模型Masked-LM来完成token级别的预训练为了获取比词更高级别的句子级别的语义表征,BERT加入了Next Sentence Prediction来和Masked-...原创 2020-04-26 17:58:44 · 3236 阅读 · 1 评论 -
2020最优秀的NLP模型
一直在关注nlp的语言模型,一般看目前最新效果最好的NLP模型,可以看榜单:https://gluebenchmark.com/leaderboard但是这里面有个问题就是,有的模型并没有放出来,或者放出来了,并没有中文预训练模型,导致无法应用到实际的项目中,目前总结一下最新可用的中文语言模型。一、ERNIE2.0目前最好的中文模型算是百度的艾尼2.0,可用在github上找到官网,但是有个...原创 2020-04-21 14:11:06 · 2214 阅读 · 0 评论 -
2019年NLP的技术突破
一文看尽2019年NLP前沿突破 - 量子位的文章 - 知乎https://zhuanlan.zhihu.com/p/101416113转载 2020-01-10 17:36:33 · 404 阅读 · 0 评论 -
bert作为词向量的使用
1.在10.服务器注意要跳转到bert 目录服务端启动/usr/local/python35/bin/bert-serving-start -model_dir model/chinese_L-12_H-768_A-12/ -num_worker客户端原创 2019-12-04 16:28:55 · 957 阅读 · 0 评论 -
新词发现
一、新词新词发现又叫未登录词识别,我认为可以包括两种形式:1.命名实体识别 2.普通新词发现命名实体识别我们在另一章中专门讨论,本节只讨论普通新词发现。目前新词发现可以分为两类算法:无监督,有监督。无监督主要通过互信息,左右熵来发现,有监督主要通过标注,例如CRF+深度学习二、基本概念现在基于统计方法的新词发现主要通过词内互信息(凝聚度),词间的左右信息熵来确定,因此我们向明确一下基本...原创 2018-12-19 15:37:31 · 844 阅读 · 0 评论 -
Python简单实现基于VSM的余弦相似度计算
在知识图谱构建阶段的实体对齐和属性值决策、判断一篇文章是否是你喜欢的文章、比较两篇文章的相似性等实例中,都涉及到了向量空间模型(Vector Space Model,简称VSM)和余弦相似度计算相关知识。 这篇文章主要是先叙述VSM和余弦相似度相关理论知识,然后引用阮一峰大神的例子进行解释,最后通过Python简单实现百度百科和互动百科Infobox的余弦相似度计算。转载 2017-03-03 18:52:02 · 762 阅读 · 0 评论 -
word2vec 构建中文词向量
词向量作为文本的基本结构——词的模型,以其优越的性能,受到自然语言处理领域研究人员的青睐。良好的词向量可以达到语义相近的词在词向量空间里聚集在一起,这对后续的文本分类,文本聚类等等操作提供了便利,本文将详细介绍如何使用word2vec构建中文词向量。一、中文语料库本文采用的是搜狗实验室的搜狗新闻语料库,数据链接 http://www.sogou.com/labs/resource/转载 2017-03-03 18:52:44 · 1418 阅读 · 0 评论 -
分词方法
一、分类1、基于词表的分词方法2、基于统计模型的分词方法3、基于规则的方法原创 2017-02-26 15:51:17 · 783 阅读 · 0 评论 -
Elasticsearch 安装
Elasticsearch 是一个搜索服务器,特点:分布式、易于扩展、全文检索、索引速度快。 本篇文章主要介绍 Elasticsearch 的安装和基本使用,假定你有一定的Linux基础(所有命令均在命令行中执行)。Elasticsearch 版本:2.2.0服务器:CentOS 6.4 (Win7 下的虚拟机)一、安装因为 Elasticsearch 是 Java原创 2017-03-06 10:09:48 · 640 阅读 · 1 评论 -
朴素贝叶斯算法
设每个数据样本用一个n维特征向量来描述n个属性的值,即:X={x1,x2,…,xn},假定有m个类,分别用C1, C2,…,Cm表示。给定一个未知的数据样本X(即没有类标号),若朴素贝叶斯分类法将未知的样本X分配给类Ci,则一定是P(Ci|X)>P(Cj|X) 1≤j≤m,j≠i根据贝叶斯定理由于P(X)对于所有类为常数,最大化后验概率P(Ci|X)可转化为最大化先验概率P原创 2017-02-27 14:00:18 · 575 阅读 · 0 评论 -
贝叶斯分类器的简单理解
贝叶斯分类器贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。也就是说,贝叶斯分类器是最小错误率意义上的优化。目前研究较多的贝叶斯分类器主要有四种,分别是:Naive Bayes、TAN、BAN和GBN。训练和所有监督算法一样,贝叶斯分类原创 2017-02-27 16:58:11 · 4274 阅读 · 1 评论 -
gensim python 学习
1 . http://blog.csdn.net/questionfish/article/details/467392072.http://blog.csdn.net/pipisorry/article/details/464475613.http://www.cnblogs.com/iloveai/p/gensim_tutorial.html原创 2017-05-19 15:07:49 · 421 阅读 · 0 评论 -
刘丽娟的面试总结
复习计划: 一、HMM隐马尔可夫模型,最大熵模型,CRF条件随机场 2017.11.21-2017.11.30 (两周时间) 1、CRF原理,公式推导 2、CRF源代码阅读 3、CRF实体标注、词性标注、句法分析的应用 4、熟悉之前的项目工程二、RNN神经网络扩展 2017.12.1-2017.12.16(两周时间) 1、RNN基本原理 2、CNN文本分类 3、word2v原创 2018-01-31 16:26:18 · 1469 阅读 · 0 评论 -
nlp技术模块分类
nlp技术分类nlp技术模块可以分为以下几个类别:1、分类算法:SVM、朴素贝叶斯、K近邻、决策树、集成学习(原理和应用) 2、聚类算法:kmeans、层次聚类、密度聚类(原理和应用) 3、概率图模型HMM、CRF(原理和应用) 4、LDA、PLSA、LSA(原理和应用) 5、半监督学习(算法思想) 6、新词发现(技术实现细节) 7、词语度量标准:频率、tfidf;原创 2018-01-31 16:54:00 · 1225 阅读 · 0 评论 -
word2vec算法详解
要解决问题:在神经网络中学习将word映射成连续(高维)向量,这样通过训练,就可以把对文本内容的处理简化为K维向量空间中向量运算,而向量空间上的相似度可以用来表示文本语义上的相似度。原创 2018-02-01 16:56:12 · 337 阅读 · 0 评论 -
文本聚类算法总结
一、文本聚类算法总结1.划分法(partitioning methods):给定一个有N个元组或者纪录的数据集,分裂法将构造K个分组,每一个分组就代表一个聚类,K<N。而且这K个分组满足下列条件:(1) 每一个分组至少包含一个数据纪录;(2)每一个数据纪录属于且仅属于一个分组(注意:这个要求在某些模糊聚类算法中可以放宽);对于给定的K,算法首先给出一个初始的分组方法,以后通过反复迭代的方...原创 2018-09-19 14:13:51 · 1269 阅读 · 0 评论 -
TF-IDF算法
TF-IDF算法可以分解为两部分:TF和IDFTF算法$TF =\frac {n_{i,j}}{ss} $原创 2018-09-28 16:47:08 · 456 阅读 · 0 评论 -
word2ve源码解析(python版gensim实现)
class BaseAny2VecModel()class BaseWordEmbeddingsModel(BaseAny2VecModel)def __init__(): super(BaseWordEmbeddingsModel, self).__init__() self.build_vocab(sentences) self.train() def build_voc...原创 2018-11-18 19:34:44 · 1202 阅读 · 0 评论 -
损失函数,代价函数,目标函数的区别
假设函数(hypothesis function):预测函数损失函数(loss function):计算的是一个样本的误差代价函数(cost function,成本函数):是整个训练集上所有样本误差的平均目标函数(objective function):代价函数 + 正则化项...原创 2018-11-27 21:19:20 · 354 阅读 · 0 评论 -
NLP通常包括两个关键问题
NLP通常包括两个关键问题:1.选择什么样的语言模型?2.选择什么样的分类算法?第二个问题是机器学习领域的标准问题,各种针对不同数据类型、数据分布的算法和技巧,这里不再赘述。而在NLP当中,语言模型更加重要一些。不同语言模型的区别,也就是对文本提取特征的不同。常用的模型有:1.Bag-of-words:最原始的特征集,一个单词/分词就是一个特征。往往一个数据集就会有上万个特征;原创 2017-02-27 20:14:04 · 706 阅读 · 0 评论