1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/daochenzha-tods

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

TODS: автоматизированная система обнаружения аномалий временных рядов

Логотип

Статус действий codecov

中文文档

TODS — это комплексная автоматизированная система машинного обучения для обнаружения аномалий в многомерных данных временных рядов. TODS предоставляет исчерпывающие модули для создания систем обнаружения аномалий на основе машинного обучения, включая: обработку данных, обработку временных рядов, анализ признаков (извлечение), алгоритмы обнаружения и модуль подкрепления. Функциональность, предоставляемая этими модулями, включает предварительную обработку данных общего назначения, сглаживание/преобразование данных временных рядов, извлечение признаков из временной/частотной областей, различные алгоритмы обнаружения и привлечение человеческого опыта для калибровки системы. В TODS можно выполнить три распространённых сценария обнаружения аномалий во временных рядах: точечное обнаружение (аномалии — точки времени), групповое обнаружение (подпоследовательности как аномалии) и системное обнаружение (наборы временных рядов как аномалии). Также предоставляется широкий спектр соответствующих алгоритмов. Этот пакет разработан DATA Lab @ Rice University.

Особенности TODS:

  • Комплексная система машинного обучения, которая поддерживает исчерпывающие компоненты от предварительной обработки, извлечения признаков, алгоритмов обнаружения, а также интерфейса с участием человека.

  • Широкий спектр алгоритмов, включая все точечные алгоритмы обнаружения, поддерживаемые PyOD, современные групповые (коллективные) алгоритмы обнаружения, такие как DeepLog, Telemanon, а также различные ансамблевые алгоритмы для выполнения системного обнаружения.

  • Автоматизированное машинное обучение направлено на предоставление процесса без использования знаний, который строит оптимальную конвейерную линию на основе предоставленных данных путём автоматического поиска наилучшей комбинации из всех существующих модулей.

Примеры и руководства

Ресурсы

Цитирование этой работы:

Если вы считаете эту работу полезной, вы можете сослаться на неё:

@article{Lai_Zha_Wang_Xu_Zhao_Kumar_Chen_Zumkhawaka_Wan_Martinez_Hu_2021, 
    title={TODS: An Automated Time Series Outlier Detection System}, 
    volume={35}, 
    number={18}, 
    journal={Proceedings of the AAAI Conference on Artificial Intelligence}, 
    author={Lai, Kwei-Herng and Zha, Daochen and Wang, Guanchu and Xu, Junjie and Zhao, Yue and Kumar, Devesh and Chen, Yile and Zumkhawaka, Purav and Wan, Minyang and Martinez, Diego and Hu, Xia}, 
    year={2021}, month={May}, 
    pages={16060-16062} 
}

Установка

Этот пакет работает с Python 3.7+ и pip 19+. Вам необходимо установить следующие пакеты в системе (для Debian/Ubuntu):

sudo apt-get install libssl-dev libcurl4-openssl-dev libyaml-dev build-essential libopenblas-dev libcap-dev ffmpeg **Используйте зеркало в Gitee:**

git clone https://github.com/datamllab/tods.git


**Установите локально с помощью pip:**  

cd tods pip install -e .


# Примеры  
Примеры доступны в [/examples](examples/). Для базового использования вы можете оценить конвейер на заданных наборах данных. Здесь мы предоставляем пример для загрузки нашего стандартного конвейера и оценки его на подмножестве набора данных yahoo.

```python
import pandas as pd

from tods import schemas as schemas_utils
from tods import generate_dataset, evaluate_pipeline

table_path = 'datasets/anomaly/raw_data/yahoo_sub_5.csv'
target_index = 6 # какой столбец является целевым
metric = 'F1_MACRO' # F1 для обоих меток 0 и 1

# Чтение данных и генерация набора данных
df = pd.read_csv(table_path)
dataset = generate_dataset(df, target_index)

# Загрузка стандартного конвейера
pipeline = schemas_utils.load_default_pipeline()

# Запуск конвейера
pipeline_result = evaluate_pipeline(dataset, pipeline, metric)
print(pipeline_result)

Мы также предоставляем поддержку AutoML, чтобы помочь вам автоматически найти хороший конвейер для ваших данных.

import pandas as pd

from axolotl.backend.simple import SimpleRunner

from tods import generate_dataset, generate_problem
from tods.searcher import BruteForceSearch

# Некоторая информация
table_path = 'datasets/yahoo_sub_5.csv'
target_index = 6 # какой столбец является целевым
time_limit = 30 # Сколько секунд вы хотите искать
metric = 'F1_MACRO' # F1 для обеих меток 0 и 1

# Чтение данных, генерация набора данных и проблемы
df = pd.read_csv(table_path)
dataset = generate_dataset(df, target_index=target_index)
problem_description = generate_problem(dataset, metric)

# Запускаем бэкенд
backend = SimpleRunner(random_seed=0)

# Запускаем алгоритм поиска
search = BruteForceSearch(problem_description=problem_description,
                          backend=backend)

# Находим лучший конвейер
best_runtime, best_pipeline_result = search.search_fit(input_data=[dataset], time_limit=time_limit)
best_pipeline = best_runtime.pipeline
best_output = best_pipeline_result.output

# Оцениваем лучший конвейер
best_scores = search.evaluate(best_pipeline).scores

Благодарность

Мы выражаем благодарность программе Data Driven Discovery of Models (D3M) Агентства перспективных исследовательских проектов Министерства обороны США (DARPA).

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Система автоматического обнаружения аномалий временных рядов | Автоматическое машинное обучение | AutoML | Обнаружение аномалий Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/daochenzha-tods.git
git@api.gitlife.ru:oschina-mirror/daochenzha-tods.git
oschina-mirror
daochenzha-tods
daochenzha-tods
master