Autograd
PyTorch的Autograd模块实现了深度学习的算法中的向传播求导数,在张量(Tensor类)上的所有操作,Autograd都能为他们自动提供微分,简化了手动计算导数的复杂过程(PS:Tensor(张量)和Variable(变量)是PyTorch的两个基本对象,其中,tensor不能反向传播,variable可以反向传播)
在0.4版本以前,PyTorch使用Variable类来自动计算所有梯度
Autograd过程解析
(自动求导)
方法用的是:Python的dir()函数,返回参数的属性、方法
Tip:1、Python中特殊方法(以__开头和结束的) 私有方法(以_开头的)
2、手动创建的、而非运算得到的变量,这些变量称为创建变量。 通过计算后得到的结果称为结果变量
残差神经网络(ResNet)
残差
估计值与实际值直接的差,如果存在一个映射f(x)=b,x=x0时,则b-f(x0)则为残差,x-x0为误差(数学概念)
初始残差
通过在网络中添加残差块来解决梯度消失问题的一种方法。
残差块
就是将输入数据通过一个恒等映射和非线性转换,再加上原始的输入数据。 用途:可以保持输入数据原有的信息,同时将非线性变换的影响降到最小,从而有效地解决梯度消失问题
恒等映射
f(a)=a,不对任何数据做出操作,直接输出原数据的映射。
于此的作用,解决梯度消失的问题(使用恒等映射代替权值)
借鉴高速网络(Highway Network)的跨层链接思想
梯度消失:
每一个乘数都是小于1的,长久下去,求出的梯度无限趋近于0,也就是梯度消失
向量数据库(Vector Database)也称矢量数据库,用途:存储与处理向量数据
图像、文本和音视频这种非结构化数据都可以通过某种变换或者嵌入学习转化为向量数据存储到向量数据库中,从而实现对图像、文本和音视频的相似性搜索和检索。这意味着您可以使用向量数据库根据语义或上下文含义查找最相似或相关的数据,而不是使用基于精确匹配或预定义标准查询数据库的传统方法