Deep Learning Algorithm Implementations 1.0.0
C++ implementations of fundamental deep learning algorithms
Loading...
Searching...
No Matches
dl::utils::Preprocessor Class Reference

#include <data_loader.hpp>

Static Public Member Functions

static MatrixD normalize (const MatrixD &data, double min_val=0.0, double max_val=1.0)
 Normalize data to specified range.
 
static MatrixD standardize (const MatrixD &data)
 Standardize data to zero mean and unit variance.
 
static MatrixD one_hot_encode (const std::vector< int > &labels, size_t num_classes)
 Convert categorical labels to one-hot encoding.
 
static std::tuple< Dataset< double >, Dataset< double >, Dataset< double > > train_val_test_split (const Dataset< double > &data, double train_ratio=0.7, double val_ratio=0.15)
 Split dataset into training, validation, and test sets.
 

Detailed Description

Definition at line 280 of file data_loader.hpp.

Member Function Documentation

◆ normalize()

MatrixD dl::utils::Preprocessor::normalize ( const MatrixD data,
double  min_val = 0.0,
double  max_val = 1.0 
)
static

Normalize data to specified range.

Parameters
dataInput data matrix
min_valMinimum value of output range
max_valMaximum value of output range
Returns
Normalized data matrix
Note
Uses min-max normalization: (x - min) / (max - min) * (max_val - min_val) + min_val
Examples
/home/runner/work/deep-learning-algo-impls/deep-learning-algo-impls/include/utils/data_loader.hpp.

Definition at line 178 of file data_loader.cpp.

◆ one_hot_encode()

MatrixD dl::utils::Preprocessor::one_hot_encode ( const std::vector< int > &  labels,
size_t  num_classes 
)
static

Convert categorical labels to one-hot encoding.

Parameters
labelsVector of integer class labels
num_classesTotal number of classes
Returns
Matrix with one-hot encoded labels
Note
Each row represents one sample, columns represent classes
Examples
/home/runner/work/deep-learning-algo-impls/deep-learning-algo-impls/include/utils/data_loader.hpp.

Definition at line 200 of file data_loader.cpp.

◆ standardize()

MatrixD dl::utils::Preprocessor::standardize ( const MatrixD data)
static

Standardize data to zero mean and unit variance.

Parameters
dataInput data matrix
Returns
Standardized data matrix
Note
Uses z-score normalization: (x - mean) / std_dev
Examples
/home/runner/work/deep-learning-algo-impls/deep-learning-algo-impls/include/utils/data_loader.hpp.

Definition at line 189 of file data_loader.cpp.

◆ train_val_test_split()

std::tuple< Dataset< double >, Dataset< double >, Dataset< double > > dl::utils::Preprocessor::train_val_test_split ( const Dataset< double > &  data,
double  train_ratio = 0.7,
double  val_ratio = 0.15 
)
static

Split dataset into training, validation, and test sets.

Parameters
dataInput dataset to split
train_ratioFraction of data for training (default: 0.7)
val_ratioFraction of data for validation (default: 0.15)
Returns
Tuple of (training, validation, test) datasets
Note
Test ratio is automatically calculated as 1 - train_ratio - val_ratio
Examples
/home/runner/work/deep-learning-algo-impls/deep-learning-algo-impls/include/utils/data_loader.hpp.

Definition at line 216 of file data_loader.cpp.


The documentation for this class was generated from the following files: