当前位置: 首页 > news >正文

scikit-learn初探

KFold

k交叉验证,k-1个作为训练集,剩下的作为测试集

split

split(X, y=None, groups=None)

X: (n_samples, n_features)的矩阵,行数为n_samples,列数为n_features
y:(n_samples,)为列向量,表示监督学习中的目标变量
返回的是训练集的索引集,测试集的索引集

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.model_selection import KFoldX = np.array([[1, 2], [3, 4], [5, 6], [7, 8]])
print(X.shape)
y = np.array([1, 2, 3, 4])
print(y.shape)
kf = KFold(n_splits=2)
kf.get_n_splits(X)
print(kf)
for i, (train_index, test_index) in enumerate(kf.split(X, y)):print(f"Fold {i}:")print(f"  Train: index={train_index}")print(f"  Test:  index={test_index}")print(X[train_index], X[test_index])

输出为

(4, 2)
(4,)
KFold(n_splits=2, random_state=None, shuffle=False)
Fold 0:Train: index=[2 3]Test:  index=[0 1]
[[5 6][7 8]] [[1 2][3 4]]
Fold 1:Train: index=[0 1]Test:  index=[2 3]
[[1 2][3 4]] [[5 6][7 8]]

理解:X,y构成新的矩阵,在分解时,对这新的矩阵分解


http://www.mrgr.cn/news/99075.html

相关文章:

  • 2024年国考
  • 信息量、香农熵、交叉熵、KL散度总结
  • 运筹学之遗传算法
  • 【音视频】音视频FLV合成实战
  • 大模型微调项目实战(情绪对话模型-数据工程篇)
  • 论文阅读:2022 ACL TruthfulQA: Measuring How Models Mimic Human Falsehoods
  • Java Web 之 Tomcat 100问
  • 移动自动化测试-appium
  • Windows使用SonarQube时启动脚本自动关闭
  • leetcode 674. Longest Continuous Increasing Subsequence
  • Unity webgl 获取图片或视频数据
  • leetcode 300. Longest Increasing Subsequence
  • AI分析师
  • 爬虫入门学习
  • 计算机网络八股——HTTP协议与HTTPS协议
  • 杨校老师课堂之C++入门练习题梳理
  • 【刷题Day20】TCP和UDP(浅)
  • Ubuntu20.04下Docker方案实现多平台SDK编译
  • 信创开发:开启信息自主创新、国产替代新时代
  • pgsql中使用jsonb的mybatis-plus和Spring Data JPA的配置