基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

逻辑回归算法

虽然逻辑回归算法的名字中有回归二字,但是它却不是回归算法,它其实是分类算法。它通常是利用已知的自变量来预测一个离散型因变量的值。简单来说,它就是通过拟合一个逻辑函数来预测一个事件发生的概率。所以它预测的是一个概率值,自然它的输出值应该在0到1之间。要想实现输出值的范围在0到1,我们可以使用一个简单的函数来做到,这个函数就是sigmoid函数。

sigmoid函数

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

sigmoid函数图像

sigmoid函数如上图所示,我们可以看出它的值域在0~1之间。逻辑回归算法和Sigmod函数结合起来可以实现逻辑回归分类器,我们可以在每一个样本特征上都乘以一个回归系数,然后将所有的结果值相加,将总和代入Sigmoid函数,进而得到一个范围在0~1之间的数值。任何大于0.5的数据被分为y=1类,小于0.5被归为y=0类。

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

逻辑回归分类器

以上就是逻辑回归分类器的计算过程,我们来分析一下这个计算过程,我们输入样本x,然后样本特征xi乘以一个回归系数θj,我们将所有的结果进行相加,其实就是θ的转置*X,然后我们再将求和结果带入sigmoid函数中,最终的结果就是hθ(x)。如果hθ(x)大于0.5,那么这个样本我们就认为y=1,如果如果hθ(x)小于0.5,那么这个样本我们就认为y=0,这就是逻辑回归分类器的核心思想。

使用逻辑回归分类器完成癌症良性和恶性的判别

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

癌症病人样本

现在我们有一个如上所示的癌症病人的样本数据,其中O表示良性,而X表示恶性,现在我们的任务是通过逻辑回归分类算法学习出一条决策边界,从而将这两个样本给分开,当我们拥有这条决策边界之后,以后当再有新的样本的时候,我们就可以直接代入我们的模型中,就可以得出这个病人是良性还是恶性了。具体来说我们需要学习出如下所示的决策边界:

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

逻辑回归分类器的决策边界

我们可以看到这条蓝色的决策边界完成分开了两种不同的样本,我们的目的就是训练出这样的一条分类边界那么以后我们的模型就可以判断病人是否患有恶性肿瘤了,要想训练出这样的分类边界,我们可以使用逻辑回归的梯度下降算法

逻辑回归的梯度下降算法

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

分类边界方程

我们设我们的分类边界的方程如上所示,我们将这个分类边界带入到sigmoid函数中,我们就可以得出逻辑回归分类器的模型表示。

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

逻辑回归分类器的模型

当我们带入样本特征x1、x2的时候,如果hθ(x)的结果大于0.5,那么我们可以认为这个样本类别为y=1,如果hθ(x)的结果小于0.5,那么我们可以认为这个样本的类别为y=0。

现在模型已经有了,现在的问题是模型中存在未知的参数θ0、θ1和θ2,所以我们现在的任务是通过已知数据,从而训练出最好的参数θ,要想完成这个任务,我们需要使用梯度下降算法。

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

梯度下降算法

经过梯度下将算法之后,我们可以得出适合已经训练数据的最佳参数θ,假设最好的参数θ0=-3、θ1=1、θ2=1,那么此时我们的逻辑回归分类器的莫模型方程就是

基于机器学习逻辑回归算法完成癌症病人的肿瘤是否良性的判断

逻辑回归分类器的模型

有了这个模型之后,我们就可以带入未知的样本特征x1和x2,从而得出未知病人样本是否是恶性肿瘤,具体来说如果带入之后如果hθ(x)>0.5就是恶性,而hθ(x)<0.5就是良性,这就是逻辑回归算法在分类中的应用。

相关推荐