深度学习从刚开始的统治有监督学习,到(Transformer的注意力机制后的)统治无(自)监督学习,其表征学习能力远远超过传统机器学习。
本文从传统机器学习的学习任务种类角度来分析深度学习是如何统治有监督和无(自)监督学习的;此外,还将分析现在的各种生成式模型都基于哪些机器学习的学习规则 - alittlebear’s blog。
机器学习模型可以通过优化不同目标来达成不同的目的:
- 误差修正学习
- 竞争学习
- 赫布学习
- 玻尔兹曼学习
- 基于记忆的学习
现在主流的深度神经网络(CNN,Transformer)都是基于误差修正学习,最小化损失函数(激活函数和损失函数 - alittlebear’s blog)。
深度学习是如何统治所有机器学习的学习类型的 - alittlebear’s blog 这篇文章可以看到现在的深度学习是如何融合之前这五种学习规则,变为各方面的全能。
研究分类任务的逻辑回归时被线性回归迷惑到了,这个文章来区分一下。
Logit在数学和机器学习的常用定义不一样但想法是类似的。Logit和Logistic(Sigmoid的一种函数)也很容易搞混。Softmax和Sigmoid除了单纯的多维输出推广也有其他的影响。
Sigmoid和Softmax的区别,优缺点,细节,和定义可以参考:激活函数和损失函数。
激活函数(Activation function):ReLU,Sigmoid / Logistic(和输出层用到的输出概率分布的推广Softmax)
损失函数(Loss function):Euclidean Loss(均方误差),Cross-Entropy Loss(交叉熵),其他任务的常见损失函数
需要注意的是,对于传统机器学习,损失函数一般仅指单个数据点的损失,而上述均方误差和交叉商家均属于代价函数(cost function)。但,因numpy,PyTorch,TenserFlow这些矩阵化机器学习工具的流行,名为Loss的函数都接受矩阵、向量化输入,所以慢慢损失(loss)函数这个名字就取代了代价(cost)函数,这与强化学习中 reward 和 value 的混用类似(最大化 value / return 用 reward 替代,虽然这个混用危险很多)。
本文直接用损失函数代指代价函数。