
행렬 프로파일(matrix profiles)을 통한 시계열 분석용 확장 가능한 Python 라이브러리로, 모티프 발견, 이상 탐지, 의미론적 분할, 스트리밍 패턴 마이닝을 지원합니다.
|PyPI Version| |Conda Forge Version| |PyPI Downloads| |License| |Test Status| |Code Coverage|
|RTD Status| |Binder| |JOSS| |NumFOCUS|
.. |PyPI Version| image:: https://img.shields.io/pypi/v/stumpy.svg :target: https://pypi.org/project/stumpy/ :alt: PyPI Version .. |Conda Forge Version| image:: https://anaconda.org/conda-forge/stumpy/badges/version.svg :target: https://anaconda.org/conda-forge/stumpy :alt: Conda-Forge Version .. |PyPI Downloads| image:: https://static.pepy.tech/badge/stumpy/month :target: https://pepy.tech/project/stumpy :alt: PyPI Downloads .. |License| image:: https://img.shields.io/pypi/l/stumpy.svg :target: https://github.com/stumpy-dev/stumpy/blob/main/LICENSE.txt :alt: License .. |Test Status| image:: https://github.com/stumpy-dev/stumpy/workflows/Tests/badge.svg :target: https://github.com/stumpy-dev/stumpy/actions?query=workflow%3ATests+branch%3Amain :alt: Test Status .. |Code Coverage| image:: https://img.shields.io/badge/Coverage-100%25-green :alt: Code Coverage .. |RTD Status| image:: https://readthedocs.org/projects/stumpy/badge/?version=latest :target: https://stumpy.readthedocs.io/ :alt: ReadTheDocs Status .. |Binder| image:: https://mybinder.org/badge_logo.svg :target: https://mybinder.org/v2/gh/stumpy-dev/stumpy/main?filepath=notebooks :alt: Binder .. |JOSS| image:: http://joss.theoj.org/papers/10.21105/joss.01504/status.svg :target: https://doi.org/10.21105/joss.01504 :alt: JOSS .. |DOI| image:: https://zenodo.org/badge/184809315.svg :target: https://zenodo.org/badge/latestdoi/184809315 :alt: DOI .. |NumFOCUS| image:: https://img.shields.io/badge/NumFOCUS-Affiliated%20Project-orange.svg?style=flat&colorA=E1523D&colorB=007D8A :target: https://numfocus.org/sponsored-projects/affiliated-projects :alt: NumFOCUS Affiliated Project .. |Twitter| image:: https://img.shields.io/twitter/follow/stumpy_dev.svg?style=social :target: https://twitter.com/stumpy_dev :alt: Twitter
|
.. image:: https://raw.githubusercontent.com/stumpy-dev/stumpy/main/docs/images/stumpy_logo_small.png :target: https://github.com/stumpy-dev/stumpy :alt: STUMPY Logo
STUMPY는 매트릭스 프로파일(matrix profile) <https://stumpy.readthedocs.io/en/latest/Tutorial_The_Matrix_Profile.html>__ 이라고 불리는 것을 효율적으로 계산하는 강력하고 확장 가능한 Python 라이브러리입니다. 매트릭스 프로파일은 "시계열 내의 모든 (초록색) 하위 시퀀스에 대해 해당하는 최근접 이웃(회색)을 자동으로 식별한다"는 것을 학술적으로 표현한 용어입니다:
.. image:: https://github.com/stumpy-dev/stumpy/blob/main/docs/images/stumpy_demo.gif?raw=true :alt: STUMPY Animated GIF
중요한 점은 매트릭스 프로파일(위 중앙 패널)을 계산하고 나면 이를 다음과 같은 다양한 시계열 데이터 마이닝 작업에 활용할 수 있다는 것입니다:
그 외 더 많은 용도 ... <https://www.cs.ucr.edu/~eamonn/100_Time_Series_Data_Mining_Questions__with_Answers.pdf>__연구자, 데이터 사이언티스트, 소프트웨어 개발자, 또는 시계열 애호가 등 누구든 STUMPY는 설치가 간단하며, 더 빠르게 시계열 인사이트를 얻을 수 있도록 돕는 것이 우리의 목표입니다. 자세한 내용은 문서 <https://stumpy.readthedocs.io/en/latest/>__ 를 참조하세요.
사용 가능한 모든 함수 목록은 API 문서 <https://stumpy.readthedocs.io/en/latest/api.html>__ 를, 보다 포괄적인 예제 사용 사례는 유익한 튜토리얼 <https://stumpy.readthedocs.io/en/latest/tutorials.html>__ 을 참조하세요. 아래에서 STUMPY 사용 방법을 빠르게 보여주는 코드 스니펫을 확인할 수 있습니다.
STUMP <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stump>__ 을 사용한 일반적인 사용법(1차원 시계열 데이터):
.. code:: python
import stumpy
import numpy as np
if __name__ == "__main__":
your_time_series = np.random.rand(10000)
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile = stumpy.stump(your_time_series, m=window_size)
STUMPED <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stumped>__ 을 사용한 Dask Distributed 기반 1차원 시계열 데이터 분산 처리:
.. code:: python
import stumpy
import numpy as np
from dask.distributed import Client
if __name__ == "__main__":
with Client() as dask_client:
your_time_series = np.random.rand(10000)
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile = stumpy.stumped(dask_client, your_time_series, m=window_size)
GPU-STUMP <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.gpu_stump>__ 을 사용한 1차원 시계열 데이터 GPU 처리:
.. code:: python
import stumpy
import numpy as np
from numba import cuda
if __name__ == "__main__":
your_time_series = np.random.rand(10000)
window_size = 50 # Approximately, how many data points might be found in a pattern
all_gpu_devices = [device.id for device in cuda.list_devices()] # Get a list of all available GPU devices
matrix_profile = stumpy.gpu_stump(your_time_series, m=window_size, device_id=all_gpu_devices)
MSTUMP <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.mstump>__ 을 사용한 다차원 시계열 데이터:
.. code:: python
import stumpy
import numpy as np
if __name__ == "__main__":
your_time_series = np.random.rand(3, 1000) # Each row represents data from a different dimension while each column represents data from the same dimension
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile, matrix_profile_indices = stumpy.mstump(your_time_series, m=window_size)
Dask Distributed MSTUMPED <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.mstumped>__ 을 사용한 다차원 시계열 데이터 분산 분석:
.. code:: python
import stumpy
import numpy as np
from dask.distributed import Client
if __name__ == "__main__":
with Client() as dask_client:
your_time_series = np.random.rand(3, 1000) # Each row represents data from a different dimension while each column represents data from the same dimension
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile, matrix_profile_indices = stumpy.mstumped(dask_client, your_time_series, m=window_size)
앵커 시계열 체인(ATSC) <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.atsc>__ 을 사용한 시계열 체인:
.. code:: python
import stumpy
import numpy as np
if __name__ == "__main__":
your_time_series = np.random.rand(10000)
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile = stumpy.stump(your_time_series, m=window_size)
left_matrix_profile_index = matrix_profile[:, 2]
right_matrix_profile_index = matrix_profile[:, 3]
idx = 10 # Subsequence index for which to retrieve the anchored time series chain for
anchored_chain = stumpy.atsc(left_matrix_profile_index, right_matrix_profile_index, idx)
all_chain_set, longest_unanchored_chain = stumpy.allc(left_matrix_profile_index, right_matrix_profile_index)
FLUSS(빠르고 저비용의 단변량 의미론적 분할) <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.fluss>__ 을 사용한 의미론적 분할:
.. code:: python
import stumpy
import numpy as np
if __name__ == "__main__":
your_time_series = np.random.rand(10000)
window_size = 50 # Approximately, how many data points might be found in a pattern
matrix_profile = stumpy.stump(your_time_series, m=window_size)
subseq_len = 50
correct_arc_curve, regime_locations = stumpy.fluss(matrix_profile[:, 1],
L=subseq_len,
n_regimes=2,
excl_factor=1
)
지원되는 Python 및 NumPy 버전은 NEP 29 지원 중단 정책 <https://numpy.org/neps/nep-0029-deprecation_policy.html>__ 에 따라 결정됩니다.
NumPy <http://www.numpy.org/>__Numba <http://numba.pydata.org/>__SciPy <https://www.scipy.org/>__conda:
.. code:: bash
conda install -c conda-forge stumpy
pip:
.. code:: bash
python -m pip install stumpy
pixi:
.. code:: bash
pixi add stumpy
uv:
.. code:: bash
uv add stumpy
소스에서 stumpy를 설치하려면 문서 <https://stumpy.readthedocs.io/en/latest/install.html>__ 의 지침을 참조하세요.
기본이 되는 알고리즘과 응용을 완전히 이해하고 제대로 활용하려면 원본 publications_ 을 반드시 읽어야 합니다. STUMPY 사용 방법에 대한 더 자세한 예제는 최신 문서 <https://stumpy.readthedocs.io/en/latest/>__ 를 참조하거나 직접 해볼 수 있는 튜토리얼 <https://stumpy.readthedocs.io/en/latest/tutorials.html>__ 을 살펴보세요.
Numba JIT 컴파일 버전의 코드를 사용하여 다양한 길이의 무작위 생성 시계열 데이터(즉, np.random.rand(n))와 다양한 CPU 및 GPU 하드웨어 리소스 <hardware_>__ 에서 정확한 매트릭스 프로파일 계산 성능을 테스트했습니다.
.. image:: https://raw.githubusercontent.com/stumpy-dev/stumpy/main/docs/images/performance.png :alt: STUMPY Performance Plot
원시 결과는 아래 표에 시:분:초.밀리초 형식으로 표시되며, 윈도우 크기는 m = 50으로 일정하게 유지했습니다. 보고된 런타임에는 호스트에서 모든 GPU 디바이스로 데이터를 전송하는 데 걸리는 시간이 포함됩니다. 모든 런타임을 확인하려면 표의 오른쪽으로 스크롤해야 할 수 있습니다.
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| i | n = 2\ :sup:i | GPU-STOMP | STUMP.2 | STUMP.16 | STUMPED.128 | STUMPED.256 | GPU-STUMP.1 | GPU-STUMP.2 | GPU-STUMP.DGX1 | GPU-STUMP.DGX2 |
+==========+===================+==============+=============+=============+=============+=============+=============+=============+================+================+
| 6 | 64 | 00:00:10.00 | 00:00:00.00 | 00:00:00.00 | 00:00:05.77 | 00:00:06.08 | 00:00:00.03 | 00:00:01.63 | NaN | NaN |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 7 | 128 | 00:00:10.00 | 00:00:00.00 | 00:00:00.00 | 00:00:05.93 | 00:00:07.29 | 00:00:00.04 | 00:00:01.66 | NaN | NaN |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 8 | 256 | 00:00:10.00 | 00:00:00.00 | 00:00:00.01 | 00:00:05.95 | 00:00:07.59 | 00:00:00.08 | 00:00:01.69 | 00:00:06.68 | 00:00:25.68 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 9 | 512 | 00:00:10.00 | 00:00:00.00 | 00:00:00.02 | 00:00:05.97 | 00:00:07.47 | 00:00:00.13 | 00:00:01.66 | 00:00:06.59 | 00:00:27.66 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 10 | 1024 | 00:00:10.00 | 00:00:00.02 | 00:00:00.04 | 00:00:05.69 | 00:00:07.64 | 00:00:00.24 | 00:00:01.72 | 00:00:06.70 | 00:00:30.49 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 11 | 2048 | NaN | 00:00:00.05 | 00:00:00.09 | 00:00:05.60 | 00:00:07.83 | 00:00:00.53 | 00:00:01.88 | 00:00:06.87 | 00:00:31.09 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 12 | 4096 | NaN | 00:00:00.22 | 00:00:00.19 | 00:00:06.26 | 00:00:07.90 | 00:00:01.04 | 00:00:02.19 | 00:00:06.91 | 00:00:33.93 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 13 | 8192 | NaN | 00:00:00.50 | 00:00:00.41 | 00:00:06.29 | 00:00:07.73 | 00:00:01.97 | 00:00:02.49 | 00:00:06.61 | 00:00:33.81 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 14 | 16384 | NaN | 00:00:01.79 | 00:00:00.99 | 00:00:06.24 | 00:00:08.18 | 00:00:03.69 | 00:00:03.29 | 00:00:07.36 | 00:00:35.23 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 15 | 32768 | NaN | 00:00:06.17 | 00:00:02.39 | 00:00:06.48 | 00:00:08.29 | 00:00:07.45 | 00:00:04.93 | 00:00:07.02 | 00:00:36.09 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 16 | 65536 | NaN | 00:00:22.94 | 00:00:06.42 | 00:00:07.33 | 00:00:09.01 | 00:00:14.89 | 00:00:08.12 | 00:00:08.10 | 00:00:36.54 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 17 | 131072 | 00:00:10.00 | 00:01:29.27 | 00:00:19.52 | 00:00:09.75 | 00:00:10.53 | 00:00:29.97 | 00:00:15.42 | 00:00:09.45 | 00:00:37.33 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 18 | 262144 | 00:00:18.00 | 00:05:56.50 | 00:01:08.44 | 00:00:33.38 | 00:00:24.07 | 00:00:59.62 | 00:00:27.41 | 00:00:13.18 | 00:00:39.30 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 19 | 524288 | 00:00:46.00 | 00:25:34.58 | 00:03:56.82 | 00:01:35.27 | 00:03:43.66 | 00:01:56.67 | 00:00:54.05 | 00:00:19.65 | 00:00:41.45 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 20 | 1048576 | 00:02:30.00 | 01:51:13.43 | 00:19:54.75 | 00:04:37.15 | 00:03:01.16 | 00:05:06.48 | 00:02:24.73 | 00:00:32.95 | 00:00:46.14 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 21 | 2097152 | 00:09:15.00 | 09:25:47.64 | 03:05:07.64 | 00:13:36.51 | 00:08:47.47 | 00:20:27.94 | 00:09:41.43 | 00:01:06.51 | 00:01:02.67 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 22 | 4194304 | NaN | 36:12:23.74 | 10:37:51.21 | 00:55:44.43 | 00:32:06.70 | 01:21:12.33 | 00:38:30.86 | 00:04:03.26 | 00:02:23.47 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 23 | 8388608 | NaN | 143:16:09.94| 38:42:51.42 | 03:33:30.53 | 02:00:49.37 | 05:11:44.45 | 02:33:14.60 | 00:15:46.26 | 00:08:03.76 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 24 | 16777216 | NaN | NaN | NaN | 14:39:11.99 | 07:13:47.12 | 20:43:03.80 | 09:48:43.42 | 01:00:24.06 | 00:29:07.84 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| NaN | 17729800 | 09:16:12.00 | NaN | NaN | 15:31:31.75 | 07:18:42.54 | 23:09:22.43 | 10:54:08.64 | 01:07:35.39 | 00:32:51.55 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 25 | 33554432 | NaN | NaN | NaN | 56:03:46.81 | 26:27:41.29 | 83:29:21.06 | 39:17:43.82 | 03:59:32.79 | 01:54:56.52 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 26 | 67108864 | NaN | NaN | NaN | 211:17:37.60| 106:40:17.17| 328:58:04.68| 157:18:30.50| 15:42:15.94 | 07:18:52.91 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| NaN | 100000000 | 291:07:12.00 | NaN | NaN | NaN | 234:51:35.39| NaN | NaN | 35:03:44.61 | 16:22:40.81 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
| 27 | 134217728 | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 64:41:55.09 | 29:13:48.12 |
+----------+-------------------+--------------+-------------+-------------+-------------+-------------+-------------+-------------+----------------+----------------+
^^^^^^^^^^^^^^^^^^ 하드웨어 리소스 ^^^^^^^^^^^^^^^^^^
.. _hardware:
GPU-STOMP: 이 결과는 원래 Matrix Profile II <https://ieeexplore.ieee.org/abstract/document/7837898>__ 논문에서 재현한 것으로, NVIDIA Tesla K80(GPU 2개 포함)을 사용했으며 비교 대상이 되는 성능 벤치마크 역할을 합니다.
STUMP.2: stumpy.stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stump>__ 을(를) 총 2개 CPU로 실행 - Dask 없이 단일 서버에서 Numba로 병렬화된 2x Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 프로세서.
STUMP.16: stumpy.stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stump>__ 을(를) 총 16개 CPU로 실행 - Dask 없이 단일 서버에서 Numba로 병렬화된 16x Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 프로세서.STUMPED.128: stumpy.stumped <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stumped>__ 총 128개 CPU로 실행 - 8x Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 프로세서 x 16개 서버, Numba로 병렬화, Dask Distributed로 분산 처리
STUMPED.256: stumpy.stumped <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.stumped>__ 총 256개 CPU로 실행 - 8x Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 프로세서 x 32개 서버, Numba로 병렬화, Dask Distributed로 분산 처리
GPU-STUMP.1: stumpy.gpu_stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.gpu_stump>__ 1x NVIDIA GeForce GTX 1080 Ti GPU, 블록당 512개 스레드, 200W 전력 제한으로 실행, Numba로 CUDA에 컴파일, Python multiprocessing으로 병렬화
GPU-STUMP.2: stumpy.gpu_stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.gpu_stump>__ 2x NVIDIA GeForce GTX 1080 Ti GPU, 블록당 512개 스레드, 200W 전력 제한으로 실행, Numba로 CUDA에 컴파일, Python multiprocessing으로 병렬화
GPU-STUMP.DGX1: stumpy.gpu_stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.gpu_stump>__ 8x NVIDIA Tesla V100, 블록당 512개 스레드, Numba로 CUDA에 컴파일, Python multiprocessing으로 병렬화
GPU-STUMP.DGX2: stumpy.gpu_stump <https://stumpy.readthedocs.io/en/latest/api.html#stumpy.gpu_stump>__ 16x NVIDIA Tesla V100, 블록당 512개 스레드, Numba로 CUDA에 컴파일, Python multiprocessing으로 병렬화
테스트는 tests 디렉터리에 작성되며 PyTest <https://docs.pytest.org/en/latest/>__ 를 사용하여 처리되고, 코드 커버리지 분석을 위해 coverage.py 가 필요합니다. 테스트는 다음 명령으로 실행할 수 있습니다:
.. code:: bash
./test.sh
STUMPY는 Python 3.10+ <https://python3statement.org/>__ 를 지원하며, 유니코드 변수명/식별자를 사용하기 때문에 Python 2.x와 호환되지 않습니다. 의존성이 적은 덕분에 STUMPY는 이전 버전의 Python에서도 작동할 수 있지만 이는 지원 범위를 벗어나며, 최신 버전의 Python으로 업그레이드할 것을 강력히 권장합니다.
먼저 Github의 discussions <https://github.com/stumpy-dev/stumpy/discussions>__ 와 issues <https://github.com/stumpy-dev/stumpy/issues?utf8=%E2%9C%93&q=>__ 에서 질문에 대한 답변이 이미 있는지 확인하십시오. 거기에서 해결책을 찾지 못하면 새 discussion이나 issue를 자유롭게 열어 주시기 바랍니다. 작성자들이 합리적인 시간 내에 응답하려고 노력할 것입니다.
어떤 형태의 기여 <https://github.com/stumpy-dev/stumpy/blob/main/CONTRIBUTING.md>__ 든 환영합니다! 문서화, 특히 튜토리얼 확장에 대한 도움은 언제나 환영입니다. 기여하려면 프로젝트를 포크 <https://github.com/stumpy-dev/stumpy/fork>__ 하고 변경 사항을 만든 다음 풀 리퀘스트를 제출하십시오. 발생하는 문제를 함께 해결하고 코드가 메인 브랜치에 병합되도록 최선을 다하겠습니다.
이 코드베이스를 과학 출판물에서 사용하셨다면 Journal of Open Source Software 논문 <http://joss.theoj.org/papers/10.21105/joss.01504>__ 을 인용해 주십시오.
S.M. Law, (2019). *STUMPY: A Powerful and Scalable Python Library for Time Series Data Mining*. Journal of Open Source Software, 4(39), 1504.
.. code:: bibtex
@article{law2019stumpy,
author = {Law, Sean M.},
title = {{STUMPY: A Powerful and Scalable Python Library for Time Series Data Mining}},
journal = {{The Journal of Open Source Software}},
volume = {4},
number = {39},
pages = {1504},
year = {2019}
}
.. _publications:
Yeh, Chin-Chia Michael, et al. (2016) Matrix Profile I: All Pairs Similarity Joins for Time Series: A Unifying View that Includes Motifs, Discords, and Shapelets. ICDM:1317-1322. Link <https://ieeexplore.ieee.org/abstract/document/7837992>__
Zhu, Yan, et al. (2016) Matrix Profile II: Exploiting a Novel Algorithm and GPUs to Break the One Hundred Million Barrier for Time Series Motifs and Joins. ICDM:739-748. Link <https://ieeexplore.ieee.org/abstract/document/7837898>__
Yeh, Chin-Chia Michael, et al. (2017) Matrix Profile VI: Meaningful Multidimensional Motif Discovery. ICDM:565-574. Link <https://ieeexplore.ieee.org/abstract/document/8215529>__
Zhu, Yan, et al. (2017) Matrix Profile VII: Time Series Chains: A New Primitive for Time Series Data Mining. ICDM:695-704. Link <https://ieeexplore.ieee.org/abstract/document/8215542>__
Gharghabi, Shaghayegh, et al. (2017) Matrix Profile VIII: Domain Agnostic Online Semantic Segmentation at Superhuman Performance Levels. ICDM:117-126. Link <https://ieeexplore.ieee.org/abstract/document/8215484>__
Zhu, Yan, et al. (2017) Exploiting a Novel Algorithm and GPUs to Break the Ten Quadrillion Pairwise Comparisons Barrier for Time Series Motifs and Joins. KAIS:203-236. Link <https://link.springer.com/article/10.1007%2Fs10115-017-1138-x>__
Zhu, Yan, et al. (2018) Matrix Profile XI: SCRIMP++: Time Series Motif Discovery at Interactive Speeds. ICDM:837-846. Link <https://ieeexplore.ieee.org/abstract/document/8594908>__
Yeh, Chin-Chia Michael, et al. (2018) Time Series Joins, Motifs, Discords and Shapelets: a Unifying View that Exploits the Matrix Profile. Data Min Knowl Disc:83-123. Link <https://link.springer.com/article/10.1007/s10618-017-0519-9>__
Gharghabi, Shaghayegh, et al. (2018) "Matrix Profile XII: MPdist: A Novel Time Series Distance Measure to Allow Data Mining in More Challenging Scenarios." ICDM:965-970. Link <https://ieeexplore.ieee.org/abstract/document/8594928>__
Zimmerman, Zachary, et al. (2019) Matrix Profile XIV: Scaling Time Series Motif Discovery with GPUs to Break a Quintillion Pairwise Comparisons a Day and Beyond. SoCC '19:74-86. Link <https://dl.acm.org/doi/10.1145/3357223.3362721>__
Akbarinia, Reza, and Betrand Cloez. (2019) Efficient Matrix Profile Computation Using Different Distance Functions. arXiv:1901.05708. Link <https://arxiv.org/abs/1901.05708>__
Kamgar, Kaveh, et al. (2019) Matrix Profile XV: Exploiting Time Series Consensus Motifs to Find Structure in Time Series Sets. ICDM:1156-1161. Link <https://ieeexplore.ieee.org/abstract/document/8970797>__
| STUMPY | Copyright 2019 TD Ameritrade. 3-Clause BSD 라이선스 조건에 따라 배포됩니다. | STUMPY는 TD Ameritrade IP Company, Inc.의 상표입니다. 모든 권리는 보유됩니다.