TeoríA AlgoríTmica

Post on 11-Jul-2015

932 views 1 download

Transcript of TeoríA AlgoríTmica

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

AutoresDiego A. GuevaraVanessa C. Celi

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.

Objetivos• Determinar la función que exprese el tiempo

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

el algoritmo

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

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.

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

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

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

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

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

• 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

Gráficas

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