Multivariate Point Process Package
0.1
|
Optimizer encapsulates a collection of optimization algorithms used in the toolbox. More...
#include "include/Optimizer.h"
Public Member Functions | |
Optimizer (IProcess *process) | |
The constructor. More... | |
void | SGD (const double &gamma0, const unsigned &ini_max_iter, const std::vector< Sequence > &data) |
Stochastic gradient descend. More... | |
void | PLBFGS (const double &LB, const double &UB) |
Projected LBFGS. More... | |
void | ProximalGroupLasso (const double &gamma0, const double &lambda, const unsigned &ini_max_iter, const unsigned &group_size) |
Proximal method with group lasso type of regularization. More... | |
void | ProximalGroupLassoForHawkes (const double &gamma0, const double &lambda, const unsigned &ini_max_iter, const unsigned &group_size) |
Proximal method with group lasso type of regularization for fitting Hawkes processes. More... | |
void | ProximalNuclear (const double &lambda, const double &rho, const unsigned &ini_max_iter, const Eigen::VectorXd &trueparameters) |
Proximal method with nuclear norm regularization. More... | |
void | ProximalFrankWolfe (const double &gamma0, const double &lambda, const double &rho, const double &ub_alpha, const unsigned &ini_max_iter, const Eigen::VectorXd &trueparameters) |
Proximal method using conditional gradient update. More... | |
void | ProximalFrankWolfe (const double &gamma0, const double &lambda, const double &rho, const double &ub_alpha, const unsigned &ini_max_iter) |
Proximal method using conditional gradient update. More... | |
void | ProximalFrankWolfeForLowRankHawkes (const double &gamma0, const double &lambda0, const double &lambda, const double &ub_lambda0, const double &ub_alpha, const double &rho, const unsigned &ini_max_iter, const unsigned &num_rows, const unsigned &num_cols, const Eigen::MatrixXd &TrueLambda0, const Eigen::MatrixXd &TrueAlpha) |
Proximal method using conditional gradient update for Low-rank Hawkes process. More... | |
void | ProximalFrankWolfeForLowRankHawkes (const double &gamma0, const double &lambda0, const double &lambda, const double &ub_lambda0, const double &ub_alpha, const double &rho, const unsigned &ini_max_iter, const unsigned &num_rows, const unsigned &num_cols) |
Proximal method using conditional gradient update for Low-rank Hawkes process. More... | |
Optimizer encapsulates a collection of optimization algorithms used in the toolbox.
Definition at line 17 of file Optimizer.h.
|
inline |
The constructor.
process | the given point process model to fit. |
Definition at line 90 of file Optimizer.h.
void Optimizer::PLBFGS | ( | const double & | LB, |
const double & | UB | ||
) |
Projected LBFGS.
[in] | LB | lower bound of the parameters. |
[in] | UB | upper bound of the parameters. |
Definition at line 230 of file Optimizer.cc.
void Optimizer::ProximalFrankWolfe | ( | const double & | gamma0, |
const double & | lambda, | ||
const double & | rho, | ||
const double & | ub_alpha, | ||
const unsigned & | ini_max_iter, | ||
const Eigen::VectorXd & | trueparameters | ||
) |
Proximal method using conditional gradient update.
gamma0 | initial learning rate. |
lambda | regularization coefficient. |
rho | coefficient to enforce the low-rank constraint. |
ub_alpha | upper bound of the nuclear norm of the excitation matrix. |
ini_max_iter | initial maximum number of iterations. |
trueparameters | true model parameters to compare with the current solution. |
Definition at line 709 of file Optimizer.cc.
void Optimizer::ProximalFrankWolfe | ( | const double & | gamma0, |
const double & | lambda, | ||
const double & | rho, | ||
const double & | ub_alpha, | ||
const unsigned & | ini_max_iter | ||
) |
Proximal method using conditional gradient update.
gamma0 | initial learning rate. |
lambda | regularization coefficient. |
rho | coefficient to enforce the low-rank constraint. |
ub_alpha | upper bound of the nuclear norm of the excitation matrix. |
ini_max_iter | initial maximum number of iterations. |
Definition at line 785 of file Optimizer.cc.
void Optimizer::ProximalFrankWolfeForLowRankHawkes | ( | const double & | gamma0, |
const double & | lambda0, | ||
const double & | lambda, | ||
const double & | ub_lambda0, | ||
const double & | ub_alpha, | ||
const double & | rho, | ||
const unsigned & | ini_max_iter, | ||
const unsigned & | num_rows, | ||
const unsigned & | num_cols, | ||
const Eigen::MatrixXd & | TrueLambda0, | ||
const Eigen::MatrixXd & | TrueAlpha | ||
) |
Proximal method using conditional gradient update for Low-rank Hawkes process.
gamma0 | initial learning rate. |
lambda0 | regularization coefficient for the base intensity function. |
lambda | regularization coefficient for the excitation matrix. |
ub_lambda0 | upper bound of the nuclear norm of the base intensity matrix. |
ub_alpha | upper bound of the nuclear norm of the excitation matrix. |
rho | coefficient to enforce the low-rank constraint. |
ini_max_iter | initial maximum number of iterations. |
num_rows | the number of rows (or users) of the base intensity (or excitation) matrix. |
num_cols | the number of cols (or items) of the base intensity (or excitation) matrix. |
TrueLambda0 | true model parameters of the base intensity matrix to compare with the current solution. |
TrueAlpha | true model parameters of the excitation matrix to compare with the current solution. |
Definition at line 861 of file Optimizer.cc.
void Optimizer::ProximalFrankWolfeForLowRankHawkes | ( | const double & | gamma0, |
const double & | lambda0, | ||
const double & | lambda, | ||
const double & | ub_lambda0, | ||
const double & | ub_alpha, | ||
const double & | rho, | ||
const unsigned & | ini_max_iter, | ||
const unsigned & | num_rows, | ||
const unsigned & | num_cols | ||
) |
Proximal method using conditional gradient update for Low-rank Hawkes process.
gamma0 | initial learning rate. |
lambda0 | regularization coefficient for the base intensity function. |
lambda | regularization coefficient for the excitation matrix. |
ub_lambda0 | upper bound of the nuclear norm of the base intensity matrix. |
ub_alpha | upper bound of the nuclear norm of the excitation matrix. |
rho | coefficient to enforce the low-rank constraint. |
ini_max_iter | initial maximum number of iterations. |
num_rows | the number of rows (or users) of the base intensity (or excitation) matrix. |
num_cols | the number of cols (or items) of the base intensity (or excitation) matrix. |
Definition at line 953 of file Optimizer.cc.
void Optimizer::ProximalGroupLasso | ( | const double & | gamma0, |
const double & | lambda, | ||
const unsigned & | ini_max_iter, | ||
const unsigned & | group_size | ||
) |
Proximal method with group lasso type of regularization.
gamma0 | initial learning rate. |
lambda | regularization coefficient. |
ini_max_iter | initial maximum number of iterations. |
group_size | the size of the entire parameter vector to be pushed into zero. |
Definition at line 454 of file Optimizer.cc.
void Optimizer::ProximalGroupLassoForHawkes | ( | const double & | gamma0, |
const double & | lambda, | ||
const unsigned & | ini_max_iter, | ||
const unsigned & | group_size | ||
) |
Proximal method with group lasso type of regularization for fitting Hawkes processes.
gamma0 | initial learning rate. |
lambda | regularization coefficient. |
ini_max_iter | initial maximum number of iterations. |
group_size | the size of the entire parameter vector to be pushed into zero. |
Definition at line 579 of file Optimizer.cc.
void Optimizer::ProximalNuclear | ( | const double & | lambda, |
const double & | rho, | ||
const unsigned & | ini_max_iter, | ||
const Eigen::VectorXd & | trueparameters | ||
) |
Proximal method with nuclear norm regularization.
lambda | regularization coefficient. |
rho | coefficient to enforce the low-rank constraint. |
ini_max_iter | initial maximum number of iterations. |
trueparameters | true model parameters to compare with the current solution. |
Definition at line 639 of file Optimizer.cc.
void Optimizer::SGD | ( | const double & | gamma0, |
const unsigned & | ini_max_iter, | ||
const std::vector< Sequence > & | data | ||
) |
Stochastic gradient descend.
[in] | gamma0 | initial learning rate. |
[in] | ini_max_iter | initial maximum number of iterations. |
[in] | data | the sampled sequence of events. |
Definition at line 14 of file Optimizer.cc.