plot_significance¶
- plot_significance(scores, labels, alpha=0.1, lower_better=False, test='wilcoxon', correction='holm', fontsize=12, reverse=True, return_p_values=False)[source]¶
类似于CDDs的图表,但允许存在团可能具有欺骗性的情况。
这是对统计测试结果的可视化表示,用于比较不同分类器的性能。该图基于Demsar的工作[1]。图中显示了每个分类器的平均排名和每种方法的平均得分。图中还显示了彼此之间没有显著差异的分类器群体。与CDDs的主要区别在于,该图允许群体可能具有欺骗性的情况,即存在一个方法与该群体的其余部分有显著差异的间隙。在CDDs中,当方法之间存在显著差异时,群体停止。在该图中,群体继续到方法列表的末尾,显示出具有显著差异的方法的间隙。
- Parameters:
- scoresnp.array
形状为 (n_datasets, n_estimators) 的数组,表示每个数据集中每个估计器的性能。
- labelslist of str
长度为n_estimators的列表,包含每个估计器的名称。
- alphafloat, default=0.1
统计检验中使用的显著性水平。
- lower_betterbool, default=False
较低的分数是否比高的分数更好。
- teststr, default=”wilcoxon”
使用的统计测试。可用的测试有“nemenyi”和“wilcoxon”。
- correctionstr, default=”holm”
应用于p值的校正。可用的校正方法有“bonferroni”、“holm”和None。
- fontsizeint, default=12
图中文本的字体大小。
- reversebool, default=True
是否反转标签的顺序。
- return_p_valuesbool, default=False
是否返回p值的成对矩阵。
- Returns:
- figmatplotlib.figure
图表已创建。
- axmatplotlib.axes
图形的坐标轴。
- p_valuesnp.ndarray (optional)
如果 return_p_values 为 True,则返回一个 (n_estimators, n_estimators) 矩阵,其中包含成对 Wilcoxon 符号秩检验的未调整 p 值。
参考文献
[1]Demsar J., “在多数据集上对分类器进行统计比较。”
机器学习研究期刊 7:1-30, 2006.
示例
>>> from aeon.visualisation import plot_significance >>> from aeon.benchmarking.results_loaders import get_estimator_results_as_array >>> methods = ["IT", "WEASEL-Dilation", "HIVECOTE2", "FreshPRINCE"] >>> results = get_estimator_results_as_array(estimators=methods) >>> plot = plot_significance(results[0], methods, alpha=0.1) >>> plot.show() >>> plot.savefig("significance_plot.pdf", bbox_inches="tight")