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

如何对多维样本进行KS检验

对于形状为 ( 10000 , 1 , 304 ) (10000, 1, 304) (10000,1,304)的三维数据,若需使用scipy.stats.ks_2samp进行KS检验,可按以下步骤处理:

  1. 数据降维
    KS检验要求输入为一维数组,需将三维数据展平或按特定维度聚合:
    • 方法1:沿最后一维展开

将每个样本的304个特征视为独立数据点(适用于特征独立场景):

import numpy as np
data_reshaped = original_data.reshape(-1)  # 形状变为(10000*1*304,)

• 方法2:按样本聚合

若需保留样本独立性,可对每个样本的304个特征计算统计量(如均值、最大值),生成一维数组:

data_aggregated = original_data.mean(axis=2).flatten()  # 形状(10000,)
  1. 分维度检验
    若需比较不同特征维度的分布差异,可逐维度进行KS检验:
from scipy import stats
results = []
for i in range(304):dim_data = original_data[:, 0, i]  # 提取第i个特征维度ks_result = stats.ks_2samp(dim_data, reference_data)  # 与参考数据比较results.append(ks_result)
  1. 注意事项
    • 数据连续性:KS检验适用于连续分布,离散数据需谨慎。

• 样本量:大样本易导致p值敏感,需结合效应量(如D值)判断实际差异。

• 缺失值:需提前处理NaN值,否则会报错。

  1. 替代方案
    若数据为多变量分布,可考虑:
    • 多变量KS检验(如基于距离的检验)。

• 单变量漂移检测方法(如Jensen-Shannon距离、海林格距离)。

如需进一步分析数据漂移或模型性能,建议结合可视化(如CDF曲线)辅助判断。

在这里插入图片描述

相关文章:

  • Nerfstudio 环境配置与自有数据集(图片和视频)测试全方位全流程实战【2025最新版!!】
  • Linux 权限管理
  • 【浙江大学DeepSeek公开课】DeepSeek的本地化部署与AI通识教育之未来
  • x86架构-k8s设置openebs的hostpath作为默认存储类的部署记录
  • LeetCode每日一题4.29
  • 省科学技术奖申报答辩PPT设计制作美化
  • 信息检索系统的组成部分和基本架构
  • 4月29日日记
  • jenkins slave节点打包报错Failed to create a temp file on
  • AI国学智慧语录视频,条条视频10W+播放量
  • 数据处理方式 之 对数变换 和Box-Cox变换以及对应逆变换【深度学习】
  • Vue2+Vue3学习笔记
  • 什么是Amazon S3
  • 农村供水智能化远程监控解决方案
  • php学习笔记(全面且适合新手)
  • 接入层架构演变
  • Android ProcessState init
  • 初中九年级学生体测准考证照片采集软件使用说明
  • Keras模型保存、加载介绍
  • JavaScript函数声明大比拼
  • 复星医药换帅:陈玉卿接棒吴以芳任董事长,吴以芳改任复星国际执行总裁
  • 电话费被私改成48元套餐长达数年,投诉后移动公司退补600元话费
  • 一周人物|卡鲁等入围英国特纳奖,李学明新展中国美术馆
  • “90后”樊鑫履新乌兰察布市察右中旗副旗长人选
  • 吕国范任河南省人民政府副省长
  • 金融创新破局记:中小微企业转型背后的金融力量