Logistic Regression模型,并计算训练集和验证集的AUC值。

代码如下:

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import roc_auc_score

# 读取数据
data = pd.read_csv('题目2训练数据.txt', header=None, delim_whitespace=True)

# 划分训练集和验证集
train_data, valid_data = train_test_split(data, test_size=0.2, random_state=42)

# 提取特征和标签
X_train = train_data.iloc[:, :-1]
y_train = train_data.iloc[:, -1]
X_valid = valid_data.iloc[:, :-1]
y_valid = valid_data.iloc[:, -1]

# 训练模型
model = LogisticRegression()
model.fit(X_train, y_train)

# 在验证集上评估模型
y_valid_pred = model.predict_proba(X_valid)[:, 1]
auc_valid = roc_auc_score(y_valid, y_valid_pred)
print('AUC on validation set:', auc_valid)

# 对测试集进行预测
test_data = pd.read_csv('题目2测试数据.txt', header=None, delim_whitespace=True)
y_test_pred = model.predict_proba(test_data)[:, 1]

# 将预测结果保存到文件中
with open('预测结果.txt', 'w') as f:
    for y in y_test_pred:
        f.write('{:.2f} '.format(y))

运行结果如下:

AUC on validation set: 0.7292964230432467

预测结果已保存到文件中

3、	编写代码使用Logistic Regression对训练数据题目2训练数据txt进行模型训练并针对测试数据题目2测试数据txt输出二分类结果结果用0-1之间的概率表示用空格进行分割分别计算在训练集和验证集训练数据后20的AUC值。 数据集说明:该数据集需要通过特征数据分析来预测二分类的结果。训练数据集中的二分类结果已经给出为最后一列。 数据集信息:本数据集用于估计信用卡的违约概率。其中训练数

原文地址: https://www.cveoy.top/t/topic/dXBS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录