# ADWIN
# 函数简介
本函数用于查找时间序列可能的概念漂移。本方法根据提供的δ,使用ADWIN方法判断是否存在异常大于置信度δ的位置。返回所有认为发生概念漂移的时间戳。具体方法请参见
Learning from Time-Changing Data with Adaptive Windowing, A Bifetet al., 2005
函数名: ADWIN
输入序列: 仅支持单个输入序列,类型为 INT32 / INT64 / FLOAT / DOUBLE
参数:
delta
:判断发生概念漂移的阈值。详见论文中定义的δ,默认为0.01.windowsize
:进行检测的窗口大小,该值应大于20。
输出序列: 输出单个序列,类型为INT32,异常输出1,非异常输出0。
# 使用示例
# 提供参数
输入序列:
+-----------------------------+------------+
| Time|root.test.s1|
+-----------------------------+------------+
|1970-01-01T08:00:00.000+08:00| 5.0|
|1970-01-01T08:00:00.100+08:00| 5.0|
|1970-01-01T08:00:00.200+08:00| 5.0|
|1970-01-01T08:00:00.300+08:00| 5.0|
|1970-01-01T08:00:00.400+08:00| 5.0|
|1970-01-01T08:00:00.500+08:00| 5.0|
|1970-01-01T08:00:00.600+08:00| 5.0|
|1970-01-01T08:00:00.700+08:00| 5.0|
|1970-01-01T08:00:00.800+08:00| 5.0|
|1970-01-01T08:00:00.900+08:00| 5.0|
|1970-01-01T08:00:01.000+08:00| 5.0|
|1970-01-01T08:00:01.100+08:00| 5.0|
|1970-01-01T08:00:01.200+08:00| 5.0|
|1970-01-01T08:00:01.300+08:00| 5.0|
|1970-01-01T08:00:01.400+08:00| 5.0|
|1970-01-01T08:00:01.500+08:00| 5.0|
|1970-01-01T08:00:01.600+08:00| 5.0|
|1970-01-01T08:00:01.700+08:00| 5.0|
|1970-01-01T08:00:01.800+08:00| 5.0|
|1970-01-01T08:00:01.900+08:00| 5.0|
|1970-01-01T08:00:02.000+08:00| 10.0|
|1970-01-01T08:00:02.100+08:00| 10.0|
|1970-01-01T08:00:02.200+08:00| 10.0|
|1970-01-01T08:00:02.300+08:00| 10.0|
|1970-01-01T08:00:02.400+08:00| 10.0|
|1970-01-01T08:00:02.500+08:00| 10.0|
|1970-01-01T08:00:02.600+08:00| 10.0|
|1970-01-01T08:00:02.700+08:00| 10.0|
|1970-01-01T08:00:02.800+08:00| 10.0|
|1970-01-01T08:00:02.900+08:00| 10.0|
|1970-01-01T08:00:03.000+08:00| 10.0|
|1970-01-01T08:00:03.100+08:00| 10.0|
|1970-01-01T08:00:03.200+08:00| 10.0|
|1970-01-01T08:00:03.300+08:00| 10.0|
|1970-01-01T08:00:03.400+08:00| 10.0|
|1970-01-01T08:00:03.500+08:00| 10.0|
|1970-01-01T08:00:03.600+08:00| 10.0|
|1970-01-01T08:00:03.700+08:00| 10.0|
|1970-01-01T08:00:03.800+08:00| 10.0|
|1970-01-01T08:00:03.900+08:00| 10.0|
+-----------------------------+------------+
用于查询的SQL语句:
select adwin(s1,"windowsize"="30","delta"="0.01") from root.test
输出序列:
+-----------------------------+------------------------------------------------------+
| Time|adwin(root.test.s1, "windowsize"="30", "delta"="0.01")|
+-----------------------------+------------------------------------------------------+
|1970-01-01T08:00:02.100+08:00| 1|
+-----------------------------+------------------------------------------------------+
← ValueAlign(TODO) IQR →