Loading...
Searching...
No Matches
QSAR/kernel.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
//
#ifndef BALL_QSAR_KERNEL_H
#define BALL_QSAR_KERNEL_H
#ifndef BALL_QSAR_LINEARMODEL_H
#include <BALL/QSAR/linearModel.h>
#endif
#ifndef BALL_QSAR_MODEL_H
#include <BALL/QSAR/Model.h>
#endif
#ifndef BALL_QSAR_EXCEPTION_H
#include <BALL/QSAR/exception.h>
#endif
#ifndef BALL_QSAR_REGRESSIONMODEL_H
#include <BALL/QSAR/regressionModel.h>
#endif
#include <cmath>
#include <sstream>
namespace BALL
{
namespace QSAR
{
class BALL_EXPORT Kernel
{
public:
Kernel(Model* m, int k_type, double p1, double p2=-1);
Kernel(Model* m, String f, String g);
Kernel(Model* m, Eigen::VectorXd& w);
Kernel(Model* m, const LinearModel& lm, int column);
~Kernel();
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
void calculateKernelMatrix(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateKernelMatrix(Eigen::MatrixXd& K, Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
void calculateKernelVector(Eigen::MatrixXd& K,Eigen::VectorXd& m1, Eigen::MatrixXd& m2, Eigen::RowVectorXd& output);
void gridSearch(double step_width, int steps, int recursions, int k, bool opt=0);
int type;
double par1, par2;
String equation1;
String equation2;
protected:
void gridSearch(double step_width, int steps, bool first_rec, int k, double par1_start, double par2_start, bool opt);
void calculateWeightedKernelMatrix(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateWeightedKernelMatrix(Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
void calculateKernelMatrix1(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateKernelMatrix2(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateKernelMatrix3(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateKernelMatrix4(Eigen::MatrixXd& input, Eigen::MatrixXd& output);
void calculateKernelMatrix1(Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
void calculateKernelMatrix2(Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
void calculateKernelMatrix3(Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
void calculateKernelMatrix4(Eigen::MatrixXd& m1, Eigen::MatrixXd& m2, Eigen::MatrixXd& output);
Model* model_;
Eigen::VectorXd weights_;
friend class FeatureSelection;
};
}
}
#endif // KERNEL
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
Model.h
exception.h
BALL::QSAR::Kernel::calculateKernelMatrix4
void calculateKernelMatrix4(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::Kernel
Kernel(Model *m, const LinearModel &lm, int column)
BALL::QSAR::Kernel::gridSearch
void gridSearch(double step_width, int steps, bool first_rec, int k, double par1_start, double par2_start, bool opt)
BALL::QSAR::Kernel::calculateKernelMatrix1
void calculateKernelMatrix1(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::calculateWeightedKernelMatrix
void calculateWeightedKernelMatrix(Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::~Kernel
~Kernel()
BALL::QSAR::Kernel::calculateKernelMatrix1
void calculateKernelMatrix1(Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::FeatureSelection
friend class FeatureSelection
Definition QSAR/kernel.h:155
BALL::QSAR::Kernel::calculateKernelMatrix
void calculateKernelMatrix(Eigen::MatrixXd &K, Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::equation2
String equation2
Definition QSAR/kernel.h:105
BALL::QSAR::Kernel::equation1
String equation1
Definition QSAR/kernel.h:100
BALL::QSAR::Kernel::Kernel
Kernel(Model *m, String f, String g)
BALL::QSAR::Kernel::calculateKernelMatrix4
void calculateKernelMatrix4(Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::calculateKernelMatrix3
void calculateKernelMatrix3(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::model_
Model * model_
Definition QSAR/kernel.h:149
BALL::QSAR::Kernel::calculateKernelMatrix3
void calculateKernelMatrix3(Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::par1
double par1
Definition QSAR/kernel.h:95
BALL::QSAR::Kernel::calculateKernelVector
void calculateKernelVector(Eigen::MatrixXd &K, Eigen::VectorXd &m1, Eigen::MatrixXd &m2, Eigen::RowVectorXd &output)
BALL::QSAR::Kernel::type
int type
Definition QSAR/kernel.h:92
BALL::QSAR::Kernel::Kernel
Kernel(Model *m, int k_type, double p1, double p2=-1)
BALL::QSAR::Kernel::Kernel
Kernel(Model *m, Eigen::VectorXd &w)
BALL::QSAR::Kernel::gridSearch
void gridSearch(double step_width, int steps, int recursions, int k, bool opt=0)
BALL::QSAR::Kernel::calculateKernelMatrix2
void calculateKernelMatrix2(Eigen::MatrixXd &m1, Eigen::MatrixXd &m2, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::calculateKernelMatrix
void calculateKernelMatrix(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::weights_
Eigen::VectorXd weights_
Definition QSAR/kernel.h:151
BALL::QSAR::Kernel::calculateKernelMatrix2
void calculateKernelMatrix2(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::Kernel::par2
double par2
Definition QSAR/kernel.h:95
BALL::QSAR::Kernel::calculateWeightedKernelMatrix
void calculateWeightedKernelMatrix(Eigen::MatrixXd &input, Eigen::MatrixXd &output)
BALL::QSAR::LinearModel
Definition linearModel.h:18
BALL::QSAR::Model
Definition Model.h:35
BALL::String
Definition string.h:57
linearModel.h
BALL::QSAR
Definition allModel.h:17
BALL
Definition constants.h:13
regressionModel.h