Métodos de la clase Pds::NBGMM, un classificador multivariado Naive Bayes. Más...
Namespaces | |
namespace | Pds |
Nombre de espacio para Pds (Procesamiento Digital de Senales) | |
Estructuras de datos | |
class | Pds::NBGMM |
La clase tipo Pds::NBGMM . Esta clase genera una matriz de Nlin lineas y 1 columna. Para usar incluir Pds/NBGMM. Más... | |
Varios tipos de constructores | |
Crean una objeto Pds::NBGMM | |
Pds::NBGMM::NBGMM (void) | |
Crea un objeto vazio de tipo Pds::NBGMM. El método IsEmpty() retorna true. Más... | |
Pds::NBGMM::NBGMM (const char filename[]) | |
Carga un vector de pesos desde un archivo de texto. Más... | |
Pds::NBGMM::NBGMM (const std::string &filename) | |
Carga un vector de pesos desde un archivo de texto. Más... | |
Pds::NBGMM::NBGMM (const Pds::NBGMM &B) | |
Crea un objeto de tipo Pds::NBGMM copiando datos desde otra NBGMM. Este es un Copy assignment constructor. Más... | |
Pds::NBGMM::NBGMM (const Pds::IterationConf &Conf, const Pds::Matrix &X, const Pds::Vector &Y, const std::vector< unsigned int > &K, double Sigma=0.5) | |
Crea un objeto de tipo Pds::NBGMM calculando desde los vectores de entrada en X. Más... | |
Pds::NBGMM::~NBGMM () | |
Evaluación del NBGMM | |
double | Pds::NBGMM::Predict (const Pds::Vector &x) const |
Evalua el objeto de tipo Pds::NBGMM. Más... | |
Pds::Vector | Pds::NBGMM::Predict (const Pds::Matrix &X) const |
Evalua el objeto de tipo Pds::NBGMM. Más... | |
Export en file | |
bool | Pds::NBGMM::ExportFile (const std::string &filename) const |
Salva en formato .txt el objeto de tipo Pds::NBGMM. Más... | |
Estado del NBGMM | |
bool | Pds::NBGMM::IsEmpty (void) const |
Verifica si el NBGMM está vazio. Más... | |
bool | Pds::NBGMM::IsNotEmpty (void) const |
Verifica si el NBGMM NO está vazio. Más... | |
Métodos variados en Pds::NBGMM | |
Pds::NBGMM & | Pds::NBGMM::operator= (const Pds::NBGMM &B) |
Copia en si mismo (A), un NBGMM B. Este operador es similar al método Copy(). No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado. Más... | |
bool | Pds::NBGMM::Copy (const Pds::NBGMM &B) |
Copia en si mismo (A), el contenido de un NBGMM B. Este método es similar a usar el operador = . No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado. Más... | |
Métodos variados | |
void | Pds::NBGMM::MakeEmpty (void) |
Convierte el PCS a vazio, es decir limpia todos los datos internos. Más... | |
unsigned int | Pds::NBGMM::GetN (void) const |
Retorna el tamanho de la variable de entrada. Más... | |
unsigned int | Pds::NBGMM::GetM (void) const |
Retorna el número de clases. Más... | |
std::vector< Pds::DataGMM > | Pds::NBGMM::GetDat (void) const |
Retorna los datos GMM. Más... | |
std::vector< double > | Pds::NBGMM::GetPi (void) const |
Retorna un std::vector de valores que representan la probabilidad a priori de cada clase. Más... | |
std::vector< int > | Pds::NBGMM::GetLabel (void) const |
Retorna un std::vector de valores que representan las etiquetas para cada ID. Más... | |
void | Pds::NBGMM::Print (std::string str="") const |
Imprime en pantalla el contenido del NBGMM. Más... | |
Métodos de la clase Pds::NBGMM, un classificador multivariado Naive Bayes.
Este es bloque o maquina evalua y calcula el NBGMM. Informacion adicional puede ser encontrada en el articulo "A Novel Gaussian Mixture Model for Classification" [4]
Pds::NBGMM::NBGMM | ( | void | ) |
Crea un objeto vazio de tipo Pds::NBGMM. El método IsEmpty() retorna true.
Pds::NBGMM::NBGMM | ( | const char | filename[] | ) |
Carga un vector de pesos desde un archivo de texto.
[in] | filename | Archivo donde se encuentran los datos NBGMM. |
Pds::NBGMM::NBGMM | ( | const std::string & | filename | ) |
Carga un vector de pesos desde un archivo de texto.
[in] | filename | Archivo donde se encuentran los datos de NBGMM. |
Pds::NBGMM::NBGMM | ( | const Pds::NBGMM & | B | ) |
Crea un objeto de tipo Pds::NBGMM copiando datos desde otra NBGMM. Este es un Copy assignment constructor.
Para crear un NBGMM A con copia de datos de un NBGMM B:
[in] | B | NBGMM a copiar. |
Pds::NBGMM::NBGMM | ( | const Pds::IterationConf & | Conf, |
const Pds::Matrix & | X, | ||
const Pds::Vector & | Y, | ||
const std::vector< unsigned int > & | K, | ||
double | Sigma = 0.5 |
||
) |
Crea un objeto de tipo Pds::NBGMM calculando desde los vectores de entrada en X.
Separamos los datos , en grupos, donde es el número de clases en el vector .
Donde es un vector con las muestras de la clase con etiqueta , es su correspondiente vector de etiquetas y es la probabilidad a priori de la clase .
Con todos estos datos calculamos:
Así, la función de probabilidad de que una muestra pertenezca a la clase es:
Las variable internas obtenidas són: , y para cada valor .
Informacion adicional puede ser encontrada en el articulo "A Novel Gaussian Mixture Model for Classification" [4]
[in] | Conf | Configuration block. |
[in] | X | Matriz con entradas en las lineas. |
[in] | Y | Vector categórias. |
[in] | K | Vector de GMM clusters por clase. El vector debe tener el mismo tamaño que número de clases. |
[in] | Sigma | Sigma inicial para el cáculo de todos los GMM. |
double Pds::NBGMM::Predict | ( | const Pds::Vector & | x | ) | const |
Evalua el objeto de tipo Pds::NBGMM.
Podemos usar Naive Bayes para clasificar las muestras; así, la clase con etiqueta a la que pertenece la muestra se calcula:
Informacion adicional puede ser encontrada en el articulo "A Novel Gaussian Mixture Model for Classification" [4]
[in] | x | Vector de entradas. |
Pds::Vector Pds::NBGMM::Predict | ( | const Pds::Matrix & | X | ) | const |
Evalua el objeto de tipo Pds::NBGMM.
Podemos usar Naive Bayes para clasificar las muestras; así, la clase con etiqueta a la que pertenece la muestra se calcula:
Informacion adicional puede ser encontrada en el articulo "A Novel Gaussian Mixture Model for Classification" [4]
[in] | X | Matriz con entradas x en las lineas. |
bool Pds::NBGMM::ExportFile | ( | const std::string & | filename | ) | const |
Salva en formato .txt el objeto de tipo Pds::NBGMM.
[in] | filename | Nombre de archivo donde se escribirá el arbol en formato .txt. |
bool Pds::NBGMM::IsEmpty | ( | void | ) | const |
Verifica si el NBGMM está vazio.
bool Pds::NBGMM::IsNotEmpty | ( | void | ) | const |
Verifica si el NBGMM NO está vazio.
Pds::NBGMM& Pds::NBGMM::operator= | ( | const Pds::NBGMM & | B | ) |
Copia en si mismo (A), un NBGMM B. Este operador es similar al método Copy(). No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado.
Cuando acontece:
Cuando NO acontece:
[in] | B | El NBGMM a copiar |
bool Pds::NBGMM::Copy | ( | const Pds::NBGMM & | B | ) |
Copia en si mismo (A), el contenido de un NBGMM B. Este método es similar a usar el operador = . No importa el tamaño de A, sus datos son liberados y un nuevo arreglo de datos es reservado.
[in] | B | El NBGMM a copiar |
void Pds::NBGMM::MakeEmpty | ( | void | ) |
Convierte el PCS a vazio, es decir limpia todos los datos internos.
unsigned int Pds::NBGMM::GetN | ( | void | ) | const |
Retorna el tamanho de la variable de entrada.
unsigned int Pds::NBGMM::GetM | ( | void | ) | const |
Retorna el número de clases.
std::vector<Pds::DataGMM> Pds::NBGMM::GetDat | ( | void | ) | const |
Retorna los datos GMM.
std::vector<double> Pds::NBGMM::GetPi | ( | void | ) | const |
Retorna un std::vector de valores que representan la probabilidad a priori de cada clase.
std::vector<int> Pds::NBGMM::GetLabel | ( | void | ) | const |
Retorna un std::vector de valores que representan las etiquetas para cada ID.
void Pds::NBGMM::Print | ( | std::string | str = "" | ) | const |
Imprime en pantalla el contenido del NBGMM.
str | Texto a mostrar antes de imprimir. |
Pds::NBGMM::~NBGMM | ( | ) |