Skip to content

Latest commit

 

History

History
120 lines (89 loc) · 4.58 KB

README_zh_CN.md

File metadata and controls

120 lines (89 loc) · 4.58 KB

TSBenchmark

Python Versions Downloads PyPI Version

English

TSBenchmark是什么?

TSBenchmark是一套面向时间序列预测(Time Series Forecast)自动机器学习(AutoML)算法的分布式Benchmark框架。

概览

TSBenchmark 同时支持Time Series特性与AutoML特性。时间序列预测算法,支持单变量预测与多变量预测,同时支持协变量benchmark。 运行过程中,支持最优参数组合采集,为AutoML框架的分析提供支撑。

框架支持分布式运行模式,具备高效的跑评分效率。框架集成了Hypernets的内的轻量级分布式调度框架,python或者conda环境下均可运行。 推荐使用conda作为环境管理,以支持不同时序算法的环境隔离。

安装

Pip

使用如下pip命令安装TSBenchmark:

pip install tsbechmark

示例

开发待测试框架Play的文件,包括:

  • tsbenchmark.yaml benchmark全局配置
  • players
    • am_navie_player 算法专属目录
      • exec.py 必选,待测试算法代码
      • player.yaml 必选,待测试算法描述

exec.py

集成待评分算法的运行代码:通过api的接口获取任务,训练模型,预测并通过api接口反馈预测结果。

import tsbenchmark as tsb

task = tsb.api.get_task()
# Navie模型参见players/plain_navie_player/exec.py
snavie = Navie().fit(task.get_train(), task.series_name)
df_forecast = snavie.predict(task.horizon)
tsb.api.send_report_data(task, df_forecast)

player.yaml

算法的个性化参数设定,可以指定算法的运行环境。

env:
  venv:
    kind: custom_python
    config:
      py_executable: /usr/anaconda3/envs/tsb-hyperts/bin/python

更多使用示例请参考 Quick Start and Examples.

通过命令行使用TSBenchmark

tsb run --config benchmark_prod.yaml
tsb -h

usage: tsb [-h] [--log-level LOG_LEVEL] [-error] [-warn] [-info] [-debug]
           {run,compare} ...

tsb command is used to manage benchmarks

positional arguments:
  {run,compare}
    run                 run benchmark
    compare             compare benchmark reports

optional arguments:
  -h, --help            show this help message and exit

Console outputs:
  --log-level LOG_LEVEL
                        logging level, default is INFO
  -error                alias of "--log-level=ERROR"
  -warn                 alias of "--log-level=WARN"
  -info                 alias of "--log-level=INFO"
  -debug                alias of "--log-level=DEBUG"          

数据参考

数据参考

TSBenchmark 相关项目

  • Hypernets: 一个通用的自动机器学习框架.
  • HyperGBM: 一个集成了多个GBM模型的全Pipeline AutoML工具.
  • HyperDT/DeepTables: 一个面向结构化数据的AutoDL工具.
  • HyperTS: 一个面向时间序列数据的AutoML和AutoDL工具.
  • HyperKeras: 一个为Tensorflow和Keras提供神经架构搜索和超参数优化的AutoDL工具.
  • HyperBoard: 一个为Hypernets提供可视化界面的工具.
  • Cooka: 一个交互式的轻量级自动机器学习系统.

参考文档

DataCanvas

TSBenchmark是由数据科学平台领导厂商 DataCanvas 创建的开源项目.