qbiocode.utils package#

Utilities Module for QBioCode#

This module provides helper functions and utilities for data preprocessing, model management, IBM Quantum account handling, and result analysis.

Available Functions#

  • scaler_fn: Data scaling and normalization

  • feature_encoding: Encode features for quantum circuits

  • qml_winner: Identify best performing quantum model

  • checkpoint_restart: Save and load model checkpoints

  • track_progress: Track progress of dataset processing

  • combine_results: Combine evaluation results from multiple runs

  • find_duplicate_files: Find duplicate entries in datasets

  • find_string_in_files: Search for strings in files

  • generate_qml_experiment_configs: Generate config files for QML grid search

  • get_creds: Get IBM Quantum credentials

  • instantiate_runtime_service: Instantiate Qiskit Runtime Service

  • get_backend_session: Get backend session for quantum execution

  • get_sampler: Get sampler primitive

  • get_estimator: Get estimator primitive

  • get_ansatz: Get quantum ansatz circuit

  • get_feature_map: Get quantum feature map

  • get_optimizer: Get classical optimizer

  • normalize_data: Normalize data for quantum state encoding

  • label_to_array: Convert binary labels to one-hot encoding

  • prepare_training_set: Prepare balanced training subset

  • retrieve_probabilities: Extract probabilities from measurement counts

  • execute_circuit: Execute quantum circuit on Aer simulator

  • tutorial_data_path: Locate a tutorial fixture across the repo data directories

  • tutorial_data_dirs: The directories tutorial_data_path searches, in order

Usage#

>>> from qbiocode.utils import scaler_fn, feature_encoding
>>> # Scale data
>>> X_scaled = scaler_fn(X, scaling='StandardScaler')
>>> # Encode features for quantum circuits
>>> X_encoded = feature_encoding(X, feature_encoding='OneHotEncoder')
>>> # Prepare data for quantum ensemble
>>> from qbiocode.utils import normalize_data, prepare_training_set
>>> X_norm = normalize_data(X[0])
>>> X_train, Y_train = prepare_training_set(X, y, n=4, seed=42)

Submodules:

Summary#

__all__ Functions:

checkpoint_restart

Identify completed datasets from a previous run to enable checkpoint restart.

combine_results

Combine results from interrupted and resumed computational jobs.

execute_circuit

Execute quantum circuit on Aer simulator.

feature_encoding

Encode categorical features using various encoding strategies.

find_duplicate_files

Find files with identical content in a directory.

find_string_in_files

Search for a specific string in all files within a directory.

generate_qml_experiment_configs

Generate YAML configuration files for quantum ML hyperparameter grid search.

get_ansatz

This function returns an ansatz based on the specified type and parameters.

get_backend_session

This function to get the backend and session for the specified primitive.

get_creds

This function determines the user’s IBM Quantum channel, instance, and token, using values provided within the config.yaml file or as defined within the user’s qiskit configuration from provided qiskit_json_path specified in the config.yaml file, and then parses its contents.

get_estimator

This function creates an Estimator instance with specified options.

get_feature_map

This function returns a feature map based on the specified type and parameters.

get_optimizer

This function returns an optimizer based on the specified type and parameters.

get_sampler

This function creates a Sampler instance with specified options.

instantiate_runtime_service

This function provides a quick way to instantiate QiskitRuntimeService in one place.

label_to_array

Convert binary labels to one-hot encoded arrays.

normalize_data

Normalize data vector for quantum state encoding.

prepare_training_set

Select and prepare balanced training subset for quantum ensemble.

qml_winner

This function finds data sets where QML was beneficial (higher F1 scores than CML) and create new .csv files with the relevant evaluation and performance for these specific datasets, for further analysis.

retrieve_probabilities

Extract probability predictions from measurement counts.

scaler_fn

Apply scaling transformation to input data.

track_progress

Track progress of a computational job by checking for completed datasets.

tutorial_data_dirs

Return the directories tutorial_data_path() searches, in order.

tutorial_data_path

Return the absolute path of a tutorial fixture.