任务:根据水位,判断水池是否需要蓄水或放水

蓄水池有这么一个规律,就是有个水位点,超过这个水位会进行放水,低于这个水位进行蓄水,当然这个水位值计算机是不知道的,我们也不会进行直接赋值,而是要计算机自己去判断其水位。

那么我们就给出训练数据
训练数据
水位为-1、-2、-3、-4、-5: 水不足,待蓄水(负样本)
水位为1、2、3、4、5: 水过量,待放水(正样本)
线性回归+逻辑判断进行分类预测的思考_线性回归
根据​​​分类任务的一些现实思考​​中的分类预测实现过程思考,把特征信息、数据类别、寻找关系三个步骤先罗列出来,然后根据任务判断其各代表什么。

特征信息
线性回归+逻辑判断进行分类预测的思考_分类_02
数据类别
线性回归+逻辑判断进行分类预测的思考_线性回归_03
寻找关系
线性回归+逻辑判断进行分类预测的思考_线性回归_04
找到了这个基础的关系后,然后根据y(test)=i,即预测结果去判断其所属的类别I

根据任务,其特征信息:水位数据;数据类别:待蓄水(0)、放水(1)
那么可以进行简化,因为其特征信息为一维数据
线性回归+逻辑判断进行分类预测的思考_线性回归_05
其测试结果就包含两种情况
线性回归+逻辑判断进行分类预测的思考_数据_06
我们再对数据进行进一步整理
线性回归+逻辑判断进行分类预测的思考_python_07
x则代表特征数据,右边的则代表的是标签结果y

尝试使用线性回归函数去代表x和y的关系,再看看预测的x、y的结果是否准确
线性回归+逻辑判断进行分类预测的思考_数据_08
假设Y=ax+b
训练后得到的模型为Y=0.1154+0.5

Y(x)就可以求解出来,如下表
线性回归+逻辑判断进行分类预测的思考_算法_09
根据得到的两个公式去判断
(1)
(2)
线性回归+逻辑判断进行分类预测的思考_python_11

比如,当x=1和当x=-1时代入Y的函数里面,得到的结果看是大于且0.5还是小于0.5,大于且等于0.5预测标签就为1,小于0.5预测标签就为0

经过一系列预测之后,我们把它放入到表格之中
线性回归+逻辑判断进行分类预测的思考_python_12
可以看出,和实际结果是完全一致的,准确率为100%,仅在[-6,6]之间

但是有一个问题,就是假如我加入了某一个样本,这个样本与其他样本的偏差比较大
线性回归+逻辑判断进行分类预测的思考_python_13
那么就会出现问题,有一个样本点预测是错误的

x=1是预测的值为0.49的,理论上是要大于0.5的,要进行放水操作,可是预测的结果是蓄水
线性回归+逻辑判断进行分类预测的思考_python_14
线性回归+逻辑判断数据样本复杂度增加,模型准确率下降明显

那么就需要去结合更适合分类场景的模型,即是逻辑回归