学习人工智能快半年了,从ML到DL,又忘了前面的知识,于是在此总结一下在机器学习中常用的损失函数和导函数,以便以后复习。文中内容仅为笔者总结,仅供大家参考,其中若有错误请大家批评指正。
在机器学习问题中,主要可分为回归和分类两大问题。
一、回归问题
回归问题主要关注的是一个唯一的因变量(需要预测的值)和一个或多个数值型的自变量(预测变量)之间的关系。
需要预测的值:即目标变量、target、y
预测变量:即影响目标变量的因素,X1…Xn
也就是说我们需要得到一个模型,利用预测变量去得到预测值,再与真实值对比去评估模型的好坏。与真实值对比一般用误差来表示:即预测值与真实值的差值。
我们通常将一个使得整体误差最小的模型叫做最优解,而整体误差通常叫做损失Loss。
(1)线性回归的损失函数
线性回归的损失函数在此不做详细推导。直接给出为:
MSE:
当我们需要进行调参时使得Loss越小越好,即调theta的大小,就需要对theta进行求解。从损失函数的公式可知,Loss=0时说明模型为最优,因此theta的解析解可以通过求解得出。
二、分类问题
分类的本质就是找分界。
(1)逻辑回归的损失函数
逻辑回归不是一个回归的算法,而是一个分类的算法。因为逻辑回归算法是基于多元线性回归的算法,因此被称为线性的分类器。解决非线性问题可以使用多项式回归来进行升维。
逻辑回归的就是在多元线性回归基础上把结果缩放到0-1之间,而预测值越接近+1越是正例,越接近0越是负例。
逻辑回归的损失函数(交叉熵损失):
逻辑回归求解最优解模型,即对损失函数求导得:
(2)Softmax回归损失函数
Softmax回归是一种做多分类的算法。对应的公式为:
Softmax回归损失函数:
(3)SVM支持向量机
支持向量机本身是一个二元分类算法,是对感知器算法模型的一种扩展。SVM的损失函数就是合页损失加上正则化。
总的来说,在机器学习中常用的损失函数有均方差损失MSE,交叉熵损失Cross Entropy Loss,合页损失Hinge Loss。