SlideShare una empresa de Scribd logo
IA en el Póker Online
              Clasificador Preflop

             Presentación Final




                                     Raúl Martínez Fernández
                                     Antonio Díaz Ponce
                                     Javier García-Cuerva Velasco
La Inteligencia Artificial en las Organizaciones 2009-2010
Índice

•   Problema a resolver
•   Obtención de datos
•   Procesado de los datos
•   Exploración de los datos (Weka)
•   Técnicas de selección de atributos (Weka)
•   Experimenter (Weka)

            La Inteligencia Artificial en las Organizaciones 2009-2010
Problema a resolver
                             Recuerdo

               Texas Hold’em Sin Límite

Jugadores de Póker Online                       Clasificador de manos preflop




                                   Extracción de
                                   Conocimiento




              BBDD

            La Inteligencia Artificial en las Organizaciones 2009-2010
Obtención de los datos
                                    Recuerdo

• No pagar por datos Dificultades Usuarios de poquer-red




                                                Sólo manos
                                                                            10710 manos
                                               si showdown

  1795 jugadores
                     101 Ficheros xml
                      100.000 manos



                   La Inteligencia Artificial en las Organizaciones 2009-2010
Procesado de los datos
                Nueva extracción de información

• Programa en Java:
   • Leer todos los ficheros
   • Extraer los patrones
   • Extraer los atributos
     • 3 atributos nuevos
  • Clases a utilizar
                                                                 Menos manos
  • Arreglar los errores en los datos:                           10710 10708
     • Manos con jugadores Sit out (caídos)
     • Una mano con jugadores no pertenecientes a la mano
             La Inteligencia Artificial en las Organizaciones 2009-2010
Procesado de los datos
             Extracción, con los nuevos 3 atributos
•   CiegaPequena
                         •   MiPosicion              Añadimos 3 atributos:
•   CiegaGrande
•   Hora                 •   PaloCarta1                  •La posición del
•   Minuto               •   ValorCarta1
                                                      jugador en la mesa
•   JugadoresTotales     •   PaloCarta2
•   PosicionJugador6                                    •Si las cartas son
                         •   ValorCarta2
•   FichasJugador6
                         •   Suited
                                                           pareja o no
•   PosicionJugador5                                    •Si las cartas son
•   FichasJugador5       •   Pareja
•   PosicionJugador4     •   Consecutivas              consecutivas o no
•   FichasJugador4       •   ValorSubida1
•   PosicionJugador3     •   ValorSubida2
•   FichasJugador3
                         •   ValorSubida3
•   PosicionJugador2
•   FichasJugador2       •   ValorSubida4
•   PosicionJugador1     •   ValorSubida5
•   FichasJugador1
            La Inteligencia Artificial en las Organizaciones 2009-2010
Procesado de los datos
                                 Nuevos atributos

                                          Nº    Jugador
    Ciega   Ciega                      Jugadore    6ª    Stack 6º
   Pequeña Grande        Hora   Minuto     s    posición Jugador           …   MiPosición
     0.5     1.0          0.0    32.0     6.0     6.0     1.0E7            …      1.0
     0.5     1.0         23.0     1.0     6.0     6.0     1.0E7            …      2.0
     0.5     1.0         23.0     1.0     6.0     6.0     1.0E7            …      2.0

Palo Valor Palo Valor                             Subida Subida Subida Subida
Carta Carta Carta Carta Suited Pareja Consecutivas nº 2 nº 1 nº 2 … nº 5 Accion
1.0 13.0    2.0   10.0    0.0   0.0        0.0        0.0    0.0     0.0   …   0.0   1.0
2.0   1.0   4.0   3.0     0.0   0.0        0.0        0.0    0.0     0.0   …   0.0   1.0
2.0 12.0    2.0   11.0    1.0   0.0        1.0        1.0    0.0     1.0   …   0.0   3.0




                  La Inteligencia Artificial en las Organizaciones 2009-2010
Exploración
                                      Clases
• patrones.arff:10708 patrones, 100.000 manos, 1795 jugadores
• Clases a utilizar:
   • 4 clases {0,1,2,3} Valores Continuos (Aunque es Clasificación)
       • 0: Apuesta de $0 1050 patrones 9,8%
       • 1: Apuesta entre $0 y $2.5 3868 patrones 36,1%
       • 2: Apuesta entre $2.5 y $5 4193 patrones 39,2%
       • 3: Apuesta superior a $5 1597 patrones 14,9%




                  La Inteligencia Artificial en las Organizaciones 2009-2010
Exploración
                              Resultados Clasificadores
Clasificadores Lineales                Algoritmo              % Aciertos    % Error Absoluto
Media Aciertos =49,1028%                  SMO                 49.2447 %        90.2991 %
Media Error = 87,5366%                  Logistic              51.1673 %        88.441 %
                                    Simple Logistic           51.2222 %        88.6475 %
                                   Perceptrón Simple          41.582 %         88.0926 %
                                      Naive Bayes             45.9489 %        88.2112 %
                                       Bayes Net              55.4518 %        81.5284 %
Clasificadores No Lineales             Algoritmo              % Aciertos    % Error Absoluto
Media Aciertos = 60,4144%                  J48                62.4554 %        61.4247 %
Media Error =69,8297%          OrdinalClassClassifier (J48)   62.4828 %        62.8628 %


Presentación                     Multilayer Perceptron        60.8624 %        71.6913 %
                                      (train=66%)
Intermedia:                    OrdinalClassClassifier (MLP    60.1208 %        67.9233 %
•MLP:                                  train=66%)
                                 Multilayer Perceptron        61.8043 %        70.5073 %
Aciertos 46.0317 %
                                      (test=train)
•J48:                          OrdinalClassClassifier (MLP    64.4938 %        63.7474 %
Aciertos: 47.8369 %                    test=train)
                                      RBFNetwork              52.2384 %        86.9388 %
                                         REPTree              58.8575 %        73.5421 %
                       La Inteligencia Artificial en las Organizaciones 2009-2010
•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).
•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).


                             Selección de atributos
                                                                 Teoría
  • Métodos de Selección de Atributos:
     • Evaluación individual de atributos (Ranker)
     • Evaluación de subconjuntos de atributos
        • Filter: se evalúan los atributos de manera individual, pero
           tiene en cuenta la redundancia entre atributos.
        • Wrapper: se evalúan de manera conjunta. Bueno , pero lento
  • Hay que definir:
     • Una manera de moverse por el espacio de búsqueda (método de
       búsqueda)
     • Una manera (medida) de evaluar subconjuntos de atributos
       (evaluador de atributos)

                                 La Inteligencia Artificial en las Organizaciones 2009-2010
Selección de atributos
                        Técnicas Usadas

1. Ranker:
   •Evaluador de atributos: ChiSquaredAttributeEval
   •Método de búsqueda: Ranker.
2. Filter:
   •Evaluador de atributos: CfsSubsetEval
   •Método de búsqueda: GreedyStepwise

3. Wrapper:
   •Evaluador de atributos: ClassifierSubsetEval
   •Clasificador: PART
   •Método de búsqueda: GreedyStepwise.


        La Inteligencia Artificial en las Organizaciones 2009-2010
•Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda).
•Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos).


                             Selección de atributos
                                                             Resultados
  • Ranker: 30 atributos ordenados de mejor a peor
  • Filter: los mejores 9 atributos, sin redundancia
  • Wrapper (12 horas): los mejores 16 atributos.
                                                  1.    Hora
                                                  2.    Minuto
                                                  3.    JugadoresTotales
           Tienen mucho                           4.    MiPosicion                         Pensamos que
            sentido para                          5.    PaloCarta1                         si usamos J48
                                                  6.    ValorCarta1
             un jugador                           7.    PaloCarta2
                                                                                                y MLP,
            profesional                           8.    ValorCarta2                         obtendremos
                                                  9.    Suited                               los mejores
                                                  10.   Pareja
                                                  11.   Consecutivas                          resultados
                                                  12.   ValorSubida1
                                                  13.   ValorSubida2
                                                  14.   ValorSubida3
                                                  15.   ValorSubida4


                                 La Inteligencia Artificial en las Organizaciones 2009-2010
Selección de atributos
                           Usando Clasificadores (J48 y MLP)
       1. Ranker:

Número Atributos   % Aciertos J48    % Aciertos MLP
       5              53.337 %         44.9602 %
      10             59.1046 %         52.3483 %
      15             64.0483 %         60.7525 %
      20             64.3505 %         62.8673 %
      25             62.1533 %         61.8511 %
      30             62.0983 %         60.3406 %


       2. Filter:
                                    % Aciertos J48    % Aciertos MLP

                                       58.83 %          52.4032 %

       3. Wrapper:
                                    % Aciertos J48    % Aciertos MLP
                                      61.5216 %         61.4392 %


                       La Inteligencia Artificial en las Organizaciones 2009-2010
Selección de atributos
                             Comparativa Técnicas
         Los mejores clasificadores con las técnicas de selección
         de atributos:
   Selector de         % Aciertos   % Aciertos
    atributos             J48          MLP
    Ranker (20         64.3505 %    62.8673 %
    atributos)
Filter (9 atributos)   58.83 %      52.4032 %


   Wrapper (16         61.5216 %    61.4392 %
    atributos)
 Sin selección de      62.4554 %    60.8624 %
   atributos (30
    atributos)



                         La Inteligencia Artificial en las Organizaciones 2009-2010
Aprendizaje de las clases
                               Matriz de Confusión
      Ranker con 20 atributos, ofrece mejores resultados:



J48                                         MLP



      J48 (Porcentaje de aciertos:TP Rate)




      MLP (Porcentaje de aciertos:TP Rate)




                  La Inteligencia Artificial en las Organizaciones 2009-2010
Aprendizaje de las clases
                        Equilibrado de Clases
MetaClasificador: MetaCost, recibe un clasificador y una matriz de costes




  J48 (sin metacost)                         J48 (con metacost)




   MLP (sin metacost)                         MLP (con metacost)




            La Inteligencia Artificial en las Organizaciones 2009-2010
Experimenter
                                Experimentos
        • Aplicar varios algoritmos y estadísticamente ver cuál es mejor
        •Usaremos los mejores algoritmos y los mejores datos
        •Haremos validación cruzada para evitar sesgos
        •10 repeticiones para cada experimento

                                                   J48 (base)          MLP
               Dataset                   (1) trees.J48 '-C | (2) functions.M
               --------------------------------------------------------------
Wrapper        'PatronesNL100-weka.filte(100)   61.52(1.50) |   61.60(1.78)
Ranker         'PatronesNL100-weka.filte(100)   64.34(1.46) |   61.43(1.67) *
(20 atributos) --------------------------------------------------------------
                                                    (v/ /*) |         (0/1/1)



           (X,Y,Z)
           X: datasets donde el algoritmo es mejor que el base
           Y: datasets donde no es ni mejor ni peor.
           Z: datasets, donde el algoritmos es peor que el base


                  La Inteligencia Artificial en las Organizaciones 2009-2010
Experimenter
                   Comparativa con Exploración
• Con los resultados del experimenter podemos descartar que la
casualidad nos hiciera obtener los resultados que obtuvimos en la fase
de exploración
                  Técnica usada             J48          MLP
                %Aciertos Explorer       61.5216 %    61.4392 %
                    (Wrapper)
              %Aciertos Experimenter      61.52 %       61.60%
                    (Wrapper)
                %Aciertos Explorer       64.3505 %    62.8673 %
                     (Ranker)
              %Aciertos Experimenter      64.34 %       61.43 %
                     (Ranker)
 • Resultados del Experimenter son bastante parecidos a los del Explorer
 • MLP llega a mejorar a J48
 • El mejor resultado sigue siendo J48 con Ranker con 20 atributos

            La Inteligencia Artificial en las Organizaciones 2009-2010
Conclusiones
                       Balance Positivo

• Pasamos de un 46% a un 64%:
   • Añadiendo nuevos atributos
   • Haciendo una buena exploración de los mejores
   algoritmos
   • Haciendo una buena selección de atributos
• Son resultados buenos si tenemos en cuenta:
   • El factor humano es muy importante, ya que es
   difícil aprenderlo
   •Dificultad para encontrar unos datos
   • Usamos datos de varios jugadores, siendo mejor de
   un solo jugador
   •Errores en los datos iniciales (stacks descomunales)

        La Inteligencia Artificial en las Organizaciones 2009-2010
PREGUNTAS?




La Inteligencia Artificial en las Organizaciones 2009-2010

Más contenido relacionado

Destacado

Salmo 47
Salmo 47Salmo 47
Salmo 47
Rafael Sanz
 
Para Que Sepan Porque Las Mujeres Tardamos En Un BañO
Para Que Sepan Porque Las Mujeres Tardamos En Un BañOPara Que Sepan Porque Las Mujeres Tardamos En Un BañO
Para Que Sepan Porque Las Mujeres Tardamos En Un BañO
TheBerugo
 
Taller 4 El aula expandida
Taller 4 El aula expandidaTaller 4 El aula expandida
Taller 4 El aula expandida
Bruno Bustos
 
De Tapas
De  TapasDe  Tapas
45 Fotos Históricas
45 Fotos Históricas45 Fotos Históricas
45 Fotos Históricas
AntoniRamis
 
1[1][1].1 Feliz Mitadde AñO
1[1][1].1 Feliz Mitadde AñO1[1][1].1 Feliz Mitadde AñO
1[1][1].1 Feliz Mitadde AñOguest1adb86a60
 
Tutorial aula Virtual - Curso La web Social
Tutorial aula Virtual - Curso La web SocialTutorial aula Virtual - Curso La web Social
Tutorial aula Virtual - Curso La web Social
Bruno Bustos
 
Tiempo[1]
Tiempo[1]Tiempo[1]
Tiempo[1]
Personal
 
Ria Del Eo
Ria Del EoRia Del Eo
Ria Del Eoalbiitah
 
Videoconferencia
VideoconferenciaVideoconferencia
Videoconferenciadokeosla
 
Historietas 4to"B"
Historietas 4to"B"Historietas 4to"B"
Historietas 4to"B"
sbprimaria
 
PresentacióN Estadistica por jose luis sosa
PresentacióN Estadistica por jose luis sosaPresentacióN Estadistica por jose luis sosa
PresentacióN Estadistica por jose luis sosa
guest2286e750
 
perifericos de entraday salida
perifericos de entraday salida  perifericos de entraday salida
perifericos de entraday salida paul.romero21
 
Artritis
ArtritisArtritis

Destacado (17)

Salmo 47
Salmo 47Salmo 47
Salmo 47
 
Para Que Sepan Porque Las Mujeres Tardamos En Un BañO
Para Que Sepan Porque Las Mujeres Tardamos En Un BañOPara Que Sepan Porque Las Mujeres Tardamos En Un BañO
Para Que Sepan Porque Las Mujeres Tardamos En Un BañO
 
Europa 7mo grado
Europa 7mo gradoEuropa 7mo grado
Europa 7mo grado
 
Taller 4 El aula expandida
Taller 4 El aula expandidaTaller 4 El aula expandida
Taller 4 El aula expandida
 
De Tapas
De  TapasDe  Tapas
De Tapas
 
45 Fotos Históricas
45 Fotos Históricas45 Fotos Históricas
45 Fotos Históricas
 
1[1][1].1 Feliz Mitadde AñO
1[1][1].1 Feliz Mitadde AñO1[1][1].1 Feliz Mitadde AñO
1[1][1].1 Feliz Mitadde AñO
 
Tutorial aula Virtual - Curso La web Social
Tutorial aula Virtual - Curso La web SocialTutorial aula Virtual - Curso La web Social
Tutorial aula Virtual - Curso La web Social
 
Tiempo[1]
Tiempo[1]Tiempo[1]
Tiempo[1]
 
Ria Del Eo
Ria Del EoRia Del Eo
Ria Del Eo
 
Videoconferencia
VideoconferenciaVideoconferencia
Videoconferencia
 
Historietas 4to"B"
Historietas 4to"B"Historietas 4to"B"
Historietas 4to"B"
 
DiseñO Creatiidad
DiseñO CreatiidadDiseñO Creatiidad
DiseñO Creatiidad
 
PresentacióN Estadistica por jose luis sosa
PresentacióN Estadistica por jose luis sosaPresentacióN Estadistica por jose luis sosa
PresentacióN Estadistica por jose luis sosa
 
perifericos de entraday salida
perifericos de entraday salida  perifericos de entraday salida
perifericos de entraday salida
 
Calculovectorial2010 2011
Calculovectorial2010 2011Calculovectorial2010 2011
Calculovectorial2010 2011
 
Artritis
ArtritisArtritis
Artritis
 

Similar a Presentacion final

Curse of dimensionality by MC Ivan Alejando Garcia
Curse of dimensionality by MC Ivan Alejando GarciaCurse of dimensionality by MC Ivan Alejando Garcia
Curse of dimensionality by MC Ivan Alejando Garcia
DataLab Community
 
Haciendo visible lo invisible: imágenes en la plataforma ArcGIS
Haciendo visible lo invisible: imágenes en la plataforma ArcGISHaciendo visible lo invisible: imágenes en la plataforma ArcGIS
Haciendo visible lo invisible: imágenes en la plataforma ArcGIS
Esri España
 
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
Pablo García Sánchez
 
Ejemplos de investigación en videojuegos
Ejemplos de investigación en videojuegosEjemplos de investigación en videojuegos
Ejemplos de investigación en videojuegos
Pablo García Sánchez
 
Final
FinalFinal
Algoritmos Evolutivos para IA en Videojuegos
Algoritmos Evolutivos para IA en VideojuegosAlgoritmos Evolutivos para IA en Videojuegos
Algoritmos Evolutivos para IA en Videojuegos
Pablo García Sánchez
 
Datamining y Machine Learning para Ciencias Biológicas
Datamining y Machine Learning para Ciencias BiológicasDatamining y Machine Learning para Ciencias Biológicas
Datamining y Machine Learning para Ciencias Biológicas
Carlos Manuel Estévez-Bretón Riveros
 
¿Quién, cuándo, dónde y por qué?
¿Quién, cuándo, dónde y por qué?¿Quién, cuándo, dónde y por qué?
¿Quién, cuándo, dónde y por qué?
Nacho Fanjul Corteguera
 
Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)
Manuel Rodrigo Cabello Malagón
 
Machine Learning & Bots
Machine Learning & BotsMachine Learning & Bots
Machine Learning & Bots
[T]echdencias
 
1-1. Introducción 2019-10-30.pdf
1-1. Introducción 2019-10-30.pdf1-1. Introducción 2019-10-30.pdf
1-1. Introducción 2019-10-30.pdf
carlarenata16
 
CIITEC Fundamentos de Deep Learning.pptx
CIITEC  Fundamentos de Deep Learning.pptxCIITEC  Fundamentos de Deep Learning.pptx
CIITEC Fundamentos de Deep Learning.pptx
icebeam7
 
Azure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BIAzure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BI
[T]echdencias
 
Curso modelamiento base de datos
Curso modelamiento base de datosCurso modelamiento base de datos
Curso modelamiento base de datosAmigo Fiel
 
Argentesting 2019 - Machine learning en testing priorizacion de casos de pr...
Argentesting 2019 - Machine learning en testing   priorizacion de casos de pr...Argentesting 2019 - Machine learning en testing   priorizacion de casos de pr...
Argentesting 2019 - Machine learning en testing priorizacion de casos de pr...
Argentesting
 
Tópicos de Big Data - Sistemas de Recomendación
Tópicos de Big Data - Sistemas de RecomendaciónTópicos de Big Data - Sistemas de Recomendación
Tópicos de Big Data - Sistemas de Recomendación
Ernesto Mislej
 
Algoritmos genéticos con matlab
Algoritmos genéticos con matlabAlgoritmos genéticos con matlab
Algoritmos genéticos con matlabUNIV OF PERU
 
Terasoft Deep Learning.pptx
Terasoft Deep Learning.pptxTerasoft Deep Learning.pptx
Terasoft Deep Learning.pptx
Luis Beltran
 
Búsqueda IA
Búsqueda IABúsqueda IA
Búsqueda IA
Datio Big Data
 

Similar a Presentacion final (20)

Curse of dimensionality by MC Ivan Alejando Garcia
Curse of dimensionality by MC Ivan Alejando GarciaCurse of dimensionality by MC Ivan Alejando Garcia
Curse of dimensionality by MC Ivan Alejando Garcia
 
Haciendo visible lo invisible: imágenes en la plataforma ArcGIS
Haciendo visible lo invisible: imágenes en la plataforma ArcGISHaciendo visible lo invisible: imágenes en la plataforma ArcGIS
Haciendo visible lo invisible: imágenes en la plataforma ArcGIS
 
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
Survival of the fittest: usando el paquete inspyred para entrenar IAs que jue...
 
Ejemplos de investigación en videojuegos
Ejemplos de investigación en videojuegosEjemplos de investigación en videojuegos
Ejemplos de investigación en videojuegos
 
Final
FinalFinal
Final
 
Final
FinalFinal
Final
 
Algoritmos Evolutivos para IA en Videojuegos
Algoritmos Evolutivos para IA en VideojuegosAlgoritmos Evolutivos para IA en Videojuegos
Algoritmos Evolutivos para IA en Videojuegos
 
Datamining y Machine Learning para Ciencias Biológicas
Datamining y Machine Learning para Ciencias BiológicasDatamining y Machine Learning para Ciencias Biológicas
Datamining y Machine Learning para Ciencias Biológicas
 
¿Quién, cuándo, dónde y por qué?
¿Quién, cuándo, dónde y por qué?¿Quién, cuándo, dónde y por qué?
¿Quién, cuándo, dónde y por qué?
 
Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)
 
Machine Learning & Bots
Machine Learning & BotsMachine Learning & Bots
Machine Learning & Bots
 
1-1. Introducción 2019-10-30.pdf
1-1. Introducción 2019-10-30.pdf1-1. Introducción 2019-10-30.pdf
1-1. Introducción 2019-10-30.pdf
 
CIITEC Fundamentos de Deep Learning.pptx
CIITEC  Fundamentos de Deep Learning.pptxCIITEC  Fundamentos de Deep Learning.pptx
CIITEC Fundamentos de Deep Learning.pptx
 
Azure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BIAzure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BI
 
Curso modelamiento base de datos
Curso modelamiento base de datosCurso modelamiento base de datos
Curso modelamiento base de datos
 
Argentesting 2019 - Machine learning en testing priorizacion de casos de pr...
Argentesting 2019 - Machine learning en testing   priorizacion de casos de pr...Argentesting 2019 - Machine learning en testing   priorizacion de casos de pr...
Argentesting 2019 - Machine learning en testing priorizacion de casos de pr...
 
Tópicos de Big Data - Sistemas de Recomendación
Tópicos de Big Data - Sistemas de RecomendaciónTópicos de Big Data - Sistemas de Recomendación
Tópicos de Big Data - Sistemas de Recomendación
 
Algoritmos genéticos con matlab
Algoritmos genéticos con matlabAlgoritmos genéticos con matlab
Algoritmos genéticos con matlab
 
Terasoft Deep Learning.pptx
Terasoft Deep Learning.pptxTerasoft Deep Learning.pptx
Terasoft Deep Learning.pptx
 
Búsqueda IA
Búsqueda IABúsqueda IA
Búsqueda IA
 

Más de sinchan607

Memoria inicial
Memoria inicialMemoria inicial
Memoria inicialsinchan607
 
Memoria intermedia
Memoria intermediaMemoria intermedia
Memoria intermediasinchan607
 
Practica Iao 1 (PresentacióN Inicial)
Practica Iao 1 (PresentacióN Inicial)Practica Iao 1 (PresentacióN Inicial)
Practica Iao 1 (PresentacióN Inicial)sinchan607
 

Más de sinchan607 (6)

Memoria inicial
Memoria inicialMemoria inicial
Memoria inicial
 
Memoria final
Memoria finalMemoria final
Memoria final
 
Memoria intermedia
Memoria intermediaMemoria intermedia
Memoria intermedia
 
Ruleta
RuletaRuleta
Ruleta
 
Thesis
ThesisThesis
Thesis
 
Practica Iao 1 (PresentacióN Inicial)
Practica Iao 1 (PresentacióN Inicial)Practica Iao 1 (PresentacióN Inicial)
Practica Iao 1 (PresentacióN Inicial)
 

Presentacion final

  • 1. IA en el Póker Online Clasificador Preflop Presentación Final Raúl Martínez Fernández Antonio Díaz Ponce Javier García-Cuerva Velasco La Inteligencia Artificial en las Organizaciones 2009-2010
  • 2. Índice • Problema a resolver • Obtención de datos • Procesado de los datos • Exploración de los datos (Weka) • Técnicas de selección de atributos (Weka) • Experimenter (Weka) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 3. Problema a resolver Recuerdo Texas Hold’em Sin Límite Jugadores de Póker Online Clasificador de manos preflop Extracción de Conocimiento BBDD La Inteligencia Artificial en las Organizaciones 2009-2010
  • 4. Obtención de los datos Recuerdo • No pagar por datos Dificultades Usuarios de poquer-red Sólo manos 10710 manos si showdown 1795 jugadores 101 Ficheros xml 100.000 manos La Inteligencia Artificial en las Organizaciones 2009-2010
  • 5. Procesado de los datos Nueva extracción de información • Programa en Java: • Leer todos los ficheros • Extraer los patrones • Extraer los atributos • 3 atributos nuevos • Clases a utilizar Menos manos • Arreglar los errores en los datos: 10710 10708 • Manos con jugadores Sit out (caídos) • Una mano con jugadores no pertenecientes a la mano La Inteligencia Artificial en las Organizaciones 2009-2010
  • 6. Procesado de los datos Extracción, con los nuevos 3 atributos • CiegaPequena • MiPosicion Añadimos 3 atributos: • CiegaGrande • Hora • PaloCarta1 •La posición del • Minuto • ValorCarta1 jugador en la mesa • JugadoresTotales • PaloCarta2 • PosicionJugador6 •Si las cartas son • ValorCarta2 • FichasJugador6 • Suited pareja o no • PosicionJugador5 •Si las cartas son • FichasJugador5 • Pareja • PosicionJugador4 • Consecutivas consecutivas o no • FichasJugador4 • ValorSubida1 • PosicionJugador3 • ValorSubida2 • FichasJugador3 • ValorSubida3 • PosicionJugador2 • FichasJugador2 • ValorSubida4 • PosicionJugador1 • ValorSubida5 • FichasJugador1 La Inteligencia Artificial en las Organizaciones 2009-2010
  • 7. Procesado de los datos Nuevos atributos Nº Jugador Ciega Ciega Jugadore 6ª Stack 6º Pequeña Grande Hora Minuto s posición Jugador … MiPosición 0.5 1.0 0.0 32.0 6.0 6.0 1.0E7 … 1.0 0.5 1.0 23.0 1.0 6.0 6.0 1.0E7 … 2.0 0.5 1.0 23.0 1.0 6.0 6.0 1.0E7 … 2.0 Palo Valor Palo Valor Subida Subida Subida Subida Carta Carta Carta Carta Suited Pareja Consecutivas nº 2 nº 1 nº 2 … nº 5 Accion 1.0 13.0 2.0 10.0 0.0 0.0 0.0 0.0 0.0 0.0 … 0.0 1.0 2.0 1.0 4.0 3.0 0.0 0.0 0.0 0.0 0.0 0.0 … 0.0 1.0 2.0 12.0 2.0 11.0 1.0 0.0 1.0 1.0 0.0 1.0 … 0.0 3.0 La Inteligencia Artificial en las Organizaciones 2009-2010
  • 8. Exploración Clases • patrones.arff:10708 patrones, 100.000 manos, 1795 jugadores • Clases a utilizar: • 4 clases {0,1,2,3} Valores Continuos (Aunque es Clasificación) • 0: Apuesta de $0 1050 patrones 9,8% • 1: Apuesta entre $0 y $2.5 3868 patrones 36,1% • 2: Apuesta entre $2.5 y $5 4193 patrones 39,2% • 3: Apuesta superior a $5 1597 patrones 14,9% La Inteligencia Artificial en las Organizaciones 2009-2010
  • 9. Exploración Resultados Clasificadores Clasificadores Lineales Algoritmo % Aciertos % Error Absoluto Media Aciertos =49,1028% SMO 49.2447 % 90.2991 % Media Error = 87,5366% Logistic 51.1673 % 88.441 % Simple Logistic 51.2222 % 88.6475 % Perceptrón Simple 41.582 % 88.0926 % Naive Bayes 45.9489 % 88.2112 % Bayes Net 55.4518 % 81.5284 % Clasificadores No Lineales Algoritmo % Aciertos % Error Absoluto Media Aciertos = 60,4144% J48 62.4554 % 61.4247 % Media Error =69,8297% OrdinalClassClassifier (J48) 62.4828 % 62.8628 % Presentación Multilayer Perceptron 60.8624 % 71.6913 % (train=66%) Intermedia: OrdinalClassClassifier (MLP 60.1208 % 67.9233 % •MLP: train=66%) Multilayer Perceptron 61.8043 % 70.5073 % Aciertos 46.0317 % (test=train) •J48: OrdinalClassClassifier (MLP 64.4938 % 63.7474 % Aciertos: 47.8369 % test=train) RBFNetwork 52.2384 % 86.9388 % REPTree 58.8575 % 73.5421 % La Inteligencia Artificial en las Organizaciones 2009-2010
  • 10. •Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda). •Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos). Selección de atributos Teoría • Métodos de Selección de Atributos: • Evaluación individual de atributos (Ranker) • Evaluación de subconjuntos de atributos • Filter: se evalúan los atributos de manera individual, pero tiene en cuenta la redundancia entre atributos. • Wrapper: se evalúan de manera conjunta. Bueno , pero lento • Hay que definir: • Una manera de moverse por el espacio de búsqueda (método de búsqueda) • Una manera (medida) de evaluar subconjuntos de atributos (evaluador de atributos) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 11. Selección de atributos Técnicas Usadas 1. Ranker: •Evaluador de atributos: ChiSquaredAttributeEval •Método de búsqueda: Ranker. 2. Filter: •Evaluador de atributos: CfsSubsetEval •Método de búsqueda: GreedyStepwise 3. Wrapper: •Evaluador de atributos: ClassifierSubsetEval •Clasificador: PART •Método de búsqueda: GreedyStepwise. La Inteligencia Artificial en las Organizaciones 2009-2010
  • 12. •Una manera de moverse por el espacio de búsqueda (lo que llamaremos método de búsqueda). •Una manera (medida) de evaluar subconjuntos de atributos (lo que llamaremos evaluador de atributos). Selección de atributos Resultados • Ranker: 30 atributos ordenados de mejor a peor • Filter: los mejores 9 atributos, sin redundancia • Wrapper (12 horas): los mejores 16 atributos. 1. Hora 2. Minuto 3. JugadoresTotales Tienen mucho 4. MiPosicion Pensamos que sentido para 5. PaloCarta1 si usamos J48 6. ValorCarta1 un jugador 7. PaloCarta2 y MLP, profesional 8. ValorCarta2 obtendremos 9. Suited los mejores 10. Pareja 11. Consecutivas resultados 12. ValorSubida1 13. ValorSubida2 14. ValorSubida3 15. ValorSubida4 La Inteligencia Artificial en las Organizaciones 2009-2010
  • 13. Selección de atributos Usando Clasificadores (J48 y MLP) 1. Ranker: Número Atributos % Aciertos J48 % Aciertos MLP 5 53.337 % 44.9602 % 10 59.1046 % 52.3483 % 15 64.0483 % 60.7525 % 20 64.3505 % 62.8673 % 25 62.1533 % 61.8511 % 30 62.0983 % 60.3406 % 2. Filter: % Aciertos J48 % Aciertos MLP 58.83 % 52.4032 % 3. Wrapper: % Aciertos J48 % Aciertos MLP 61.5216 % 61.4392 % La Inteligencia Artificial en las Organizaciones 2009-2010
  • 14. Selección de atributos Comparativa Técnicas Los mejores clasificadores con las técnicas de selección de atributos: Selector de % Aciertos % Aciertos atributos J48 MLP Ranker (20 64.3505 % 62.8673 % atributos) Filter (9 atributos) 58.83 % 52.4032 % Wrapper (16 61.5216 % 61.4392 % atributos) Sin selección de 62.4554 % 60.8624 % atributos (30 atributos) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 15. Aprendizaje de las clases Matriz de Confusión Ranker con 20 atributos, ofrece mejores resultados: J48 MLP J48 (Porcentaje de aciertos:TP Rate) MLP (Porcentaje de aciertos:TP Rate) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 16. Aprendizaje de las clases Equilibrado de Clases MetaClasificador: MetaCost, recibe un clasificador y una matriz de costes J48 (sin metacost) J48 (con metacost) MLP (sin metacost) MLP (con metacost) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 17. Experimenter Experimentos • Aplicar varios algoritmos y estadísticamente ver cuál es mejor •Usaremos los mejores algoritmos y los mejores datos •Haremos validación cruzada para evitar sesgos •10 repeticiones para cada experimento J48 (base) MLP Dataset (1) trees.J48 '-C | (2) functions.M -------------------------------------------------------------- Wrapper 'PatronesNL100-weka.filte(100) 61.52(1.50) | 61.60(1.78) Ranker 'PatronesNL100-weka.filte(100) 64.34(1.46) | 61.43(1.67) * (20 atributos) -------------------------------------------------------------- (v/ /*) | (0/1/1) (X,Y,Z) X: datasets donde el algoritmo es mejor que el base Y: datasets donde no es ni mejor ni peor. Z: datasets, donde el algoritmos es peor que el base La Inteligencia Artificial en las Organizaciones 2009-2010
  • 18. Experimenter Comparativa con Exploración • Con los resultados del experimenter podemos descartar que la casualidad nos hiciera obtener los resultados que obtuvimos en la fase de exploración Técnica usada J48 MLP %Aciertos Explorer 61.5216 % 61.4392 % (Wrapper) %Aciertos Experimenter 61.52 % 61.60% (Wrapper) %Aciertos Explorer 64.3505 % 62.8673 % (Ranker) %Aciertos Experimenter 64.34 % 61.43 % (Ranker) • Resultados del Experimenter son bastante parecidos a los del Explorer • MLP llega a mejorar a J48 • El mejor resultado sigue siendo J48 con Ranker con 20 atributos La Inteligencia Artificial en las Organizaciones 2009-2010
  • 19. Conclusiones Balance Positivo • Pasamos de un 46% a un 64%: • Añadiendo nuevos atributos • Haciendo una buena exploración de los mejores algoritmos • Haciendo una buena selección de atributos • Son resultados buenos si tenemos en cuenta: • El factor humano es muy importante, ya que es difícil aprenderlo •Dificultad para encontrar unos datos • Usamos datos de varios jugadores, siendo mejor de un solo jugador •Errores en los datos iniciales (stacks descomunales) La Inteligencia Artificial en las Organizaciones 2009-2010
  • 20. PREGUNTAS? La Inteligencia Artificial en las Organizaciones 2009-2010