shark::SvmShrinkingProblem< Problem > Class Template Reference

#include <shark/Algorithms/QP/SvmProblems.h>

+ Inheritance diagram for shark::SvmShrinkingProblem< Problem >:

Public Member Functions

 SvmShrinkingProblem (Problem &problem, bool shrink=true)
 
- Public Member Functions inherited from shark::BoxBasedShrinkingStrategy< SvmProblem< Problem > >
 BoxBasedShrinkingStrategy (ProblemT &problem, bool shrink=true)
 
virtual void updateSMO (std::size_t i, std::size_t j)
 
bool shrink (double epsilon)
 
void unshrink ()
 Unshrink the problem. More...
 
void setShrinking (bool shrinking)
 
void setInitialSolution (RealVector const &alpha, RealVector const &gradient, RealVector const &gradientEdge)
 Define the initial solution for the iterative solver. More...
 
void setInitialSolution (RealVector const &alpha)
 Define the initial solution for the iterative solver. More...
 
void deactivateVariable (std::size_t i)
 Remove the i-th example from the problem. More...
 
void scaleBoxConstraints (double factor, double variableScalingFactor)
 Scales all box constraints by a constant factor and adapts the solution by scaling it by the same factor. More...
 
virtual void setLinear (std::size_t i, double newValue)
 adapts the linear part of the problem and updates the internal data structures accordingly. More...
 
void flipCoordinates (std::size_t i, std::size_t j)
 swap indizes (i,j) More...
 
- Public Member Functions inherited from shark::SvmProblem< Problem >
 SvmProblem (Problem &problem)
 
std::size_t dimensions () const
 
std::size_t active () const
 
double boxMin (std::size_t i) const
 
double boxMax (std::size_t i) const
 
bool isLowerBound (std::size_t i) const
 
bool isUpperBound (std::size_t i) const
 
MatrixTypequadratic ()
 representation of the quadratic part of the objective function More...
 
double linear (std::size_t i) const
 
double alpha (std::size_t i) const
 
double diagonal (std::size_t i) const
 
double gradient (std::size_t i) const
 
std::size_t permutation (std::size_t i) const
 
RealVector getUnpermutedAlpha () const
 
void updateSMO (std::size_t i, std::size_t j)
 Does an update of SMO given a working set with indices i and j. More...
 
double functionValue () const
 Returns the current function value of the problem. More...
 
bool shrink (double)
 
void reshrink ()
 
void unshrink ()
 
void setInitialSolution (RealVector const &alpha, RealVector const &gradient)
 Define the initial solution for the iterative solver. More...
 
void setInitialSolution (RealVector const &alpha)
 Define the initial solution for the iterative solver. More...
 
void deactivateVariable (std::size_t i)
 Remove the i-th example from the problem while taking the equality constraint into account. More...
 
void activateVariable (std::size_t i)
 Reactivate an previously deactivated variable. More...
 
void flipCoordinates (std::size_t i, std::size_t j)
 exchange two variables via the permutation More...
 
void scaleBoxConstraints (double factor, double variableScalingFactor)
 Scales all box constraints by a constant factor and adapts the solution using a separate scaling. More...
 
double checkKKT () const
 

Additional Inherited Members

- Public Types inherited from shark::BoxBasedShrinkingStrategy< SvmProblem< Problem > >
typedef SvmProblem< Problem > ::QpFloatType QpFloatType
 
typedef SvmProblem< Problem > ::MatrixType MatrixType
 
typedef SvmProblem< Problem > ::PreferedSelectionStrategy PreferedSelectionStrategy
 
- Public Types inherited from shark::SvmProblem< Problem >
typedef Problem::QpFloatType QpFloatType
 
typedef Problem::MatrixType MatrixType
 
typedef LibSVMSelectionCriterion PreferedSelectionStrategy
 
- Protected Member Functions inherited from shark::SvmProblem< Problem >
virtual void applyStep (std::size_t i, std::size_t j, double step)
 Update the problem by a proposed step i taking the box constraints into account. More...
 
void updateAlphaStatus (std::size_t i)
 
bool testShrinkVariable (std::size_t a, double largestUp, double smallestDown) const
 
- Protected Attributes inherited from shark::SvmProblem< Problem >
Problem m_problem
 
RealVector m_gradient
 gradient of the objective function at the current alpha More...
 
std::size_t m_active
 
std::vector< char > m_alphaStatus
 Stores the status, whther alpha is on the lower or upper bound, or whether it is free. More...
 

Detailed Description

template<class Problem>
class shark::SvmShrinkingProblem< Problem >

Definition at line 646 of file SvmProblems.h.

Constructor & Destructor Documentation

◆ SvmShrinkingProblem()

template<class Problem >
shark::SvmShrinkingProblem< Problem >::SvmShrinkingProblem ( Problem &  problem,
bool  shrink = true 
)
inline

Definition at line 648 of file SvmProblems.h.


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