tslearn.datasets.UCR_UEA_datasets¶
- class tslearn.datasets.UCR_UEA_datasets(use_cache=True)[source]¶
一个方便访问UCR/UEA时间序列数据集的类。
在研究项目中使用这些数据集中的一个(或几个)时,请引用[1]。
该类将尝试从一些已知的错误命名的文件中恢复,例如提供的StarLightCurves数据集在StarlightCurves.zip中以及类似的情况。
- Parameters:
- use_cachebool (default: True)
是否应使用数据集的缓存版本在
load_dataset()中,如果找到的话。 数据集在加载时总是被缓存,此参数仅确定在加载时是否应刷新缓存版本。
另请参阅
CachedDatasets提供预选数据集以供离线使用。
注释
下载数据集文件可能很耗时,建议使用use_cache=True(默认)以便每个数据集只经历一次下载时间,之后在数据集的缓存版本上工作。
参考文献
[1]A. Bagnall, J. Lines, W. Vickers 和 E. Keogh, UEA & UCR 时间序列分类库, www.timeseriesclassification.com
方法
baseline_accuracy([list_datasets, list_methods])报告UEA/UCR网站提供的基础性能(仅适用于单变量数据集)。
缓存UCR/UEA存档中的所有数据集以供以后使用。
列出UCR/UEA存档中可用的缓存数据集。
列出UCR/UEA存档中可用的数据集(包括单变量和多变量)。
列出UCR/UEA存档中的多变量数据集。
列出UCR/UEA存档中的单变量数据集。
load_dataset(dataset_name)根据名称从UCR/UEA档案中加载数据集。
- baseline_accuracy(list_datasets=None, list_methods=None)[source]¶
报告由UEA/UCR网站提供的基线性能(仅适用于单变量数据集)。
- Parameters:
- list_datasets: list or None (default: None)
一个字符串列表,指示应报告哪些数据集的性能。 如果为None,则报告所有数据集的性能。
- list_methods: list or None (default: None)
应报告性能的基线方法列表。 如果为None,则报告所有基线方法的性能。
- Returns:
- dict
一个字典,其中键是数据集名称,关联的值本身也是字典,这些字典为请求的方法提供准确度分数。
示例
>>> uea_ucr = UCR_UEA_datasets() >>> dict_acc = uea_ucr.baseline_accuracy( ... list_datasets=["Adiac", "ChlorineConcentration"], ... list_methods=["C45"]) >>> len(dict_acc) 2 >>> dict_acc["Adiac"] {'C45': 0.542199...} >>> all_dict_acc = uea_ucr.baseline_accuracy() >>> len(all_dict_acc) 85
- list_cached_datasets()[source]¶
列出UCR/UEA存档中可在缓存中获取的数据集。
示例
>>> beetlefly = UCR_UEA_datasets().load_dataset("BeetleFly") >>> l = UCR_UEA_datasets().list_cached_datasets() >>> "BeetleFly" in l True
- list_datasets()[source]¶
列出UCR/UEA存档中可用的数据集(包括单变量和多变量)。
- Returns:
- list of str:
所有(单变量和多变量)数据集名称的列表。
示例
>>> l = UCR_UEA_datasets().list_datasets() >>> "PenDigits" in l True >>> "BeetleFly" in l True >>> "DatasetThatDoesNotExist" in l False
- list_multivariate_datasets()[source]¶
列出UCR/UEA存档中的多变量数据集。
- Returns:
- list of str:
所有多元数据集名称的列表。
示例
>>> l = UCR_UEA_datasets().list_multivariate_datasets() >>> "PenDigits" in l True
- list_univariate_datasets()[source]¶
列出UCR/UEA存档中的单变量数据集。
- Returns:
- list of str:
所有单变量数据集名称的列表。
示例
>>> l = UCR_UEA_datasets().list_univariate_datasets() >>> len(l) 85
- load_dataset(dataset_name)[source]¶
根据名称从UCR/UEA档案库加载数据集。
失败时,四个值中的每一个都返回None,并且会打印一个RuntimeWarning。
- Parameters:
- dataset_namestr
数据集的名称。应该在list_datasets返回的列表中。
- Returns:
- numpy.ndarray of shape (n_ts_train, sz, d) or None
训练时间序列。如果不成功则为None。
- numpy.ndarray of integers or strings with shape (n_ts_train, ) or None
训练标签。如果不成功则为None。
- numpy.ndarray of shape (n_ts_test, sz, d) or None
测试时间序列。如果不成功则为None。
- numpy.ndarray of integers or strings with shape (n_ts_test, ) or None
测试标签。如果不成功则为None。
示例
>>> data_loader = UCR_UEA_datasets() >>> X_train, y_train, X_test, y_test = data_loader.load_dataset( ... "TwoPatterns") >>> X_train.shape (1000, 128, 1) >>> y_train.shape (1000,) >>> X_train, y_train, X_test, y_test = data_loader.load_dataset( ... "Adiac") >>> X_train.shape (390, 176, 1) >>> X_train, y_train, X_test, y_test = data_loader.load_dataset( ... "PenDigits") >>> X_train.shape (7494, 8, 2) >>> assert (None, None, None, None) == data_loader.load_dataset( ... "DatasetThatDoesNotExist")