47 #ifndef SHARK_ALGORITHMS_ABSTRACTSVMTRAINER_H 48 #define SHARK_ALGORITHMS_ABSTRACTSVMTRAINER_H 75 QpConfig(
bool precomputedFlag =
false,
bool sparsifyFlag =
true)
198 , m_regularizers(1,C)
199 , m_trainOffset(offset)
200 , m_unconstrained(unconstrained)
201 , m_cacheSize(0x4000000)
210 AbstractSvmTrainer(KernelType* kernel,
double negativeC,
double positiveC,
bool offset,
bool unconstrained =
false)
213 , m_trainOffset(offset)
214 , m_unconstrained(unconstrained)
215 , m_cacheSize(0x4000000)
219 m_regularizers[0] = negativeC;
220 m_regularizers[1] = positiveC;
228 return m_regularizers[0];
233 return m_regularizers;
238 return m_regularizers;
246 { m_kernel = kernel; }
249 {
return m_unconstrained; }
252 {
return m_trainOffset; }
255 {
return m_cacheSize; }
257 { m_cacheSize =
size; }
262 size_t kp = m_kernel->numberOfParameters();
263 RealVector ret(kp + m_regularizers.size());
274 size_t kp = m_kernel->numberOfParameters();
275 SHARK_ASSERT(newParameters.size() == kp + m_regularizers.size());
278 m_regularizers = exp(m_regularizers);
283 return m_kernel->numberOfParameters() + m_regularizers.size();
311 template <
class InputType>
326 , m_unconstrained(unconstrained)
341 {
return m_unconstrained; }
347 ret(0) = (m_unconstrained ? std::log(m_C) : m_C);
355 setC(m_unconstrained ? std::exp(newParameters(0)) : newParameters(0));