Your SlideShare is downloading. ×
Parameter Tuning
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Parameter Tuning

575
views

Published on

Resumen de artículos del tema de establecimiento de parámetros en Algoritmos Evolutivos, centrándose en el afinamiento en lugar de en el control.

Resumen de artículos del tema de establecimiento de parámetros en Algoritmos Evolutivos, centrándose en el afinamiento en lugar de en el control.

Published in: Technology, Health & Medicine

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
575
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. TEMA INTRODUCCIÓN AL AJUSTE DE PARÁMETROS: AFINAMIENTO Y CONTROL (TRABAJO DE A.E. EIBEN Y S.K. SMIT)FECHA PONENTE 15/04/2011 PABLO GARCÍA SÁNCHEZ
    • 2. ÍndiceIntroducciónVocabularioUtilidadTipos de AfinadoresMidiendo el esfuerzoConsideraciones
    • 3. IntroducciónEn la práctica los valores de los parámetros seeligen: Por convención (ej: mutación baja), Elecciones ad-hoc (usemos crossover uniforme!) Comparativas experimentales a escala limitada (testear 3 combinaciones de tres tasas de crossover y 3 de mutación)
    • 4. Afinamiento Vs. Control PARAMETER SETTING ANTES DE LA EJECUCIÓN DURANTE LA EJECUCIÓNPARAMETER TUNING PARAMETER CONTROL DETERMINISTIC SELF-ADAPTATIVE ADAPTATIVE
    • 5. Afinamiento Vs. Control PARAMETER SETTING ANTES DE LA EJECUCIÓN DURANTE LA EJECUCIÓNPARAMETER TUNING PARAMETER CONTROL DETERMINISTIC SELF-ADAPTATIVE ADAPTATIVE
    • 6. Objetivos del artículoDiscutir la noción de un parámetro de un EA y surelación con los EAs y las instancias de un EAConsiderar los aspectos más importantes delproblema de afinar los parámetrosResumen de los métodos de afinamiento deparámetro existentesDetalles sobre metodología y recomendacionespara próximas investigaciones
    • 7. EAs, Parámetros einstancias de algoritmosParámetros cuantitativos y cualitativos (aunqueotros autores los nombran distinto)->Dos nivelesInstanciar un parámetro es darle un valorEl número de parámetros para un EA no es fijo.Ejemplo: elegir torneo implica elegir tamaño(sub-parámetro).Dos algoritmos son diferentes si difieren en unode los parámetros cualitativos.
    • 8. Diseño de algoritmos yafinamiento de parámetrosUn EA con buenos valores para los parámetrospuede ser ordenes de magnitud mejor que unocon valores mal elegidos Design layer Design layerOPTIMIZES ALGORITHM QUALITY Algorithm layer Algorithm layerOPTIMIZES SOLUTION QUALITY Application Application
    • 9. Vocabulario Problem Solving Parameter TuningMethod at work evolutionary tuning procedure Search space algorithms solution vectors parameter vectors Quality fitness (determinístico) utility (depende) Asessment evaluation testing
    • 10. Formalización delproblemaEl problema del afinamiento de parámetros sepuede resumir en un problema de búsqueda<S,u> en el espacio de parámetros: S=Q1 x ⋅⋅⋅ × Qm × R1 × ⋅⋅⋅ × Rn ESTRUCTURAL PARAMÉTRICOUtilidad: u(p) p∈SEspacio de utilidad
    • 11. Utilidad, rendimiento del algoritmo y funciones testHay dos medidas atómicas para los EAs: Calidad de la solución Esfuerzo de búsqueda: tiempo, número de evaluaciones, etc.Se pueden combinar. P.ej: Dado un máximo tiempo obtener la mejor solución Dado un mínimo nivel de fitness obtener el tiempo en llegar a él Dado un máximo de tiempo y un mínimo fitness determinar si llega (true o false)
    • 12. Métricas de rendimientoMBF: Mean Best FitnessAES: Average number of evaluations to solutionSR: Success rate
    • 13. Afinadores especialistasvs. generalistasAfinador especialista: un EA es muy buenoresolviendo una instancia de un problema.Sin embargo se buscan instancias EA robustas,por lo que se usa un conjunto defunciones→afinador generalista. (NFL!)Al usar varios fitness la utilidad no es un sólonúmero→multiobjetivo o media de utilidades (ousando pesos o ordenes lexicográficos o lo quesea)
    • 14. Resumen de terminología1. Los vectores solución tienen valores de fitness, basados en la función objetivo relacionado con la instancia del problema a resolver2. Las instancias de los EAs tienen valores de rendimiento, basados en la información relacionada con el fitness y tiempo de ejecución de una o más instancias del problema (funciones objetivo)3. Los vectores de parámetros tienen valores de utilidad, definidas por el rendimiento de las instancias de EA correspondientes y las instancias del problema (funciones objetivo) usadas para afinar. Función de utilidad Conjunto de Afinador Algoritmo buenos Evolutivo valores de los parámetros! Problema(s) de test
    • 15. Aproximaciones algorítmicasal afinamiento de parámetrosAfinadores iterativosvs. no iterativosProcedimientos multi-etapa vs. mono-etapaCómo medir elesfuerzo de labúsqueda
    • 16. Afinadores iterativos vs.no iterativosNo Iterativos: generan un conjunto fijo devectores en la inicialización. Cada uno de esosvectores se testea durante la fase TEST paraencontrar el mejor vector de ese conjunto.Iterativos:empiezan con un conjunto inicial(aleatorio, grid sistemático o abarcando elespacio de búsqueda) y crean nuevos vectoresdurante la ejecución.
    • 17. Mono y multi-etapaMono-etapa: realizan el mismo número de testpara cada vector dadoMulti-etapa: seleccionan los vectores másprometedores para hacer test más exhaustivos
    • 18. Midiendo el esfuerzo AxBxCA. Número de vectores de parámetros a usar por el afinadorB. Número de tests (ej, ejecuciones del EA) por vectorC.Número de evaluaciones de una función fitness en cada ejecución. Relacionado con la estimación del rendimiento antes de terminarlo. Se usa para la Clasificación de los métodos de afinamiento
    • 19. Reducir número devectores de parámetrosSuelen usarse métodos iterativos→Apropiados para parámetroscuantitativosMeta-EAs →Sólo existen en la literatura meta-EAs con GA, ES,EDA (Estimation Distribution Algorithm) (no hay PSO ni DE)meta-GA y meta-ES son parecidos, es con EDA donde se obtienemás información al distribuir por el espacio de búsqueda.REVAC (Relevance Estimation and Value Calibration) method(Eiben, muchas citas). Crea distribuciones de probabilidadimplícitas de acuerdo a los parámetros para que los parámetrosque han demostrado ser buenos tienen más posibilidades quelos peores. Al terminar se obtiene el rango de los parámetrosprometedores y la relevancia de cada uno.
    • 20. Reducir el número de tests (B) Realizar sólo unos pocos test al principio e incrementar este número al nivel mínimo para obtener comparaciones entre parámetros estadísticamente significativo: statistical screening, ranking y selection. Maron et al. introducen racing. Método no iterativo dado un conjunto P de vectores y un número B máximo:1. Testear todos los vectores p una vez (es decir, ejecutar un EA)2. Determinar cual es mejor p con utilidad media mejor (pmejor)3. Determinar P los vectores cuya utilidad no es significativamente peor que pmejor (¿cómo?)4. P = P5. if P >1 y numTest<B ir a 1
    • 21. Midiendo las diferenciassignificativas de la utilidadEn el paso 3. es donde difieren los métodos de racing. Ladiferencia significativa se mide con: ANOVA Kruskal-Wallis Hoeffdings bound Unpaired Student T-TestMulti-etapa (se eligen los más prometedores para realizartests más exhaustivos) y se pueden usar para parámetroscuantitativos y cualitativos
    • 22. Utilizando un número pequeño de vectores de parámetros y tests (A y B) Yuan et al. combinan racing con meta-EAs en dos métodos:A. Los parámetros cuantitativos se evolucionan con una meta- (1+ λ )-ES, y en cada creación λ vectores se crean utilizando una distribución Gausiana centrada en el mejor. Luego se usa racing para ver cual tiene la mayor utilidad (así no hay que evaluarlos todos B veces, ya que algunos de ellos se eliminan después de unos pocos tests)B. Utilizan mutación, selección y recombinación pero se evalúan los vectores cuantitativos con todas las combinaciones de los parámetros cualitativos. También usa racing.
    • 23. Utilizando un número pequeño devectores de parámetros y tests(A y B)SPOT: procedimiento iterativo. Vectores de parámetros distribuidos(ej LHD, Latin Hypercube Design). Se testean B0 veces para estimar la utilidad y se crea un modelo de predicción. Se crean l nuevos vectores y su utilidad se estima usando el modelo sin ejecuciones adicionales del EA. Usan estimaciones de predicción y error. Los puntos más prometedores se evalúan B veces (valor bajo que puede ir subiendo si no se encuentra una buena utilidad). En el paso inicial hay pocos vectores (1 a 4). Puede combinarse con racing.REVAC++: REVAC + sharpening + racing (como add-ons) Cita a unartículo que se muestran las ventajas de racing y sharpening.
    • 24. Utilizando un númeropequeño de evaluaciones (C)En verano de 2009 no hay ninguno en laliteratura (?) Sólo un tipo deja fijos parámetrossalvo tamaño de población y los ejecuta enparalelo y cancela los EAs que van peor (lautilidad es el fitness en este caso).Idea: terminar la ejecución si no se va aencontrar un umbral de utilidad. Parecido aracing, pero reduciendo el número deevaluaciones (C) en lugar de tests (B).
    • 25. Casos exitosos en elafinamiento de EAsComparativas de algoritmos afinados vs a manoo con fuerza bruta.Estudios indican que no todos los EAs requierenel mismo coste para afinarlos.SA y ES afinados con DACE y regresiónsimbólicaOtros afinadores para otros algoritmos
    • 26. Consideraciones paraafinar EAsProblemas repetitivos Vs. una-vez (en unos prima el costecomputacional y en otros la calidad de la solución). Losprimeros se usan más en el mundo académico.Beneficios del afinamiento para profesionales que seenfrentan a problemas reales y académicos que quieranavanzar el mundo de los EAs en general.Para ambos: "Afina tus algoritmos con un algoritmo afinador(e informa de los efectos de la afinación)".El problema de las "constantes mágicas" escondidas en elcódigo. Por ejemplo en CMA-ES descendencia=4+3*log(n) ypoblacion = desc/2. → también deberían tunearse
    • 27. Consideraciones finales“Mi nuevo algoritmo es mejor que el antiguo en algunoscasos” ☹Gastando X esfuerzo en tunear mi nuevo algoritmo, tenemosuna instancia que es mejor que el viejo sin tunear.☺La mejor instancia del nuevo algoritmo es mejor que la mejorinstancia del viejo algoritmo, donde las mejores de estasinstancias se han obtenido con X esfuerzo en tunearlas.☺☺Así nos enfocamos mejor en los operadores que en lasinstancias
    • 28. Conclusiones Hay que usar afinadores y gastar un día extra en afinar tus algoritmos. Hay software disponible! P. Ej. MOBAT (Java y paralelo) Meta-Heuristic Optimizer Benchmark and Analysis Tool Rendimiento Rendimiento EA1 EA2 EA1 EA2Parámetros ad-hoc sin afinamiento Parámetros óptimos con afinamiento
    • 29. BibliografíaEiben A. E. and Smit S. K., Parameter Tuning for Configuring and AnalyzingEvolutionary Algorithms , Swarm andEvolutionary Computation , 2011Eiben A. E. and Smit S. K., Evolutionary Algorithm Parameters and Methodsto Tune them , Y. Hamadi E. Monfroy and Saubion F. (eds.) , AutonomousSearch , Springer , 2011Smit S. K. and Eiben A. E., Beating the world champion evolutionaryalgorithm via REVAC tuning , IEEE Congress on Evolutionary Computation ,IEEE Press , 2010 , pp. 1-8Eiben A. E. and Smith J.E., Parameter Control in Evolutionary Algorithms,Introduction to Evolutionary Comuting, Springer, 2005, pp. 129-151.Kang P. et al. Dynamic Tuning of Algorithmic Parameters of ParallelScientific codes, International Conference on Computational Science, ICCS2010, 2010, pp. 145-153.
    • 30. MUCHAS GRACIAS!PROYECTO (POR SU ATENCIÓN)FECHA EMAIL 15/04/2011 PGARCIA@ATC.UGR.ES

    ×