Shapelet分类器可视化工具

class ShapeletClassifierVisualizer(estimator)[source]

一个用于可视化拟合形状分类器结果的类。

Parameters:
estimatorobject

一个拟合的形状分类器。

方法

plot(id_shapelet[, ax, scatter_options, ...])

绘制形状值。

plot_distance_vector(id_shapelet, X[, ax, ...])

绘制其自身与X之间计算出的形状距离向量。

plot_on_X(id_shapelet, X[, ax, ...])

在时间序列X上绘制其最佳匹配的形状。

visualize_shapelets_one_class(X, y, class_id)

绘制 class_id 的最佳(或最差)n_shp 候选。

visualize_shapelets_one_class(X, y, class_id, best=True, n_shp=1, id_example_other=None, id_example_class=None, class_colors=('tab:green', 'tab:orange'), scatter_options={'alpha': 0.75, 'edgecolor': 'black', 'linewidths': 2, 's': 70, 'zorder': 1}, x_plot_options={'alpha': 0.9, 'linewidth': 4}, shp_plot_options={'alpha': 0.9, 'linestyle': '--', 'linewidth': 2}, dist_plot_options={'alpha': 0.9, 'linewidth': 3}, threshold_plot_options={'alpha': 0.9, 'color': 'purple', 'label': 'threshold', 'linewidth': 2}, boxplot_options={'boxprops': {'linewidth': 1.5}, 'flierprops': {'linewidth': 1.5}, 'meanline': True, 'meanprops': {'color': 'black', 'linewidth': 1.5}, 'medianprops': {'color': 'black', 'linewidth': 1.5}, 'patch_artist': True, 'showmeans': True, 'whiskerprops': {'linewidth': 1.5}, 'widths': 0.6}, figure_options={'dpi': 200, 'figsize': (20, 12), 'ncols': 3, 'nrows': 2}, rc_Params_options={'axes.labelsize': 15, 'axes.titlesize': 15, 'legend.fontsize': 14, 'xtick.labelsize': 13, 'ytick.labelsize': 13}, matplotlib_style='seaborn-v0_8')[source]

绘制类_id的n_shp个最佳(或最差)候选。

在两个随机样本上可视化最佳匹配,以及形状如何通过箱线图区分 (X,y)。

Parameters:
Xarray, shape=(n_samples, n_fetaures, n_timestamps)

一个时间序列数据集。可以是用于可视化训练结果的训练集,或者是用于可视化对未见样本的泛化能力的测试集。

yarray, shape=(n_samples)

时间序列数据集的真实类别。

class_idint

我们想要可视化的类的ID。将根据岭分类器中的特征系数选择该类的n_shp最佳形状。原始标签被提供给LabelEncoder,因此我们要求一个整数ID。

bestbool, optional

指定是否为某个类别返回最佳或最差的shapelet。 默认值为True,返回最佳的shapelet。

n_shpint, optional

要输出的图的数量,每个形状一个(即类_id的最佳形状的n_shp)。默认值为1。

id_example_otherint

用于其他类别样本的样本ID。如果为None,则从该类别中随机选择一个。

id_example_classint

用于class_id样本的样本ID。如果为None,则从该类别中随机选择一个。

scatter_optionsdict

传递给形状值散点图的选项字典。

x_plot_optionsdict

传递给时间序列值绘图的选项字典。

shp_plot_optionsdict

传递给形状值绘图的选项字典。

threshold_plot_optionsdict

传递给阈值线图的选项字典。

dist_plot_optionsdict

传递给距离向量值绘图的选项字典。

figure_optionsdict

传递给plt.figure的选项字典。

boxplot_optionsdict

传递给特征箱线图的选项字典。

rc_Params_options: dict

传递给plt.rcParams.update的选项字典。

matplotlib_style: str

要使用的Matplotlib样式。

Returns:
figureslist of matplotlib figure

每个选定的shapelets的结果图(大小为n_shp的列表)

plot_on_X(id_shapelet, X, ax=None, scatter_options={'alpha': 0.9, 'c': 'purple', 's': 40, 'zorder': 3}, line_options={'alpha': 0.9, 'linewidth': 2}, figure_options={'dpi': 100, 'figsize': (10, 5)}, rc_Params_options={'font.size': 22}, matplotlib_style='seaborn-v0_8')[source]

在时间序列X上绘制其最佳匹配的形状。

Parameters:
id_shapeletint

要绘制的shapelet的ID。

Xarray, shape=(n_features, n_timestamps)

输入时间序列

axmatplotlib axe

用于绘制图形的matplotlib轴。默认值为None,将创建一个大小为figsize的新图形。

scatter_optionsdict

传递给形状值散点图的选项字典。

line_optionsdict

传递给时间序列值绘图的选项字典。

figure_optionsdict

传递给plt.figure的选项字典。仅在ax为None时使用。

rc_Params_options: dict

传递给plt.rcParams.update的选项字典。仅在ax为None时使用。

matplotlib_style: str

使用的Matplotlib样式。仅在ax为None时使用。

Returns:
figmatplotlib figure

结果图显示了S在X上的最佳匹配。一个归一化的shapelet将被缩放以匹配X的尺度。

plot_distance_vector(id_shapelet, X, ax=None, show_legend=True, show_threshold=True, line_options={'alpha': 0.9, 'linewidth': 2}, threshold_options={'alpha': 0.9, 'color': 'purple', 'label': 'threshold', 'linewidth': 2}, figure_options={'dpi': 100, 'figsize': (10, 5)}, rc_Params_options={'font.size': 22}, matplotlib_style='seaborn-v0_8')[source]

绘制其自身与X之间计算出的形状距离向量。

Parameters:
id_shapeletint

要绘制的shapelet的ID。

Xarray, shape=(n_timestamps) or shape=(n_features, n_timestamps)

输入时间序列

axmatplotlib axe

用于绘制图形的matplotlib轴。默认值为None,将创建一个大小为figsize的新图形。

show_legendbool, optional

是否显示图例。默认为True

show_threshold: bool, optional

是否显示阈值(如果未设置为None)。默认为True。

threshold_plot_optionsdict

传递给阈值线图的选项字典。

dist_plot_optionsdict

传递给距离向量值绘图的选项字典。

figure_optionsdict

传递给plt.figure的选项字典。仅在ax为None时使用。

rc_Params_options: dict

传递给plt.rcParams.update的选项字典。仅在ax为None时使用。

matplotlib_style: str

使用的Matplotlib样式。仅在ax为None时使用。

Returns:
figmatplotlib figure

通过d(S,X)获得的距离向量的结果图

plot(id_shapelet, ax=None, scatter_options={'alpha': 0.75, 'edgecolor': 'black', 'linewidths': 2, 's': 70, 'zorder': 3}, line_options={'alpha': 0.9, 'linestyle': '--', 'linewidth': 2}, figure_options={'dpi': 100, 'figsize': (10, 5)}, rc_Params_options={'font.size': 22}, matplotlib_style='seaborn-v0_8', custom_title_string=None)[source]

绘制形状值。

Parameters:
id_shapeletint

要绘制的shapelet的ID。

axmatplotlib axe

用于绘制图形的matplotlib轴。默认值为None,将创建一个大小为figsize的新图形。

scatter_optionsdict

应用于形状值散点图的选项。

line_optionsdict

传递给plt.plot的选项字典。仅在ax为None时使用。

figure_optionsdict

传递给plt.figure的选项字典。仅在ax为None时使用。

rc_Params_options: dict

传递给plt.rcParams.update的选项字典。仅在ax为None时使用。

matplotlib_style: str

使用的Matplotlib样式。仅在ax为None时使用。

custom_title_stringstr

如果不是None,使用此字符串作为图表的标题,而不是基于shapelet参数的默认标题。

Returns:
figmatplotlib figure

结果图