当前位置: 首页 > 工具软件 > Ecache > 使用案例 >

SVM 代码解释:validEcacheList = nonzero(oS.eCache[:, 0].A)[0]

茹康裕
2023-12-01

机器学习实战之支持向量机完整版SMO代码解释

validEcacheList = nonzero(oS.eCache[:, 0].A)[0]

#构建一个非零列表,返回值是第一个非零E所对应的alpha值,而不是E本身

这是《机器学习实战》标准解释,但有两个疑问

1.“不是E本身”?

这与np.nonzero()用法有关,在二维数组中它返回的是非0值的行号和列号。代码[0]表示行号

2.“所对应的是alpha值”?

这与上一行代码有关中'i'有关

oS.eCache[i] = [1, Ei] ;

nonzero(oS.eCache[:, 0].A)[0]

这表明‘i’==行号==第一个alpha

 类似资料: