写在前面
机器学习中的数据预处理步骤
机器学习中的简单线性回归步骤
机器学习中的多元线性回归步骤
什么是逻辑回归?
逻辑回归被用来处理不同的分类问题,这里的目的是预测当前被观察的对象属于哪个组。它会给你提供一个离散的输出结果。一个简单的例子就是判断一个人是否会在即将到来的选举中进行投票,是就是1类,否就是0类。
逻辑回归vs线性回归
逻辑回归给出离散的输出结果,然而线性回归给出的是连续的输出结果。
步骤1:数据预处理
导入所需库
![9d5b7a6700412fb94d9da9386c3199be.png](https://i-blog.csdnimg.cn/blog_migrate/7691484d7436062bd4e1b4f51ba4732c.jpeg)
导入数据集
![50672453423fd16d42f5bc5389bb1125.png](https://i-blog.csdnimg.cn/blog_migrate/12c6e7310b56853ed297ad4a3795b187.jpeg)
该数据集包含了社交网络中用户的信息。这些信息涉及用户ID,性别,年龄以及预估薪资。一家汽车公司刚刚推出了他们新型的豪华SUV,我们尝试预测哪些用户会购买这种全新SUV。并且在最后一列用来表示用户是否购买。我们将建立一种模型来预测用户是否购买这种SUV,该模型基于两个变量,分别是年龄和预计薪资。因此我们的特征矩阵将是这两列。我们尝试寻找用户年龄与预估薪资之间的某种相关性,以及他是否购买SUV的决定。
检查是否有缺失值
![bc416b0659b543d499166f7ecd446423.png](https://i-blog.csdnimg.cn/blog_migrate/68c2454877005aa61c75d40c98e66049.jpeg)
从上面检查来看,未发现缺失值,所以这里不用做缺失值处理操作。
将数据集分成训练集和测试集
![01506e0b248f8429c48e44d3f4215d8d.png](https://i-blog.csdnimg.cn/blog_migrate/e6758ca2c36d5d6a72caef1581ae222c.jpeg)
特征缩放
![b1076b022d6d79042c3513ab41d80ca1.png](https://i-blog.csdnimg.cn/blog_migrate/cd59206ce7c77e99e2f5bc86aa79b3be.jpeg)
上面 fit_transform 和 transform 运行结果一模一样不代表这两个函数可以互相替换,绝对不可以!transform 函数是一定可以替换为 fit_transform 函数的,fit_transform 函数不能替换为 transform 函数。
- fit_transform: 用于训练集
- transform: 用于测试集
具体的区别可以去这里看看:
https://www.cnblogs.com/keye/p/8875128.html
步骤2:逻辑回归模型
该项工作的库将会是一个线性模型库,之所以被称为线性是因为逻辑回归是一个线性分类器,这意味着我们在二维空间中,我们两类用户(购买和不购买)将被一条直线分割。
将逻辑回归应用于训练集
![e1c25364c45d6282eec56a9c50e961a1.png](https://i-blog.csdnimg.cn/blog_migrate/8f2906422020c9aaea6c94cfa9967304.jpeg)
步骤3:预测
预测测试集结果
![2ab22e173cfa566597210936afb6adc4.png](https://i-blog.csdnimg.cn/blog_migrate/a256d6fbac847ee72458449145f2e495.jpeg)
步骤4:评估预测
我们预测了测试集。 现在我们将评估逻辑回归模型是否正确的学习和理解。因此这个混淆矩阵将包含我们模型的正确和错误的预测。
生成混淆矩阵
![7d6c331ca092b3ca87d3cfe773cf520a.png](https://i-blog.csdnimg.cn/blog_migrate/57d04732189bdebb8d833ddef26c3738.jpeg)
看懂混淆矩阵
上面的结果可以用下图所示:
![4e4e8411f31cf4c7fae0f27c2e09186a.png](https://i-blog.csdnimg.cn/blog_migrate/920970c02736aa5e7bb17d3f22d101c0.jpeg)
从图中我们可以看出:
- 标签 0 的总数为:65 + 3 = 68 个,其中有 65 个被正确预测,有 3 个被错误的预测成 1 标签。
- 标签 1 的总数为:8 + 24 = 32 个,其中有 24 个被正确预测,有 8 个被错误的预测成 0 标签。
步骤5:可视化结果
如果下面的代码有看不懂的,记得去网上查查相关教程,这里主要是用到画等高线方面的函数。
定义可视化公共函数
![aa357b4fd33081f409cd13f6de0d3b8e.png](https://i-blog.csdnimg.cn/blog_migrate/b23785dea591cefe8e4d30a66a2fe342.jpeg)
可视化训练集结果
![ee4c39beb4f6ead4b84189df28909aac.png](https://i-blog.csdnimg.cn/blog_migrate/dded4971eb3afce277f0640528972d83.jpeg)
可视化测试集结果
![1f0dd6670997df0b449f6554e8ee7bcd.png](https://i-blog.csdnimg.cn/blog_migrate/53b9568deedd9f6a05aedf2082cf27d8.jpeg)