mlpack  git-master
GroupLpBall Class Reference

Implementation of Structured Group. More...

Public Member Functions

 GroupLpBall (const double p, const size_t dimOrig, std::vector< arma::uvec > groupIndicesList)
 Construct the lp ball group extractor class. More...

 
double DualNorm (const arma::vec &yk, const int groupId)
 Compute the q-norm of yk, 1/p+1/q=1. More...

 
size_t NumGroups () const
 Get the number of groups. More...

 
size_t & NumGroups ()
 Modify the number of groups. More...

 
void OptimalFromGroup (const arma::mat &v, const size_t groupId, arma::mat &s)
 Get optimal atom, which belongs to specific group. More...

 
void ProjectToGroup (const arma::mat &v, const size_t groupId, arma::vec &y)
 Projection to specific group. More...

 

Detailed Description

Implementation of Structured Group.

The projection to each group is using restriction of vector support here, and the norm in each group is using lp norm.

Definition at line 121 of file constr_structure_group.hpp.

Constructor & Destructor Documentation

◆ GroupLpBall()

GroupLpBall ( const double  p,
const size_t  dimOrig,
std::vector< arma::uvec >  groupIndicesList 
)
inline

Construct the lp ball group extractor class.

Parameters
plp ball.
dimOrigdimension of the original vector.
groupIndicesListvector of support indices lists of each group.

Definition at line 131 of file constr_structure_group.hpp.

Member Function Documentation

◆ DualNorm()

double DualNorm ( const arma::vec &  yk,
const int  groupId 
)
inline

Compute the q-norm of yk, 1/p+1/q=1.

Parameters
ykcompute the q-norm of yk.
groupIdgroup ID number.

Definition at line 195 of file constr_structure_group.hpp.

References Log::Fatal.

◆ NumGroups() [1/2]

size_t NumGroups ( ) const
inline

Get the number of groups.

Definition at line 185 of file constr_structure_group.hpp.

◆ NumGroups() [2/2]

size_t& NumGroups ( )
inline

Modify the number of groups.

Definition at line 187 of file constr_structure_group.hpp.

◆ OptimalFromGroup()

void OptimalFromGroup ( const arma::mat &  v,
const size_t  groupId,
arma::mat &  s 
)
inline

Get optimal atom, which belongs to specific group.

See Jaggi's paper for details.

Parameters
vinput gradient vector.
groupIdoptimal atom belongs to this group.
soutput optimal atom.

Definition at line 165 of file constr_structure_group.hpp.

◆ ProjectToGroup()

void ProjectToGroup ( const arma::mat &  v,
const size_t  groupId,
arma::vec &  y 
)
inline

Projection to specific group.

Parameters
vinput vector to be projected.
groupIdinput ID number of the group, start from 1.
youtput projection of the vector to specific group.

Definition at line 147 of file constr_structure_group.hpp.


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