
神经网络
隔壁的NLP小哥
积跬步,至千里
展开
-
深度学习——梯度爆炸和梯度消失
深度学习——梯度爆炸和梯度消失1、梯度爆炸和梯度消失产生的原因1.1 梯度消失首先举一个简单的例子,假设一个5层的神经网络,其中包括一个输入层,一个输出层和三个隐藏层,其中每个隐藏层的只包含一个神经单元,如下图所示:现在,假设我们需要更新H1,我们需要求出损失函数对于H1的导数,根据链式法则,我们有下面的计算:∂L∂H1=∂L∂H3∂H3∂H2∂H2∂H1\frac{∂L}{∂H_1}...原创 2020-03-19 10:30:05 · 517 阅读 · 0 评论 -
NLP——Seq2Seq基本原理以及Attention改进
Seq2Seq基本原理与聊天机器人实践原创 2020-03-12 12:55:32 · 1007 阅读 · 0 评论 -
深度学习——正则化(二)
深度学习——正则化(二)在之前的文章中深度学习——正则化(一)中,我们简单的介绍了几种常见的正则化的策略。下面我继续介绍正则化的相关策略。1、 参数绑定与参数共享在我们之前的叙述中,我们讨论了通过对损失函数添加惩罚项,从而对参数进行约束或者惩罚,但是我们可以发现这种方式是针对相对固定的区域或者点。比如L2正则化中是对参数偏离0的固定值进行了惩罚。然而,我们对于模型参数的值有的时候会基于一定的...原创 2020-03-12 11:17:53 · 313 阅读 · 0 评论 -
深度学习——正则化(一)
深度学习——正则化(一)1 正则化的引入1.1 正则化的基本概念机器的学习的目标在真实的情况中性能最好,一般情况下,我们使用训练集来训练学习算法,并采用损失函数来度量模型的性能。我们将模型在测试集(一般认为是真实情况)的误差称为泛化误差。在训练集上的误差称为训练误差。根据机器学习的最终目标,我们想要的是泛化误差最小。在机器学习中,有很多的策略被设计用来减少泛化误差,这种策略统一称之为正则化。...原创 2020-03-11 23:31:21 · 1091 阅读 · 0 评论 -
深度学习——模型优化
深度学习——模型优化1、优化过程引入1.1 学习过程和优化过程的区别实际目标不同,学习算法的目标是通过降低损失函数L,从而提高模型在真实情况下的性能P。而优化算法的目标是如何更好的降低损失函数的值。计算目标不同,一般情况下,通过学习算法,我们的计算的是整个模型函数的最小值点。也就是说学习算法通常不会停止在局部值点,而是直接寻找最值点。但是这样容易引起过拟合。但是通过优化算法,其寻找的不一...原创 2020-03-11 14:47:16 · 1478 阅读 · 0 评论 -
知识表示——Word2Vector(二)
知识表示——Word2Vector(二)1、CBOW和Skip-gram的优化提出在之前的文章知识表示——Word2Vector(一)中,我们具体的介绍了Word2Vector中的CBOW模型和Skip-gram模型的基本原理。首先我们来回顾一下两个模型的基本结构:无论是CBOW还是Skip-Gram模型,在其结构的最后一步,都是一个全连接并softmax的操作,我们不妨提出这样的假设,...原创 2020-02-26 11:03:25 · 385 阅读 · 0 评论 -
深度学习——LSTM原理与公式推导
LTSM神经网络和对话机器人实践原创 2020-02-24 19:00:35 · 6908 阅读 · 0 评论 -
知识表示——Transformer模型解读(一)
知识表示——Bert模型解读原创 2020-02-24 00:45:37 · 2851 阅读 · 0 评论 -
深度学习——最常见的三种激活函数
深度学习——最常见的三种激活函数1 tanh激活函数1.1 函数原型tanh(x)=ex−e−xex+e−xtanh(x) = \frac{e^x-e^{-x}}{e^x+e^{-x}}tanh(x)=ex+e−xex−e−x1.2 函数图像1.3 函数导数tanh′(x)=1−tanh2(x)tanh'(x) = 1 - tanh^2(x)tanh′(x)=1−tanh2(x)...原创 2020-02-06 17:32:40 · 3595 阅读 · 0 评论 -
深度学习——基于Numpy实现GRUCell和GRU
深度学习——基于Numpy实现GRUCell和GRU原理文章链接:深度学习——循环神经网络GRU公式推导1. GRUCell单元构建#encoding=utf-8import numpy as npdef sigmoid(x): return 1/(1+np.exp(-x))def tanh(x): return (np.exp(x)-np.exp(-x))/(np.e...原创 2020-02-06 17:09:20 · 1734 阅读 · 0 评论 -
深度学习——循环神经网络GRU公式推导
深度学习——循环神经网络GRU公式推导0、注意在整篇的文章中,无论是输入的X向量,还是隐藏层得到的S向量,这些都是列向量1、从RNN到GRU在之前的文章中,我们具体推导了循环神经网络RNN的前向和反向传播过程,具体细节可以参考深度学习——循环神经网络RNN公式推导这篇文章。下面,我们开始介绍RNN的一个变形结构GRU神经网络。我们首先简单的回顾一下RNN神经网络的结构,以及一个RNN隐藏...原创 2020-02-06 12:07:03 · 5400 阅读 · 5 评论 -
深度学习——结构递归神经网络(Recursive NN)
结构递归神经网络(Recursive NN)与自编码器1、递归神经网络目前,递归神经网络一共包含两种,一种是时间递归神经网络(Recurrent NN),另外一种是结构性递归神经网络(Recursive NN)。1.1 神经网络处理变长序列对于常规的神经网络而言,其输入节点的长度往往都是固定的。例如下面的一个普通的前馈神经网络。(图片来源:https://image.baidu.com/...原创 2020-02-06 00:25:40 · 3513 阅读 · 1 评论 -
深度学习——反向传播(BP)算法
1、BP算法引入1.1 网络基本结构在之前的文章深度学习——神经网络前向传播与反向求导过程中,我们简单的构建了一个简单的神经网络,描述了其前向传播过程和反向求导的过程。之前的描述的网络结构十分简单,仅仅包含一层的输入层,一层的隐藏层和一层的输出层,并且输出层是一个标量的输出。通常情况下,一个完整的神经网络是要包含多层隐藏层的。下面,我们就具体来展示一下。上图是具有两层隐藏层的神经网络结构。...原创 2020-02-05 19:22:54 · 1413 阅读 · 0 评论 -
深度学习——损失函数与梯度推导
深度学习——误差计算与梯度推导1、均方误差(MSE)1.1 均方误差(MSE)概述均方误差是一种常见的损失函数,一般在回归问题中比较常见,其基本公式为:MSE=1C∑i=1L(yri−yi)2MSE=\frac{1}{C}∑_{i=1}^L(y_{ri}-y_i)^2MSE=C1i=1∑L(yri−yi)2其中,C是一个超参数,为了便于求导,一般情况下取C=2。yriy_{ri}...原创 2020-02-04 13:16:52 · 5138 阅读 · 1 评论 -
深度学习——循环神经网络RNN公式推导
深度学习——循环神经网络RNN公式推导1、循环神经网络引入1.1 从传统网络到循环网络对于传统的神经网络,在我们之前介绍的传统的神经网络中,主要包含输入层、隐藏层、输出层三个部分。其基本的图示如下:X表示输入层的向量,H表示隐藏层的向量,O表示输出层的向量。W表示从输入层到隐藏层的权重矩阵,V表示从隐藏层到输出层的权重矩阵。其中,每一层可以有多个神经元。每一层神经元的个数代表的是每一层的...原创 2020-02-03 10:49:20 · 6957 阅读 · 0 评论 -
深度学习——神经网络前向传播与反向求导过程
神经网络基础和反向传播(BP)算法1. 感知机算法1.1 单层感知机单层感知机:以不同的n个实数作为输入,计算这些实数的线性组合,与实现设定好的阈值进行比较,高于设定的阈值,输出1,否则输出-1(输出的结果可以根据实际进行设定) 。下面是一个单层感知机的图示。上图中,x1,x2,x3,x4是单层感知机的输入,w1,w2,w3,w4是输入在线性组合时候的权重。求和的过程为:∑i=04wix...原创 2020-02-01 00:27:20 · 2179 阅读 · 2 评论 -
Attention机制原理和应用(二)
Attention机制原理和应用(二)本文是接Attention机制原理和应用(一)的第二篇,这一次我们主要叙述的是Self-attention机制和Multi-Head Attention机制。一、上节回顾在之前的文章中,我们介绍了Soft-attention机制,Global-Attention机制和Local-Attention机制。了解了attention在本质上是一种注意力的聚焦机...原创 2019-12-15 14:07:30 · 523 阅读 · 0 评论 -
Attention机制原理总结和应用(一)
Attention机制原理总结和应用(一)1、attention机制的概述和常用attention类型注意力机制(attention)是借鉴于人类的视觉选择性的一种机制。这种机制通过对于全局的扫描,将人类的注意力着重分配在重点的区域。在计算机科学中,这种机制通过权重分配的方式进行实现。对于attention机制,常见的类型包括以下几种1. soft-attention机制 3. globa...原创 2019-12-11 18:35:57 · 1785 阅读 · 0 评论 -
图注意力机制神经网络基本原理和代码解读
图注意力神经网络基本原理和实现1、 图神经网络(GNN)综述1.1、图结构图是计算机中的一种数据结构,图的基本构成单元是顶点 和边。一个图是由多个顶点和多条边所构成的,对于图中的任意两个顶点,如果两个点之间的边是有方向的边,则称为有向图,如果边没有方向,则称为无向图。在现实生活中,无论是我们的社交网络和目前非常热门的知识图谱,其抽象的结构都是一个图结构。1.2 图神经网络(GNN)图神...原创 2019-12-07 20:43:06 · 12179 阅读 · 4 评论 -
神经网络基础-CNN网络
神经网络基础——CNN神经网络1、CNN概述1.1 导论CNN神经网络,即卷积神经网络, 其广泛应用于图像处理问题上和其他的一些问题上。我们下面从一张图像开始,对于一张图像而言,其是由多个像素所组成的,即图像可以看做是由像素点矩阵所构成的。我们将每一个像素看做是图像的一个特征,那么整个图像就是由这些特征矩阵所构成的。如果我们能够设计出一种神经网络,这种网络能够学习到图像的特征,那么我们就可...原创 2019-12-01 18:48:31 · 793 阅读 · 0 评论 -
Word2Vec基本原理和基本实践
Word2Vec基本原理和实践1、word2vec概述Word2Vec是一组模型,其中包含了CBOW模型和Skip-gram模型,相比于之前所提出的NNLM,它在很多方面进行了改进。大幅度提升了的速度和精度。在NNLM模型中,最费时的部分是隐藏层到输出层的权重计算。所以Word2vec模型取消了隐藏层的计算过程,改为了采用投影的形式。CBOW模型和Skip-gram模型没有采用语言模型的形式去...原创 2019-11-06 20:10:58 · 467 阅读 · 0 评论 -
神经网络语言模型基本原理和实践
神经网络语言模型(NNLM)和word2vec基本原理和实践1 文本向量化概述对于常规的文本,计算机是无法直接处理的,需要我们将文本数据转换成计算机可以进行处理的形式。在NLP领域,文本的向量化是一项十分重要和基础的工作。所谓的文本向量化,就是将文本表示成一系列能够表示文本语义的向量。在一般的文本中,能够被处理的最小单元都是词语。所以,大部分的文本向量化操作都是基于词语进行的,当然也存在句子向...原创 2019-11-05 20:20:28 · 935 阅读 · 0 评论 -
RNN基本原理以及基于Pytorch实践
RNN神经网络和基于Pytorch的实践 本文主要讲述了RNN循环神经网络的基本原理和利用pytorch进行序列生成的实践,原理的部分主要参考 https://blog.youkuaiyun.com/HappyRocking/article/details/83657993,实践的部分主要参考的 是《深度学习原理和Pytorch实战》。在这里向作者表示感谢。本文主要包含以下三个部分...原创 2019-11-02 12:58:02 · 5556 阅读 · 1 评论