AI机器学习-Logistic Regression实例
代码实现:
# 导入库
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, classification_report
# 加载鸢尾花数据集
iris = load_iris()
X = iris.data # 特征
y = iris.target # 标签
# 只选择两个类别进行二分类 (setosa 和 versicolor)
X = X[y != 2] # 排除掉类别 ‘virginica’
y = y[y != 2] # 只保留 ‘setosa’ 和 ‘versicolor’
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 创建 Logistic Regression 模型
log_reg = LogisticRegression(solver=’liblinear’) # 使用 ‘liblinear’ 求解器,适合小型数据集
# 训练模型
log_reg.fit(X_train, y_train)
# 进行预测
y_pred = log_reg.predict(X_test)
# 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f”Logistic Regression 模型的准确率: {accuracy:.2f}”)
# 打印分类报告
report = classification_report(y_test, y_pred, target_names=iris.target_names[:2])
print(“分类报告:\n”, report)
代码说明:
数据集加载:
使用 load_iris() 函数加载鸢尾花数据集,数据集包含 150 个样本,4 个特征和 3 个类别。
为了演示 Logistic Regression,只选择两个类别进行二分类(setosa 和 versicolor),剔除第三个类别 virginica。
数据集划分:
使用 train_test_split 将数据集划分为训练集(80%)和测试集(20%)。
创建 Logistic Regression 模型:
LogisticRegression 是 scikit-learn 提供的逻辑回归模型。
solver=’liblinear’:由于鸢尾花数据集较小,使用 liblinear 求解器进行训练。
训练和预测:
使用 fit 方法训练模型。
使用 predict 方法对测试集进行预测。
模型评估:
使用 accuracy_score 计算模型的准确率。
使用 classification_report 打印分类报告,包括精确度(Precision)、召回率(Recall)、F1 分数等指标。
结果:
输出将显示模型的准确率以及分类报告,例如:
Logistic Regression 模型的准确率: 1.00
分类报告:
precision recall f1-score support
setosa 1.00 1.00 1.00 10
versicolor 1.00 1.00 1.00 10
accuracy 1.00 20
macro avg 1.00 1.00 1.00 20
weighted avg 1.00 1.00 1.00 20
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
7. 本站有不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别!
66源码网 » AI机器学习-Logistic Regression实例