深度学习知识点
- 深度学习
- 1. 激活函数有哪些
- 2. 激活函数有什么作用
- 3.几种常见的激活函数,以及什么场景下用什么激活函数
- 4. 损失函数有哪些
- 4. 损失函数有什么作用
- 5. 深度学习中常用的优化器有哪些?
- 6. L1,L2正则化的区别,岭回归是L1正则化还是L2正则化?
- 7. 模型提速的方法有哪些?
- 8. 对比学习是什么?
- 9. 交叉熵与最大似然函数的联系和区别
- 10. Tensorflow是什么?
- . 张量是什么?
- 11. TensorFlow Architecture的三个工作组件是什么?
- 12. 使用TensorFlow进行部署的流程是什么?
- TensorFlow常用到的函数操作有哪些?
- 10. Pytorch是什么?
- 10. Tensorflow和Pytorch的区别
- 什么是抽象层?
- 反向传播是什么?
- 批次,随机和微型批次梯度下降之间有何区别?
- 余弦相似度算法是什么?
深度学习
对深度学习模型相关的知识点进行总结。
深度学习是一种机器学习模型,是一种基于神经网络的学习方法。
它的核心基础是通过构建多层神经网络来学习数据的表示和特征,这些神经网络由多个神经元组成,每个神经元都可以对输入数据进行非线性变换。
通过将这些神经元连接在一起,深度学习模型可以学习到数据的复杂结构和特征。从而实现对数据的分类、预测和生成等任务。
深度学习的优点是可以自动学习数据的特征和表示,不需要人工设计特征提取器,因此可以处理大规模的数据和复杂的任务。同时,深度学习模型具有很强的泛化能力,可以在不同的数据集上进行迁移学习。
深度学习的核心技术包括神经网络、反向传播算法、激活函数、优化算法等。
- 其中,神经网络是深度学习的基础,它由多个神经元组成,可以对输入数据进行非线性变换。
- 反向传播算法是深度学习的核心算法,它用于更新神经网络的权重,从而实现对数据的学习。
- 激活函数用于对神经元的输出进行非线性变换,从而增加模型的表达能力。
- 优化算法用于优化模型的参数,从而提高模型的性能。
1. 激活函数有哪些
- 一一一一一一一一一一一一一一一一一一一一一一一
1. sigmoid函数: - 应用场景:多分类问题
- 作为激活函数将词向量映射成标签的概率值
- 它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类!(0,1)的值,而这些值的累和为1(满足概率的性质),那么我们就可以将它理解成概率,在最后选取输出结点的时候,我们就可以选取概率最大(也就是值对应最大的)结点,作为我们的预测目标
2. ReLu函数: - 如果输入值为负,如果输入值为正,则返回输入值为本身,结构简单,提高神经网络整体效率,缓解梯度消失,
- 缺点:输入小于0时,ReLu函数恒为0,神经元无法学习,Leaky ReLu函数可以觉得这个问题,当输入值小于0时,函数输出0.01倍的输入值,神经元仍然有微小的梯度
2. 激活函数有什么作用
一个神经元是否应该被激活取决于激活函数。激活函数计算加权和,并进一步加上偏差以得出结果。神经网络基于感知器,因此,如果我们想了解神经网络的工作原理,则必须学习感知器的工作原理。
它的作用是将神经元的输入转换为输出,从而使神经元能够对输入数据进行分类或预测。
为了确定神经网络的输出,我们使用激活函数。它的主要任务是对结果值在0到1或-1到1等之间进行映射。激活函数基本上分为两种类型:
线性激活功能
非线性激活函数
在选择激活函数时,需要考虑以下几个问题和模型的特点:
- 数据分布:不同的数据分布可能需要不同的激活函数。例如,当数据分布呈现出双峰分布时,Sigmoid 函数可能是一个更好的选择,因为它可以将输入值映射到 0 到 1 之间,从而更好地表示二分类问题的输出。
- 模型复杂度:不同的激活函数可能会对模型的复杂度产生影响。例如,ReLU 函数具有计算简单、速度快、不容易出现梯度消失等优点,因此在深度学习模型中经常使用。
- 梯度消失问题:在深度学习模型中,梯度消失问题是一个常见的问题。一些激活函数,如 Sigmoid 函数,在负半轴上的梯度消失速度较快,可能会导致模型训练困难。因此,在选择激活函数时,需要考虑梯度消失问题。
- 模型的表达能力:不同的激活函数可能会对模型的表达能力产生影响。例如,ReLU 函数可以使模型具有更强的表达能力,从而更好地处理复杂的问题。
总之,在选择激活函数时,需要考虑数据分布、模型复杂度、梯度消失问题和模型的表达能力等因素。同时,需要根据具体问题和模型的特点来选择合适的激活函数,以获得更好的模型性能。
3.几种常见的激活函数,以及什么场景下用什么激活函数
激活函数是神经网络中非常重要的组成部分,它的作用是对神经元的输出进行非线性变换,从而增强神经网络的表达能力。常见的激活函数包括:
1. Sigmoid 函数
:常用于二分类问题,因为它可以将输入值映射到 0 到 1 之间,从而可以表示二分类问题的输出。
2. Tanh 函数
:常用于回归问题,因为它可以将输入值映射到-1 到 1 之间,从而可以表示回归问题的输出。
3. ReLU 函数
:常用于深度学习模型,因为它具有计算简单、速度快、不容易出现梯度消失等优点。
4. Leaky ReLU 函数
:常用于深度学习模型,因为它可以解决 ReLU 函数在负半轴上的梯度消失问题。
5. Softmax 函数
:常用于多分类问题,用于将一个数值向量转换为表示各个类别概率的向量。它的输出是一个数值向量,其中每个元素都表示输入向量属于某个类别的概率。 因为它可以将输入向量转换为表示各个类别的概率分布,从而方便后续的分类决策。
4. 损失函数有哪些
- 一一一一一一一一一一一一一一一一一一一一一一一
1.loss
: - 应用场景:回归问题
- 只要预测值和标签值不相等或者差距大于阈值,loss+=1
- 直接对应分类判断错误的个数,属于非凸函数
2. abs loss(绝对值损失): - 计算预测值与目标值的差的绝对值。
3. Mean Absolute Error(MAE)L1范数: - 应用场景:一般用于回归问题
- 在绝对值损失的基础上算平均值。
4. square loss(平方损失): - 应用场景:分类问题和回归问题都可以,经常应用于回归问题
- 预测和标签对应,然后求差的平方,累加起来就是平方损失
5. Mean Squared Error(MSE,均方差损失): - 应用场景:一般用于回归问题
- 预测和标签一一对应。在平方损失的基础上算了个平均值。
6. hinge loss(合页损失函数): - 应用场景:N分类问题
- loss输入:模型输入一个N维向量为分类结果,针对这个向量计算loss.(这个N维向量一般是一个全连接层(线性层)的输出,是模型对于每个类别的打分。)不仅要分类正确,而且确信度要足够高。
- 向量的每个分量和正确分类的分量比较,如果差的不多甚至超过(说明有混淆),则在loss中反映出来。