10#ifndef FlexNN_UTILITY_H
11#define FlexNN_UTILITY_H
28Eigen::MatrixXd
oneHotEncode(
const Eigen::VectorXd &Y,
int num_classes);
37void readCSV_XY(
const std::string &filename, Eigen::MatrixXd &X, Eigen::VectorXd &Y);
70std::vector<std::pair<Eigen::MatrixXd, Eigen::VectorXd>>
splitXY(
71 const Eigen::MatrixXd &X, const Eigen::VectorXd &Y,
72 const std::vector<
double> &proportions);
86std::vector<std::pair<Eigen::MatrixXd, Eigen::VectorXd>>
splitXY(
87 const Eigen::MatrixXd &X, const Eigen::VectorXd &Y,
88 const std::vector<
double> &proportions, uint32_t seed);
Namespace for the FlexNN neural network library.
Definition Activation.hpp:31
std::vector< std::pair< Eigen::MatrixXd, Eigen::VectorXd > > splitXY(const Eigen::MatrixXd &X, const Eigen::VectorXd &Y, const std::vector< double > &proportions)
Splits dataset into multiple sets by proportions (uses global seed).
Definition Utility.cpp:85
void setRandomSeed(uint32_t seed)
Set the global RNG seed for splitXY (deterministic splits).
Definition Utility.cpp:37
Eigen::MatrixXd oneHotEncode(const Eigen::VectorXd &Y, int num_classes)
One-hot encodes a vector of class labels.
Definition Utility.cpp:44
uint32_t getRandomSeed() noexcept
Get the current global RNG seed.
Definition Utility.cpp:42
void readCSV_XY(const std::string &filename, Eigen::MatrixXd &X, Eigen::VectorXd &Y)
Reads a CSV where first column is label, rest are features.
Definition Utility.cpp:53