Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #2927

[ANN] - Skyline v1.2.2-stable-luminosity

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Gary Wilson <garypwilson@gmail.com>
Newsgroups comp.lang.python.announce
Subject [ANN] - Skyline v1.2.2-stable-luminosity
Date Tue, 17 Jul 2018 21:37:28 +0100
Lines 133
Approved python-announce-list@python.org
Message-ID <mailman.389.1531899369.2882.python-announce-list@python.org> (permalink)
References <CAPmkZmQwGzgLeegNcr2oq3cD-nfyZdAykZj0hTpj759=tKGh6w@mail.gmail.com>
Mime-Version 1.0
Content-Type text/plain; charset="UTF-8"
Content-Transfer-Encoding quoted-printable
X-Trace news.uni-berlin.de 3EGBHpEFhLPxLMLMSwOMpgtIzypg5ys4Bx1rAcz9C5YQ==
Return-Path <garypwilson@gmail.com>
X-Original-To python-announce-list@python.org
Delivered-To python-announce-list@mail.python.org
X-Spam-Status OK 0.019
X-Spam-Evidence '*H*': 0.96; '*S*': 0.00; 'operator': 0.03; 'amounts': 0.05; 'layers': 0.05; 'url-ip:152/8': 0.05; 'extracted': 0.07; 'received:209.85.221': 0.07; 'subject:ANN': 0.07; 'url-ip:162.242.198.235/32': 0.07; 'url-ip:162.242.198/24': 0.07; 'url-ip:162.242/16': 0.07; 'url:releases': 0.07; 'behave': 0.09; 'compute': 0.09; 'implements': 0.09; 'metrics': 0.09; 'optional': 0.09; 'percentage': 0.09; 'thereof.': 0.09; 'vast': 0.09; 'possibly': 0.12; 'stack': 0.15; 'bounds': 0.16; 'compares': 0.16; 'data?': 0.16; 'extraction': 0.16; 'fingerprints': 0.16; 'learns': 0.16; 'set,': 0.16; 'skyline': 0.16; 'python': 0.16; 'handles': 0.17; 'have:': 0.17; 'matching': 0.17; 'skip:` 10': 0.21; 'train': 0.21; 'variable': 0.22; 'algorithm': 0.24; 'values': 0.24; 'bit': 0.24; 'help.': 0.25; 'comparison': 0.25; 'interaction': 0.25; '(or': 0.26; 'announce': 0.27; 'defined': 0.29; 'memory': 0.29; 'message-id:@mail.gmail.com': 0.29; 'expected': 0.29; 'too': 0.31; 'url-ip:192.30/16': 0.31; 'url:io': 0.31; 'actually': 0.32; 'detect': 0.32; 'effort.': 0.32; 'focusing': 0.32; 'received:google.com': 0.33; 'boundaries': 0.33; 'detector': 0.33; 'more...': 0.33; 'novel': 0.33; 'parameter': 0.33; 'url:readthedocs': 0.33; 'run': 0.33; 'url-ip:151.101/16': 0.34; 'url-ip:151/8': 0.34; 'skip:- 10': 0.34; 'describe': 0.35; 'similar': 0.36; 'but': 0.36; 'received:209.85': 0.37; 'url:en': 0.37; 'shows': 0.37; 'next': 0.37; 'window': 0.37; 'closer': 0.38; 'pattern': 0.38; 'to:addr:python-announce-list': 0.38; 'url- ip:192.30.253.112/32': 0.38; 'url-ip:192.30.253.113/32': 0.38; 'url-ip:192.30.253/24': 0.38; 'url:github': 0.38; 'doing': 0.38; 'received:209': 0.38; 'subject:[': 0.38; 'large': 0.39; 'there': 0.39; 'rather': 0.39; 'subject:-': 0.39; 'two': 0.39; 'being': 0.40; 'your': 0.60; '8bit%:21': 0.61; 'results': 0.61; 'active': 0.61; 'effort,': 0.62; 'methodology': 0.62; 'of:': 0.62; 'separately.': 0.62; 'streamed': 0.62; 'url:post': 0.62; 'range': 0.62; 'simply': 0.62; 'easy': 0.62; 'algorithms': 0.63; 'motion': 0.63; 'reward': 0.63; 'determine': 0.63; 'here': 0.64; 'within': 0.65; 'our': 0.65; 'url:index': 0.66; 'sum': 0.66; 'url- ip:151.101.1/24': 0.66; 'url-ip:151.101.129/24': 0.66; 'url- ip:151.101.193/24': 0.66; 'url-ip:151.101.65/24': 0.66; 'gary': 0.67; 'sweet': 0.67; 'url:stackoverflow': 0.67; 'training': 0.69; 'perfect': 0.69; 'energy': 0.70; 'series': 0.70; 'generates': 0.70; 'layer': 0.70; 'records': 0.70; 'increase': 0.79; 'obvious': 0.79; 'norm': 0.84; 'processed,': 0.84; 'similarities': 0.84; 'survey,': 0.84; 'tolerance': 0.84; 'universe': 0.84; 'url:pull': 0.84; 'varying': 0.84; 'increases': 0.95
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to :content-transfer-encoding; bh=4QmHgQCW6vr+Ycl8Xm4QCsNA+PC27Hy3WBE7kC2bAAE=; b=PE2xGQ3ITh+D7Z9PK6s6E9PTbUjIYMz4QT7XWxYpGoa0IzzGK5XfTHZ7NngkddQT/S nDTAOebLxE2LyW/vAda7/7Aay7FN7uKyeDGjlPkW7N+5phAt9EpWqCFAkIr/x2N3Tfcp DFeF6qcrGugiGhmDe5ZfKnkySWwy7gBgMNgHgAiSOXcSGpus9mgYRNdKAcOVpnsmKfbT O6SFSBASrZUmjvpS/mQlM9NV3c29/fbjAu4pMoB+7AMzf6Nt+nfGYZy7dKXnoEhpVjY7 mV2IWVxAchvZe7Dwi7EecjK3p8Zlnl5wFoySQN24h6GH+w7D6Q656iMD1kSa3aOR2+dS Joow==
X-Google-DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to :content-transfer-encoding; bh=4QmHgQCW6vr+Ycl8Xm4QCsNA+PC27Hy3WBE7kC2bAAE=; b=Srf9lOmCiHLBrIpaiMDyhaeLfGteMfYEDoK5JNuczsOs4qbJCES8ro2J6WP0jElSOa H84pdZgPlp5MS9au2gW3t5miHB+jkI8mgKwCopLm3tLNXA3e/60oB+sGSKClCCM/vSev NKEG7MSD2xhdvPu3PmKjYxoiCn0h7tutwshiOA0t5mNfLLXPuniYenKqgclbr2iGXiR7 pgAFus7V4Fbz2/NdW3sw+P3gj3TwEJEDCVB/k84+1Q8p1yGfn9okk7HCXBfESjLIV9vd lcZiMpwyk95jEnxTxpEIjJJ8HLSmUTdVa7poekMrZmL9gy+2lJum6/nlFOeERkJ64G2N IX+w==
X-Gm-Message-State AOUpUlEDMXw6r4Kh7kg3zfBGxhCoJ0giAcVDDaBZ6DNNd8nGlxSj1L5A rkgbwz7hYbJwU8JE93l6Y9VivmuLpzOyaoIKzdfo3Q==
X-Google-Smtp-Source AAOMgpfgEA2GiQI5oAjC+MYwDWE5s4H1l1HqjSfNe9WRhGsrjEpTIB3TQIFpAgoVr3R21SPOuiMzNx3MRNUv+kk5lzw=
X-Received by 2002:adf:90e9:: with SMTP id i96-v6mr2563009wri.146.1531859849450; Tue, 17 Jul 2018 13:37:29 -0700 (PDT)
X-Mailman-Approved-At Wed, 18 Jul 2018 03:36:08 -0400
X-BeenThere python-announce-list@python.org
X-Mailman-Version 2.1.27
Precedence list
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-announce-list/>
List-Post <mailto:python-announce-list@python.org>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID <CAPmkZmQwGzgLeegNcr2oq3cD-nfyZdAykZj0hTpj759=tKGh6w@mail.gmail.com>
Xref csiph.com comp.lang.python.announce:2927

Show key headers only | View raw


For those interested in anomaly detection and deflection in streamed
time series data.

I would like to announce a new release of Skyline v1.2.2 -
https://github.com/earthgecko/skyline/releases/tag/v1.2.2-stable-luminosity

What is Skyline?
----------------

Skyline v1.2.2 - For those interested in anomaly detection and deflection in
streamed time series data.

Anomaly deflection.  The obvious next evolution in the use of all the anomaly
detection data?

Skyline is a Python based anomaly detection/deflection stack that analyses,
anomaly detects, deflects, fingerprints and learns vast amounts of streamed
time series data.

- Skyline ingests streamed metric time series data - skyline/horizon
- Skyline uses a ```CONSENSUS``` of 3-sigma algorithms to detect anomalies on
  batch processed, streamed metric time series data - skyline/analyzer - anomaly
  detector
- It handles large and small seasonality in the data - skyline/mirage -
  anomaly deflector and detector
- You can train it on what is NOT anomalous and it learns - skyline/ionosphere -
  anomaly deflector
- It records all your anomalies - skyline/panorama - anomaly memory
- It shows you all your data - skyline/webapp - anomaly view

Seeing as we desire our metrics to be not anomalous most of the time and we want
to know when they ARE anomalous and given the fact that we try and build systems
that try to behave within not anomalous bounds so they perform well, due to
this we have:

- A lot of metric time series data that are not anomalous most of the time.
- A lot of data to train a system on what is NOT anomalous given a time series
  data set, rather than simply focusing on what is anomalous, also focusing on
  what is not anomalous.

To achieve this Skyline implements a novel time series similarities comparison
algorithm and a boundary layers methodology that generates fingerprints of time
series data using the sum of the values of features of the time series which
have been extracted using the tsfresh features extraction package -
https://github.com/blue-yonder/tsfresh and evaluation against boundary layer
algorithms to determine whether a 3-sigma triggered anomaly is
actually a normal,
known pattern in the data.

The Skyline-Ionosphere-Tsfresh Time Series Similairities Comparison Algorithm -
SITTSSCA first coined here :) compares the generated fingerprints of the two
time series and can determine if they closely resemble each other in terms of:

- of the amount of "power/energy", range and "movement" there is within the time
  series data set somewhat like RMS - Erol Kalkan from United States
Geological Survey,
  “Another approach to compute the differences between two time series is moving
  window root-mean-square. RMS can be run for both series separately. This way,
  you can compare the similarities in energy (gain) level of time series. You
  may vary the window length for best resolution.”
  (https://www.researchgate.net/post/How_can_I_perform_time_series_data_similarity_measures_and_get_a_significance_level_p-value)
  http://stackoverflow.com/questions/5613244/root-mean-square-in-numpy-and-complications-of-matrix-and-arrays-of-numpy

The Skyline-Ionosphere-Tsfresh Time Series Similairities Comparison Algorithm
compares how close the fingerprint values are as a percentage and
varying this percentage variable will either focusing the algorithm with greater
precision the closer to 0% the parameter gets, the perfect match (or possibly
a mirror match too - unkonwn/untested) or it will incrementally increase the
tolerance as the percentage variable increases and the matching will become
less and less reliable.

However there is a sweet spot and here SITTSSCA works extremely well :)

Added to SITTSSCA is an optional layer of simple boundary algorithms that are
user defined during the operator training interaction with Skyline, where the
operator augments the SITTSSCA results with boundaries that describe the
expected norm within the time series.  Very similar to being able to describe
the Active Brownian Motion of a time series -
https://github.com/blue-yonder/tsfresh/pull/143#issuecomment-272314801

This results in an anomaly detection/deflection system which enables the user to
very simply label time series and train Skyline on the peaks and troughs and the
expected Active Brownian Motion or best effort thereof.

However it takes a little effort on your part to train Skyline, however with the
effort, Skyline is very good at doing anomaly detection and deflection.

With your help.  There is no easy anomaly detection or deflection, but there is
some reward with a bit of effort.

To learn more...
----------------
Project page -> https://github.com/earthgecko/skyline
Documentation -> https://earthgecko-skyline.readthedocs.io/en/latest/index.html

With the hope Skyline can make the universe a bit less anomalous.

Regards
Gary

Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

[ANN] - Skyline v1.2.2-stable-luminosity Gary Wilson <garypwilson@gmail.com> - 2018-07-17 21:37 +0100

csiph-web