Home | Develop | Download | Contact
Namespaces
Funciones en el namespace Pds::DataSet::Load

Funciones generadoras de "Data sets": Pds::DataSet::Regression::LoadDataLine(), Pds::DataSet::Classification::LoadDataLine(), etc. Más...

Namespaces

namespace  Pds
 Nombre de espacio para Pds (Procesamiento Digital de Senales)
 
namespace  Pds::DataSet
 Nombre de espacio para DataSet (Funciones para manipulación de data sets)
 
namespace  Pds::DataSet::Clustering
 Nombre de espacio para Clustering (Crea data set de ejemplo para Clustering)
 
namespace  Pds::DataSet::Regression
 Nombre de espacio para Regression (Crea data set de ejemplo para Regression)
 
namespace  Pds::DataSet::Classification
 Nombre de espacio para Classification (Crea data set de ejemplo para Classification)
 

Regression ajustable por una linea

void Pds::DataSet::Clustering::Kcumulus (unsigned int L, Pds::Matrix &X, unsigned int K=3)
 Clustering de datos. Más...
 

Regression ajustable por una linea

void Pds::DataSet::Regression::LoadDataLine (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Regresion de datos ajustados por una linea. Más...
 
void Pds::DataSet::Regression::LoadDataLineOutlierBall (unsigned int L, Pds::Matrix &X, Pds::Vector &Y, double outlier_percent=5)
 Regresion de datos ajustados por una linea e outliers en una bola. Más...
 
void Pds::DataSet::Regression::LoadDataLineOutlierRand (unsigned int L, Pds::Matrix &X, Pds::Vector &Y, double outlier_percent=5)
 Regresion de datos ajustados por una linea e outliers aleatorios. Más...
 

Regression ajustable por una curva

void Pds::DataSet::Regression::LoadDataGaussian (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Regresion de datos ajustados por una curva gaussiana. Más...
 
void Pds::DataSet::Regression::LoadDataCircle (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Regresion de datos ajustados por una curva circular. Más...
 
void Pds::DataSet::Regression::LoadDataFourierSeries (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Regresion de datos ajustados por una curva. Más...
 

Clasificación separable por una linea

void Pds::DataSet::Classification::LoadDataLine (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por una linea. Más...
 
void Pds::DataSet::Classification::LoadDataLine2 (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por una linea. Más...
 

Clasificación separable por una curva

void Pds::DataSet::Classification::LoadDataSine (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por una curva. Más...
 
void Pds::DataSet::Classification::LoadDataCircle (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por una curva. Más...
 
void Pds::DataSet::Classification::LoadDataEllipse (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por una curva. Más...
 

Clasificación separable por mas de una curva

void Pds::DataSet::Classification::LoadDataBand (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por mas de una curva. Más...
 
void Pds::DataSet::Classification::LoadDataBand2 (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por mas de una curva. Más...
 
void Pds::DataSet::Classification::LoadDataSineBand (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por mas de una curva. Más...
 
void Pds::DataSet::Classification::LoadDataYinYang (unsigned int L, Pds::Matrix &X, Pds::Vector &Y)
 Clasificacion de datos separados por mas de una curva. Más...
 

Descripción detallada

Funciones generadoras de "Data sets": Pds::DataSet::Regression::LoadDataLine(), Pds::DataSet::Classification::LoadDataLine(), etc.

#include <Pds/FuncDataSetLoad>

Documentación de las funciones

◆ Kcumulus()

void Pds::DataSet::Clustering::Kcumulus ( unsigned int  L,
Pds::Matrix &  X,
unsigned int  K = 3 
)

Clustering de datos.

Una variable aleatoria $\mathbf{R}$ com distribución gaussiana de media nula y $\sigma=\frac{1}{K}$ es usada para crear $K$ cúmulos $\mathbf{C}_{k}$ centrados de forma equidistante sobre un circulo unitario.

\[ \mathbf{C}_{k}=\mathbf{co}_{k}+\mathbf{R}, \]

Agrupados todos na matriz X.

Parámetros
[in]LNúmero total de datos e cada cúmulo.
[out]XDatos X.
[in]KNúmero de cumulos.

◆ LoadDataLine() [1/2]

void Pds::DataSet::Regression::LoadDataLine ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Regresion de datos ajustados por una linea.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana.

\[ \mathbf{Y}=\mathbf{X}+\mathbf{R}, \qquad \mathbf{R}\sim \mathbf{N}(0,+0.1) \]

Parámetros
[in]LNúmero total de datos .
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_predictor_evaluate.cpp.

◆ LoadDataLineOutlierBall()

void Pds::DataSet::Regression::LoadDataLineOutlierBall ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y,
double  outlier_percent = 5 
)

Regresion de datos ajustados por una linea e outliers en una bola.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana y una variable aleatoria $\mathbf{G}$ com distribución gaussiana.

\[ \mathbf{Yd}=\mathbf{Xd}+\mathbf{R}, \qquad \mathbf{R}\sim \mathbf{N}(0,+0.1) \]

\[ (\mathbf{Xo},\mathbf{Yo})=(-1,+1)+(\mathbf{G},\mathbf{G}), \qquad \mathbf{G}\sim \mathbf{N}(0,0.1) \]

\[ \mathbf{X}= \begin{bmatrix} \mathbf{Xd}\\ \mathbf{Xo}\\ \end{bmatrix}, \qquad \mathbf{Y}= \begin{bmatrix} \mathbf{Yd}\\ \mathbf{Yo}\\ \end{bmatrix} \]

Parámetros
[in]LNúmero total de datos.
[out]XDatos X.
[out]YDatos Y.
[in]outlier_percentPorcentaje de outliers si outlier_percent>100.0 entonces outlier_percent=100.0.

◆ LoadDataLineOutlierRand()

void Pds::DataSet::Regression::LoadDataLineOutlierRand ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y,
double  outlier_percent = 5 
)

Regresion de datos ajustados por una linea e outliers aleatorios.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana y una variable aleatoria $\mathbf{G}$ com distribución uniforme.

\[ \mathbf{Yd}=\mathbf{Xd}+\mathbf{R}, \qquad \mathbf{R}\sim \mathbf{N}(0,+0.1) \]

\[ (\mathbf{Xo},\mathbf{Yo})=(\mathbf{G},\mathbf{G}), \qquad \mathbf{G}\sim \mathbf{U}(-1,+1) \]

\[ \mathbf{X}= \begin{bmatrix} \mathbf{Xd}\\ \mathbf{Xo}\\ \end{bmatrix}, \qquad \mathbf{Y}= \begin{bmatrix} \mathbf{Yd}\\ \mathbf{Yo}\\ \end{bmatrix} \]

Parámetros
[in]LNúmero total de datos.
[out]XDatos X.
[out]YDatos Y.
[in]outlier_percentPorcentaje de outliers si outlier_percent>100.0 entonces outlier_percent=100.0.
Ejemplos
example_linearmodel.cpp.

◆ LoadDataGaussian()

void Pds::DataSet::Regression::LoadDataGaussian ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Regresion de datos ajustados por una curva gaussiana.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana.

\[\sigma=0.2\]

\[ \mathbf{Y}=e^{-\frac{\mathbf{X}^2}{2\sigma^2}}+\mathbf{R}, \qquad \mathbf{R}\sim \mathbf{N}(0,+0.1) \]

Parámetros
[in]LNúmero total de datos .
[out]XDatos X.
[out]YDatos Y.

◆ LoadDataCircle() [1/2]

void Pds::DataSet::Regression::LoadDataCircle ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Regresion de datos ajustados por una curva circular.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana.

\[\mathbf{\theta}\sim \mathbf{U}(0,2 \pi) \]

\[ \mathbf{\rho}=1+\mathbf{R}, \qquad \mathbf{R}\sim \mathbf{N}(0,+0.1) \]

\[\mathbf{X}=\mathbf{\rho} cos(\mathbf{\theta}), \qquad \mathbf{Y}=\mathbf{\rho} sin(\mathbf{\theta})\]

Parámetros
[in]LNúmero total de datos.
[out]XDatos X.
[out]YDatos Y.

◆ LoadDataFourierSeries()

void Pds::DataSet::Regression::LoadDataFourierSeries ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Regresion de datos ajustados por una curva.

Usa una variable aleatoria $\mathbf{R}$ com distribución gaussiana.

\[ \mathbf{Y}= 0.4sin(2\pi\mathbf{X})+ 0.15~sin(4\pi\mathbf{X})+ 0.25~sin(6\pi\mathbf{X})+ 0.15~sin(8\pi\mathbf{X})+ 0.1~sin(10\pi\mathbf{X})+ \mathbf{R} \]

\[\mathbf{R}\sim \mathbf{N}(0,+0.05) \]

Parámetros
[in]LNúmero total de datos.
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_predictor_kernel_fourier_series.cpp y example_predictor_kernel_poly_series.cpp.

◆ LoadDataLine() [2/2]

void Pds::DataSet::Classification::LoadDataLine ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por una linea.

\[ \mathbf{x}_2=-\mathbf{x}_1 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_logisticregression_ce.cpp, example_logisticregression_ms.cpp, example_logisticregression_svm.cpp y example_perceptron_evaluate.cpp.

◆ LoadDataLine2()

void Pds::DataSet::Classification::LoadDataLine2 ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por una linea.

\[ \mathbf{x}_2=-\mathbf{x}_1 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.

◆ LoadDataSine()

void Pds::DataSet::Classification::LoadDataSine ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por una curva.

\[ \mathbf{x}_2=0.5~sin(2 \pi \mathbf{x}_1), \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_perceptron_kernel_poly_sine.cpp.

◆ LoadDataCircle() [2/2]

void Pds::DataSet::Classification::LoadDataCircle ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por una curva.

\[ \mathbf{x}_1^2+\mathbf{x}_2^2=0.5^2 \]

El circulo tiene radio 0.5.

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_perceptron_kernel_gaussian_circle.cpp y example_perceptron_kernel_poly_circle.cpp.

◆ LoadDataEllipse()

void Pds::DataSet::Classification::LoadDataEllipse ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por una curva.

\[ \frac{\mathbf{x}_1^2}{0.6^2}+\frac{\mathbf{x}_2^2}{0.3^2}=1 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.

◆ LoadDataBand()

void Pds::DataSet::Classification::LoadDataBand ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por mas de una curva.

\[ \mathbf{x}_2=0.4-\mathbf{x}_1, \qquad \mathbf{x}_2=-0.4-\mathbf{x}_1 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_decisiontree_simple.cpp.

◆ LoadDataBand2()

void Pds::DataSet::Classification::LoadDataBand2 ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por mas de una curva.

\[ \mathbf{x}_2=0.5-\mathbf{x}_1, \qquad \mathbf{x}_2=1-\mathbf{x}_1 \]

\[ \mathbf{x}_2=-0.5-\mathbf{x}_1, \qquad \mathbf{x}_2=-1-\mathbf{x}_1 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_decisiontree_create.cpp, example_decisiontree_export.cpp, example_decisiontree_simple2.cpp, example_logisticregression_ce_svm_hard.cpp y example_perceptron_kernel_poly_band.cpp.

◆ LoadDataSineBand()

void Pds::DataSet::Classification::LoadDataSineBand ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por mas de una curva.

\[ \mathbf{x}_2=0.3~sin(2 \pi \mathbf{x}_1)-0.3, \qquad \mathbf{x}_2=0.3~sin(2 \pi \mathbf{x}_1)+0.3 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.

◆ LoadDataYinYang()

void Pds::DataSet::Classification::LoadDataYinYang ( unsigned int  L,
Pds::Matrix &  X,
Pds::Vector &  Y 
)

Clasificacion de datos separados por mas de una curva.

\[ \mathbf{x}_1^2+\mathbf{x}_2^2=1 \]

\[ \mathbf{x}_2=0.5~sin( \pi \mathbf{x}_1) \]

\[ (\mathbf{x}_1+0.5)^2+\mathbf{x}_2^2=0.2^2 \]

\[ (\mathbf{x}_1-0.5)^2+\mathbf{x}_2^2=0.2^2 \]

Parámetros
[in]LNúmero de datos positivos o negativos (2L datos en total).
[out]XDatos X.
[out]YDatos Y.
Ejemplos
example_dataset_yinyang.cpp, example_decisiontree.cpp, example_perceptron_kernel_fourier_yinyang.cpp y example_perceptron_kernel_gaussian_yinyang.cpp.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed