Hugintrunk
0.1
|
Classes | |
struct | SolutionInfo |
Public Member Functions | |
Solver () | |
virtual | ~Solver () |
void | Solve (int l, const QMatrix &Q, const double *p_, const schar *y_, double *alpha_, double Cp, double Cn, double eps, SolutionInfo *si, int shrinking) |
Protected Types | |
enum | { LOWER_BOUND, UPPER_BOUND, FREE } |
Protected Member Functions | |
double | get_C (int i) |
void | update_alpha_status (int i) |
bool | is_upper_bound (int i) |
bool | is_lower_bound (int i) |
bool | is_free (int i) |
void | swap_index (int i, int j) |
void | reconstruct_gradient () |
virtual int | select_working_set (int &i, int &j) |
virtual double | calculate_rho () |
virtual void | do_shrinking () |
Protected Attributes | |
int | active_size |
schar * | y |
double * | G |
char * | alpha_status |
double * | alpha |
const QMatrix * | Q |
const double * | QD |
double | eps |
double | Cp |
double | Cn |
double * | p |
int * | active_set |
double * | G_bar |
int | l |
bool | unshrink |
Private Member Functions | |
bool | be_shrunk (int i, double Gmax1, double Gmax2) |
|
protected |
|
private |
Definition at line 932 of file svm.cpp.
References G, is_lower_bound(), is_upper_bound(), and y.
Referenced by do_shrinking().
|
protectedvirtual |
Reimplemented in celeste::Solver_NU.
Definition at line 1013 of file svm.cpp.
References active_size, G, INF, is_lower_bound(), is_upper_bound(), celeste::max(), celeste::min(), and y.
Referenced by Solve().
|
protectedvirtual |
Reimplemented in celeste::Solver_NU.
Definition at line 952 of file svm.cpp.
References active_size, be_shrunk(), eps, G, INF, celeste::info(), is_lower_bound(), is_upper_bound(), l, reconstruct_gradient(), swap_index(), unshrink, and y.
Referenced by Solve().
|
inlineprotected |
|
inlineprotected |
Definition at line 487 of file svm.cpp.
References alpha_status, and FREE.
Referenced by reconstruct_gradient().
|
inlineprotected |
Definition at line 486 of file svm.cpp.
References alpha_status, and LOWER_BOUND.
Referenced by be_shrunk(), celeste::Solver_NU::be_shrunk(), calculate_rho(), celeste::Solver_NU::calculate_rho(), do_shrinking(), celeste::Solver_NU::do_shrinking(), select_working_set(), celeste::Solver_NU::select_working_set(), and Solve().
|
inlineprotected |
Definition at line 485 of file svm.cpp.
References alpha_status, and UPPER_BOUND.
Referenced by be_shrunk(), celeste::Solver_NU::be_shrunk(), calculate_rho(), celeste::Solver_NU::calculate_rho(), do_shrinking(), celeste::Solver_NU::do_shrinking(), select_working_set(), celeste::Solver_NU::select_working_set(), and Solve().
|
protected |
Definition at line 509 of file svm.cpp.
References active_size, alpha, G, G_bar, celeste::QMatrix::get_Q(), celeste::info(), is_free(), l, p, and Q.
Referenced by do_shrinking(), celeste::Solver_NU::do_shrinking(), and Solve().
|
protectedvirtual |
Reimplemented in celeste::Solver_NU.
Definition at line 833 of file svm.cpp.
References active_size, eps, G, celeste::QMatrix::get_Q(), INF, is_lower_bound(), is_upper_bound(), Q, QD, TAU, and y.
Referenced by Solve().
void celeste::Solver::Solve | ( | int | l, |
const QMatrix & | Q, | ||
const double * | p_, | ||
const schar * | y_, | ||
double * | alpha_, | ||
double | Cp, | ||
double | Cn, | ||
double | eps, | ||
SolutionInfo * | si, | ||
int | shrinking | ||
) |
Definition at line 551 of file svm.cpp.
References active_set, active_size, alpha, alpha_status, calculate_rho(), celeste::clone(), Cn, Cp, do_shrinking(), eps, G, G_bar, get_C(), celeste::QMatrix::get_Q(), celeste::QMatrix::get_QD(), celeste::info(), is_lower_bound(), is_upper_bound(), l, celeste::max(), celeste::min(), celeste::Solver::SolutionInfo::obj, p, Q, QD, reconstruct_gradient(), celeste::Solver::SolutionInfo::rho, select_working_set(), TAU, unshrink, update_alpha_status(), celeste::Solver::SolutionInfo::upper_bound_n, celeste::Solver::SolutionInfo::upper_bound_p, and y.
Referenced by celeste::Solver_NU::Solve(), celeste::solve_c_svc(), celeste::solve_epsilon_svr(), and celeste::solve_one_class().
|
protected |
Definition at line 497 of file svm.cpp.
References active_set, alpha, alpha_status, G, G_bar, p, Q, celeste::swap(), celeste::QMatrix::swap_index(), and y.
Referenced by do_shrinking(), and celeste::Solver_NU::do_shrinking().
|
inlineprotected |
Definition at line 477 of file svm.cpp.
References alpha, alpha_status, FREE, get_C(), LOWER_BOUND, and UPPER_BOUND.
Referenced by Solve().
|
protected |
Definition at line 468 of file svm.cpp.
Referenced by Solve(), and swap_index().
|
protected |
Definition at line 457 of file svm.cpp.
Referenced by calculate_rho(), celeste::Solver_NU::calculate_rho(), do_shrinking(), celeste::Solver_NU::do_shrinking(), reconstruct_gradient(), select_working_set(), celeste::Solver_NU::select_working_set(), and Solve().
|
protected |
Definition at line 462 of file svm.cpp.
Referenced by reconstruct_gradient(), Solve(), swap_index(), and update_alpha_status().
|
protected |
Definition at line 461 of file svm.cpp.
Referenced by is_free(), is_lower_bound(), is_upper_bound(), Solve(), swap_index(), and update_alpha_status().
|
protected |
|
protected |
|
protected |
Definition at line 465 of file svm.cpp.
Referenced by do_shrinking(), celeste::Solver_NU::do_shrinking(), select_working_set(), celeste::Solver_NU::select_working_set(), and Solve().
|
protected |
Definition at line 459 of file svm.cpp.
Referenced by be_shrunk(), celeste::Solver_NU::be_shrunk(), calculate_rho(), celeste::Solver_NU::calculate_rho(), do_shrinking(), celeste::Solver_NU::do_shrinking(), reconstruct_gradient(), select_working_set(), celeste::Solver_NU::select_working_set(), Solve(), and swap_index().
|
protected |
Definition at line 469 of file svm.cpp.
Referenced by reconstruct_gradient(), Solve(), and swap_index().
|
protected |
Definition at line 470 of file svm.cpp.
Referenced by do_shrinking(), celeste::Solver_NU::do_shrinking(), reconstruct_gradient(), and Solve().
|
protected |
Definition at line 467 of file svm.cpp.
Referenced by reconstruct_gradient(), Solve(), and swap_index().
|
protected |
Definition at line 463 of file svm.cpp.
Referenced by reconstruct_gradient(), select_working_set(), celeste::Solver_NU::select_working_set(), Solve(), and swap_index().
|
protected |
Definition at line 464 of file svm.cpp.
Referenced by select_working_set(), celeste::Solver_NU::select_working_set(), and Solve().
|
protected |
Definition at line 471 of file svm.cpp.
Referenced by do_shrinking(), celeste::Solver_NU::do_shrinking(), and Solve().
|
protected |
Definition at line 458 of file svm.cpp.
Referenced by be_shrunk(), celeste::Solver_NU::be_shrunk(), calculate_rho(), celeste::Solver_NU::calculate_rho(), do_shrinking(), celeste::Solver_NU::do_shrinking(), get_C(), select_working_set(), celeste::Solver_NU::select_working_set(), Solve(), and swap_index().