TeoríA AlgoríTmica

13

Click here to load reader

Transcript of TeoríA AlgoríTmica

Page 1: TeoríA AlgoríTmica

TEORÍA ALGORÍTMICAANÁLISIS DEL ALGORITMO DE ENTRENAMIENTO DE LA RED NEURONAL

AutoresDiego A. GuevaraVanessa C. Celi

Page 2: TeoríA AlgoríTmica

Introducción

Los algoritmos y las implementaciones requieren un análisis para conocer sus ventajas y sus falencias frente a otros algoritmos y programas. El presente estudio es para determinar la función que exprese el tiempo que se tarda en resolver o en realizar una tarea.

Otro punto por el cual es importante el análisis de esta clase es por que hay muchas formas de ver y resolver un mismo problema.

Con todo lo mencionado anteriormente se puede llegar a una optimización o el entendimiento de dichos algoritmos y programas.

El tema seleccionado posee cierto grado de complejidad y sus elementos (métodos, procedimientos) tienen estructuras repetitivas, de comparación, etc., lo que conlleva un estudio para determinar el tiempo que se tarda en realizar cada uno de ellos.

Page 3: TeoríA AlgoríTmica

Objetivos• Determinar la función que exprese el tiempo

en se tarda• Optimizar el procedimiento • Encontrar una manera diferente de resolver

el algoritmo

Page 4: TeoríA AlgoríTmica

Recursos• Los recurso utilizados para la realización del

algoritmo son los siguientes• Globus Toolkit,- Sun Grid Engine,- G-Lite – Condor,-

DeinoMP,- Mpich2,- Matlab,- Microsoft Visual Studio .NET

• Entre los lenguajes principales para construir aplicaciones

• paralelas tenemos

• MatlabMPI,OpenMPI,PVM,MPI,MPI.net,Pure MPI.net

Page 5: TeoríA AlgoríTmica

Modulo de Entrenamiento yTesteo de la Red Neuronal

Este módulo será el encargado de crear y configurar los parámetros de la red neuronal, como la taza de aprendizaje, el momento, el valor de alfa, el número de capas ocultas, el número de neuronas por cada capa oculta y finalmente el número de salidas que tendrá la red neuronal.

Este módulo también será el encargado de realizar el testeo de la red neuronal para comprobar su grado de aprendizaje.

Page 6: TeoríA AlgoríTmica

Análisis del problema mediantetiempos de ejecución

Mediante este análisis vamos a sacar los tiempos en los diferentes ciclos repetitivos que contiene el algoritmo para sacar la fórmula general y ver la demora de ejecución en cada una de las entradas

que intervienen en el programa, para ello obtendremos un orden asintótico de los ciclos repetitivos

Page 7: TeoríA AlgoríTmica

OptimidadAl realizar un análisis exhaustivo del algoritmo

se pudo observar que no se puede realizar un cambio de un proceso repetitivo a un proceso recursivo para poder realizar la optimización hemos cambio de for = n a un while = log n para poder realizar el mejoramiento del algoritmo

Page 8: TeoríA AlgoríTmica

Fórmula obtenida del Algoritmode entrenamiento y

testeo de la red neuronal

El orden asintótico de la clase BacKPropagatión-Learning

10+4+4n+n2 +c+d+f +2+2+n+9+8n+

2n2 + n3 + n3 + 5n2 + 9n + 11 + 5 + 3n + 3n2 + n3

43 + 25n + 11n2 + 3n3 + c + d + f

Page 9: TeoríA AlgoríTmica

El orden asintótico de la clase SOMLearning

22 + +c + 2 + 1 + n + (2 + n(4 + 3n)) + j + 2 + n

= 25 + c + n + 2 + 4 + 3n2 + i + 2 + n

= 34 + c + 2n + 3n2

El orden asintótico DeltaRuleLearning

1 + 1 + 2 + 2 + (4 + n(3 + n + 2) + 1) + (2 + n)

= 6 + (4 + 3n + n2 + 2n + 1) + 2 + n

= 13 + 6n + n2

Page 10: TeoríA AlgoríTmica

Formula obtenida después de la optimización

• El orden asintótico de la clase BacKPropagatión-Learning

• 1 + logn(6 + (logn + (4 + logn(2)))• 1 + logn(6 + (logn(4 + 2logn)))• 1 + logn(6 + 4(logn + 2logn2))• 1 + 6logn + 4logn2 + 2logn3

• 1 + 6logn + 8logn + 6logn

• 44 + 13n + 2n2 + 64logn + c + d + f

Page 11: TeoríA AlgoríTmica

• El orden asintótico de la clase SOMLearning• 1 + logn(7 + logn(6 + 2logn))• 1 + logn(7 + 6logn + 2logn2)• 1 + logn + 6logn2 + 2logn3• 1 + 7logn + 12logn + 6logn• 1 + 25logn• El orden asintótico DeltaRuleLearning• 1 + logn(5 + logn(4 + logn(2)))• 1 + logn(5 + logn(4 + 2logn))• 1 + logn(5 + 4logn + 2logn2)• 1 + 5logn + 4logn2 + 2logn3• 1 + 5logn + 8logn + 6logn

Page 12: TeoríA AlgoríTmica

Gráficas

Page 13: TeoríA AlgoríTmica

Comparaciones• While es de orden logn y for n

• Cuando se anidan sucede que el while es de orden nlogn y el for es de n2

• En tanto que el uno es casi lineal el otro será exponencial dependiendo de los niveles de ordenamiento.

• para los while se agregó una sentencia de asignación y una de crecimiento o decrecimiento. Según sea, en tanto que en el for no, debido a que estas se incluyen en la declaración de la entrada