1. 语言模型 2. Attention Is All You Need(Transformer)算法原理解析 3. ELMo算法原理解析 4. OpenAI GPT算法原理解析 5. BERT算法原理解析 6. 从Encoder-Decoder(Seq2Seq)理解Attention的本质 1. 前言 注意力模型最近几年在深度学习各个领域被广泛使用,无论是图像处理.语音识别还是自然语言处理的各种不同类型的任务中,都很容易遇到注意力模型的身影.所以,了解注意力机制的工作原理对于关注深度学习技术发…
一.摘要种类 抽取式摘要 直接从原文中抽取一些句子组成摘要.本质上就是个排序问题,给每个句子打分,将高分句子摘出来,再做一些去冗余(方法是MMR)等.这种方式应用最广泛,因为比较简单.经典方法有LexRank和整数线性规划(ILP). LexRank是将文档中的每个句子都看作节点,句子之间的相似度看作节点之间的边的权重,构建一个graph:然后再计算每个节点的分数,这个打分的计算方式可以是度中心度(Degree centrality).PageRank中心度等(论文里说这两种计算方式其实效果没有…
完全图解RNN.RNN变体.Seq2Seq.Attention机制 本文主要是利用图片的形式,详细地介绍了经典的RNN.RNN几个重要变体,以及Seq2Seq模型.Attention机制.希望这篇文章能够提供一个全新的视角,帮助初学者更好地入门. 一.从单层网络谈起 在学习RNN之前,首先要了解一下最基本的单层网络,它的结构如图: 输入是x,经过变换Wx+b和激活函数f得到输出y.相信大家对这个已经非常熟悉了. 二.经典的RNN结构(N vs N) 在实际应用中,我们还会遇到很多序列形的数据:…
Seq2seq Seq2seq全名是Sequence-to-sequence,也就是从序列到序列的过程,是近年当红的模型之一.Seq2seq被广泛应用在机器翻译.聊天机器人甚至是图像生成文字等情境. seq2seq 是一个Encoder–Decoder 结构的网络,它的输入是一个序列,输出也是一个序列, Encoder 中将一个可变长度的信号序列变为固定长度的向量表达,Decoder 将这个固定长度的向量变成可变长度的目标的信号序列. 整个过程可以用下面这张图来诠释:…
要了解深度学习中的注意力模型,就不得不先谈Encoder-Decoder框架,因为目前大多数注意力模型附着在Encoder-Decoder框架下,当然,其实注意力模型可以看作一种通用的思想,本身并不依赖于特定框架,这点需要注意. Encoder-Decoder框架可以看作是一种深度学习领域的研究模式,应用场景异常广泛.图2是文本处理领域里常用的Encoder-Decoder框架最抽象的一种表示. 图2 抽象的文本处理领域的Encoder-Decoder框架 文本处理领域的Encoder-Deco…
Atitit 深入理解软件的本质 attilax总结 软件三原则"三次原则"是DRY原则和YAGNI原则的折 1.1.1. 软件的本质:抽象  1 1.2. 软件开发的过程就是不断抽象的过程 1)机器语言--> 汇编语言-->高级语言,这就是一个不断抽象的过程,1 1.3. 代码的抽象三原则_软件工程_酷勤网.htm1 1.4. "软件是存储.通信.UI(user interface)和业务逻辑的紧密结合体2 1.5. 在软件的生命周期中,较稳定的是存储和通信,最…
转载:http://blog.csdn.net/top_code/article/details/50901623 在上一篇文章中,我们使用Netty4本身自带的ObjectDecoder,ObjectEncoder来实现POJO对象的传输,但其使用的是Java内置的序列化,由于Java序列化的性能并不是很好,所以很多时候我们需要用其他高效的序列化方式,例如 protobuf,Hessian, Kryo,Jackson,fastjson等. 本文中Java序列化不是重点,对Java序列化不熟悉的…
package com.mxgraph.online; import java.util.Arrays; /** A very fast and memory efficient class to encode and decode to and from BASE64 in full accordance * with RFC 2045.<br><br> * On Windows XP sp1 with 1.4.2_04 and later ;), this encoder an…
转载:http://blog.csdn.net/top_code/article/details/50901623 在上一篇文章中,我们使用Netty4本身自带的ObjectDecoder,ObjectEncoder来实现POJO对象的传输,但其使用的是Java内置的序列化,由于Java序列化的性能并不是很好,所以很多时候我们需要用其他高效的序列化方式,例如 protobuf,Hessian, Kryo,Jackson,fastjson等. 本文中Java序列化不是重点,对Java序列化不熟悉的…
RNN RNN的发源: 单层的神经网络(只有一个细胞,f(wx+b),只有输入,没有输出和hidden state) 多个神经细胞(增加细胞个数和hidden state,hidden是f(wx+b),但是依然没有输出) 这里RNN同时和当前的输入有关系,并且是上一层的输出有关系. 初步的RNN(增加输出softmax(Wx+b),输出和hidden state的区别是对wx+b操作的函数不同) 备注多层的神经细胞和全连接层的区别: 全连接层只有:输入.输出和权重矩阵, 如下图. 初步的RNN和…