diff --git a/examples/axolotl_interface/example_pipelines/autoencoder_pipeline.json b/examples/axolotl_interface/example_pipelines/autoencoder_pipeline.json index 5f17e9d..0e876c0 100644 --- a/examples/axolotl_interface/example_pipelines/autoencoder_pipeline.json +++ b/examples/axolotl_interface/example_pipelines/autoencoder_pipeline.json @@ -1 +1 @@ -{"id": "5478db87-2eea-45c7-b0c1-f6a2fb180a61", "schema": "https://metadata.datadrivendiscovery.org/schemas/v0/pipeline.json", "created": "2021-02-04T06:35:44.477042Z", "inputs": [{"name": "inputs"}], "outputs": [{"data": "steps.6.produce", "name": "output predictions"}], "steps": [{"type": "PRIMITIVE", "primitive": {"id": "4b42ce1e-9b98-4a25-b68e-fad13311eb65", "version": "0.3.0", "python_path": "d3m.primitives.tods.data_processing.dataset_to_dataframe", "name": "Extract a DataFrame from a Dataset", "digest": "f817673b67b0bf1fad5efb694e44a59b9c15931520b419f3a852f79152f58bb7"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "inputs.0"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "d510cb7a-1782-4f51-b44c-58f0236e47c7", "version": "0.6.0", "python_path": "d3m.primitives.tods.data_processing.column_parser", "name": "Parses strings into their types", "digest": "6aea6b48ddcd847030b423ebf2cac62e67b2935d93f75d10fa0712ea019b2739"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.0.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "4503a4c6-42f7-45a1-a1d4-ed69699cf5e1", "version": "0.4.0", "python_path": "d3m.primitives.tods.data_processing.extract_columns_by_semantic_types", "name": "Extracts columns by semantic type", "digest": "e165d114bca8e1e47f349fffbbf2cf8872f0222328287e24acd8ac8c1cf2511c"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.1.produce"}}, "outputs": [{"id": "produce"}], "hyperparams": {"semantic_types": {"type": "VALUE", "data": ["https://metadata.datadrivendiscovery.org/types/Attribute"]}}}, {"type": "PRIMITIVE", "primitive": {"id": "4503a4c6-42f7-45a1-a1d4-ed69699cf5e1", "version": "0.4.0", "python_path": "d3m.primitives.tods.data_processing.extract_columns_by_semantic_types", "name": "Extracts columns by semantic type", "digest": "e165d114bca8e1e47f349fffbbf2cf8872f0222328287e24acd8ac8c1cf2511c"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.0.produce"}}, "outputs": [{"id": "produce"}], "hyperparams": {"semantic_types": {"type": "VALUE", "data": ["https://metadata.datadrivendiscovery.org/types/TrueTarget"]}}}, {"type": "PRIMITIVE", "primitive": {"id": "642de2e7-5590-3cab-9266-2a53c326c461", "version": "0.0.1", "python_path": "d3m.primitives.tods.timeseries_processing.transformation.axiswise_scaler", "name": "Axis_wise_scale"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.2.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "67e7fcdf-d645-3417-9aa4-85cd369487d9", "version": "0.0.1", "python_path": "d3m.primitives.tods.detection_algorithm.pyod_ae", "name": "TODS.anomaly_detection_primitives.AutoEncoder"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.4.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "8d38b340-f83f-4877-baaa-162f8e551736", "version": "0.3.0", "python_path": "d3m.primitives.tods.data_processing.construct_predictions", "name": "Construct pipeline predictions output", "digest": "c8a5cb30cc5b6742dbf024cbd54d5283937864c5d5dd9f3d0fb242fa406b1736"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.5.produce"}, "reference": {"type": "CONTAINER", "data": "steps.1.produce"}}, "outputs": [{"id": "produce"}]}], "digest": "aa2c6d9f9a56d76f5f2e8bb29ad5b21b43970a2acb7a7a7695e057bfcd1fdabd"} \ No newline at end of file +{"id": "bfd8aedf-36be-4dad-af8a-c324a03db5f9", "schema": "https://metadata.datadrivendiscovery.org/schemas/v0/pipeline.json", "created": "2021-02-13T17:02:35.500457Z", "inputs": [{"name": "inputs"}], "outputs": [{"data": "steps.6.produce", "name": "output predictions"}], "steps": [{"type": "PRIMITIVE", "primitive": {"id": "c78138d9-9377-31dc-aee8-83d9df049c60", "version": "0.3.0", "python_path": "d3m.primitives.tods.data_processing.dataset_to_dataframe", "name": "Extract a DataFrame from a Dataset"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "inputs.0"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "81235c29-aeb9-3828-911a-1b25319b6998", "version": "0.6.0", "python_path": "d3m.primitives.tods.data_processing.column_parser", "name": "Parses strings into their types"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.0.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "a996cd89-ddf0-367f-8e7f-8c013cbc2891", "version": "0.4.0", "python_path": "d3m.primitives.tods.data_processing.extract_columns_by_semantic_types", "name": "Extracts columns by semantic type"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.1.produce"}}, "outputs": [{"id": "produce"}], "hyperparams": {"semantic_types": {"type": "VALUE", "data": ["https://metadata.datadrivendiscovery.org/types/Attribute"]}}}, {"type": "PRIMITIVE", "primitive": {"id": "a996cd89-ddf0-367f-8e7f-8c013cbc2891", "version": "0.4.0", "python_path": "d3m.primitives.tods.data_processing.extract_columns_by_semantic_types", "name": "Extracts columns by semantic type"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.0.produce"}}, "outputs": [{"id": "produce"}], "hyperparams": {"semantic_types": {"type": "VALUE", "data": ["https://metadata.datadrivendiscovery.org/types/TrueTarget"]}}}, {"type": "PRIMITIVE", "primitive": {"id": "642de2e7-5590-3cab-9266-2a53c326c461", "version": "0.0.1", "python_path": "d3m.primitives.tods.timeseries_processing.transformation.axiswise_scaler", "name": "Axis_wise_scale"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.2.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "67e7fcdf-d645-3417-9aa4-85cd369487d9", "version": "0.0.1", "python_path": "d3m.primitives.tods.detection_algorithm.pyod_ae", "name": "TODS.anomaly_detection_primitives.AutoEncoder"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.4.produce"}}, "outputs": [{"id": "produce"}]}, {"type": "PRIMITIVE", "primitive": {"id": "2530840a-07d4-3874-b7d8-9eb5e4ae2bf3", "version": "0.3.0", "python_path": "d3m.primitives.tods.data_processing.construct_predictions", "name": "Construct pipeline predictions output"}, "arguments": {"inputs": {"type": "CONTAINER", "data": "steps.5.produce"}, "reference": {"type": "CONTAINER", "data": "steps.1.produce"}}, "outputs": [{"id": "produce"}]}], "digest": "01ad8ccf817150186ca15157a4f02ee1f738582137321a8a5a4a3252832ce555"} \ No newline at end of file diff --git a/primitive_tests/feature_analysis/TruncatedSVD_pipeline.py b/primitive_tests/feature_analysis/TruncatedSVD_pipeline.py index 1ebb1bc..9eadcad 100644 --- a/primitive_tests/feature_analysis/TruncatedSVD_pipeline.py +++ b/primitive_tests/feature_analysis/TruncatedSVD_pipeline.py @@ -29,12 +29,12 @@ pipeline_description.add_step(step_2) # Step 3: TruncatedSVD step_3 = PrimitiveStep(primitive=index.get_primitive('d3m.primitives.tods.feature_analysis.truncated_svd')) -step_3.add_argument(name='inputs', argument_type=ArgumentType.CONTAINER, data_reference='steps.3.produce') -step_3.add_output('produce') step_3.add_hyperparameter(name = 'n_components', argument_type=ArgumentType.VALUE, data = 3) step_3.add_hyperparameter(name = 'use_columns', argument_type=ArgumentType.VALUE, data = (2, 3, 4, 5)) step_3.add_hyperparameter(name = 'return_result', argument_type=ArgumentType.VALUE, data = 'append') step_3.add_hyperparameter(name = 'use_semantic_types', argument_type=ArgumentType.VALUE, data = True) +step_3.add_argument(name='inputs', argument_type=ArgumentType.CONTAINER, data_reference='steps.2.produce') +step_3.add_output('produce') pipeline_description.add_step(step_3) # Final Output @@ -44,4 +44,4 @@ pipeline_description.add_output(name='output predictions', data_reference='steps data = pipeline_description.to_json() with open('example_pipeline.json', 'w') as f: f.write(data) - print(data) \ No newline at end of file + print(data) diff --git a/primitive_tests/test.sh b/primitive_tests/test.sh index 17ad223..d25e921 100644 --- a/primitive_tests/test.sh +++ b/primitive_tests/test.sh @@ -1,12 +1,13 @@ #!/bin/bash #modules="data_processing timeseries_processing feature_analysis detection_algorithms reinforcement" -modules="data_processing timeseries_processing" +#modules="data_processing timeseries_processing" +modules="feature_analysis" #test_scripts=$(ls primitive_tests | grep -v -f tested_file.txt) for module in $modules do - test_scripts=$(ls $module) + test_scripts=$(ls $module | grep -v -f tested_file.txt) for file in $test_scripts do diff --git a/tods/feature_analysis/AutoCorrelation.py b/tods/feature_analysis/AutoCorrelation.py index bca40c4..e3049c6 100644 --- a/tods/feature_analysis/AutoCorrelation.py +++ b/tods/feature_analysis/AutoCorrelation.py @@ -220,13 +220,17 @@ class AutoCorrelationPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outp '__author__': "DATA Lab @Texas A&M University", 'name': "AutoCorrelation of values", 'python_path': 'd3m.primitives.tods.feature_analysis.auto_correlation', - 'source': {'name': "DATALAB @Taxes A&M University", 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods/-/blob/Yile/anomaly-primitives/anomaly_primitives/AutoCorrelation.py']}, - 'algorithm_types': [metadata_base.PrimitiveAlgorithmType.AUTOCORRELATION,], + 'source': { + 'name': "DATALAB @Taxes A&M University", + 'contact': 'mailto:khlai037@tamu.edu', + }, + 'version': '0.0.2', + 'hyperparams_to_tune': ['unbiased', 'nlags', 'qstat', 'fft', 'alpha', 'missing'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'AutocorrelationPrimitive')), - 'hyperparams_to_tune': ['unbiased', 'nlags', 'qstat', 'fft', 'alpha', 'missing'], - 'version': '0.0.2', }) def __init__(self, *, diff --git a/tods/feature_analysis/BKFilter.py b/tods/feature_analysis/BKFilter.py index 41aff06..c252bdc 100644 --- a/tods/feature_analysis/BKFilter.py +++ b/tods/feature_analysis/BKFilter.py @@ -7,6 +7,7 @@ import sklearn import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -154,17 +155,21 @@ class BKFilterPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs, Hy Decides what semantic type to attach to generated attributes' """ - __author__: "DATA Lab at Texas A&M University" metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab at Texas A&M University", "name": "Baxter-King Filter Primitive", "python_path": "d3m.primitives.tods.feature_analysis.bk_filter", - "source": {'name': 'DATA Lab at Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods.git', 'https://gitlab.com/lhenry15/tods/-/blob/Junjie/anomaly-primitives/anomaly_primitives/DuplicationValidation.py']}, - "algorithm_types": [metadata_base.PrimitiveAlgorithmType.BK_FILTER,], - "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - "id": "b2bfadc5-dbca-482c-b188-8585e5f245c4", + "source": { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu', + }, "hyperparams_to_tune": ['low', 'high', 'K'], "version": "0.0.1", + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'BKFilterPrimitive')), }) diff --git a/tods/feature_analysis/DiscreteCosineTransform.py b/tods/feature_analysis/DiscreteCosineTransform.py index 88b141e..6151c88 100644 --- a/tods/feature_analysis/DiscreteCosineTransform.py +++ b/tods/feature_analysis/DiscreteCosineTransform.py @@ -7,6 +7,7 @@ from d3m import container, utils from d3m.base import utils as base_utils from d3m.metadata import base as metadata_base, hyperparams from d3m.primitive_interfaces import base, transformer +import uuid import logging import math @@ -212,27 +213,21 @@ class DiscreteCosineTransformPrimitive(transformer.TransformerPrimitiveBase[Inpu """ - __author__ = "Data Lab" - metadata = metadata_base.PrimitiveMetadata( - { - "__author__ " : "DATA Lab at Texas A&M University", + metadata = metadata_base.PrimitiveMetadata({ + "__author__ " : "DATA Lab @ Texas A&M University", 'name': "Discrete Cosine Transform", 'python_path': 'd3m.primitives.tods.feature_analysis.discrete_cosine_transform', 'source': { 'name': 'DATA Lab at Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': [ - 'https://gitlab.com/lhenry15/tods.git', - 'https://gitlab.com/lhenry15/tods/-/blob/purav/anomaly-primitives/anomaly_primitives/DiscreteCosineTransform.py', - ], }, + 'hyperparameters_to_tune':['n','norm','axis','type_'], + 'version': '0.0.1', 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DISCRETE_COSINE_TRANSFORM, + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, ], 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - 'id': '584fa7d5-39cc-4cf8-8d5b-5f3a2648f767', - 'hyperparameters_to_tune':['n','norm','axis','type_'], - 'version': '0.0.1', + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'DiscreteCosineTransformPrimitive')), }, ) diff --git a/tods/feature_analysis/FastFourierTransform.py b/tods/feature_analysis/FastFourierTransform.py index a1bfdea..1f96846 100644 --- a/tods/feature_analysis/FastFourierTransform.py +++ b/tods/feature_analysis/FastFourierTransform.py @@ -7,6 +7,7 @@ from d3m import container, utils from d3m.base import utils as base_utils from d3m.metadata import base as metadata_base, hyperparams from d3m.primitive_interfaces import base, transformer +import uuid import logging from cmath import polar @@ -204,29 +205,22 @@ class FastFourierTransformPrimitive(transformer.TransformerPrimitiveBase[Inputs, Decides what semantic type to attach to generated attributes' """ - __author__ = "Data Lab" - metadata = metadata_base.PrimitiveMetadata( - { - '__author__' : "DATA Lab at Texas A&M University", + metadata = metadata_base.PrimitiveMetadata({ + '__author__' : "DATA Lab @ Texas A&M University", 'name': "Fast Fourier Transform", 'python_path': 'd3m.primitives.tods.feature_analysis.fast_fourier_transform', 'source': { - 'name': 'DATA Lab at Texas A&M University', + 'name': 'DATA Lab @ Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': [ - 'https://gitlab.com/lhenry15/tods.git', - 'https://gitlab.com/lhenry15/tods/-/blob/purav/anomaly-primitives/anomaly_primitives/FastFourierTransform.py', - ], }, + 'hyperparameters_to_tune':['n','norm','axis'], + 'version': '0.0.1', 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.FAST_FOURIER_TRANSFORM, + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, ], 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - 'id': '7bd269bc-de7e-47b8-8d6c-0bd46594d3cb', - 'hyperparameters_to_tune':['n','norm','axis'], - 'version': '0.0.1', - }, - ) + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'FastFourierTransformPrimitive')), + }) def __init__(self, *, hyperparams: Hyperparams) -> None: super().__init__(hyperparams=hyperparams) diff --git a/tods/feature_analysis/HPFilter.py b/tods/feature_analysis/HPFilter.py index 05a8454..47e2679 100644 --- a/tods/feature_analysis/HPFilter.py +++ b/tods/feature_analysis/HPFilter.py @@ -7,6 +7,7 @@ import sklearn import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -131,17 +132,21 @@ class HPFilterPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs, Hy Decides what semantic type to attach to generated attributes' """ - __author__: "DATA Lab at Texas A&M University" metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab at Texas A&M University", "name": "Hodrick-Prescott filter Primitive", "python_path": "d3m.primitives.tods.feature_analysis.hp_filter", - "source": {'name': 'DATA Lab at Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods.git', 'https://gitlab.com/lhenry15/tods/-/blob/Junjie/anomaly-primitives/anomaly_primitives/DuplicationValidation.py']}, - "algorithm_types": [metadata_base.PrimitiveAlgorithmType.HP_FILTER,], - "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - "id": "3af1be06-e45e-4ead-8523-4373264598e4", + "source": { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu', + }, "hyperparams_to_tune": ['lamb'], "version": "0.0.1", + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'HPFilterPrimitive')), }) diff --git a/tods/feature_analysis/NonNegativeMatrixFactorization.py b/tods/feature_analysis/NonNegativeMatrixFactorization.py index 3f43eba..10fcf49 100644 --- a/tods/feature_analysis/NonNegativeMatrixFactorization.py +++ b/tods/feature_analysis/NonNegativeMatrixFactorization.py @@ -7,6 +7,7 @@ from d3m.primitive_interfaces.base import CallResult, DockerContainer from typing import cast, Dict, List, Union, Sequence, Optional, Tuple from collections import OrderedDict from scipy import sparse +import uuid import nimfa import pandas as pd @@ -266,29 +267,22 @@ class NonNegativeMatrixFactorizationPrimitive(transformer.TransformerPrimitiveBa - __author__ = "Data Lab" - metadata = metadata_base.PrimitiveMetadata( - { - '__author__' : "DATA Lab at Texas A&M University", - 'name': "Fast Fourier Transform", - 'python_path': 'd3m.primitives.tods.feature_analysis.non_negative_matrix_factorization', - 'source': { - 'name': 'DATA Lab at Texas A&M University', + metadata = metadata_base.PrimitiveMetadata({ + '__author__' : "DATA Lab @ Texas A&M University", + 'name': "Fast Fourier Transform", + 'python_path': 'd3m.primitives.tods.feature_analysis.non_negative_matrix_factorization', + 'source': { + 'name': 'DATA Lab @ Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': [ - 'https://gitlab.com/lhenry15/tods.git', - 'https://gitlab.com/lhenry15/tods/-/blob/purav/anomaly-primitives/anomaly_primitives/NonNegativeMatrixFactorization.py', - ], - }, - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.NON_NEGATIVE_MATRIX_FACTORIZATION, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - 'id': 'c7259da6-7ce6-42ad-83c6-15238679f5fa', - 'hyperparameters_to_tune':['rank','update','objective','max_iter','learning_rate'], - 'version': '0.0.1', - }, - ) + }, + 'hyperparameters_to_tune':['rank','update','objective','max_iter','learning_rate'], + 'version': '0.0.1', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'NonNegativeMatrixFactorizationPrimitive')), + }) def __init__(self, *, hyperparams: Hyperparams) -> None: super().__init__(hyperparams=hyperparams) diff --git a/tods/feature_analysis/SKTruncatedSVD.py b/tods/feature_analysis/SKTruncatedSVD.py index bf7cd10..24ba96c 100644 --- a/tods/feature_analysis/SKTruncatedSVD.py +++ b/tods/feature_analysis/SKTruncatedSVD.py @@ -7,6 +7,7 @@ import sklearn import numpy import typing import time +import uuid # Custom import commands if any from sklearn.decomposition.truncated_svd import TruncatedSVD @@ -156,17 +157,21 @@ class SKTruncatedSVDPrimitive(UnsupervisedLearnerPrimitiveBase[Inputs, Outputs, Decides what semantic type to attach to generated attributes' """ - __author__: "DATA Lab at Texas A&M University" metadata = metadata_base.PrimitiveMetadata({ - "name": "Truncated SVD", - "python_path": "d3m.primitives.tods.feature_analysis.truncated_svd", - "source": {'name': 'DATA Lab at Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods.git', 'https://gitlab.com/lhenry15/tods/-/blob/Junjie/anomaly-primitives/anomaly_primitives/SKTruncatedSVD.py']}, - "algorithm_types": [metadata_base.PrimitiveAlgorithmType.SINGULAR_VALUE_DECOMPOSITION, ], - "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - "id": "9231fde3-7322-3c41-b4cf-d00a93558c44", - "hyperparams_to_tune": ['n_components', 'algorithm', 'use_columns', 'exclude_columns', 'return_result', 'use_semantic_types', 'add_index_columns', 'error_on_no_input', 'return_semantic_type'], - "version": "0.0.1", + "__author__": "DATA Lab at Texas A&M University", + "name": "Truncated SVD", + "python_path": "d3m.primitives.tods.feature_analysis.truncated_svd", + "source": { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu', + }, + "hyperparams_to_tune": ['n_components', 'algorithm', 'use_columns', 'exclude_columns', 'return_result', 'use_semantic_types', 'add_index_columns', 'error_on_no_input', 'return_semantic_type'], + "version": "0.0.1", + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'SKTruncatedSVDPrimitive')), }) def __init__(self, *, diff --git a/tods/feature_analysis/SpectralResidualTransform.py b/tods/feature_analysis/SpectralResidualTransform.py index 7f0ee3c..f52a125 100644 --- a/tods/feature_analysis/SpectralResidualTransform.py +++ b/tods/feature_analysis/SpectralResidualTransform.py @@ -9,6 +9,7 @@ from numpy import ndarray from collections import OrderedDict from scipy import sparse import os +import uuid import numpy import typing @@ -90,36 +91,24 @@ class SpectralResidualTransformPrimitive(transformer.TransformerPrimitiveBase[In """ Primitive to find Spectral Residual Transform of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '88dda04b-090b-49a5-8035-279eb3be9cd9', - 'version': '0.1.0', - 'name': 'Time Series Spectral Residual', - 'python_path': 'd3m.primitives.tods.feature_analysis.spectral_residual_transform', - 'keywords': ['Time Series','FFT'], - "hyperparams_to_tune": ['avg_filter_dimension'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/SpectralResidualTransform.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Spectral Residual', + 'python_path': 'd3m.primitives.tods.feature_analysis.spectral_residual_transform', + 'keywords': ['Time Series','FFT'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + + }, + "hyperparams_to_tune": ['avg_filter_dimension'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'SpectralResidualTransformPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalAbsEnergy.py b/tods/feature_analysis/StatisticalAbsEnergy.py index aab4c99..fcbcf85 100644 --- a/tods/feature_analysis/StatisticalAbsEnergy.py +++ b/tods/feature_analysis/StatisticalAbsEnergy.py @@ -9,6 +9,7 @@ from numpy import ndarray from collections import OrderedDict from scipy import sparse import os +import uuid import numpy import typing @@ -92,35 +93,24 @@ class StatisticalAbsEnergyPrimitive(transformer.TransformerPrimitiveBase[Inputs, """ __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '73299ffe-d8bb-43c6-a6cc-9261f5e17a5e', - 'version': '0.1.0', - 'name': 'Time Series Statistical Abs Energy', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_abs_energy', - 'keywords': ['Time Series','AbsEnergy'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalAbsEnergy.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Statistical Abs Energy', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_abs_energy', + 'keywords': ['Time Series','AbsEnergy'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + "hyperparams_to_tune": ['window_size'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalAbsEnergyPrimitive')), + + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalAbsSum.py b/tods/feature_analysis/StatisticalAbsSum.py index c4d51b1..34c56c7 100644 --- a/tods/feature_analysis/StatisticalAbsSum.py +++ b/tods/feature_analysis/StatisticalAbsSum.py @@ -9,6 +9,7 @@ from numpy import ndarray from collections import OrderedDict from scipy import sparse import os +import uuid import numpy import typing @@ -90,36 +91,23 @@ class StatisticalAbsSumPrimitive(transformer.TransformerPrimitiveBase[Inputs, Ou """ Primitive to find abs_sum of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'fbc10e6f-d75b-4815-b4c8-5ad4f2f577db', - 'version': '0.1.0', - 'name': 'Time Series Absolute Sum', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_abs_sum', - 'keywords': ['Time Series','AbsSum'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalAbsSum.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Absolute Sum', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_abs_sum', + 'keywords': ['Time Series','AbsSum'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + "hyperparams_to_tune": ['window_size'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalAbsSumPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalGmean.py b/tods/feature_analysis/StatisticalGmean.py index e88c3ec..93a7c1e 100644 --- a/tods/feature_analysis/StatisticalGmean.py +++ b/tods/feature_analysis/StatisticalGmean.py @@ -10,7 +10,7 @@ from collections import OrderedDict from scipy import sparse import os from scipy import stats - +import uuid import numpy import typing import time @@ -93,36 +93,23 @@ class StatisticalGmeanPrimitive(transformer.TransformerPrimitiveBase[Inputs, Out Primitive to find gmean of time series . Will only take positive values as inputs . """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '6be88a7d-e72d-45c6-bd3b-3191d4eff623', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_g_mean', - 'keywords': ['Time Series','Gmean'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalGmean.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_g_mean', + 'keywords': ['Time Series','Gmean'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + "hyperparams_to_tune": ['window_size'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalGmeanPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalHmean.py b/tods/feature_analysis/StatisticalHmean.py index eec6b37..9bb951c 100644 --- a/tods/feature_analysis/StatisticalHmean.py +++ b/tods/feature_analysis/StatisticalHmean.py @@ -10,6 +10,7 @@ from collections import OrderedDict from scipy import sparse import os from scipy import stats +import uuid import numpy import typing @@ -93,35 +94,24 @@ class StatisticalHmeanPrimitive(transformer.TransformerPrimitiveBase[Inputs, Out Harmonic mean only defined if all elements greater than or equal to zero """ __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '7c4bf669-26f4-4756-8e00-c3e5e89fa43c', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_h_mean', - 'keywords': ['Time Series','Hmean'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalHmean.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_h_mean', + 'keywords': ['Time Series','Hmean'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalHmeanPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalKurtosis.py b/tods/feature_analysis/StatisticalKurtosis.py index 9ae17ca..9806131 100644 --- a/tods/feature_analysis/StatisticalKurtosis.py +++ b/tods/feature_analysis/StatisticalKurtosis.py @@ -10,6 +10,7 @@ from collections import OrderedDict from scipy import sparse import os from scipy import stats +import uuid import numpy import typing @@ -91,36 +92,23 @@ class StatisticalKurtosisPrimitive(transformer.TransformerPrimitiveBase[Inputs, """ Primitive to find kurtosis of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'c86af521-05b6-4f7c-a7b9-929318d944fc', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_kurtosis', - 'keywords': ['Time Series','Kurtosis'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalKurtosis.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_kurtosis', + 'keywords': ['Time Series','Kurtosis'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalKurtosisPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMaximum.py b/tods/feature_analysis/StatisticalMaximum.py index 31dfb4b..7e23ad8 100644 --- a/tods/feature_analysis/StatisticalMaximum.py +++ b/tods/feature_analysis/StatisticalMaximum.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -91,35 +92,23 @@ class StatisticalMaximumPrimitive(transformer.TransformerPrimitiveBase[Inputs, O Primitive to find maximum of time series """ __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '3b448057-ac26-4f1b-96b6-141782f16a54', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_maximum', - 'keywords': ['Time Series','Maximum'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMaximum.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_maximum', + 'keywords': ['Time Series','Maximum'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + "hyperparams_to_tune": ['window_size'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMaximumPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMean.py b/tods/feature_analysis/StatisticalMean.py index 387305f..4aac410 100644 --- a/tods/feature_analysis/StatisticalMean.py +++ b/tods/feature_analysis/StatisticalMean.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalMeanPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outp """ Primitive to find mean of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'eaff2f35-978c-4530-a12e-061a5f0beacd', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean', - 'keywords': ['Time Series','Mean'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMean.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean', + 'keywords': ['Time Series','Mean'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMeanPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMeanAbs.py b/tods/feature_analysis/StatisticalMeanAbs.py index dbec77f..332f0e7 100644 --- a/tods/feature_analysis/StatisticalMeanAbs.py +++ b/tods/feature_analysis/StatisticalMeanAbs.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,23 @@ class StatisticalMeanAbsPrimitive(transformer.TransformerPrimitiveBase[Inputs, O """ Primitive to find mean_abs of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'c397f0b2-45da-4263-8cca-b4e1a9502918', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_abs', - 'keywords': ['Time Series','MeanAbs'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMeanAbs.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_abs', + 'keywords': ['Time Series','MeanAbs'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMeanAbsPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMeanAbsTemporalDerivative.py b/tods/feature_analysis/StatisticalMeanAbsTemporalDerivative.py index e2e06ee..257f82b 100644 --- a/tods/feature_analysis/StatisticalMeanAbsTemporalDerivative.py +++ b/tods/feature_analysis/StatisticalMeanAbsTemporalDerivative.py @@ -9,6 +9,7 @@ from numpy import ndarray from collections import OrderedDict from scipy import sparse import os +import uuid import numpy import typing @@ -90,36 +91,24 @@ class StatisticalMeanAbsTemporalDerivativePrimitive(transformer.TransformerPrimi """ Primitive to find mean_abs_temporal_derivative of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'eb571238-6229-4fe4-94b3-684f043e4dbf', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_abs_temporal_derivative', - 'keywords': ['Time Series','MeanAbsTemporalDerivative'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMeanAbsTemporalDerivative.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_abs_temporal_derivative', + 'keywords': ['Time Series','MeanAbsTemporalDerivative'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMeanAbsTemporalDerivativePrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMeanTemporalDerivative.py b/tods/feature_analysis/StatisticalMeanTemporalDerivative.py index 1372ed5..d1902f2 100644 --- a/tods/feature_analysis/StatisticalMeanTemporalDerivative.py +++ b/tods/feature_analysis/StatisticalMeanTemporalDerivative.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalMeanTemporalDerivativePrimitive(transformer.TransformerPrimitiv """ Primitive to find mean_temporal_derivative of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'bc051fbb-836b-414e-ad3e-5bf29c9f78f1', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_temporal_derivative', - 'keywords': ['Time Series','MeanTemporalDerivative'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMeanTemporalDerivative.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_mean_temporal_derivative', + 'keywords': ['Time Series','MeanTemporalDerivative'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMeanTemporalDerivativePrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMedian.py b/tods/feature_analysis/StatisticalMedian.py index 733066c..29264cd 100644 --- a/tods/feature_analysis/StatisticalMedian.py +++ b/tods/feature_analysis/StatisticalMedian.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalMedianPrimitive(transformer.TransformerPrimitiveBase[Inputs, Ou """ Primitive to find median of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '9f05a450-c1f0-49f6-971b-dcc3789174d0', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_median', - 'keywords': ['Time Series','Median'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMedian.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_median', + 'keywords': ['Time Series','Median'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + "hyperparams_to_tune": ['window_size'], + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMedianPrimitive')), + + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMedianAbsoluteDeviation.py b/tods/feature_analysis/StatisticalMedianAbsoluteDeviation.py index 1d74904..2b0cc66 100644 --- a/tods/feature_analysis/StatisticalMedianAbsoluteDeviation.py +++ b/tods/feature_analysis/StatisticalMedianAbsoluteDeviation.py @@ -14,6 +14,7 @@ from scipy import stats import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -91,36 +92,24 @@ class StatisticalMedianAbsoluteDeviationPrimitive(transformer.TransformerPrimiti """ Primitive to find median_absolute_deviation of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '36e7d739-72c3-4e6e-91b8-b2b64cbe4e12', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_median_abs_deviation', - 'keywords': ['Time Series','MedianAbsoluteDeviation'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMedianAbsoluteDeviation.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_median_abs_deviation', + 'keywords': ['Time Series','MedianAbsoluteDeviation'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMedianAbsoluteDeviationPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalMinimum.py b/tods/feature_analysis/StatisticalMinimum.py index 2f16239..ea865fa 100644 --- a/tods/feature_analysis/StatisticalMinimum.py +++ b/tods/feature_analysis/StatisticalMinimum.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalMinimumPrimitive(transformer.TransformerPrimitiveBase[Inputs, O """ Primitive to find minimum of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '255955d0-1d64-433b-b9f0-e2a1b679be45', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_minimum', - 'keywords': ['Time Series','Minimum'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalMinimum.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_minimum', + 'keywords': ['Time Series','Minimum'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalMinimumPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalSkew.py b/tods/feature_analysis/StatisticalSkew.py index e8730bd..97f79fa 100644 --- a/tods/feature_analysis/StatisticalSkew.py +++ b/tods/feature_analysis/StatisticalSkew.py @@ -14,6 +14,7 @@ from scipy import stats import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -91,36 +92,24 @@ class StatisticalSkewPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outp """ Primitive to find skew of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'cd154af5-8f98-480a-8a72-6a22365c3c6f', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_skew', - 'keywords': ['Time Series','Skew'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalSkew.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_skew', + 'keywords': ['Time Series','Skew'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalSkewPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalStd.py b/tods/feature_analysis/StatisticalStd.py index 4b9ade2..bd41999 100644 --- a/tods/feature_analysis/StatisticalStd.py +++ b/tods/feature_analysis/StatisticalStd.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalStdPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outpu """ Primitive to find std of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '652fc98a-8bd9-45a2-8005-dc781bf0c136', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_std', - 'keywords': ['Time Series','Std'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalStd.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_std', + 'keywords': ['Time Series','Std'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalStdPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalVar.py b/tods/feature_analysis/StatisticalVar.py index 86d54e8..65aee21 100644 --- a/tods/feature_analysis/StatisticalVar.py +++ b/tods/feature_analysis/StatisticalVar.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,23 @@ class StatisticalVarPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outpu """ Primitive to find var of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '9b237f3f-c638-44f4-adb1-f3f24a173711', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_var', - 'keywords': ['Time Series','Var'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalVar.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_var', + 'keywords': ['Time Series','Var'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalVarPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalVariation.py b/tods/feature_analysis/StatisticalVariation.py index 834fd3e..6ed78aa 100644 --- a/tods/feature_analysis/StatisticalVariation.py +++ b/tods/feature_analysis/StatisticalVariation.py @@ -14,6 +14,7 @@ from scipy import stats import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -91,36 +92,25 @@ class StatisticalVariationPrimitive(transformer.TransformerPrimitiveBase[Inputs, """ Primitive to find variation of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'ea6e852f-164b-4245-b5e6-02fde55c5491', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_variation', - 'keywords': ['Time Series','Variation'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalVariation.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_variation', + 'keywords': ['Time Series','Variation'], + 'source': { + 'name': 'DATA Lab at Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalVariationPrimitive')), + + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalVecSum.py b/tods/feature_analysis/StatisticalVecSum.py index 469174a..fe0b8e6 100644 --- a/tods/feature_analysis/StatisticalVecSum.py +++ b/tods/feature_analysis/StatisticalVecSum.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -90,36 +91,24 @@ class StatisticalVecSumPrimitive(transformer.TransformerPrimitiveBase[Inputs, Ou """ Primitive to find vec_sum of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'a5ff2fc8-657e-4c4f-8a4e-6949dd37bf9c', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_vec_sum', - 'keywords': ['Time Series','VecSum'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalVecSum.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_vec_sum', + 'keywords': ['Time Series','VecSum'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalVecSumPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalWillisonAmplitude.py b/tods/feature_analysis/StatisticalWillisonAmplitude.py index 3cad0fa..87bd9e4 100644 --- a/tods/feature_analysis/StatisticalWillisonAmplitude.py +++ b/tods/feature_analysis/StatisticalWillisonAmplitude.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -94,36 +95,24 @@ class StatisticalWillisonAmplitudePrimitive(transformer.TransformerPrimitiveBase """ Primitive to find willison amplitude of time series """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': 'f1dee9fb-7e3b-499d-a559-7979fa4a2e1c', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_willison_amplitude', - 'keywords': ['Time Series','WillisonAmplitude'], - "hyperparams_to_tune": ['window_size'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalWillisonAmplitude.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_willison_amplitude', + 'keywords': ['Time Series','WillisonAmplitude'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + "hyperparams_to_tune": ['window_size'], + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalWillisonAmplitudePrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/StatisticalZeroCrossing.py b/tods/feature_analysis/StatisticalZeroCrossing.py index 30f3ddf..b8cbe8f 100644 --- a/tods/feature_analysis/StatisticalZeroCrossing.py +++ b/tods/feature_analysis/StatisticalZeroCrossing.py @@ -13,6 +13,7 @@ import os import numpy import typing import time +import uuid from d3m import container from d3m.primitive_interfaces import base, transformer @@ -86,35 +87,23 @@ class StatisticalZeroCrossingPrimitive(transformer.TransformerPrimitiveBase[Inpu """ Primitive to find zero_crossing of time series. A column indicating zero crossing on ith row . 1 indicates crossing 0 is for normal """ - __author__ = "DATA Lab at Texas A&M University", - metadata = metadata_base.PrimitiveMetadata( - { - 'id': '1064c78f-37e2-45a1-94a3-401a6726c220', - 'version': '0.1.0', - 'name': 'Time Series Decompostional', - 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_zero_crossing', - 'keywords': ['Time Series','ZeroCrossing'], - 'source': { - 'name': 'DATA Lab at Texas A&M University', - 'uris': ['https://gitlab.com/lhenry15/tods.git','https://gitlab.com/lhenry15/tods/-/blob/devesh/tods/feature_analysis/StatisticalZeroCrossing.py'], - 'contact': 'mailto:khlai037@tamu.edu' - - }, - 'installation': [ - {'type': metadata_base.PrimitiveInstallationType.PIP, - 'package_uri': 'git+https://gitlab.com/lhenry15/tods.git@{git_commit}#egg=TODS'.format( - git_commit=d3m_utils.current_git_commit(os.path.dirname(__file__)), - ), - } - - ], - 'algorithm_types': [ - metadata_base.PrimitiveAlgorithmType.DATA_PROFILING, - ], - 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - - } - ) + + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + 'name': 'Time Series Decompostional', + 'python_path': 'd3m.primitives.tods.feature_analysis.statistical_zero_crossing', + 'keywords': ['Time Series','ZeroCrossing'], + 'source': { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu' + }, + 'version': '0.1.0', + 'algorithm_types': [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + 'primitive_family': metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'StatisticalZeroCrossingPrimitive')), + }) def produce(self, *, inputs: Inputs, timeout: float = None, iterations: int = None) -> base.CallResult[Outputs]: """ diff --git a/tods/feature_analysis/TRMF.py b/tods/feature_analysis/TRMF.py index 9337c24..064fb18 100644 --- a/tods/feature_analysis/TRMF.py +++ b/tods/feature_analysis/TRMF.py @@ -7,6 +7,7 @@ import sklearn import numpy as np import typing import time +import uuid # Custom import commands if any from sklearn.decomposition.truncated_svd import TruncatedSVD @@ -222,17 +223,21 @@ class TRMFPrimitive(transformer.TransformerPrimitiveBase[Inputs, Outputs, Hyperp Which can be found there: http://www.cs.utexas.edu/~rofuyu/papers/tr-mf-nips.pdf """ - __author__: "DATA Lab at Texas A&M University" metadata = metadata_base.PrimitiveMetadata({ - "name": "Temporal Regularized Matrix Factorization Primitive", - "python_path": "d3m.primitives.tods.feature_analysis.trmf", - "source": {'name': 'DATA Lab at Texas A&M University', 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods.git', 'https://gitlab.com/lhenry15/tods/-/blob/Junjie/anomaly-primitives/anomaly_primitives/TRMF.py']}, - "algorithm_types": [metadata_base.PrimitiveAlgorithmType.TEMPORAL_REGULARIZED_MATRIX_FACTORIZATION, ], - "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, - "id": "d6be6941-61d0-4cbd-85ef-a10c86aa40b1", - "hyperparams_to_tune": ['lags', 'K', 'lambda_f', 'lambda_x', 'lambda_w', 'alpha', 'eta', 'max_iter', 'F_step', 'X_step', 'W_step'], - "version": "0.0.1", + "__author__": "DATA Lab @ Texas A&M University", + "name": "Temporal Regularized Matrix Factorization Primitive", + "python_path": "d3m.primitives.tods.feature_analysis.trmf", + "source": { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu', + }, + "version": "0.0.1", + "hyperparams_to_tune": ['lags', 'K', 'lambda_f', 'lambda_x', 'lambda_w', 'alpha', 'eta', 'max_iter', 'F_step', 'X_step', 'W_step'], + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.FEATURE_CONSTRUCTION, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'TRMFPrimitive')), }) diff --git a/tods/feature_analysis/WaveletTransform.py b/tods/feature_analysis/WaveletTransform.py index 00ea7d6..6725b00 100644 --- a/tods/feature_analysis/WaveletTransform.py +++ b/tods/feature_analysis/WaveletTransform.py @@ -174,20 +174,22 @@ class WaveletTransformPrimitive(transformer.TransformerPrimitiveBase[Inputs, Out None """ - __author__ = "DATALAB @Taxes A&M University" - metadata = metadata_base.PrimitiveMetadata( - { - "name": "Wavelet_transformation", - "python_path": "d3m.primitives.tods.feature_analysis.wavelet_transform", - "source": {'name': "DATALAB @Taxes A&M University", 'contact': 'mailto:khlai037@tamu.edu', - 'uris': ['https://gitlab.com/lhenry15/tods.git']}, - "algorithm_types": [metadata_base.PrimitiveAlgorithmType.FREQUENCY_TRANSFORM, ], - "primitive_family": metadata_base.PrimitiveFamily.FEATURE_EXTRACTION, - "version": "0.0.1", - "hyperparams_to_tune": ['wavelet', 'mode', 'axis', 'level'], - "id": str(uuid.uuid3(uuid.NAMESPACE_DNS, 'WaveletTransformer')), + metadata = metadata_base.PrimitiveMetadata({ + "__author__": "DATA Lab @ Texas A&M University", + "name": "Wavelet_transformation", + "python_path": "d3m.primitives.tods.feature_analysis.wavelet_transform", + "source": { + 'name': "DATA Lab @ Taxes A&M University", + 'contact': 'mailto:khlai037@tamu.edu', }, - ) + "version": "0.0.1", + "hyperparams_to_tune": ['wavelet', 'mode', 'axis', 'level'], + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.FEATURE_EXTRACTION, + "id": str(uuid.uuid3(uuid.NAMESPACE_DNS, 'WaveletTransformer')), + }) def __init__(self, *, hyperparams: Hyperparams) -> None: super().__init__(hyperparams=hyperparams) # , random_seed=random_seed, docker_containers=docker_containers) diff --git a/tods/timeseries_processing/HoltSmoothing.py b/tods/timeseries_processing/HoltSmoothing.py index e48b62a..e6b7d47 100644 --- a/tods/timeseries_processing/HoltSmoothing.py +++ b/tods/timeseries_processing/HoltSmoothing.py @@ -112,20 +112,20 @@ class HoltSmoothingPrimitive(UnsupervisedLearnerPrimitiveBase[Inputs, Outputs, P """ metadata = metadata_base.PrimitiveMetadata({ - "__author__": "DATA Lab @ Texas A&M University", - "name": "statsmodels.preprocessing.HoltSmoothing", - "python_path": "d3m.primitives.tods.timeseries_processing.transformation.holt_smoothing", - "source": { - 'name': 'DATA Lab @ Texas A&M University', - 'contact': 'mailto:khlai037@tamu.edu', - }, - "version": "0.0.1", - "hyperparams_to_tune": ['endog','use_columns'], - "algorithm_types": [ - metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, - ], - "primitive_family": metadata_base.PrimitiveFamily.DATA_PREPROCESSING, - 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'HoltSmoothingPrimitive')), + "__author__": "DATA Lab @ Texas A&M University", + "name": "statsmodels.preprocessing.HoltSmoothing", + "python_path": "d3m.primitives.tods.timeseries_processing.transformation.holt_smoothing", + "source": { + 'name': 'DATA Lab @ Texas A&M University', + 'contact': 'mailto:khlai037@tamu.edu', + }, + "version": "0.0.1", + "hyperparams_to_tune": ['endog','use_columns'], + "algorithm_types": [ + metadata_base.PrimitiveAlgorithmType.TODS_PRIMITIVE, + ], + "primitive_family": metadata_base.PrimitiveFamily.DATA_PREPROCESSING, + 'id': str(uuid.uuid3(uuid.NAMESPACE_DNS, 'HoltSmoothingPrimitive')), }) def __init__(self, *,