机器学习2-简单的二分类问题

需求:

假设现在需要对数据 进行二分类 ,小于0.5的,打上0的标记 ,大于0.5的,打上1的标记,怎么做

分析:

这是一个简单的二分类 问题,使用逻辑回归模型。

代码:

python 复制代码
# 导入所需的库,如需安装:pip install scikit-learn matplotlib
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, confusion_matrix

# 创建一个随机的二分类数据集
np.random.seed(42)
X = np.random.rand(100, 1)
print("X:\n", X)
y = (X > 0.5).astype(int)

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
print("X_train:\n", X_train)

# 创建并训练逻辑回归模型
model = LogisticRegression()
model.fit(X_train, y_train)

# 预测测试集
y_pred = model.predict(X_test)

# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f'Accuracy: {accuracy}')

# 可视化决策边界
plt.scatter(X, y, color='blue', marker='o', label='Class 0')
plt.scatter(X_test, y_test, color='red', marker='x', label='Test Data')
plt.xlabel('Feature')
plt.ylabel('Class')
plt.legend()
plt.title('Logistic Regression Decision Boundary')
plt.axhline(0.5, color='green', linestyle='--', linewidth=2, label='Decision Boundary')
plt.show()

运行结果:

如图可见Test Data的标记都是正确的

执行下来的准确率

Accuracy: 1.0

结论: 模型预测使用测试集 (X_test) 进行预测,得到预测值 y_pred,都满足预期

相关推荐
马常旭文化传媒网几秒前
上海冷链配送新篇章 华鼎冷链科技以卓越服务餐饮品牌
大数据·人工智能
我还记得那天6 分钟前
50 选择结构
开发语言·python
追蜻蜓追累了20 分钟前
灰狼优化算法(GWO)与门控循环单元(GRU)结合的预测模型(GWO-GRU)及其Python和MATLAB实现
深度学习·神经网络·机器学习·gru·启发式算法·推荐算法·回归算法
远洋之帆20 分钟前
电机物理数学建模
人工智能·数学建模·汽车·能源
懒大王爱吃狼24 分钟前
python游戏开发之五子棋游戏制作
开发语言·python·学习·游戏·pandas·pygame
准橙驾考28 分钟前
哈萨克语驾考学习软件求推荐?
人工智能·学习·自动驾驶·汽车
ApacheSeaTunnel31 分钟前
中电信翼康济世数据中台基于Apache SeaTunnel构建数据集成平台经验分享
人工智能·医疗·数据集成·seatunnel·中国电信
为我喧哗33 分钟前
Python Sklearn库SVM算法应用
python·算法·支持向量机
123坤34 分钟前
IP 地址处理模块IPy
python
嫦娥妹妹等等我38 分钟前
OpenCV 图像处理 轮廓检测基本原理
图像处理·人工智能·opencv