admin 发布的文章

决策树学习的算法通常是一个递归地选择最优特征,并根据该特征对训练数据进行分割,使得对各个子数据集有一个最好的分类的过程。

一、决策树

单树作为所有集成树的基数,主要有三种:
1.ID3 (分类树)
2.C4.5(分类树)
3.CART(回归树)




- 阅读剩余部分 -

一、概念区别

1. 均方差损失函数(MSE)

简单来说,均方误差(MSE)的含义是求一个batch中n个样本的n个输出与期望输出的差的平方的平均值

2. Cross-entropy(交叉熵损失函数)

交叉熵是用来评估当前训练得到的概率分布与真实分布的差异情况。它刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近。

为什么分类用交叉熵损失不用平分损失

1.交叉熵loss权重更新更快
    mse:梯度更新表达式包含激活函数的导数
    交叉熵:交叉熵损失函数关于输入权重的梯度表达式与预测值与真实值的误差成正比且不含激活函数的梯度
2.MSE是非凸优化问题而 Cross-entropy 是凸优化问题

可以总结为:
分类中为什么交叉熵损失函数比均方误差损失函数更常用?

答: 交叉熵损失函数关于输入权重的梯度表达式与预测值与真实值的误差成正比且不含激活函数的梯度,而均方误差损失函数关于输入权重的梯度表达式中则含有,由于常用的sigmoid/tanh等激活函数存在梯度饱和区,使得MSE对权重的梯度会很小,参数w调整的慢,训练也慢,而交叉熵损失函数则不会出现此问题,其参数w会根据误差调整,训练更快,效果更好。

详细原因参考下面的图:
请输入图片描述

参考:
1.https://blog.csdn.net/woshiliulei0/article/details/124710184
2.https://aitechtogether.com/article/15966.html

torch的乘积分两种

一、点乘

点乘都是broadcast的,可以用torch.mul(a, b)实现,也可以直接用*实现。
要求a,b有相同的维度

二、矩阵相乘

矩阵相乘有torch.mm和torch.matmul两个函数。其中前一个是针对二维矩阵,后一个是高维。当torch.mm用于大于二维时将报错。
a = [B,E]
b = [E,B]
c = torch.mm(a,b)
C 维度是[B,B]