python逻辑回归验证集 python逻辑回归结果解读 您所在的位置:网站首页 ols估计法和迭代估计法的差异 python逻辑回归验证集 python逻辑回归结果解读

python逻辑回归验证集 python逻辑回归结果解读

2023-06-28 04:24| 来源: 网络整理| 查看: 265

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归验证集

本问包括以下内容:

逻辑回归分类与回归的区别小结一、逻辑回归

1.逻辑回归:虽然名字叫“回归”,但它实际上是解决分类问题的。本质上是一个“回归”模型,因为逻辑回归它将「样本的特征」与「发生的概率」联系起来,而概率其实是一个数值。"逻辑回归"可以理解成一个分类型的回归算法。

python逻辑回归验证集 python逻辑回归结果解读_数据_02

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归_03

0.5为阈值,当y;gt;0.5时标签为1,当y;lt;0.5时标签为0

2.代码实战逻辑回归

(1)建立一个逻辑回归的数据集

from collections import OrderedDict import pandas as pd #数据集 examDict={ '学习时间':[0.50,0.75,1.00,1.25,1.50,1.75,1.75,2.00,2.25,2.50, 2.75,3.00,3.25,3.50,4.00,4.25,4.50,4.75,5.00,5.50], '通过考试':[0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,1,1,1] } examOrderDict=OrderedDict(examDict) examDf=pd.DataFrame(examOrderDict) examDf.head()

python逻辑回归验证集 python逻辑回归结果解读_数据_04

(2)提取特征和标签

#特征features exam_X=examDf.loc[:,'学习时间'] #标签labes exam_y=examDf.loc[:,'通过考试']

绘制散点图:通过散点图看看两个变量的分布情况

import matplotlib.pyplot as plt #散点图 plt.scatter(exam_X, exam_y, color="b", label="exam data") #添加图标标签 plt.xlabel("Hours") plt.ylabel("Pass") #显示图像 plt.show()

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归验证集_05

(3)建立训练数据集和测试数据集

from sklearn.model_selection import train_test_split #建立训练数据和测试数据 X_train , X_test , y_train , y_test = train_test_split(exam_X , exam_y , train_size = .8) #输出数据大小 print('原始数据特征:',exam_X.shape , ',训练数据特征:', X_train.shape , ',测试数据特征:',X_test.shape ) print('原始数据标签:',exam_y.shape , '训练数据标签:', y_train.shape , '测试数据标签:' ,y_test.shape)

python逻辑回归验证集 python逻辑回归结果解读_python 逻辑回归_06

绘制训练数据和测试数据的散点图:

#绘制散点图 import matplotlib.pyplot as plt #散点图 plt.scatter(X_train, y_train, color="blue", label="train data") plt.scatter(X_test, y_test, color="red", label="test data") #添加图标标签 plt.legend(loc=2) plt.xlabel("Hours") plt.ylabel("Pass") #显示图像 plt.show()

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归_07

(4)用训练数据训练模型

因为只输入了一个特征,所以需要有reshape函数转化成reshape(-1,1)

#将训练数据特征转换成二维数组XX行*1列 X_train=X_train.values.reshape(-1,1) #将测试数据特征转换成二维数组行数*1列 X_test=X_test.values.reshape(-1,1) #第1步:导入逻辑回归 from sklearn.linear_model import LogisticRegression # 第2步:创建模型:逻辑回归 model = LogisticRegression() #第3步:训练模型 model.fit(X_train , y_train)

python逻辑回归验证集 python逻辑回归结果解读_数据_08

(5)模型评估

python逻辑回归验证集 python逻辑回归结果解读_逻辑回归 python_09

3.理解逻辑回归

(1)当学习时间为3hours,用模型预测通过考试的概率值

model.predict_proba([[3]])

第1个值是标签为0的概率值,第2个值是标签为1的概率值

python逻辑回归验证集 python逻辑回归结果解读_数据_10

预测考试是否会通过

pred=model.predict([[3]]) print(pred)

python逻辑回归验证集 python逻辑回归结果解读_逻辑回归 python_11

(2)参数:截距、斜率

#第1步:得到回归方程的z值 #回归方程:z= + x #截距 a=model.intercept_ #回归系数 b=model.coef_ x=3 z=a+b*x #第2步:将z值带入逻辑回归函数中,得到概率值 y_pred=1/(1+np.exp(-z)) print('预测的概率值:',y_pred)

python逻辑回归验证集 python逻辑回归结果解读_数据_12

二、分类与回归的区别

1.三中数据类型

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归验证集_13

2.分类与回归三大区别

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归_14

三、小结

python逻辑回归验证集 python逻辑回归结果解读_python逻辑回归验证集_15



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有