遥感&机器学习入门实战教程|Sklearn案例⑬:数据集(datasets 模块)

在真实科研与工程中,强烈建议直接使用自己的遥感影像与标签数据,这样实验才具有实际意义。 不过,很多同学刚开始学习时可能没有准备好的数据集,可以借助 sklearn.datasets 里的内置与生成数据集功能来做练习。

往期内容和数据链接如下:

遥感&机器学习入门实战教程 数据集分享

🧩 datasets 模块能做什么?

sklearn.datasets 提供了三类常见功能:

  1. 内置小数据集:适合快速上手,常见有:

    • load_iris():鸢尾花分类

    • load_digits():手写数字(8×8 灰度图)

    • load_wine():红酒分类

    • load_breast_cancer():乳腺癌诊断

  2. 下载大型公开数据集(通过 fetch_ 前缀):

    • fetch_olivetti_faces():人脸数据

    • fetch_20newsgroups():新闻分类文本

    • fetch_openml():通用接口,可从 OpenML 平台拉取上百个公开数据集

  3. 生成模拟数据(适合调试算法):

    • make_classification():生成可控特征和类别的分类数据

    • make_blobs():聚类数据

    • make_moons()make_circles():非线性可分的二维玩具数据

💻 示例1:加载内置鸢尾花数据集

from sklearn.datasets import load_iris
import matplotlib.pyplot as plt

iris = load_iris()
X, y = iris.data, iris.target
print("数据形状:", X.shape)

# 简单可视化
plt.scatter(X[:,0], X[:,1], c=y, cmap="tab10")
plt.xlabel(iris.feature_names[0]); plt.ylabel(iris.feature_names[1])
plt.title("Iris 数据集前两维")
plt.show()

输出:四维特征(萼片/花瓣长宽),三类花(Setosa/Versicolor/Virginica)。

图片

💻 示例2:生成模拟分类数据

from sklearn.datasets import make_classification
import matplotlib.pyplot as plt

X, y = make_classification(
    n_samples=300, n_features=2, n_redundant=0, n_clusters_per_class=1,
    n_classes=3, random_state=42
)

plt.scatter(X[:,0], X[:,1], c=y, cmap="tab20", s=30)
plt.title("make_classification 生成的三类数据")
plt.show()

这样就能快速生成一个分类任务,适合调试 SVM、kNN 等分类器。

图片

💻 示例3:非线性分布数据

from sklearn.datasets import make_moons, make_circles
import matplotlib.pyplot as plt

X1, y1 = make_moons(n_samples=200, noise=0.2, random_state=42)
X2, y2 = make_circles(n_samples=200, noise=0.1, factor=0.5, random_state=42)

plt.figure(figsize=(8,3.5))
plt.subplot(1,2,1)
plt.scatter(X1[:,0], X1[:,1], c=y1, cmap="tab10")
plt.title("make_moons 月牙数据")

plt.subplot(1,2,2)
plt.scatter(X2[:,0], X2[:,1], c=y2, cmap="tab10")
plt.title("make_circles 圆环数据")
plt.show()

这类数据常用于展示 非线性分类器(如核SVM、神经网络)的优势。

图片

✅ 小结

  • sklearn.datasets 非常适合入门学习与算法调试,但不适合直接替代真实的遥感实验。

  • 在实际工作中,应该使用 Sentinel、Landsat、高分等真实遥感影像;而在教学、算法原型验证时,可以用 make_classification 或 make_moons 快速生成样例。

  • 建议同学们:用 datasets 快速练手,理解算法 → 再切换到真实遥感数据完成应用

欢迎大家关注下方公众号获取更多内容!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

遥感AI实战

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值