BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members
BALL::QSAR::KernelModel Class Reference

#include <BALL/QSAR/kernelModel.h>

Inheritance diagram for BALL::QSAR::KernelModel:
BALL::QSAR::NonLinearModel BALL::QSAR::RegressionModel BALL::QSAR::Model BALL::QSAR::GPModel BALL::QSAR::KPCRModel BALL::QSAR::KPLSModel BALL::QSAR::SVRModel BALL::QSAR::LibsvmModel

Public Member Functions

Constructors and Destructors
 KernelModel (const QSARData &q, int k_type, double p1, double p2)
 
 KernelModel (const QSARData &q, String f, String g)
 
 KernelModel (const QSARData &q, Vector< double > &w)
 
 KernelModel (const QSARData &q, const LinearModel &lm, int column)
 
 ~KernelModel ()
 
virtual void saveToFile (string filename)
 
virtual void readFromFile (string filename)
 
virtual Vector< doublepredict (const vector< double > &substance, bool transform)
 
void operator= (const Model &m)
 
- Public Member Functions inherited from BALL::QSAR::NonLinearModel
 NonLinearModel (const QSARData &q)
 
 ~NonLinearModel ()
 

Attributes

Kernelkernel
 
Matrix< doubleK_
 

Input and Output. The following methods can be used to implement the functions saveToFile() and readFromFile() in final classes derived from this base-class

resulting matrix with one column for each modeled activity and with one coefficient for each substance (i.e. one column for each column for Model.Y)

class RegressionValidation
 
void calculateOffsets ()
 
void readKernelParametersFromFile (std::ifstream &in)
 
void saveKernelParametersToFile (std::ofstream &out)
 
void saveTrainingResult (std::ofstream &out)
 
void readTrainingResult (std::ifstream &input, int no_substances, int no_y)
 

Additional Inherited Members

- Public Attributes inherited from BALL::QSAR::RegressionModel
RegressionValidationvalidation
 
- Public Attributes inherited from BALL::QSAR::Model
const QSARDatadata
 
Validationmodel_val
 
- Protected Member Functions inherited from BALL::QSAR::NonLinearModel
- Protected Member Functions inherited from BALL::QSAR::RegressionModel
void readDescriptorInformationFromFile (std::ifstream &in, int no_descriptors, bool transformation, int no_coefficients)
 
void saveDescriptorInformationToFile (std::ofstream &out)
 
- Protected Attributes inherited from BALL::QSAR::RegressionModel
BALL::Matrix< doubletraining_result_
 
Vector< doubleoffsets_
 

Detailed Description

Definition at line 47 of file kernelModel.h.

Constructor & Destructor Documentation

BALL::QSAR::KernelModel::KernelModel ( const QSARData q,
int  k_type,
double  p1,
double  p2 
)
BALL::QSAR::KernelModel::KernelModel ( const QSARData q,
String  f,
String  g 
)
BALL::QSAR::KernelModel::KernelModel ( const QSARData q,
Vector< double > &  w 
)
BALL::QSAR::KernelModel::KernelModel ( const QSARData q,
const LinearModel lm,
int  column 
)
BALL::QSAR::KernelModel::~KernelModel ( )

Member Function Documentation

void BALL::QSAR::KernelModel::calculateOffsets ( )
protectedvirtual

do nothing for non-kernel models. KernelModel on the other hand overloads this function...

Reimplemented from BALL::QSAR::NonLinearModel.

void BALL::QSAR::KernelModel::operator= ( const Model m)
virtual
copy constructur; creates a model with the same specifications as the given one (same model and kernel parameters). If the given model has been trained, the training result is copied as well. \n

Note, that the input data that has been read by m to m.descriptor_matrix_ and m.Y_ is NOT copied to new model, since the input data is not part of the specification of a model. If nevertheless, copying of the input data is desired, use function copyData() (afterwards).

Reimplemented from BALL::QSAR::Model.

virtual Vector<double> BALL::QSAR::KernelModel::predict ( const vector< double > &  substance,
bool  transform 
)
virtual
Predicts the activities of a given substance
Parameters
substancethe substance which activity is to be predicted in form of a vecor containing the values for all descriptors (if neccessary, relevant descriptors will be selected automatically)
transformdetermines whether the values for each descriptor of the given substance should be transformed before prediction of activity.
If (transform==1): each descriptor value is transformed according to the centering of the respective column of QSARData.descriptor_matrix used to train this model.
If the substance to be predicted is part of the same input data (e.g. same SD-file) as the training data (as is the case during cross validation), transform should therefore be set to 0.
Returns
a RowVector containing one value for each predicted activity

Implements BALL::QSAR::Model.

Reimplemented in BALL::QSAR::GPModel.

virtual void BALL::QSAR::KernelModel::readFromFile ( string  filename)
virtual

reconstruct a saved Model from a file

Reimplemented from BALL::QSAR::RegressionModel.

void BALL::QSAR::KernelModel::readKernelParametersFromFile ( std::ifstream &  in)
protected
void BALL::QSAR::KernelModel::readTrainingResult ( std::ifstream &  input,
int  no_substances,
int  no_y 
)
protected
void BALL::QSAR::KernelModel::saveKernelParametersToFile ( std::ofstream &  out)
protected
virtual void BALL::QSAR::KernelModel::saveToFile ( string  filename)
virtual

save Model to a file

Reimplemented from BALL::QSAR::RegressionModel.

void BALL::QSAR::KernelModel::saveTrainingResult ( std::ofstream &  out)
protected

Friends And Related Function Documentation

friend class RegressionValidation
friend

Definition at line 102 of file kernelModel.h.

Member Data Documentation

Matrix<double> BALL::QSAR::KernelModel::K_
protected

Matrix containing the pairwise distances between all substances

Definition at line 85 of file kernelModel.h.

Kernel* BALL::QSAR::KernelModel::kernel

Definition at line 75 of file kernelModel.h.