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)

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

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

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

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

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.

## ◆ 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: