07 - 逻辑回归

介绍

这里看到逻辑回归的名词,但是需要注意,它并不是和前面的回归一样为求一个确定的值;它其实是一个经典的二分类算法
机器学习算法选择:先逻辑回归再用复杂的,能简单还是用简单的
逻辑回归的决策边界:可以是非线性的

Sigmoid函数

完成的任务:由输入转变成概率;是一个分类任务
07 - 逻辑回归
07 - 逻辑回归

逻辑回归求解

07 - 逻辑回归
07 - 逻辑回归
07 - 逻辑回归

python实战

案例:建立一个逻辑回归模型来预测一个学生是否被大学录取。假设你是一个大学系的管理员,想根据两次考试的成果来决定每个申请人的录取机会。你有以前的申请的人的历史数据,可以用它作为逻辑回归的训练集。对于每一个培训例子,你有两个考试的申请人的分数和录取决定。为了做到这一点,建立一个分类模型,根据考试成绩估计入学概率
07 - 逻辑回归
07 - 逻辑回归
使用上面的代码就能够画出如下的散点图
07 - 逻辑回归
有了上面的这个图形之后,就需要构建模型了
目标:建立分类器
设定阈值,根据阈值判断录取结果
要完成的模块:
sigmoid:映射到概率的函数
model:返回预测结果值
cost:根据参数计算损失
gradient:计算每个参数的梯度方向
descent:进行参数更新
accuracy:计算精度

这里首先定义好一个sigmoid函数:
07 - 逻辑回归
对于上面的sigmoid函数,自变量的取值范围是任意实数,值域为[0,1],当z等于0的时候,值为0.5,当z的值趋近于负无穷的时候,值趋近于0,当z的值趋近于正无穷的的时候,值趋近于1
07 - 逻辑回归
在上面的计算中,传入的值是x和theta,在计算中使用到的是dot(就是进行矩阵的乘法),theta.T表示就是theta的转置。并且在最后return的时候交给了sigmoid函数进行数据的整合