一. 损失函数
1. 基本概念
为了评估现有的模型的好坏,需要一个定量指标。这就是损失函数起作用之处。
对于由
N
N
个样本组成的数据集,定义总体损失函数为各个样本造成的损失的平均
2. SVM
的损失函数
多分类的支持向量损失函数可定义如下:
即当正确分类的得分比错误类别的得分高出一个安全边际1的时候,认为没有损失。
这个损失函数最大值为无穷大,最小值为 0 0 。当初始化时,所有分类得分大致相同,损失函数约为。当正确分类的得分稍微变化时,由于安全边际的存在,损失函数大致不变。
3. 正则化
在上述场景下,如果我们找到一个使损失函数为 0 0 的,那么 2W 2 W 也会使损失函数为0。那么如何选择参数呢?一个准则是参数越简单越好,采用的做法是添加正则项限制模型复杂度。
4. SoftMax
分类器(多类别逻辑回归)
不预测得分,预测每个类别的概率。需要保证输出非负,且求和归一化,即SoftMax
操作。
此时期望正确类别的概率接近于1。在这种场景下,可采用交叉熵作为损失函数:
当初始化时,所有分类的概率值大致相同,此时损失函数约为 logC log C 。
与SVM
损失函数的对比:在SVM
损失函数优化问题中,当找到一个足够小的损失值的时候,算法将不再进行优化,即不再扩大错误分类与正确分类的边际。但在逻辑回归损失函数情形中,算法将持续优化至正确分类的概率足够接近于
1
1
<script type="math/tex" id="MathJax-Element-14">1</script>。
二. 优化算法
采用的优化方法就是梯度下降法。
在实践中,可使用梯度的数值计算方法校验代码的正确性。
如果数据集过于庞大,用所有数据计算梯度的复杂度就很高,因此将数据集划分为小块,针对每一小块计算梯度,这就是随机梯度法。
三. 图像特征提取

经过特征提取后,一些图像可能就比较容易区分。
获取图像特征的方法有:
- 直方图。
- 方向梯度直方图。
- 词频方法:类比于自然语言处理中的方法,对图像分小块,然后进行聚类,以聚出的类别为码本,对图像进行编码。
- 使用卷积神经网络,则在分类过程中会自动提取图像特征。
一些有用的链接
- 梯度下降法可视化,需科学上网。
SVM
的优化过程可视化。