qxmt.datasets.generate package#

Submodules#

Module contents#

class qxmt.datasets.generate.GeneratedDataLoader(task_type, generate_method, random_seed, params={})#

Bases: object

This class loads the generated data and label. The loaded data and label are returned as numpy arrays (X and y). The dataset is generated by the specified task and method.

Supported task types: - classification - regression

Supported generate methods: - linear

Examples

>>> loader = GeneratedDataLoader(task_type="classification", generate_method="linear", random_seed=42)
>>> X, y = loader.load()
>>> loader = GeneratedDataLoader(task_type="regression", generate_method="linear", random_seed=42)
>>> X, y = loader.load()
Parameters:
  • task_type (str)

  • generate_method (str)

  • random_seed (int)

  • params (dict[str, Any])

__init__(task_type, generate_method, random_seed, params={})#

Initialize the GeneratedDataLoader.

Parameters:
  • task_type (str) – dataset task type

  • generate_method (str) – generate dataset method

  • random_seed (int) – random seed for reproducibility

  • params (dict[str, Any]]) – additional parameters for dataset generation

Return type:

None

load()#

Load dummy dataset. The dataset is generated by the specified task and method.

Parameters:
  • task_type (str) – dataset task type. “classification” or “regression” is supported.

  • generate_method (str) – generate dataset method. “linear” is supported.

  • random_seed (int) – random seed for reproducibility.

  • params (dict[str, Any]]) – additional parameters for dataset generation.

Raises:

ValueError – not supported task_type or generate_method

Returns:

generated data and label

Return type:

tuple[np.ndarray, np.ndarray]

qxmt.datasets.generate.generate_linear_regression_data(n_samples=100, n_features=2, noise=0.1, scale=1.0, random_seed=None)#

Generate random data for linear regression.

Parameters:
  • n_samples (int, optional) – Number of samples. Defaults to 100.

  • n_features (int, optional) – Number of features. Defaults to 2.

  • noise (float, optional) – Noise level to add to the target. Defaults to 0.1.

  • scale (float, optional) – Scale of the data. Defaults to 1.0.

  • random_seed (int, optional) – Random seed for reproducibility. Defaults to None.

Returns:

Generated features and target values

Return type:

Tuple[np.ndarray, np.ndarray]

qxmt.datasets.generate.generate_linear_separable_data(n_samples=100, n_features=2, n_classes=2, noise=0.1, scale=1.0, random_seed=None)#

Generate random linear separable data for multi-class classification.

Parameters:
  • n_samples (int, optional) – sample size. Defaults to 100.

  • n_features (int, optional) – dimension of feature. Defaults to 2.

  • n_classes (int, optional) – number of classes. Defaults to 2.

  • noise (float, optional) – noise level. Defaults to 0.1.

  • scale (float, optional) – scale of data. Defaults to 1.0.

  • random_seed (int, optional) – random seed. Defaults to None.

Returns:

generated data and label

Return type:

tuple[np.ndarray, np.ndarray]