携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第46天,点击查看活动详情
按照任务的种类,将任务分为回归任务和分类任务。区别:输入变量与输出变量均为连续变量的预测问题是回归问题,输出变量为有限个离散变量的预测问题成为分类问题
逻辑回归
逻辑回归是一个用于二分类(binary classification)的算法,是用回归的办法来做分类。
用y^表示实际值等于1的机率的话, 应该在0到1之间。在逻辑回归中,我们的输出应该是等于线性函数式子(wx+b)作为自变量的sigmoid函数中,公式如上图最下面所示,将线性函数转换为非线性函数。
如果z非常大那么sigmod函数会接近1,如果z非常小那么sigmod函数会接近0,因此当你实现逻辑回归时,你的工作就是去让机器学习参数w以及b这样才使得y^成为对y=1这一情况的概率的一个很好的估计(
y只有0和1两种情况,y^才是0~1之间的连续值)。
逻辑回归的输出函数:
损失函数
损失函数(又叫做误差函数,loss function),用来衡量算法的运行情况(输出值和实际值有多接近)。
一般我们用预测值和实际值的平方差或者它们平方差的一半,但是通常在逻辑回归中我们不这么做,因为当我们在学习逻辑回归参数的时候,会发现我们的优化目标不是凸优化,只能找到多个局部最优值,梯度下降法很可能找不到全局最优值,虽然平方差是一个不错的损失函数,但是我们在逻辑回归模型中会定义另外一个损失函数。
代价函数
为了训练逻辑回归模型的参数w和参数b,我们需要一个代价函数(也叫成本函数,cost function),通过训练代价函数来得到参数w和参数b。
损失函数是在单个训练样本中定义的,它衡量的是算法在单个训练样本中表现如何,为了衡量算法在全部训练样本上的表现如何,我们需要定义一个算法的代价函数,算法的代价函数是对m个样本的损失函数求和然后除以m: 损失函数只适用于像这样的单个训练样本,而代价函数是参数的总代价,所以在训练逻辑回归模型时候,我们需要找到合适的w和b,来让代价函数J的总代价降到最低。