机器学习入门文档深度页
X、y 与数据形状
X 的行对应样本、列对应特征,y 的第 i 项必须与 X 的第 i 行保持配对。
学习前需要掌握
背景与问题
形状错误、样本标签错位和把单样本降成一维,是传统机器学习最常见的接口与语义错误。
概念定义
sklearn 表格输入通常为 X.shape=(n_samples,n_features),分类/回归目标常为 y.shape=(n_samples,)。
直观理解
X 是题目表,每行一道题;y 是答案列,行号必须一一对应。
核心原理
任何筛选、打乱和划分都必须对 X 与 y 使用相同索引;单条预测也通常保留二维形状 (1,d)。
数学表达
核心表达
任何筛选、打乱和划分都必须对 X 与 y 使用相同索引;单条预测也通常保留二维形状 (1,d)。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1打印 X/y shape
- 2验证第一维相等
- 3随机检查样本标签对应
- 4划分时同时传入 X/y
代码对应位置
示例 1X、y 与数据形状:最小可验证示例:把正文原理映射为可检查的代码行为。
计算与实现步骤
- 1
打印 X/y shape
- 2
验证第一维相等
- 3
随机检查样本标签对应
- 4
划分时同时传入 X/y
- 5
预测单条时保留二维
代码实现
示例 1
X、y 与数据形状:最小可验证示例
X、y 与数据形状:最小可验证示例
NumPy
example_01.py用途:把正文原理映射为可检查的代码行为。
import numpy as np
X = np.arange(12).reshape(3, 4)
y = np.array([0, 1, 0])
assert X.shape[0] == y.shape[0]
print(X[1], y[1])
print(X[1:2].shape)代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
把正文原理映射为可检查的代码行为。
X- 完整特征矩阵,每行一个样本、每列一个特征。
y- 目标标签或连续目标值。
Step 1 · 1–6 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
import numpy as np
X = np.arange(12).reshape(3, 4)
y = np.array([0, 1, 0])
assert X.shape[0] == y.shape[0]
print(X[1], y[1])
print(X[1:2].shape)预期输出或运行结果
打印第二条样本与标签,单条切片形状为 (1,4)。
常见错误 · 3 条
- 分别打乱 X 和 y
- 用 X[i] 代替需要二维的 X[i:i+1]
- 确认样本轴、特征轴以及 X 与 y 的第一维完全对应。
实际应用
- sklearn 输入检查
- 批量预测
常见错误
分别打乱 X 和 y
用 X[i] 代替需要二维的 X[i:i+1]
文档来源
00|机器学习导论原始文档
学习资料/learning_tech/00_introduction.md- §4 数据在程序中的形式
推荐学习资料
数据集B 级
UCI Machine Learning Repository
提供分类、回归、聚类等任务常用的公开数据集和字段说明。
UC Irvine · UCI