Loading...
Searching...
No Matches
BALL::QSAR::ALLModel Class Reference

`#include <BALL/QSAR/allModel.h>`

Inheritance diagram for BALL::QSAR::ALLModel:

## Public Member Functions

Constructors and Destructors
| ALLModel (const QSARData &q, double kw=4)
| ~ALLModel ()
| NonLinearModel (const QSARData &q)
| ~NonLinearModel ()
Public Member Functions inherited from BALL::QSAR::RegressionModel
| RegressionModel (const QSARData &q)
| ~RegressionModel ()
virtual EIGEN_MAKE_ALIGNED_OPERATOR_NEW void | operator= (const RegressionModel &m)
const Eigen::MatrixXd * | getTrainingResult () const
void | show ()
Public Member Functions inherited from BALL::QSAR::Model
| Model (const QSARData &q)
virtual | ~Model ()
virtual void | operator= (const Model &m)
void | copyData (const Model &m)
void | copyDescriptorIDs (const Model &m)
void | readTrainingData ()
void | deleteDescriptorIDs ()
bool | optimizeParameters (int k)
virtual double | calculateStdErr ()
std::multiset< unsigned int > * | getDescriptorIDs ()
void | setDataSource (const QSARData *q)
const Eigen::MatrixXd * | getDescriptorMatrix ()
const vector< string > * | getSubstanceNames ()
const vector< string > * | getDescriptorNames ()
const Eigen::MatrixXd | getDescriptorTransformations ()
const Eigen::MatrixXd | getYTransformations ()
const Eigen::MatrixXd * | getY ()
void | setDescriptorIDs (const std::multiset< unsigned int > &sl)
const string * | getType ()
void | getUnnormalizedFeatureValue (int compound, int feature, double &return_value)
void | getUnnormalizedResponseValue (int compound, int response, double &return_value)

## Protected Attributes

Attributes
double | kw_
double | lambda_
Protected Attributes inherited from BALL::QSAR::RegressionModel
Eigen::MatrixXd | training_result_
Eigen::RowVectorXd | offsets_
int | default_no_opt_steps_
Eigen::MatrixXd | descriptor_matrix_
vector< string > | substance_names_
vector< string > | descriptor_names_
Eigen::MatrixXd | descriptor_transformations_
Eigen::MatrixXd | y_transformations_
Eigen::MatrixXd | Y_
String | type_
std::multiset< unsigned int > | descriptor_IDs_

## Accessors

void | setKw (double kw)
virtual Eigen::VectorXd | predict (const vector< double > &substance, bool transform=1)
void | train ()
virtual bool | optimizeParameters (int d, int no_steps)
double | getKw ()
virtual void | setParameters (vector< double > &v)
virtual vector< double > | getParameters () const
void | saveToFile (string filename)
void | readFromFile (string filename)
virtual void | calculateWeights (Eigen::MatrixXd &dist, Eigen::VectorXd &w)
void | calculateXX (Eigen::VectorXd &w, Eigen::MatrixXd &res)
void | calculateXY (Eigen::VectorXd &w, Eigen::MatrixXd &res)
void | calculateEuclDistanceMatrix (Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)

## Additional Inherited Members

RegressionValidation * | validation
const QSARData * | data
Validation * | model_val
virtual void | calculateOffsets ()
void | readDescriptorInformationFromFile (std::ifstream &in, int no_descriptors, bool transformation, int no_coefficients)
void | saveDescriptorInformationToFile (std::ofstream &out)
Protected Member Functions inherited from BALL::QSAR::Model
void | readMatrix (Eigen::MatrixXd &mat, std::ifstream &in, unsigned int lines, unsigned int col)
void | readVector (Eigen::RowVectorXd &vec, std::ifstream &in, unsigned int no_cells, bool column_vector)
void | readModelParametersFromFile (std::ifstream &in)
void | saveModelParametersToFile (std::ofstream &out)
virtual void | readDescriptorInformationFromFile (std::ifstream &in, int no_descriptors, bool transformation)
void | readResponseTransformationFromFile (std::ifstream &in, int no_y)
void | saveResponseTransformationToFile (std::ofstream &out)
Eigen::VectorXd | getSubstanceVector (const vector< double > &substance, bool transform)
Eigen::VectorXd | getSubstanceVector (const Eigen::VectorXd &substance, bool transform)
void | backTransformPrediction (Eigen::VectorXd &pred)
void | addLambda (Eigen::MatrixXd &matrix, double &lambda)
void | readDescriptorInformation ()

## Detailed Description

class for automated lazy learning (ALL-QSAR)

Definition at line 20 of file allModel.h.

## Constructor & Destructor Documentation

## ALLModel()

BALL::QSAR::ALLModel::ALLModel | ( | const QSARData & | q,
|  | double | kw = 4 )

## ~ALLModel()

BALL::QSAR::ALLModel::~ALLModel | ( |  | ) |

## Member Function Documentation

## calculateEuclDistanceMatrix()

void BALL::QSAR::ALLModel::calculateEuclDistanceMatrix | ( | Eigen::MatrixXd & | m1,
|  | Eigen::MatrixXd & | m2,
|  | Eigen::MatrixXd & | output )

protected

calculates pairwise euclidean distance between all substances of m1 and m2 and saves them to Eigen::MatrixXd output

## calculateWeights()

virtual void BALL::QSAR::ALLModel::calculateWeights | ( | Eigen::MatrixXd & | dist,
|  | Eigen::VectorXd & | w )

protected virtual

Reimplemented in BALL::QSAR::KNNModel.

## calculateXX()

void BALL::QSAR::ALLModel::calculateXX | ( | Eigen::VectorXd & | w,
|  | Eigen::MatrixXd & | res )

protected

calculates weighted Eigen::MatrixXd X^T*X

## calculateXY()

void BALL::QSAR::ALLModel::calculateXY | ( | Eigen::VectorXd & | w,
|  | Eigen::MatrixXd & | res )

protected

calculates weighted Eigen::MatrixXd X^T*Y

## getKw()

double BALL::QSAR::ALLModel::getKw | ( |  | ) |

returns the current kernel width

## getParameters()

virtual vector< double > BALL::QSAR::ALLModel::getParameters | ( |  | ) | const

virtual

Reimplemented from BALL::QSAR::Model.

Reimplemented in BALL::QSAR::KNNModel.

## optimizeParameters()

virtual bool BALL::QSAR::ALLModel::optimizeParameters | ( | int | d,
|  | int | no_steps )

virtual

Tries to find the optimal kernel width for the current data. Therefore some training data must have been read by the connected QSARData object before running this method.

Reimplemented from BALL::QSAR::Model.

Reimplemented in BALL::QSAR::KNNModel.

## predict()

virtual Eigen::VectorXd BALL::QSAR::ALLModel::predict | ( | const vector< double > & | substance,
|  | bool | transform = 1 )

virtual

Predicts the activities of a given substance

Parameters

  substance | the 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)

  transform

  determines 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.

## readFromFile()

void BALL::QSAR::ALLModel::readFromFile | ( | string | filename | ) |

virtual

reconstruct a saved Model from a file

Reimplemented from BALL::QSAR::RegressionModel.

## saveToFile()

void BALL::QSAR::ALLModel::saveToFile | ( | string | filename | ) |

virtual

save Model to a file

Reimplemented from BALL::QSAR::RegressionModel.

## setKw()

void BALL::QSAR::ALLModel::setKw | ( | double | kw | ) |

## setParameters()

virtual void BALL::QSAR::ALLModel::setParameters | ( | vector< double > & |  | ) |

virtual

sets the model parameters according to the given values.

Reimplemented from BALL::QSAR::Model.

Reimplemented in BALL::QSAR::KNNModel.

## train()

void BALL::QSAR::ALLModel::train | ( |  | ) |

inline virtual

automated lazy learning does not have a seperate training step

Implements BALL::QSAR::Model.

Definition at line 39 of file allModel.h.

## Member Data Documentation

## kw_

double BALL::QSAR::ALLModel::kw_

protected

kernel width

Definition at line 79 of file allModel.h.

## lambda_

double BALL::QSAR::ALLModel::lambda_

protected

Definition at line 80 of file allModel.h.