写在前面的话:从今天开始,更新Leetcode算法题的同时,对学习过的经典机器学习算法做一个回顾与总结,以发博文的方式作为一个记录与学习笔记。
1.逻辑回归的模型函数:
其中:
可以看到,逻辑回归的x值是嵌套在一个值在[0~1]之间的函数中,一般来说,当y>0.5的时候,z被归类为真(True)或者阳性(positive),否则当y<=0.5时,z被归类为假(False)或阴性(Negative)。
所以,在模型输出预测结果时,不必输出具体y的值,而是根据上述判断标准来输出1(真)或0(假)。
2.模型的损失函数
训练逻辑回归函数,我们已知了样本点(x,y),我们的目的是求出一组参数。
模型函数y=1表示样本点为阳性,故而我们可以得到:
对于这个二项分布,我们有:
对于m个数据,有:
为了方便计算,取负对数得到:
3.采用梯度下降法进行优化损失函数:
求导及推导结果如下:
向量化后得到:
其中,h是sigmoid函数。