软件开发工程师修炼中|

【随笔-论文记录】比较算法之间的性能是否有显著性差异的T检验实现(Python)

在科研实验当中,经常会碰见审稿人要求证明算法间确实有统计学上的差异,而不单纯是肉眼所见的差别,这个时候就可以考虑使用T检验了,Python非常方便,有可以直接调用的包,首先给出代码:

import numpy
import scipy
from scipy.stats import ttest_rel

def t_test(d1,d2):
    # print(stats.levene(d1,d2))#如果返回结果的P值远大于0.05,那么我们认为两总体具有方差齐性
    #否则,需要加上参数equal_var并设定为False
    print("Null Hypothesis: mean(d1) = mean(d2), α= 0.05")
    ttest,pval = ttest_rel(d1,d2)
    if pval < 0.05:
        print("Reject the Null Hypothesis.") #表示有显著性差异
    else:
        print("Accept the Null Hypothesis.")

其中d1和d2的格式是list,记录多次实验结果,通常我们使用的是平均值作为算法的结果,T检验就要求记录求得平均值的每次数据

本文作者:无涯清酒

本文链接:https://www.cnblogs.com/wuyawine/p/15911421.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   无涯清酒  阅读(428)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起