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")