回归 好坏 机器学习_入门‘机器学习’之‘逻辑回归分类’

这篇博客介绍了机器学习中的逻辑回归分类,包括特征和标签的概念,训练数据与测试数据的用途,决策面的定义,正确率作为评估标准,以及逻辑回归算法的工作原理。还提供了Python实现逻辑回归的步骤,并探讨了分类与回归的区别。
摘要由CSDN通过智能技术生成

1f23bc368e949851b4b60b95ae296479.png

一、知识点

什么是特征和标签?

特征是数据的属性、特点

标签是对数据的(预测结果)评定

以某个人对歌曲的评价举例:

65d0363d8dd5ca341c8f16aff0623651.png

5aeb94396a42437687f6f39bfa80860c.png

训练数据和测试数据分别用来做什么?

一般做预测分析时,会将数据分为两大部分。一部分是训练数据(Test Data),用于构建模型,一部分是测试数据(Test Data),用于检验模型。但是,有时候模型的构建过程中也需要检验模型,辅助模型构建,所以会将训练数据在分为两个部分:1)训练数据;2)验证数据(Validation Data)。验证数据用于负责模型的构建。具体的是:

训练数据:用于模型构建;

验证数据:可选,用于辅助模型构建,可以重复使用;

测试数据:用于检测模型构建,此数据只在模型检验时使用,用于评估模型的准确率。绝对不允许用于模型构建过程,否则会导致过渡拟合。

通常从数据集中抽取80%的数据为训练数据,另外20%的数据为测试数据。

什么是决策面?

机器学习在解决分类问题时会定义一个决策面,决策面通常会位于不同类之间的某个位置上,当有新数据输入时,以决策面为边界,可以判断新数据属于哪个分类。

5248726c3c7eb56094ab80e2347e7575.png

如何判断分类结果的准确性?

通常使用正确率这个指标来衡量机器模型的好坏,正确率可以通过测试数据集得到,正确率是指给模型输入数据以后,模型预测的结果中,正确分类的数据个数占测试数据集中所有数据集的比率。

82b5300f255a543cdeafa50df7a081e4.png

什么是逻辑回归?

逻辑回归是一种分类算法,不是一种回归算法,确切地说,逻辑回归是一种二分分类算法

a7a5414a72d4455e1a3b4e9234a1dd79.png

使用线性回归无法解绝二分分类问题,如下图:

6803dda8c78486c853d26e3b3e2a310f.png

249c439e6c4be2f3badfddf7f26d47ac.png

逻辑回归的核心是逻辑函数

7c85586de9c8e6ab23b601f9657c7fff.png

上图中的参数z为回归函数

逻辑函数所表示的意思为:

31aa73da28cef87cd8ceb80ab3550852.png

在机器学习模型中,分类问题的本质是将训练数据的特征和标签转化为一个决策面,逻辑回归函数得到概率值之后,通过决策面将概率值映射到标签为0或1上,如果逻辑函数的道德概率值大于等于0.5,则标签为1;如果逻辑函数的道德概率值小于0.5,则标签为0

48bcd662f70c878049e3cbb938741208.png

如何用Python实现逻辑回归?

提取特征和标签

5918205f94f45e577cc1cfb23266c104.png

建立训练数据和测试数据

15c96fa66198e6cdb7f312821768eaa1.png

使用训练数据,建立训练模型

6741e33b4cabc850e1c4f6bfafecee13.png

评估模型准确率

8aec2c2409468fac15c29914680bcd5e.png

计算通过考试的概率

d2c280cbef6bfa6a80d124b5bc0b4fe8.png

逻辑函数的过程

153882998e19829666a8f470cec84db9.png

3种数据分类

7c5ab89d7578b7e305a44635e9a844b1.png

分类与回归的区别

5ad931af6766020e375c52e609b63f1f.png

知识点

a78b800e0555ba64e3dc8a8d9f49b5b9.png

二、逻辑回归分类案例实操

1. 建立数据集

b3e42bbd4aac5db6b3bc9df4f935b74e.png

2. 提取特征和标签

58fae064520c41e33cfeb2677d44185d.png

3. 绘制散点图

0ec362de82e7bcb91d9b3ed01d658dfc.png

4. 建立训练数据集和测试数据集

train_test_split是交叉验证中常用的函数,功能是从样本中随机的按比例选取训练数据(train)和测试数据(test)
第一个参数:所要划分的样本特征
第2个参数:所要划分的样本标签
train_size:训练数据占比,如果是整数的话就是样本的数量
sklearn包0.8版本以后,需要将之前的sklearn.cross_validation 换成sklearn.model_selection
所以课程中的代码from sklearn.cross_validation import train_test_split
更新为下面的代码from sklearn.model_selection import train_test_split

000215fe235a59037a57a163defeb409.png

d8f0fd655a67aeec70cfd47e54e36b6d.png

5. 训练模型(使用训练数据)

sklearn要求输入的特征必须是二维数组的类型,但是因为我们目前只有1个特征,所以需要用安装错误提示用reshape转行成二维数组的类型。

错误提示信息:Reshape your data either using array.reshape(-1, 1) if your data has a single feature

34f7f7abe6422fc62e1164236736c123.png

6. 模型评估(使用测试数据)

930a49f348eebbe8837c975f88045188.png

7. 进一步理解什么是逻辑函数

795b1c0cfb1ffcc7800ab28c0bdcff93.png

c4d060c71225adcf786451305a494c63.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值