34#ifndef __PDS_MATRIXMATH_HPP__
35#define __PDS_MATRIXMATH_HPP__
66#include <Pds/RaDefines>
271 double XqHb(
double p,
double q);
581 double qExp(
double x,
double q);
616 double qLog(
double x,
double q);
647 double qHbn(
double x,
double q);
812 double Phi(
double x,
double mu,
double sigma);
2011 const std::vector<Pds::Matrix> &Kernel,
2012 const std::vector<unsigned int> &Strides={1,1},
2036 const std::vector<Pds::Vector> &Kernel,
2037 unsigned int Strides=1,
2061 const std::vector<Pds::Vector> &Kernel,
2062 unsigned int Strides=1,
2148namespace Integration{
2176 double Simpson(
double (*f)(
double),
double a,
double b,
unsigned int n);
2200 double Simpson(
double (*f)(
double,
double),
double r,
double a,
double b,
unsigned int n);
2230 double Improper(
double (*f)(
double),
double a,
unsigned int n);
2262 double Improper(
double (*f)(
double,
double),
double r,
double a,
unsigned int n);
La clase tipo Pds::Matrix . Esta clase genera una matriz de Nlin lineas y Ncol columnas....
La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna....
Padding
Tipo de dato que especifica el padding en la convolucion.
double UnitRamp(double x)
Retorna el resultado de evaluar la función UnitRamp().
double Accuracy(const Pds::Matrix &A, const Pds::Matrix &B, double Umbral=0.5)
Calcula el valor de la Accuracy entre los elementos de las matrices A y B. A>Umbral,...
double SignNZ(double x)
Retorna el resultado de evaluar la función Sign Non Zero.
double XqHb(double p, double q)
Retorna el resultado de evaluar la función pseudo entropia $XqHb(p,q)$.
unsigned int NmultichooseK(unsigned int n, unsigned int k)
Retorna el combinatorio (n,k)
Pds::Matrix Erf(const Pds::Matrix &A)
Calcula el valor de la función .
double SumSquare(const Pds::Matrix &A)
Calcula el valor de la suma quadrática de una matriz.
double qLog(double x, double q)
Retorna el resultado de evaluar la función q-logaritmic de Tsallis.
double RMS(const Pds::Matrix &A)
Calcula el valor raiz quadrático medio de una matriz.
Pds::Matrix Conv2DCh(const std::vector< Pds::Matrix > &A, const std::vector< Pds::Matrix > &Kernel, const std::vector< unsigned int > &Strides={1, 1}, Pds::Ra::Padding Padding=Pds::Ra::Valid)
Calcula la convolución de todos los canales entre A y Kernel.
double NAccuracy(const Pds::Matrix &A, const Pds::Matrix &B)
Calcula el valor de la Accuracy entre los elementos de las matrices A y B. round(A),...
Pds::Matrix DSigmoid(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función sigmoid.
double qDHbn(double x, double q)
Retorna el resultado de evaluar la derivada de la función entropia de Tsallis.
bool CountRoundEqualInBatchBlock(const Pds::BatchBlock &A, const Pds::BatchBlock &B, unsigned int &S, unsigned int &T)
Calcula el número de elementos enteros iguales entre los objetos A y B.
Pds::Matrix DSoftSign(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función SoftSign.
double PLog2P(double p)
Retorna el resultado de evaluar la función Pds::PLog2P().
Pds::Matrix DReLU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función ReLU.
Pds::Matrix Tan(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función tangente.
Pds::Matrix DTanh(const Pds::Matrix &X)
Retorna el resultado de evaluar la derivada de la función tangente hiperbólico.
unsigned int NchooseK(unsigned int n, unsigned int k)
Retorna el combinatorio (n,k)
double Hb(double x)
Retorna el resultado de evaluar la función Entropia binária.
Pds::Matrix Log10(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función logaritmo de base 10.
double AccuracyBatchBlock(const Pds::BatchBlock &A, const Pds::BatchBlock &B, double Umbral=0.5)
Calcula el valor de la Accuracy entre los elementos de las matrices A y B. A>Umbral,...
double NormDiff(const Pds::Matrix &A, const Pds::Matrix &B)
Calcula el valor dela norma (Frobenius) de una matriz.
double R2(const Pds::Matrix &A, const Pds::Matrix &B)
Calcula el coeficiente de determinación o .
double Logit(double x)
Retorna el resultado de evaluar la función logit.
Pds::Matrix Sin(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función seno.
double MeanSquare(const Pds::Matrix &A)
Calcula el valor quadrático medio de una matriz.
double MuLaw(double x, double Mu)
Retorna el resultado de evaluar la (ley mu).
double Logit2(double x)
Retorna el resultado de evaluar la función logit.
double qHbn(double x, double q)
Retorna el resultado de evaluar la función entropia de Tsallis.
Pds::Matrix Identity(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función linear.
Pds::Vector InformationGainScale(const Pds::Vector &Y, double Umbral=0.5)
Retorna un vector con todos los valores de Information Gain, dependiendo en donde se realice un corte...
Pds::Matrix DSoftPlus(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función SoftPlus.
Pds::Matrix SQNL(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función SQNL.
double Det(const Pds::Matrix &A)
Calcula el valor de la detrminante de una matriz.
double UnitStep(double x)
Retorna el resultado de evaluar la función UnitStep().
Pds::Matrix Log2(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función logaritmo de base 2.
Pds::Matrix DIdentity(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función linear.
Pds::Matrix DLeakyReLU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función ReLU.
double ArgMin(const Pds::Matrix &X)
Retorna el identicador (ID) de la posicion del mínimo en la matriz. En caso de existir varios mínimos...
Pds::Matrix Sqrt(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función raiz cuadrada.
Pds::Matrix Abs(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función valor absoluto.
double Mean(const Pds::Matrix &A)
Calcula el valor medio de los elementos de la matriz A.
Pds::Matrix DELU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función ELU.
double Norm(const Pds::Matrix &A)
Calcula el valor dela norma (Frobenius) de una matriz.
double DXqHb(double p, double q)
Retorna el resultado de evaluar la derivada de la función pseudo entropia $XqHb(p,...
bool CountRoundEqualIn(const Pds::Matrix &A, const Pds::Matrix &B, unsigned int &S, unsigned int &T)
Calcula el número de elementos enteros iguales entre las matrices A y B.
double KLDivergence(double p, double q)
Retorna el resultado de evaluar la Kullback–Leibler divergence.
double Sign(double x)
Retorna el resultado de evaluar la función Sign.
double CrossEntropy(double p, double q)
Retorna el resultado de evaluar la función Entropia binária.
Pds::Matrix DGaussian(const Pds::Matrix &X)
Retorna el resultado de evaluar la función gaussiana.
Pds::Matrix Log(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función logaritmo natural.
unsigned int Factorial(unsigned int n)
Evalúa factorial de n, igual a n!.
double MeanAbsoluteError(const Pds::Matrix &A, const Pds::Matrix &B)
Calcula el valor del error absoluto medio.
Pds::Matrix DSQNL(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la derivada de la función SQNL.
Pds::Matrix ReLU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función ReLU.
double HbInv(double h)
Retorna el valor de la función de entropía binaria para un valor de .
Pds::Vector InformationSumScale(const Pds::Vector &Y, double Umbral=0.5)
Retorna un vector con todos los valores de Information Sum, dependiendo en donde se realice un corte ...
Pds::Vector Conv1DCh(const std::vector< Pds::Vector > &A, const std::vector< Pds::Vector > &Kernel, unsigned int Strides=1, Pds::Ra::Padding Padding=Pds::Ra::Valid)
Calcula la convolución de todos los canales entre A y Kernel.
Pds::Matrix Ln(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función logaritmo natural.
Pds::Matrix SoftMax(const Pds::Matrix &X)
Retorna el resultado de evaluar la función SoftMax.
Pds::Matrix Pow(const Pds::Matrix &A, double var)
Retorna el resultado de evaluar elemento a elemento la función pow.
double MuLawInv(double y, double Mu)
Retorna el resultado de evaluar la (ley mu).
double ArgMax(const Pds::Matrix &X)
Retorna el identicador (ID) de la posicion del máximo en la matriz. En caso de existir varios máximos...
Pds::Matrix ELU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función ELU.
double MeanAbsolute(const Pds::Matrix &A)
Calcula el valor absoluto medio de una matriz.
double Sinc(double x)
Retorna el resultado de evaluar la función sinc.
Pds::Matrix TwoExp(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función exponente de 2.
double InformationGain(const Pds::Matrix &B, const std::vector< Pds::Matrix > &A, double Umbral=0.5)
Retorna el Information Gain entre si mismo B y {A[0],A[1],...,A[N-1]}. Antes de comprarar las matrice...
Pds::Matrix Gaussian(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función gaussiana.
Pds::Matrix Exp(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función exponente.
Pds::Matrix Tanh(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función tangente hiperbólico.
Pds::Matrix LeakyReLU(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función ReLU.
Pds::Matrix SoftPlus(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función SoftPlus.
bool SquareErrorInBatchBlock(const Pds::BatchBlock &A, const Pds::BatchBlock &B, double &S)
Calcula el Square Error entre A y B.
double Hbn(double x)
Retorna el resultado de evaluar la función Entropia binária natural.
Pds::Matrix Round(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función round.
Pds::Matrix Sigmoid(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función sigmoid.
Pds::Matrix Atan2(const Pds::Matrix &A, const Pds::Matrix &B)
Retorna el resultado de evaluar elemento a elemento la función atan2.
double Phi(double x)
Calcula el valor de la función .
Pds::Matrix Cos(const Pds::Matrix &A)
Retorna el resultado de evaluar elemento a elemento la función coseno.
double Sum(const Pds::Matrix &A)
Calcula el valor de la suma de los elementos de la matriz A.
Pds::Matrix HardMax(const Pds::Matrix &X)
Retorna el resultado de evaluar la función HardMax (ArgMax in Machine learning).
double qExp(double x, double q)
Retorna el resultado de evaluar la función q-exponent de Tsallis.
double Var(const Pds::Matrix &A, double *mean)
Calcula el valor de la varianza de la matriz A.
double Probit(double p)
Calcula el valor de la función que es la inversa de Pds::CDF::Phi().
Pds::Matrix SoftSign(const Pds::Matrix &X)
Retorna el resultado de evaluar elemento a elemento la función SoftSign.
std::vector< std::vector< Pds::Matrix > > BatchBlock
Definición de un tipo de dato Pds::BatchBlock.
double Improper(double(*f)(double), double a, unsigned int n)
Evalúa la integral de a-->infinito de la función f(x), aplicando el cambio de variable u<–1/(x+1) par...
double Simpson(double(*f)(double), double a, double b, unsigned int n)
Evalúa la integral de a-->b de la función f(x), aplicando la regla de Simpson con n divisiones,...
Nombre de espacio para Pds (Procesamiento Digital de Senales)