深度学习的杂七杂八

1. 神经网络的搭建原则

在学习和实践深度学习的时候,对于神经网络的搭建过程感觉蛮好奇的。现在主流的框架tensorflow、pytorch等都封了一系列底层模块,搭神经网络有点类似拼积木,embedding、Conv2d、LSTM、Linear组合起来加上各激活函数、在确定优化器、损失函数,就组了一个模型出来,那么在设计这个模型的时候是依据什么原则进行规划的呢?

一般我会在NLP分析里加上embedding(用预训练的词向量模型)、卷积(类似于提取n-grams信息)、max_pool(最大池化用的比较多,例如把(4,4)取最大值变成(2,2))、双向结构(正序、倒序提取上下文信息),在时间序列分析中加入循环结构(进行长期记忆),优化器一般就是adma,损失函数采用交叉熵之类,激活函数除了tanh之外常用的也用过了,过拟合就塞dropout,剩下的一些就瞎jb搭,看模型结果,再结合一些相关论文改改。

就挺懵的吧。

2. 基础知识

  • 梯度下降SGD:随机选择一个方向,向梯度下降最大的方向前进,直到最低点,已经不会手搓求导了ε=(´ο`*)))唉
    在这里插入图片描述

  • 优化器解释:基本是围绕梯度下降来搞,基于动量的、自适应的一些改进工作,比较nice的就是可以在训练中调整学习率的值
    https://blog.csdn.net/yzy_1996/article/details/84618536?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

  • 全连接层维度:一般是2的指数次幂(内存管理在字节(byte)级别上进行)或者最终分类数,但是LeNet5倒数第二个全连接层维度为84,因为位图在计算机中的大小是7*12
    在这里插入图片描述

  • softmax:输出各类别的概率,和为1,作为神经网络最后的输出。例如某个4分类问题,对于一条样本A,期望输出的概率为p=(1, 0, 0, 0),实际输出的概率为q=(0.6,0.1,0.1,0.2),那么交叉熵=-log0.6=0.51
    在这里插入图片描述

  • 输入层、隐藏层、输出层说明
    在这里插入图片描述

  • 自注意力层
    自注意力层的目的在于:对输入的一条句子中的向量,对每个单词的向量引入其它单词的向量编码,量化一条句子中的其它单词对该单词的影响,可以理解为一种加权求和的过程。该层将随机初始化三个重要的权重矩阵,WQ、Wk、W^V,分别与输入向量X相乘后得到查询向量、键向量、值向量。
    多头自注意力层:默认采用head=8,进行同一计算后,将Z_0,…, Z_7拼接起来,乘以矩阵W_0后输入前向传播中。

    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值