目录: 1. 前提 2. attention (1)为什么使用attention (2)attention的定义以及四种相似度计算方式 (3)attention类型(scaled dot-product attention \ multi-head attention) 3. self-attention (1)self-attention的计算 (2) self-attention如何并行 (3) self-attention的计算总结 (4) self-attention的类型(multi-…
转自知乎上看到的一篇很棒的文章:用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总结下文本分类领域特别是应用深度学习解决文本分类的相关的思路.做法和部分实践的经验. 业务问题描述: 淘宝商品的一个典型的例子见下图,图中商品的标题是“夏装雪纺条纹短袖t恤女春半袖衣服夏天中长款大码胖mm显瘦上衣夏”.淘宝网后台是通过树形的多层的类目体系管理商品的,覆盖…
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/36 本文地址:http://www.showmeai.tech/article-detail/242 声明:版权所有,转载请联系平台与作者并注明出处 收藏ShowMeAI查看更多精彩内容 本系列为斯坦福CS224n<自然语言处理与深度学习(Natural Language Processing with Deep Learning)>的全套学习笔记,对应的课程视频可以在 这里 查看…
一.BERT模型: 前提:Seq2Seq模型 前提:transformer模型 bert实战教程1 使用BERT生成句向量,BERT做文本分类.文本相似度计算 bert中文分类实践 用bert做中文命名实体识别 BERT相关资源 BERT相关论文.文章和代码资源汇总 1.WordEmbedding到BERT的发展过程: 预训练:先通过大量预料学习单词的embedding,在下游的NLP学习任务中就可以使用了. 下游任务:Frozen(预训练的底层参数embedding不变)和Fine-tunin…
分词(Tokenization) - NLP学习(1) N-grams模型.停顿词(stopwords)和标准化处理 - NLP学习(2) 文本向量化及词袋模型 - NLP学习(3-1) 在上一篇博文中,简单地阐述了如何将文本向量化及词袋模型的.文本向量化是为了将文本转换成机器学习算法可以直接处理的数字,直白点说就是这些转换后数字代表了文本的特征(此过程称之为特征提取或者特征编码),可以直接为机器学习模型所用.词袋模型(Bag-of-Words: BOW)则指的是统计单词在一个文本中出现的次数的…
分词(Tokenization) - NLP学习(1) N-grams模型.停顿词(stopwords)和标准化处理 - NLP学习(2)   之前我们都了解了如何对文本进行处理:(1)如用NLTK文本处理库将文本的句子成分分成了N-Gram模型,与此同时引入了正则表达式去除一些多余的句子成分:(2)将停顿词去除:(3)一些通用的标准化处理,如大小写.提取词干等.在这一节我们将看看如何对文本中的单词进行统计,并以此来查看一个单词在特定文档中或者整个文本集中的重要性.统计单词的任务是为了给特定的词…
原文链接: https://blog.csdn.net/qq_41058526/article/details/80578932 attention 总结 参考:注意力机制(Attention Mechanism)在自然语言处理中的应用 Attention函数的本质可以被描述为一个查询(query)到一系列(键key-值value)对的映射,如下图. 在计算attention时主要分为三步: 第一步是将query和每个key进行相似度计算得到权重,常用的相似度函数有点积,拼接,感知机等: 第二步…
https://zhuanlan.zhihu.com/p/25928551 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总结下文本分类领域特别是应用深度学习解决文本分类的相关的思路.做法和部分实践的经验. 业务问题描述: 淘宝商品的一个典型的例子见下图,图中商品的标题是“夏装雪纺条纹短袖t恤女春半袖衣服夏天中长款大码胖mm显瘦上衣夏”.淘宝网后台是通过树形的多层的类目体系管理商品的,覆盖叶子类目数量达上万个,商品量也是10亿量级,…
attention 以google神经机器翻译(NMT)为例 无attention: encoder-decoder在无attention机制时,由encoder将输入序列转化为最后一层输出state向量,再由state向量来循环输出序列每个字符. attention机制: 将整个序列的信息压缩在一维向量里造成信息丢失,并且考虑到输出的某个字符只与输入序列的某个或某几个相关,与其他输入字符不相关或相关性较弱,由此提出了attention机制.在encoder层将输入序列的每个字符output向量…
实战:https://github.com/jiangxinyang227/NLP-Project 一.简介: 1.传统的文本分类方法:[人工特征工程+浅层分类模型] (1)文本预处理: ①(中文) 文本分词 正向/逆向/双向最大匹配; 基于理解的句法和语义分析消歧: 基于统计的互信息/CRF方法: WordEmbedding + Bi-LSTM+CRF方法 去停用词:维护一个停用词表 (2)特征提取 特征选择的基本思路是根据某个评价指标独立的对原始特征项(词项)进行评分排序,从中选择得分最高的…
I. 正则表达式(regular expression) 正则表达式是专门处理文本字符串的正式语言(这个是基础中的基础,就不再详细叙述,不了解的可以看这里). ^(在字符前): 负选择,匹配除括号以外的字符.比如[^A-W]匹配所有非大写字符:[^e^]匹配所有e和^以外的字符 |:或者.比如a|b|c等价于[a-c] *:匹配大于等于0个符号前面的字符:+:匹配至少一个前面的字符:.:匹配所有单个字符:?:匹配0或1个前面的字符 \:转义符:将特殊字符转化为简单字符.比如.匹配所有字符,.匹配…
1. 什么是情感分析(别名:观点提取,主题分析,情感挖掘...) 应用: 1)正面VS负面的影评(影片分类问题) 2)产品/品牌评价: Google产品搜索 3)twitter情感预测股票市场行情/消费者信心 2. 目的 利用机器提取人们对某人或事物的态度,从而发现潜在的问题用于改进或预测. 这里我们所说的情感分析主要针对态度(attitude). 注:Scherer 情感状态类型主要可以分为: 情绪(emotion):有一定原因引发的同步反应.例如悲伤(sadness),快乐(joy) 心情(…
在上一节<Tokenization - NLP(1)>的学习中,我们主要学习了如何将一串字符串分割成单独的字符,并且形成一个词汇集(vocabulary),之后我们将形成的词汇集合转换成计算机可以处理的数字信息,以方便我们做进一步文本分析.这篇博客的主题还是我们如何将文本转成成更有用的成分,让我们能从文本当中提取到更多的信息以便作为特征输入到模型中训练,首先会介绍一下N-grams算法,之后会提到停顿词及英文文本常见的标准化处理手段,如大小写的改变.词干提取等(文章中的某些例子会涉及到正则表达…
自从开始使用Python做深度学习的相关项目时,大部分时候或者说基本都是在研究图像处理与分析方面,但是找工作反而碰到了很多关于自然语言处理(natural language processing: NLP)的问题,所以决定花点时间学习并且写下来,希望那些跟我一样同时在学习NLP的朋友能有一些帮助,学习过程中以英文为文本标准,后期会尝试用中文,并且将相关的信息补进来博客文章中.刚开始学习哪里讲得不好,多海涵并且欢迎指出. NLP的首要任务就是将文本内容做Tokenization(标识化)处理,也就…
[2016.7.5] 这是以前学习的时候整理的,放到博客里面,以后再有的话会更新~ 1.一个国外的学者维护的博客,介绍NLP [链接](http://nlpers.blogspot.jp/) 2.北京大学应用语言学的课程资料 <http://ccl.pku.edu.cn/all/info.asp?item=2&page=1&expand=6> 3.NLP/CL 专业的国际学术会议,提供免费NLP论文下载 <http://www.aclweb.org/aclwiki/ind…
前言 先来看一些demo,来一些直观的了解. 自然语言处理: 可以做中文分词,词性分析,文本摘要等,为后面的知识图谱做准备. http://xiaosi.trs.cn/demo/rs/demo 知识图谱: https://www.sogou.com/tupu/person.html?q=刘德华 还有2个实际应用的例子,加深对NLP的理解 九歌机器人: https://jiuge.thunlp.cn/ 微软对联机器人: http://duilian.msra.cn/ NLP概述: 自然语言处理,是…
前言: NLP工具有人推荐使用spacy,有人推荐使用tensorflow. tensorflow:中文译作:张量(超过3维的叫张量)详细资料参考:http://www.tensorfly.cn/ Jiagu:甲骨,语言处理工具,源码参考:https://github.com/ownthink/Jiagu jiagu的中文分词是基于 深度学习的方法的.看来甲骨的分词还是比较先进的.分词一般有3种,字典的,统计学的,深度学习的. 另:需要一点python知识,自行复习. 1. 环境准备  经过各种…
在了解什么是嵌入(embeddings)之前,我们需要先搞清楚一个词语在NLP中是如何被表示的 注:本次不涉及任何具体算法,只是单纯对概念的理解 词汇表征 One-Hot 词汇的表示方法有很多,最有名的肯定是独热编码(One-Hot )了.因为不是重点,所以下面只简单介绍一下 废话不多说,上图! 假设我们有10000个词,Man位于第5391个,Woman位于9853,如果想要唯一表示这些词怎么办? 我们可以根据词的总量创建一个n行一列的矩阵,在某个词出现的地方标注为1,其余都用0填充,这样就可…
最近思考了一下未来,结合老师的意见,还是决定挑一个方向开始研究了,虽然个人更喜欢鼓捣.深思熟虑后,结合自己的兴趣点,选择了NLP方向,感觉比纯粹的人工智能.大数据之类的方向有趣多了,个人还是不适合纯粹理论研究 :).发现图书馆一本语言处理方面的书也没有后,在京东找了一本书--<NLP汉语自然语言处理原理与实践>,到今天看了大约150页,发现还是很模糊,决定找点代码来看. 从最简单的分词开始,发现分词的库已经很多了,选择了比较轻巧的jieba来研究.看了一下GitHub的基本介绍,突然感觉:我次…
Stanford NLP课程简介 1. NLP应用例子 问答系统: IBM Watson 信息提取(information extraction) 情感分析 机器翻译 2. NLP应用当前进展 很成熟:垃圾邮件检测,词性标注(POS),实体名称识别(Named Entity Recognition, NER) => 课程后面会讲 相对成熟:情感分析,指代消解(coreference resolution),词义消歧,句子成分解析(parsing),机器翻译, 信息提取 => 后面课程会讲 依然…
Journals  ACM Transactions on Information Systems (TOIS) 影响因子 5.059(2006) IEEE Transactions on Knowledge and Data Engineering(TKDE),影响因子:2.063 Information Retrieval (KLUWER ACADEMIC PUBL),影响因子: 1.744 (2006) Information Processing & Management (IP&…
Deep Learning for NLP Deep Learning for NLP Lecture 2:Introduction to Teano enter link description here Neural Networks can be expressed as one long function of vector and matrix operations. (神经网络可以表示为一个向量和矩阵运算的长函数.) Common Frameworks(常用框架) C/C++ if…
一.自然语言处理概述 1)自然语言处理:利用计算机为工具,对书面实行或者口头形式进行各种各样的处理和加工的技术,是研究人与人交际中以及人与计算机交际中的演员问题的一门学科,是人工智能的主要内容. 2)自然语言处理是研究语言能力和语言应用的模型,建立计算机(算法)框架来实现这样的语言模型,并完善.评测.最终用于设计各种实用系统. 3)研究问题(主要): 信息检索 机器翻译 文档分类 问答系统 信息过滤 自动文摘 信息抽取 文本挖掘 舆情分析 机器写作 语音识别 自然语言的困难: 场景的困难:语言的…
什么是 token embedding? 输入一个word,在字典里查找得到它对应的下标就是token,然后用该数字下标去lookup表查找得到该词对应的词向量(词嵌入)就是embedding word2vec 2013年,Google开源了一款用于词向量计算的工具——word2vec.首先,word2vec可以在百万数量级的词典和上亿的数据集上进行高效地训练:其次,该工具得到的训练结果——词向量(word embedding),可以很好地度量词与词之间的相似性. 随着深度学习(Deep Lea…
一. 原理 哈弗曼树推导: https://www.cnblogs.com/peghoty/p/3857839.html 负采样推导: http://www.hankcs.com/nlp/word2vec.html https://github.com/kmkolasinski/deep-learning-notes/blob/master/seminars/2017-01-Word2Vec/slides.pdf https://blog.csdn.net/u014595019/article/…
一.简介: 1.概念:glove是一种无监督的Word representation方法. Count-based模型,如GloVe,本质上是对共现矩阵进行降维.首先,构建一个词汇的共现矩阵,每一行是一个word,每一列是context.共现矩阵就是计算每个word在每个context出现的频率.由于context是多种词汇的组合,其维度非常大,我们希望像network embedding一样,在context的维度上降维,学习word的低维表示.这一过程可以视为共现矩阵的重构问题,即recon…
前言: 前面我们已经能初步实现一个中文自然处理语言的模型了,但交互界面是命令行的,不太友好. 如果想做一个类似http://xiaosi.trs.cn/demo/rs/demo的界面,那就还需要继续往下处理. Django 由于Jiagu等使用了python语言,所以Web站点的实现,优先考虑到python的web框架. 而这里选择了还比较流行的Django. 教程参考: https://www.runoob.com/django/django-tutorial.html https://www…
概念 隐马尔可夫模型描述的是两个时序序列联合分布p(x,y)的概率模型,其中包含了两个序列: x序列外界可见(外界指的是观测者),称为观测序列(obsevation seuence) y序列外界不可见,称为状态序列( state sequence) 如观测x为单词,状态y为词性,我们需要根据单词序列去猜测它们的词性. 隐马尔可夫模型之所以称为"隐", 是因为从外界来看,状态序列(例如词性)隐藏不可见,是待求的因变量. 从这个角度来讲,人们也称状态为隐状态(hidden state ),…
数据集与词性标注 数据集是NLP中的重要一环. 但是提到数据集,很多人的第一个想法可能是:"这玩意从网上下载就好了,不用管". 真的不用管?最开始我也是这么认为的 于是我直奔CoNLL-2003去下载数据集.地址如下:https://www.clips.uantwerpen.be/conll2003/ner/ 但是经过了解,该数据集的来源是新闻报纸之类的内容,与我要应用NLP的领域严重不符. 所以,除非你的NLP任务与网络上已经公布的.较多人实现的任务重合,否则数据集一般不能直接使用…
I. 最小编辑距离的定义 最小编辑距离旨在定义两个字符串之间的相似度(word similarity).定义相似度可以用于拼写纠错,计算生物学上的序列比对,机器翻译,信息提取,语音识别等. 编辑距离就是指将一个字符串通过的包括插入(insertion),删除(deletion),替换(substitution)的编辑操作转变为另一个字符串所需的最少编辑次数.比如: 如果将编辑操作从字符放大到词,那就可以用于评估集齐翻译和语音识别的效果.比如: 还可以用于实体名称识别(named entity r…