rakha asyrofi
/
KNN_coba
machine learning mbed
funcionesKNN.h@0:b78c322e81d0, 2018-04-14 (annotated)
- Committer:
- asyrofi
- Date:
- Sat Apr 14 04:02:05 2018 +0000
- Revision:
- 0:b78c322e81d0
semoga bisa
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
asyrofi | 0:b78c322e81d0 | 1 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 2 | funciones para el computo del algoritmo KNN |
asyrofi | 0:b78c322e81d0 | 3 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 4 | #define FI 100 |
asyrofi | 0:b78c322e81d0 | 5 | #define CO 4 |
asyrofi | 0:b78c322e81d0 | 6 | |
asyrofi | 0:b78c322e81d0 | 7 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 8 | calculo de distancia euclidiana entre dos puntos |
asyrofi | 0:b78c322e81d0 | 9 | -----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 10 | double distanciaEuclidiana(double pt1[], double pt2[], int co); |
asyrofi | 0:b78c322e81d0 | 11 | |
asyrofi | 0:b78c322e81d0 | 12 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 13 | calculo de distancia euclidiana entre un punto y la base de datos |
asyrofi | 0:b78c322e81d0 | 14 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 15 | void todasDistEuclid(double pt1[], double aux[], double** atributos, int fi, int co); |
asyrofi | 0:b78c322e81d0 | 16 | |
asyrofi | 0:b78c322e81d0 | 17 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 18 | Ordenamiento de las distancias de menor a mayor conservando clase |
asyrofi | 0:b78c322e81d0 | 19 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 20 | void ordena(double datos[], int clases[], int clasesNo[], int fi); |
asyrofi | 0:b78c322e81d0 | 21 | |
asyrofi | 0:b78c322e81d0 | 22 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 23 | Extraer los N primeros |
asyrofi | 0:b78c322e81d0 | 24 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 25 | void extraeKPrimeros(double datos[], double kPrimeros[], int clases[], |
asyrofi | 0:b78c322e81d0 | 26 | int kClases[], int k); |
asyrofi | 0:b78c322e81d0 | 27 | |
asyrofi | 0:b78c322e81d0 | 28 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 29 | Calcula la clase mas frecuente: Moda |
asyrofi | 0:b78c322e81d0 | 30 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 31 | int claseMasFrecuente(int clases[], int k); |
asyrofi | 0:b78c322e81d0 | 32 | |
asyrofi | 0:b78c322e81d0 | 33 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 34 | Mapea una clase en valor entero a un string |
asyrofi | 0:b78c322e81d0 | 35 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 36 | char* obtieneClaseString(int claseint); |
asyrofi | 0:b78c322e81d0 | 37 | |
asyrofi | 0:b78c322e81d0 | 38 | /*---------------------------------------------------------------- |
asyrofi | 0:b78c322e81d0 | 39 | Calcula la clase de un conjunto de atributos usando KNN |
asyrofi | 0:b78c322e81d0 | 40 | ----------------------------------------------------------------*/ |
asyrofi | 0:b78c322e81d0 | 41 | int clasificaKNN(double** datos, int clasesNum[], double dato[], int k, int fi, int co); |
asyrofi | 0:b78c322e81d0 | 42 | |
asyrofi | 0:b78c322e81d0 | 43 |