SG++-Doxygen-Documentation
|
DBMatOfflineChol specialization that uses a parallel, iterative incomplete cholesky factorization on a dense matrix. More...
#include <DBMatOfflineDenseIChol.hpp>
Public Member Functions | |
void | choleskyModification (Grid &grid, datadriven::DensityEstimationConfiguration &densityEstimationConfig, size_t newPoints, std::list< size_t > deletedPoints, double lambda) override |
Updates offline cholesky factorization based on coarsed (deletedPoints) and refined (newPoints) gridPoints. More... | |
DBMatOffline * | clone () override |
Interface for the clone idiom. More... | |
DBMatOfflineDenseIChol () | |
DBMatOfflineDenseIChol (const std::string &fileName) | |
void | decomposeMatrix (RegularizationConfiguration ®ularizationConfig, DensityEstimationConfiguration &densityEstimationConfig) override |
Decomposes the matrix according to the chosen decomposition type. More... | |
sgpp::datadriven::MatrixDecompositionType | getDecompositionType () override |
Returns the decomposition type of the DBMatOffline object. More... | |
Public Member Functions inherited from sgpp::datadriven::DBMatOfflineChol | |
DBMatOfflineChol () | |
DBMatOfflineChol (const std::string &fileName) | |
bool | isRefineable () override |
Only Offline objects based on Cholesky decomposition, or orthogonal adaptivity can be refined. More... | |
Public Member Functions inherited from sgpp::datadriven::DBMatOfflineGE | |
void | buildMatrix (Grid *grid, RegularizationConfiguration ®ularizationConfig) override |
Builds the right hand side matrix with identity regularization term. More... | |
DBMatOfflineGE (const std::string &fileName) | |
Public Member Functions inherited from sgpp::datadriven::DBMatOffline | |
DBMatOffline (const std::string &fileName) | |
Constructor Create offline object from serialized offline object. More... | |
DBMatOffline (const DBMatOffline &rhs) | |
Copy Constructor. More... | |
DBMatOffline (DBMatOffline &&rhs)=default | |
Default move constructor. More... | |
DataMatrix & | getDecomposedMatrix () |
Get a reference to the decomposed matrix. More... | |
virtual size_t | getGridSize () |
Returns the dimensionality of the quadratic lhs matrix (i.e. More... | |
DataMatrix & | getLhsMatrix_ONLY_FOR_TESTING () |
Allows access to lhs matrix, which is meant ONLY FOR TESTING. More... | |
DBMatOffline & | operator= (const DBMatOffline &rhs) |
Default copy assign operator. More... | |
DBMatOffline & | operator= (DBMatOffline &&rhs)=default |
Default move assign operator. More... | |
void | printMatrix () |
Prints the matrix onto standard output. More... | |
virtual void | store (const std::string &fileName) |
Serialize the DBMatOffline Object. More... | |
virtual | ~DBMatOffline ()=default |
Default virtual destructor. More... | |
Static Public Member Functions | |
static void | ichol (const DataMatrix &matrix, DataMatrix &result, size_t sweeps=4, size_t startRow=0) |
perform parlallel incomplete cholesky factorization of a matrix. More... | |
Additional Inherited Members | |
Public Attributes inherited from sgpp::datadriven::DBMatOffline | |
std::vector< std::vector< size_t > > | interactions |
Protected Member Functions inherited from sgpp::datadriven::DBMatOfflineChol | |
void | choleskyAddPoint (DataVector &newCol, size_t size) |
Updates the cholesky factor when a new grid point is added (e.g. More... | |
void | choleskyPermutation (size_t k, size_t l, size_t job) |
Permutes the rows of the cholesky factor based on permutations of the system matrix (e.g. More... | |
Protected Member Functions inherited from sgpp::datadriven::DBMatOfflineGE | |
DBMatOfflineGE () | |
Protected Member Functions inherited from sgpp::datadriven::DBMatOffline | |
DBMatOffline () | |
void | parseInter (const std::string &fileName, std::vector< std::vector< size_t >> &interactions) const |
Read the Interactionsterms from a serialized DBMatOfflibe object. More... | |
Protected Attributes inherited from sgpp::datadriven::DBMatOffline | |
bool | isConstructed |
bool | isDecomposed |
DataMatrix | lhsMatrix |
DBMatOfflineChol specialization that uses a parallel, iterative incomplete cholesky factorization on a dense matrix.
The current implementation is a proof of concept.
sgpp::datadriven::DBMatOfflineDenseIChol::DBMatOfflineDenseIChol | ( | ) |
|
explicit |
|
overridevirtual |
Updates offline cholesky factorization based on coarsed (deletedPoints) and refined (newPoints) gridPoints.
We ignore coarsening.
grid | the underlying grid |
densityEstimationConfig | configuration for the density estimation |
newPoints | amount of refined points |
deletedPoints | list of indices of last coarsed points that are ignored. |
lambda | the regularization parameter |
Reimplemented from sgpp::datadriven::DBMatOfflineChol.
References sgpp::base::DataMatrix::get(), sgpp::base::Grid::getDimension(), sgpp::base::HashGridStorage::getLevelIndexArraysForEval(), sgpp::base::DataMatrix::getNrows(), sgpp::base::Grid::getSize(), sgpp::base::Grid::getStorage(), python.statsfileInfo::i, ichol(), sgpp::datadriven::DensityEstimationConfiguration::iCholSweepsRefine_, python.utils.statsfile2gnuplot::j, lambda, level, sgpp::datadriven::DBMatOffline::lhsMatrix, sgpp::base::DataMatrix::set(), and python.utils.pca_normalize_dataset::u.
|
overridevirtual |
Interface for the clone idiom.
Reimplemented from sgpp::datadriven::DBMatOfflineChol.
|
overridevirtual |
Decomposes the matrix according to the chosen decomposition type.
The number of rows of the stored result depends on the decomposition type.
regularizationConfig | the regularization configuration |
densityEstimationConfig | the density estimation configuration |
Reimplemented from sgpp::datadriven::DBMatOfflineChol.
References sgpp::base::DataMatrix::get(), sgpp::base::DataMatrix::getNcols(), sgpp::base::DataMatrix::getNrows(), python.statsfileInfo::i, ichol(), sgpp::datadriven::DensityEstimationConfiguration::iCholSweepsDecompose_, sgpp::datadriven::DBMatOffline::isConstructed, sgpp::datadriven::DBMatOffline::isDecomposed, python.utils.statsfile2gnuplot::j, sgpp::datadriven::DBMatOffline::lhsMatrix, and python.utils.pca_normalize_dataset::u.
|
overridevirtual |
Returns the decomposition type of the DBMatOffline object.
Reimplemented from sgpp::datadriven::DBMatOfflineChol.
References sgpp::datadriven::DenseIchol.
|
static |
perform parlallel incomplete cholesky factorization of a matrix.
This is an out of place operation.
matrix | the matrix to be decomposed |
result | data matrix that will hold the decomposed matrix |
sweeps | how many iterations of the algorithm are required until the result is good enough? |
startRow | on which row to start the decomposition (needed for refinement) |
References sgpp::base::DataMatrix::get(), sgpp::base::DataMatrix::getNrows(), sgpp::base::DataMatrix::getSize(), python.statsfileInfo::i, python.utils.statsfile2gnuplot::j, create_scripts::s, sgpp::base::DataMatrix::set(), and python.utils.pca_normalize_dataset::u.
Referenced by choleskyModification(), sgpp::datadriven::DBMatDMSDenseIChol::choleskyUpdateLambda(), and decomposeMatrix().