ADTK 管道(pipe)方法汇总
一、Pipeline
依次连接变压器和检测器。
在以下示例中,我们将ClassicSeasonalDecomposition
变压器与QuantileAD
检测器连接起来,旨在检测时间序列中与常规季节性模式的异常偏差。
return_intermediate
在调用对象的拟合或预测方法时,用户可以选择通过将参数设置为 True 来获取中间序列和异常列表Pipeline
。
方法调用
adtk.pipe.Pipeline(steps)
参数介绍
steps(list of 2-tuples(str, object)) -- 此管道的组件。每个 2 元组代表管道中的一个步骤(步骤名称、模型对象)。
steps
样例
二、Pipenet
是Pipeline
对模型组件的非顺序组合的推广。检测器模块中的一些检测器在内部由Pipenet
组合而成。
例如,单边电平移位检测器(LevelShiftAD
参数side为“positive”或“negative”)实现如下Pipenet。一个DoubleRollingAggregate
参数diff为“l1”的变压器连接一个InterQuartileRangeAD
检测器,检测两侧的电平变化,另一个DoubleRollingAggregate
参数diff为“diff”的变压器连接一个ThresholdAD
参数upper_thresh为0的检测器,检测正增加电平变化。然后AndAggregator
通过选择正的电平位移来获得正的电平位移。
一个对象的流程图Pipenet
可以通过方法来可视化plot_flowchart
。
方法summary
,get_params
可用于获取管道对象的信息。
与Pipeline
类似,Pipenet
在调用对象的拟合或预测方法时,用户可以通过将参数return_intermediate
设置为 True 来获取中间序列和异常列表。
方法调用
adtk.pipe.Pipenet(steps=None)
参数介绍
steps(dicts) -- 管道网络的组成部分。每个键值项代表一个步骤(转换器、检测器或聚合器),
其中键是步骤的唯一名称,值是具有以下键值对的字典:
(1)input (str or list of str):模型的输入,必须是“original”(即输入时间序列)或上游组件的名称。
(2)subset(str,list of str,or list of lists of str,optional):
如果模型不使用输入组件中的所有系列,则使用此字段指定应包含哪些系列。
如果未给出或“all”,则将使用输入组件中的所有系列。
(3)model(object): 检测器、转换器或聚合器对象。
steps
样例