Home | Develop | Download | Contact
example_logisticregression_ig.cpp
1 
43 #include <iostream>
44 #include <Pds/Ra>
45 #include <Pds/Ml>
46 
47 int main(void)
48 {
49  Pds::IterationConf Conf;
50  Conf.Show=true; Conf.SetMinError(1e-07); Conf.SetAlpha(0.01); Conf.SetLambda(0.01); Conf.SetGamma(0.1);
51  Pds::Ra::Randomize();
52 
53  // Generating data
54  //Pds::Matrix X(Pds::Ra::TextFormat,"../test/hard-data-x.txt");
55  //Pds::Vector Y(Pds::Ra::TextFormat,"../test/hard-data-y.txt");
56  unsigned int L=1000;
57  Pds::Matrix X;
58  Pds::Vector Y;
60 
61  Pds::Octave::XLabel="x_1";
62  Pds::Octave::YLabel="x_2";
63  Pds::Octave::Plot::PointsX2DY(X,Y,"testando.m","example_logisticregression_ig_data.png");
64 
65  Pds::Vector Yp;
66  Pds::Vector W;
67 
69  // Create W using training data
70 
71  // Método ortogonal
73 
74  W.T().Print(" W_ig: ");
75  std::cout<< " Cost(W): "<<Pds::LogisticModel::CostInformationGain(W,X,Y)<<"\n\n";
76 
78 
79  Pds::Octave::Plot::PointsX2DY(X,Yp,"testando.m","example_logisticregression_ig_ortogonal.png");
80 
81  // Método de gradiente
84 
85  W.T().Print(" W_ig: ");
86  std::cout<< " Cost(W): "<<Pds::LogisticModel::CostInformationGain(W,X,Y)<<"\n";
87 
89 
90  Pds::Octave::Plot::PointsX2DY(X,Yp,"testando_gradient.m","example_logisticregression_ig_gradient.png");
91 
92  return 0;
93 }
La clase tipo Pds::IterationConf . Esta clase genera una matriz de Nlin lineas y 1 columna....
bool SetLambda(double Lambda)
Coloca el valor lambda.
bool SetAlpha(double Alpha)
Coloca el valor alpha.
bool SetMinError(double MinError)
Coloca el valor MinError.
bool SetGamma(double Lambda)
Coloca el valor gamma.
void LoadDataBand(unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
Clasificacion de datos separados por mas de una curva.
Pds::Vector FittingGradientIG(Pds::IterationConf &Conf, const Pds::Matrix &X, const Pds::Vector &Y, const Pds::Vector &W0)
Calculo de pesos.
double CostInformationGain(const Pds::Vector &W, const Pds::Matrix &X, const Pds::Vector &Y)
Calculo de costo.
Pds::Vector Classify(const Pds::Vector &W, const Pds::Matrix &X)
Calculo del resultado del clasificador.
Pds::Vector GetW0MeanMethod(const Pds::Matrix &X)
Obtiene de forma rapida un vector inicial para usar en regresion logistica.
Pds::Vector FittingOrtogonalIG(const Pds::Matrix &X, const Pds::Vector &Y, unsigned int MinID)
Calculo de pesos.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed