逻辑回归之大学生录取预测8.22

该博客介绍了如何运用逻辑回归模型预测大学生录取情况。首先,根据gpa和gra成绩建立模型,通过训练数据确定参数。接着,使用predict_proba预测录取概率,并利用Logistic_model.predict得出具体录取结果。在模型评估部分,作者提到了精确度、正负例验证、ROC曲线分析和交叉验证等方法,以确保模型的准确性和可靠性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

任务要求:

根据数据集中大学生的两次考试成绩(gpa,gra)预测大学生能否被美国大学录取(admit=1表示录取,否则为不录取)。

大致思路:

(1)建立模型采用sklearn中的逻辑回归模型,先进行数据训练,得出模型参数之后,再预测一下不同考试成绩的学生能否被录取

(2)评估模型:在模型评估中可以分别验证正例和负例的效果、测试ROC指标、交叉验证等等。其中交叉验证可以直接调用sklearn的库。

代码详解:

读入数据,因为数据没有列名,所以添加上列名,从数据可看到,分越高越可能被录取

import pandas as pd
import matplotlib.pyplot as plt
columns = ["gpa", "gre", "admit"]
admissions = pd.read_csv("C:\Anaconda\machine-leaning-data\grade-admit\grade-admit.txt",names=columns)
plt.scatter(admissions["gpa"], admissions["admit"])
plt.show()

sigmoid函数写法:在逻辑回归中,是通过sigmoid函数并确定一个阈值来预测学生有没有被录取,通过sigmoid函数将模型的得分值,映射到【0,1】,将得分值映射为概率值,概率值一般小于0.5的就是没有录取,大于0.5就是录取

#sigmoid函数
import numpy as np
#Logit Function
def logit(x):
    return np.exp(x)/(1+np.exp(x))  #sigmod函数,将模型的得分值,映射到[0,1]区间内 ,分值转换为概率值,按照概率来判断该学生能否被录取
x=np.linspace(-6,6,50,dtype=float)  #从x轴中取出了从-6到6的50个样本点,对应y轴的映射是float类型的
y=logit(x)#调用函数 
#画图看看sigmod函数的图像和效果
plt.plot(x,y)
plt.ylabel("Probalility")
plt.show()

 用逻辑回归模型训练数据,通过训练gpa和admit 找出内在关系,并用predict_proba预测录取的可能性.#predict_proba 这个函数是预测概率的,值是一个概率,而不是0/1这样确定的值.

from sklearn.linear_model import LogisticRegression
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值