自然语言处理
文章平均质量分 81
孙宝龙
专注全站开发
展开
-
使用transformer实现超高质量唐诗生成
0、概述唐诗生成在汉语的nlp领域应用非常广泛,从传统的RNN、LSTM、Attention生成质量被不断提升。随着Transformer模型提出很多NLP的深度学习模型都被改写。那么Transformer在唐诗生成领域的表现如何呢。我们来看一下,本文通过通过实例的方式详细描述了transformer的基本结构,以及唐诗生成的基本步骤。本文使用的框架为tensorflow2.2.1、加载环境import matplotlib as mplimport matplotlib.pyplot as原创 2021-04-23 23:09:08 · 2482 阅读 · 8 评论 -
论文翻译-通过无监督方法产生不同风格的唐诗
1、摘要原论文 Stylistic Chinese Poetry Generation via Unsupervised Style Disentanglement链接: http://nlp.csai.tsinghua.edu.cn/~yangcheng/publications/emnlp2018.pdf中国人在写诗歌时主要关注诗歌的意境,在不同的意境下,人们可以创作出不同风格的诗歌。这...原创 2018-11-27 08:32:32 · 1476 阅读 · 0 评论 -
使用attention机制的seq2seq模型实现论文翻译
1、概述本文是关于attention-seq2seq模型实现中文到英文的翻译。论文的核心gru作为seq2seq模型的基本单元。基本翻译效果如下图所示:2、模型结构整体模型结构如下图所示:相关数学公式如下图所示相关模型说明:FC = 全连接层(dense layer)EO = 编码器(encoder)输出H = 隐藏状态X =解码器(decoder)输入相关公式的模型...原创 2018-12-04 16:21:31 · 1799 阅读 · 2 评论 -
论文翻译-通过对齐与翻译联合学习实现机器翻译
1、摘要基于神经网络的机器学习是目前最为流行的一种机器翻译的方法。与传统的统计学翻译不同,这种翻译方式是通过构建一个神经网络来最大限度提升翻译的性能。该模型是encoder–decoders模型家族中的一种。他使用编码器(encoder)将原始句子编码成一个定长向量,然后使用解码器(decoder)来实现翻译。在本文中,我们推测,在encoder–decoder模型架构下,使用定长向量将是提升...原创 2018-11-01 14:51:31 · 1054 阅读 · 0 评论 -
论文翻译-阿里小蜜,基于检索模型和生成模型相结合的聊天引擎
1、摘要阿里小蜜是一款开放领域的聊天机器人引擎,他结合了IR(检索)模型与带有注意力机制的seq2seq生成模型。从效果上来讲,阿里小蜜的表现明显优于只使用某一种单一模型的情况。2、介绍近年来,聊天机器人技术发展非常迅速,比如微软小冰,苹果的siri,谷歌助手等产品层出不穷。与传统的app的按钮式交互不同,聊天机器人允许用户使用自然语言与app进行交互。阿里小蜜是一款在电商领域的一...原创 2018-10-31 09:49:34 · 1874 阅读 · 0 评论 -
简单的意图分析模型(2)-模型构建
1、概述在之前文章中已经对数据做了比较充分的处理,而且已经转化为张量,可以直接读取到tensorflow中进行训练。在本章中将构建神经网络模型来实现意图分析的训练与预测。2、构建神经网络为了更好的构建模型首先对输入数据进行简单分析,目前输入的每一个句子是由8个单词构成,每个单词都是一个300维的向量。而输出结果是一个整数的用于代表他们意图的编号。如下图所示:2.1 构建卷积神经...原创 2018-08-28 11:37:02 · 1472 阅读 · 0 评论 -
简单的意图分析模型(1)-数据处理
1、概述在聊天场景中有很多情况下需要对用户的意图进行分析。这些分析功能基本上就是自然语言分类模型的变种。从技术难度上来讲这种模型实现比较简单。但要保证效果主要受一下几个方面的制约。词向量的准确程度 语料的多少 模型的选择词向量是一个多维的坐标,用于在高纬度空间中的距离表示两个词之间的相似度。所以词向量能否准确的表示词与其相关词的关系会直接影响到整个神经网络的推理能力,以及对于新预料的...原创 2018-08-27 16:01:43 · 3740 阅读 · 0 评论 -
深入理解词向量-词向量的可视化
1、概述词向量是自然语言分词在词空间中的表示,词之间的距离代表了分词之间的相似性,我们可以使用gensim,tensorflow等框架非常方便的来实现词向量。但词向量在词空间的分布到底是什么样的,如何更好的理解词向量是一个非常重要的问题。本文将使用tensorbord以及相关的降维技术在三维空间中模拟词向量在高维空间的分布。2、训练词向量词向量的训练是一个无监督的学习过程,这并不是本文...原创 2018-08-16 17:47:49 · 10281 阅读 · 11 评论 -
自然语言话题分析-从NMF矩阵分解模型说起
1、概述我们在接触自然语言领域都会涉及到基于监督学习与非监督学习的文本分类,在非监督学习领域会提到lsa、lda主题模型的实现。但之前的讨论都是基于工具层面的。其实这些模型的基础算法都是NMF模型分解。可以我们不会对文本从底层去实现这样的算法。但了解其实现的机制还是非常有帮助的。2、关于NMF矩阵NMF的思想:V=WH(W权重矩阵、H特征矩阵、V原矩阵),通过计算从原矩阵提取权重和特征...原创 2018-08-15 16:54:07 · 1864 阅读 · 0 评论 -
叙事文章的生成(论文翻译)
1、概述本文章是对国外一篇论文【 2002 Elsevier Science B.V.】的翻译,主要介绍了一种叙事文章的生成。一直以来,由于过度关注对故事语法与情节设计,叙事文章的生成的写作质量很差。此外,迄今为止的自然语言生成系统还不能客观地再现自然发生的叙事的多样性或复杂性。本文主要涵盖一下内容。以叙事文章与语言学为基础,提出了一个叙事推断模型。 我们将描述故事的主题结构,以及叙...原创 2018-08-01 10:44:45 · 1030 阅读 · 0 评论 -
使用nltk处理中文语料(1)- 统计相关
1、概述nltk作为自然语言处理(nlp)领域里经常被使用的一款工具。本身自带的语料大部分是英文的,其实跟对中文文档,稍作处理之后也是可以使用的,这里主要介绍nlp在中文领域的基础应用。2、nltk安装关于nltk的安装网上有很多的文章介绍,可以使用pip install nltk 命令非常方便的安装nltk。一般在安装完成之后需要使用download命令来下载相关的语料库,这些语料库...原创 2018-08-10 15:45:11 · 18516 阅读 · 8 评论 -
使用gensim处理文本(4)word2vector
1、概述在之前的章节当中我们从概率分布的角度来考虑文本的实际含义,并在此基础上进行了主题分析。但在实际的应用当中,我们对自然语言处理的需求远远不止这些。其中一个非常重要的需求就是,我们能用vector的形式来表示单词的含义。以便于将这些vector进行其他的处理,如进入神经网络进行进一步处理,所以如何从语义角度将单词转化为向量就变得尤为重要。那如何使用vector来表示单词的含义呢,我们认为一个单...原创 2018-05-18 17:36:42 · 5762 阅读 · 2 评论 -
使用gensim处理文本(3)相似度分析
1、概述在之前的文章中,我们将文本转化为词向量,并在不同的向量模型中进行转化。并使用lsa与lda进行了潜在语义分析。其中还有一个非常重要的工作就是相似度分析。本章主要介绍在lsa的基础上进行相似度分析。2、初始化相似度查询模型首先需要再加字典以及tfidf模型以便于后续的工作,请参照一下代码from gensim import corpora, models, similaritiesdict...原创 2018-05-18 16:06:58 · 3676 阅读 · 0 评论 -
使用gensim处理文本(2)主题分析与向量转换
1、概述在之前的文章中我们建立了字典文件,并使用词袋模型来表示一个文档,但这种表示方式是基于词频的简单模型。有的时候需要对模型进行转换。常见的模型有:tfidflsilda等2、tfidf模型我们使用字典文件可以非常直观生成tfidf模型,tfidf是根据词频和逆词频抽取关键词的一种技术。通俗来讲一个文档中的所有分词只有在本文档中出现的频率越高而在其他文档中出现的词频越低就代表着该词越关键。请参照...原创 2018-05-18 14:56:34 · 1589 阅读 · 1 评论 -
使用gensim处理文本(1)语料库与词向量空间
1、概述目前有很多成型框架来进行自然语言处理,其中针对中文语料,使用jieba进行分词然后使用gensim进行词向量处理是一个不错的选择。将文本变换成向量是自然语言中非常重要的一个内容。因为文本是不能直接被计算机进行运算处理的。所以将文本转化为词向量是所有工作的第一步。2、将文本转化为向量将文本转化为向量的方式有很多种,在本章中主要使用统计学的词向量转化。在进行中文的处理时需要提前进行分词,有时候...原创 2018-05-17 17:36:25 · 5316 阅读 · 0 评论