You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

K近邻(k nearest Neighbors)预测函数测试失败排查求助

问题排查:数组索引越界错误

代码截图

predict函数本身运行正常,模型整体成功率达75%,但编写测试用例验证它是否能返回正确结果(1)时,触发如下错误:

outcomes = np.append(outcomes, y_train[n]) IndexError: index 160 is out of bounds for axis 0 with size 3

错误核心原因

你尝试用索引160访问仅包含3个元素的y_train数组,超出了数组的有效索引范围(有效索引为0、1、2)。

排查方向

  • 检查测试用例中n的取值逻辑:是否误将测试样本的索引直接套用在y_train上?比如测试用例里的样本序号是160,但y_train只有3个元素,必然导致越界。
  • 核对predict函数的参数传递:测试场景下传入的参数是否让函数内部错误引用了y_train的错误索引?比如函数内的n来自外部测试用例的索引值,但未做范围校验。
  • 确认y_train的定义:测试环境中的y_train是否被意外重新赋值为长度为3的数组?是否和模型训练时使用的y_train不是同一对象?

内容的提问来源于stack exchange,提问作者hels

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 03:50:17