
深度学习
文章平均质量分 60
深度学习
YJ语
这个作者很懒,什么都没留下…
展开
-
nlp情感分析
如果相对一个评论信息进行打分,你该如何操作?正常的情况下,使用训练的模型对评论进行打分,不仅需要进行建模、打标签、模型的调优,这是一件很繁琐的事情!这里记录两个方法,一是直接调用SnowNLP库,二是调用百度的接口一:直接调用SnowNLP库(因为该模型使用的是买菜市场的评论信息,进行打分时存在一定误差)from snownlp import SnowNLPimport pandas as pd# 读取文件df = pd.read_excel('评论.xlsx')# 数..原创 2021-10-04 21:04:38 · 454 阅读 · 0 评论 -
CNN中各结构的闪光点(巧妙构思!)
1 传统的神经网络模型中,使用多个线性模型+非线性的激活函数,使神经网络极富变化线,可以有效拟合数据的分布情况,但是也容易造成过拟合。2 卷积(主要是卷积核)标准卷积结构反卷积(使用在图像分割中)空洞卷积(使用空洞——扩大感受野)深度分离卷积(使用1*1的结构,极大减少了参数,使用模型可以训练的更快,有效嵌入!)1 池化平均池化,最大池化——》可以凸显有效特征的重要性,同时减少了参数全连接引用了大大的权重矩阵,以及非线性的激活函数结构...原创 2021-08-04 13:37:23 · 146 阅读 · 0 评论 -
深度学习中的规范化(BN、LN等四种规范化)
这篇文章介绍深度学习四种主流的规范化, 分别是Batch Normalization(BN[9]), Layer Normalization(LN[7]), Instance Normalization(IN[8])以及Group Normalization(GN[2])。 1. 作用 为啥用Normalization? 这是因为训练深度神经网络会收敛很慢,很有可能发生梯度弥散或者梯度爆炸。用了Normalization可以训练得很快,学习更好。 2. 做法 给定输入xx则是BN层的可学..原创 2021-08-03 19:45:37 · 1187 阅读 · 0 评论 -
批梯度下降 和 随机梯度下降 ???
批梯度下降:计算完所有的样本后,根据所有样本所计算出来的损失——》更新权重矩阵!随机梯度下降:每计算一个样本,对应就有一个损失,根据这个损失——》更新权重矩阵!两者的区别:批梯度下降在下一轮迭代才能使用本次迭代的更新值,随机梯度下降本次迭代中当前样本使用的值可能就是上一个样本更新的值。由于随机性可以带来很多好处,比如有利于避免局部最优解,所以现在大多倾向于使用随机梯度下降进行更新。...原创 2021-07-07 23:31:20 · 112 阅读 · 0 评论 -
由One Hot 到 Embedding
1 One-hotOne-hot 编码是一种最普通常见的表示离散数据的表示,首先我们计算出需要表示的离散或类别变量的总个数 N,然后对于每个变量,我们就可以用 N-1 个 0 和单个 1 组成的 vector 来表示每个类别。这样做有两个很明显的缺点:对于具有非常多类型的类别变量,变换后的向量维数过于巨大,且过于稀疏。映射之间完全独立,并不能表示出不同类别之间的关系。因此,考虑到这两个问题,表示类别变量的理想解决方案则是我们是否可以通过较少的维度表示出每个类别,并且还可以一定的表现出不同类别变量原创 2021-06-22 10:20:17 · 1185 阅读 · 0 评论 -
RNN!不要!不要!
1 RNN的结构1.1 基础结构示意核心就是:下一个的输入蕴含了上一个输出的信息符号说明:a^<0>等表示的激活值(是一个一维的向量,存储的是前面词的相关信息)x^<1>等表示的是词向量(是对应字典的one-Hot形成的一维向量)y^<1>等是预测输出(也是一维的向量,表示这词是否是人名的一部分)具体的流程: (以仅使用前面词的信息为例)——》要使用后面词的信息,就双向循环神经网络(BRNN)首先初始化激活向量a^<0>然后对输入的激活向原创 2021-06-16 16:15:28 · 565 阅读 · 5 评论 -
我说CNN你别跑!
文章目录1.0 CNN的整体结构2.0 CNN基本的结构2.1 卷积2.2 池化2.3 全连接3.0 CNN经典模型3.1 LeNet-5 的网络结构3.2 残差网络(ResNets)3.3 Inception 神经网络1.0 CNN的整体结构注意点:第一,池化层和最大池化层没有参数;第二卷积层的参数相对较少(权重共享);第三许多参数都存在于神经网络的全连接层。2.0 CNN基本的结构2.1 卷积意义实际是通过 卷积核的权重(权重共享) 实现 图片的边缘检测 (垂直/水平)二维卷积原创 2021-06-04 14:49:11 · 170 阅读 · 2 评论 -
DNN的前世今生
文章目录1.0 起源2.0 参数求解3.0 DNN中的一些优化3.1 优化算法(神经网络运行得更快)3.2 激活函数3.2.1 tanh3.2.2 relu(默认)3.2.3 Leaky Relu3.2.4 sigmoid3.2.5 softmax3.3 梯度消失和梯度爆炸3.3.1 原因3.3.2 发现3.3.3 解决3.3.3.1 解决方案一(梯度剪切、正则)3.3.3.2 解决方案二(改变激活函数)3.3.3.3 解决方案三(batchnorm)3.3.3.4 解决方案四(残差结构)3.3.3.5 解原创 2021-06-02 10:53:35 · 653 阅读 · 0 评论 -
sigmoid、 tanh、 tanh、 tanh比较
由上篇文章,我们知道逻辑回归是怎么过渡到神经网络的了总的来说就一句话——多个逻辑回归模型,前后堆积形成了神经网络!我引用吴承恩中的一张图,稍微的回顾以下这个过程对于这张图,它的过程是这样的:输入1个样本(含3个特征),分别到4个逻辑回归中(中间那一列的4个圈圈)对于样本的输入,逻辑回归模型分别通过y = wx + b后将y值通过Sigmoid函数映射到01区间内,那么这里就有4个输出的01概率对于上面输出的4个概率再输入到最后一个逻辑回归模型中,再通过y = wx + b后将y值通过Sigm原创 2021-05-27 08:01:47 · 1367 阅读 · 0 评论 -
为什么要使用非线性的激活函数?
为什么要使用非线性的激活函数?难道线性的就不可以?如果你是用线性激活函数或者叫恒等激励函数,那么神经网络只是把输入线性组合再输出。对于有很多层、很多隐藏层的神经网络,很多隐藏层。事实证明,如果你使用线性激活函数或者没有使用一个激活函数,那么无论你的神经网络有多少层一直在做的只是计算线性函数,所以不如直接去掉全部隐藏层。我们以下面这简单的深度学习图简单理解下:在这里我们考虑一个问题——就是输入x1、x2、x3、x4后,对于Sigmoid输出的结果是一样的?我认为这里是不一样的原因主要由以下两个方原创 2021-05-26 20:18:53 · 609 阅读 · 0 评论 -
由逻辑回归到神经网络
至此,我们已经比较透彻的理解了逻辑回归模型假设函数图片(也就是用于预测类别的函数)。纯从计算顺序上来说,逻辑回归预测类别的顺序即:输入样本X与模型参数图片作内积,结果记为z将中间结果z输入到Sigmoid函数,输出为0到1之间的一个数,a(在前两文中已经证明了这个a即其中一个类的后验概率)然后,小夕要将上面的过程画出来。这里假设输入的样本X是4维的,即图片,因此模型参数图片也是4维,即图片。为了方便,本文中忽略偏置项b的问题啦,自行脑补上。然后,blingling释放小仙女的仙气~如原创 2021-05-26 10:14:05 · 633 阅读 · 1 评论