Python实现画出使用分类器得到的决策边界

一位大四保研生分享了他在计算机视觉领域的研究生生涯准备过程,重点介绍了使用Python进行机器学习和深度学习的初步探索,包括数据生成、可视化及逻辑回归分类器的训练。

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

本人大四,保研生,研究生方向是计算机视觉,趁大四不忙学一下以后一定会用到Python以及机器学习、深度学习相关的知识。

#首先声明我是Python3.7版本
#第一步要做的是导入一些头文件
import importlib.util
import numpy as np
import struct
import sklearn
from sklearn import *
import matplotlib.pyplot as plt
from sklearn.datasets import make_moons

# 首先生成数据,并将其绘制出来 最后一句是用来绘制生成的数据集
np.random.seed(0)
X, y = sklearn.datasets.make_moons(200, noise=0.20)
plt.scatter(X[:, 0], X[:, 1], s=40, c=y, cmap=plt.cm.Spectral)
plt.show()

# 第二步 绘制决策边界
def plot_decision_boundary(pred_func):
    x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5
    y_min, y_max = X[:, 1].min() - .5, X[:, 1].max() + .5
    h = 0.01
    xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))

# 用预测函数预测一下
    Z = pred_func(np.c_[xx.ravel(), yy.ravel()])
    Z = Z.reshape(xx.shape)

# 然后画出图
    plt.contourf(xx, yy, Z, cmap=plt.cm.Spectral)
    plt.scatter(X[:, 0], X[:, 1], c=y, cmap=plt.cm.Spectral)

from sklearn.linear_model import LogisticRegressionCV

# 训练逻辑回归分类器
clf = sklearn.linear_model.LogisticRegressionCV()
clf.fit(X, y)

# 画一下决策边界
plot_decision_boundary(lambda x: clf.predict(x))
plt.title("Logistic Regression")
plt.show()

第一步执行完 生成的数据集

训练出的决策边界:

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值