13#include <NeEngineLib.h>
14#include <MachineLearning/FgIKernel.h>
18 namespace MachineLearning
33 template<
typename Scalar>
87 void LogLikGradientX(
const af::array& inX,
const af::array& indL_dK, af::array& outdL_dX);
101 void LogLikGradientX(
const af::array& inXu,
const af::array& indL_dKuu,
const af::array& inX,
const af::array& indL_dKuf, af::array& outdL_dXu, af::array& outdL_dX);
113 void LogLikGradientParam(
const af::array& inX1,
const af::array& inX2,
const af::array& indL_dK, af::array& outdL_dParam);
125 void GradX(
const af::array& inX1,
const af::array& inX2,
int q, af::array& outdK_dX);
135 void DiagGradX(
const af::array& inX, af::array& outDiagdK_dX);
146 void DiagGradParam(
const af::array& inX,
const af::array& inCovDiag, af::array& outDiagdK_dParam);
170 void Psi1Derivative(
const af::array& inPsi1,
const af::array& indL_dpsi1,
const af::array& inZ,
const af::array& inMu,
171 const af::array& inSu, af::array& outdL_dParam, af::array& outdL_dXu, af::array* outdL_dX =
nullptr);
174 friend class boost::serialization::access;
176 template<
class Archive>
177 void serialize(Archive& ar,
unsigned int version)
179 ar & boost::serialization::base_object<IKernel<Scalar>>(*this);
180 ar& BOOST_SERIALIZATION_NVP(dVariance);
181 ar& BOOST_SERIALIZATION_NVP(dInvScale1);
182 ar& BOOST_SERIALIZATION_NVP(dInvScale2);
185 Scalar dVariance, dInvScale1, dInvScale2;
Radial basis kernel function for second order state space models.
void LogLikGradientX(const af::array &inXu, const af::array &indL_dKuu, const af::array &inX, const af::array &indL_dKuf, af::array &outdL_dXu, af::array &outdL_dX)
Computes dL / dX and dL / dXu for sparse approximation GP.
void LogLikGradientX(const af::array &inX, const af::array &indL_dK, af::array &outdL_dX)
Computes dL/dX for full fit GP.
RBFAccelerationKernel()
Default constructor.
void Psi1Derivative(const af::array &inPsi1, const af::array &indL_dpsi1, const af::array &inZ, const af::array &inMu, const af::array &inSu, af::array &outdL_dParam, af::array &outdL_dXu, af::array *outdL_dX=nullptr)
PSI statistics.
void ComputeKernelMatrix(const af::array &inX1, const af::array &inX2, af::array &outMatrix)
Computes the kernel matrix of the kernel.
~RBFAccelerationKernel()
Destructor.
void LogLikGradientParam(const af::array &inX1, const af::array &inX2, const af::array &indL_dK, af::array &outdL_dParam)
Computes the gradient of the kernel parameters.
void ComputeDiagonal(const af::array &inX, af::array &outDiagonal)
Calculates only diagonal elements of K.
void DiagGradParam(const af::array &inX, const af::array &inCovDiag, af::array &outDiagdK_dParam)
Derivative of diagonal elemts of K w.r.t kernel parameters.
void DiagGradX(const af::array &inX, af::array &outDiagdK_dX)
Derivative of diagonal elemts of K w.r.t X.
af::array GetParameters()
Gets the parameters.
void SetParameters(const af::array ¶m)
Sets the parameters.
void GradX(const af::array &inX1, const af::array &inX2, int q, af::array &outdK_dX)
Computes dK/dX.