![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
自然语言处理
Answerlzd
本博客作为个人的学习笔记,转载时已进行注明,若擅自转载了前辈博客,还请联系本人进行删除。
展开
-
NLTK中文分句 自定义词典 Mr. 不分词
因为我这里已经下载过NLTK了,所以就不提供安装教程了,搜一搜都能找到。这里就直接演示对英文句子切分:from nltk.tokenize.punkt import PunktSentenceTokenizer, PunktParametersdef cut_sentences_en(content): punkt_param = PunktParameters() abbreviation = ['i.e.', 'dr', 'vs', 'mr', 'mrs', 'prof'原创 2021-12-09 16:58:51 · 1075 阅读 · 0 评论 -
mosesdecoder/tokenizer.perl 使用说明
tokenizer.perl是统计机器翻译系统moses的一个小工具,可以用来对英文德文等进行分词。使用方法:$ perl tokenizer.perl -l en < [待分词文件] > [分词结果]其中: -l en 表示的输入的文件是英文例如:$ perl tokenizer.perl -l en < train.en > train.tok.en参数说明:if ($HELP){ print "Usage ./tokenizer....原创 2021-07-19 16:13:13 · 1727 阅读 · 0 评论 -
pytorch 快速计算两个tensor的欧式距离
给定两个tensor: A 和 B。A的维度为 [m,h], B的维度为 [n,h]。要求每两行之间计算他们的欧氏距离,返回一个维度为[m,n]的tensor。要求不能使用循环,也不能扩充复制一个tensor。解:将欧式距离的公式展开,根号下面是。a是tensor A中某一行的平方和,b是tensor B中某一行的平方和,ab是两个向量的内积。所以代码为:def EuclideanDistances(a,b): sq_a = a**2 sum_sq_a = torch.sum.原创 2021-03-19 15:39:33 · 11713 阅读 · 0 评论 -
用于文本分类的数据增强方法
这是一篇发表在AAAI2020上的一篇文章,附上链接:https://aaai.org/ojs/index.php/AAAI/article/view/6233方法名为LAMBADA(Language Model Based Data Augmentation),核心思路为:下面看一下每个步骤具体实施的过程:选用一个分类算法在训练集上训练一个分类器。分类算法文中用了BERT,SVM和LSTM。记住这个分类器,第四步的时候要用。 这一步得到一个用于生成句子的模型:把训练集的数据组织成ySEP原创 2020-09-09 21:57:29 · 1545 阅读 · 0 评论 -
mosesdecoder中clean-corpus-n.perl脚本使用说明
官方文档:http://www.statmt.org/moses/?n=Moses.Baseline只列出保留长度范围内的数据,但是对于clean-corpus-n.perl其他功能还没有列出。比如去除源端目标端句子比例超过5的平行句子,因为源端目标端句子比例相差过大可能就不平行了,因此需要去掉。一条完整的命令如下:perl mosesdecoder/scripts/training/clean-corpus-n.perl -ratio 3 test en cn test.clean 1 10原创 2020-08-30 12:10:09 · 1279 阅读 · 0 评论 -
NLTK 安装包 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
在用NLTK做命名实体识别时,报错,提示有个包没找到。然后尝试安装这个包,结果还是不行:提示:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。>在百度一些博客发现,需要去官方GitHub下载这个包https://github.com/nltk/nltk_data下载之后解压把packages里面的文件放到它搜索的路径下,随便放一个就行:我选择Anaconda3下,然后自己新建一个nltk_data文件夹:以为这次运行没啥问题了,结果还是原创 2020-05-26 16:09:24 · 3162 阅读 · 4 评论 -
(2019ACL)ERNIE:Enhanced Language Representation with Informative Entities
论文链接:https://www.aclweb.org/anthology/P19-1139.pdf一、Motivation像BERT这种预训练的语言模型虽然在很多NLP任务上都取得了不错的效果,但是BERT只是能让一句话表达的更通顺,并没有融合外部的知识。而外部的信息实体是可以提高语言表征能力的。因此这篇论文通过融合知识图谱(KGs)能让模型同时利用词典,语法和知识信息。二、解决的问题为了把外部知识融合到语言表征模型主要会遇到两个问题:一个是知识抽取,一个是知识的融合。因为知识图谱都是原创 2020-05-23 22:34:00 · 412 阅读 · 0 评论 -
论文中多语言的神经机器翻译方法(multilingual neural machine translation)
一般的神经机器翻译模型(NMT)实现的是一种语言到另一种语言的翻译,也就是用在特定的语言对之间。最近一些工作开始将一般的NMT扩展到多语言的场景。目前两种通常的做法是:一、为每种源语言单独准备一个encoder,每种目标语言也准备一个decoder,然后encoder和decoder之间共享一个注意力层。二、不管源端和目标端多少种语言统一一个encoder,一个decoder,然后attentio...原创 2019-12-05 09:18:22 · 1477 阅读 · 0 评论 -
文本分类《Multilingual Hierarchical attention networks for document classification》
Motivation:在多语言的文本分类问题上一般都面临两个问题:一是计算成本会随着语言数量的增加而线性增加;模型缺乏不同语言之间知识迁移能力,也就是在一种语言上习得的知识不能应用到另一种语言上。当前解决上述问题的方案都需要不同语言的文本具有相同的标签,但是这个要求往往很难得到满足。因此,本文提出一种多语言的分层注意力模型,该模型在保证尽量少添加参数的同时,使模型具有知识迁移的能力。...原创 2019-11-13 20:45:17 · 638 阅读 · 3 评论 -
指代消解《End-to-end Neural Coreference Resolution》
Motivation:之前提出用神经网络做指代消解任务的思想都使用句法分析的结果或者手工构造的特征作为输入。这篇文章第一次使用端到端的模型,证明了在不需要输入额外的特征的情况下也可以取得了最好的效果。基本术语:原文链接:https://blog.csdn.net/Huang_cainiao/article/details/94597600 ...原创 2019-11-06 20:22:57 · 2996 阅读 · 10 评论 -
语义角色标注《Deep Semantic Role Labeling?What Works and What’s Next》
Motivation:在语义角色标注(SRL)的任务上,传统使用神经网络的做法是将解析树作为神经网络的输入。最近一种比较流行的做法是使用端到端的神经网络模型,直接将源句子转化为论元标签,省去生成解析树的步骤。本文采用的就是端到端的方法,将SRL任务转化为一个序列标注问题。模型结构:为实现SRL,从源句子到目标序列一共分为两部分:Highway LSTM+Softmax:输入为...原创 2019-11-01 10:40:00 · 759 阅读 · 0 评论 -
依存句法解析《Structured Training for Neural Network Transition-Based Parsing》
Motivation:基于转移的依存句法分析方法在保证分析效率的同时也能达到满意的准确率。和人工构造特征的方法相比,陈丹琪等人(Chen)使用神经网络和贪心算法构造了基于转移的依存句法解析器。其效果虽优于人工方法但仍没有达到state-of-the-art。因此本论文对Chen提出的模型进行了一些改进,在模型的输出部分添加了感知机层,同时使用大量的无监督数据,结果取得了最高的准确率。...原创 2019-10-24 16:56:45 · 353 阅读 · 0 评论 -
依存句法解析《an efficient algorithm for projective dependency parsing》
Motivation:依存句法分析在句法分析和语义消歧任务上发挥着重要的作用。在此之前决策式的分析方法(deterministic parsing)大部分都是语言心理学家考虑的问题,而这种方法在消歧任务上有很大优势,因此本文提出一种数据驱动的依存句法分析方法——基于转移的决策式分析方法用来替代传统的做法。将生成句法树的任务转换成生成操作序列的任务。基本概念:一颗依存树应该满足以下...原创 2019-10-23 20:12:30 · 796 阅读 · 2 评论 -
命名实体识别《Neural Architectures for Named Entity Recognition》
Motivation:目前在命名实体识别任务上表现最好的模型都严重依赖于人工构造的特征(基于规则),因为关于NER任务的语料很少,通过神经网络难以训练一个合适的模型,所以很多人提出在使用监督+无监督的语料提升模型的表现。本文提出两种神经网络结构且仅仅使用有限的监督数据实现了state-of-the-art performance。模型结构:本文提出两种模型,LSTM-CRF和St...原创 2019-10-16 09:15:29 · 472 阅读 · 0 评论 -
命名实体识别《Named Entity Recognition using an HMM-based Chunk Tagger》
Motivation:命名实体识别(NER)是识别文本中基于特定意义的实体,例如人名、地名、机构名等。因为命名实体是信息抽取的关键步骤,而目前大多数的方法都是人为构造特征例如构造正则表达式。这种基于规则的NER方法只能用于某一种特定语言,其鲁棒性和迁移性较差。因此本文提出一种基于HMM的机器学习方法实现命名实体识别。核心思想:隐马尔可夫模型经常用于标注问题,这时状态对应着标记,标...原创 2019-10-13 21:13:46 · 796 阅读 · 0 评论 -
TF-IDF算法
TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF意思是词频(Term Frequency),IDF意思是逆文本频率指数(Inverse Document Frequency)。用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度 ...原创 2019-08-19 22:27:01 · 359 阅读 · 0 评论 -
TBPTT算法——Truncated Backpropagation Through Time
一、介绍在训练循环神经网络RNN中,往往使用BPTT(Backpropagation Through Time)更新参数。关于BPTT的详细原理可以参考https://www.cntofu.com/book/85/dl/rnn/bptt.md然而使用BPTT,对于单个参数的更新可能会带来很大的开销。例如对长度为1000的输入序列进行反向传播,其代价相当于1000层的神经网络进行前向后向传播...原创 2019-09-20 14:52:05 · 3620 阅读 · 0 评论 -
情感分类《Thumbs up?Sentiment Classification using Machine Learning Techniques》
相关背景:这篇论文发表于2002,那时大量的文本分类研究都是对文章的主题分类,例如判断一篇文章是体育类还是财经类。然而随着在线评论的网站大肆兴起,为了提供更言简意赅的信息,就需要判断人们针对某件事发表言论的是肯定的还是否定的,即情感分类。当前研究:传统的对文章进行情感分类的做法有:使用统计学的方法判断文章的来源:例如考虑文章的作者,出版商以及作者所处的阶层。 一个相关的领域是确定...原创 2019-09-22 18:55:50 · 1558 阅读 · 0 评论 -
情感分类《Convolutional Neural Networks for Sentence Classification》
Motivation:Razavian等人(2014)使用预训练特征提取器在图像分类任务上取得了不错的效果,同时CNN在自然语言处理的任务上的应用也很有效。受此启发,本文作者使用预训练的词向量搭建一个简单的CNN网络。实验表明:在句子分类任务上,预训练的词向量+简单CNN模型往往比复杂的大型神经网络的分类效果好。核心思想:一般情况下,使用CNN进行句子分类是先将单词用向量表示,这...原创 2019-09-23 20:49:03 · 194 阅读 · 0 评论 -
情感分类《Thumbs Up or Thumbs Down Semantic Orientation Applied to Unsupervised Classification ofReviews》
Motivation:在淘宝上买东西时往往会看一下其他人的发布的评价,一条一条看可能很浪费时间。因此本文旨在实现一个自动对评价信息进行分类的算法。当前研究:以往预测语义指向都是使用句子中出现的形容词,没有考虑副词或短语的情况(Hztzicassiliglou et al 1997)。或者需要人工手段判断形容词是积极词汇还是消极词汇。有的仅仅给出文档的主题信息,没有挖掘文章的方向(...原创 2019-09-25 15:24:58 · 972 阅读 · 0 评论 -
中文分词《Long Short-Term Memory Neural Networks for Chinese Word Segmentation》
Motivation:以往大多数中文分词的方法都是基于系列标注任务,这需要建立复杂的特征表示才能从句子中抽取单词。为了避免建立复杂的特征表示,最近的研究都是集中于用神经网络自行学习分词信息。然而在使用一般的RNN进行中文分词时,之前学到的记忆可能会被冲淡,因此本文引入LSTM解决长时间依赖问题。实现功能:在用神经网络进行中文分词时,输入的是一个句子,输出是每个字符对应的标签{B,...原创 2019-09-30 21:41:39 · 572 阅读 · 0 评论 -
论文阅读《NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE》
Abstract这篇论文第一次运用注意力机制(Attention)解决机器翻译中的问题。和传统的统计机器翻译(SMT)不同,神经机器翻译(NMT)旨在构建一个神经网络来提高翻译性能。最近(2016)提出的NMT模型都是基于编码器和解码器:将源语言编码成一个定长向量(fixed-length vector),然后用解码器生成目标语言。这篇论文假设将源语言编码成定长向量是提高翻译性能的瓶颈,提出了...原创 2019-09-13 16:10:14 · 640 阅读 · 0 评论