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
结果图