Machine Learning: ¿Caminos? A donde vamos, no necesitamos caminos
-
Upload
egdares-futch-h -
Category
Technology
-
view
100 -
download
1
Transcript of Machine Learning: ¿Caminos? A donde vamos, no necesitamos caminos
1
Machine Learning:
“¿Caminos? A donde vamos, no necesitamos caminos”
Egdares Futch H.Ceremonia de Entrega de Distintivos
HABLEMOS DE INTELIGENCIA ARTIFICIAL
El arte de crear máquinas con capacidad de realizar funciones que realizadas por personas requieren de inteligencia. (Kurzweil, 1990).
El estudio de cómo lograr que las computadoras realicen tareas que por el momento, los humanos hacen mejor. (Rich, Knight, 1991).
La rama de la ciencia de la computación que se ocupa de la automatización de la conducta inteligente (Luger y Stubblefield, 1993).
Un campo de estudio que se enfoca a la explicación y emulación de la conducta inteligente en función de procesos computacionales (Schalkoff, 1990).
Definiciones de Inteligencia Artificial
Actuar como humanos
Inteligencia Artificial es el arte de crear máquinas que realicen funciones que requieren de inteligencia cuando la realizan humanos
Metodología: Elija una tarea intelectual en la que los humanos son mejores y ponga a una computadora a hacerlo
Test de Turing
El caso del Ajedrez
Pro:–“Decir que Deep Blue (IBM) no piensa realmente sobre el ajedrez es como decir que un avión realmente no vuela porque no aletea” – Drew McDermott
Contra:–“El ajedrez es la Drosophila de la IA. Si los genetistas se hubieran aplicado de esa manera, tendríamos ahora moscas muy rápidas” – John McCarthy
Autista vs. Sentido común
Pensar como humanos
La forma en la que la computadora hace sus funciones importa
Comparación de los pasos para hacer un razonamiento
Ciencias cognoscitivas teorías verificables de la mente humana
Pensar y actuar racionalmente
Siempre tomar la mejor decisión con lo que se tenga a mano (tiempo, conocimiento, recursos)
Conocimiento perfecto, recursos ilimitados razonamiento lógico
Conocimiento imperfecto, recursos limitados racionalidad limitada
El problema ético de los carros autónomos
En los 60’s, un famoso profesor de AI de MIT dijo: “Al final del verano, habremos desarrollado un ojo electrónico”
Hoy, ya llegamos a vehículos autónomos que analizan escenas dinámicas en tiempo real
Esto es apoyado por el computador de escala masiva que es el Internet…todos los días se realiza monitoreo de tráfico, reconocimiento facial, análisis de imágenes médicas, inspección de partes, etc.
Predicciones vs. Realidad
En 1958, Herbert Simon (CMU) predijo que en 10 años una computadora sería campeón de ajedrez
Esto fue cierto en 1998
Hoy, computadoras son campeones mundiales en damas, Otelo, y Ajedrez
¡Go fue conquistado en 2016!
Predicciones vs. Realidad
Ejemplo: AI tradicional en Prolog
Prolog es el lenguaje más difundido en la programación lógica. Algunas de sus características son:
–Prolog usa variables lógicas, las cuales no son comparables a las de otros lenguajes. Los programadores las pueden usar como “blancos” en estructuras de datos que se llenan gradualmente mientras corre el proceso.
–Un método interno de manipulación de datos que pasa parámetros, retorna resultados, selecciona y construye estructuras de datos.
…Más
Las claúsulas de programa y los datos tienen la misma forma.
La forma relacional de los procedimientos hace posible definirlos de forma que sean “reversibles”
Las claúsulas proveen de una forma conveniente para analizar casos e indeterminismo.
Algunas veces se requiere de características que no pertenecen a la lógica pura.
Un programa en Prolog puede ser considerado como una base de datos relacional que contiene reglas y hechos.
Nuestro primer programa
/* En el zoologico */
rayas(marty).
esEquino(marty).
rayas(shere_kahn).
elefante(jumbo).
panda(chi_chi).
panda(ming_ming).
suponga(X, tigre) :- rayas(X), dientes_grandes(X), esFelino(X).
suponga(X, cebra) :- rayas(X), esEquino(X).
Jugando Clue con Prolog
Las reglas del juego de Clue se prestan a crear inferencias que se pueden representar como “conocimiento” en un programa de Prolog
A medida que se juega, se alimenta de información el sistema
Sin embargo, basado en el conocimiento del programador
Investigación moderna de IA
Centrada alrededor del concepto de agente
Modelo que construye una mente en base a pequeñas partes (agentes) que no tienen inteligencia, pero que pueden realizar cosas simples
La sociedad de la mente de Marvin Minsky, como concepto que supera al perceptrón
¿Qué es un Agente?
entornoagente
?
sensores
manipuladores
Apuntador láser
sonaresSensores de contacto
entornoagente
?
sensores
manipuladores
En los años 90’s• Localidad de manipuladores/sensores• Modelado imperfecto• Limitaciones tiempo/recursos• Interacción secuencial
¿Qué es un Agente?
blancorobot
• El robot debe mantener el blanco a la vista• No se conoce de antemano el trayecto del blanco• El robot puede no conocer los obstáculos previamente• Se requieren decisiones rápidas
Sigamos el blanco (en los años 90s)
OK…PERO YA ES 2016
Nació del trabajo previo en Inteligencia Artificial
Nueva capacidad en las computadoras
Ejemplos–Minado de bases de datos
•Grandes conjuntos de datos obtenidos del crecimiento de la automatización y del acceso al web•Por ejemplo: datos de click, registros médicos, biología, ingeniería
–Aplicaciones que no se pueden escribir a mano•Vehículos autónomos, reconocimiento de escritura, procesamiento de lenguaje natural, visión de computadora
En los 10’s se habla de Machine Learning
Arthur Samuel (1959) – Campo de estudio que da a las computadoras la habilidad de aprender sin ser explícitamente programadas.
Tom Mitchell (1988) - Un programa de computadora se dice que aprende de la experiencia E sobre una tarea T y con un desempeño P, si P mejora con E.
Definición de ML
“Un programa de computadora se dice que aprende de la experiencia E sobre una tarea T y con un desempeño P, si P mejora con E.”
Supongase que su programa de e-mail analiza cuales correos marca como spam, y con eso aprende a filtrar el spam. ¿Cuál es la tarea T?
Clasificar correos como spam o no spam
Observarte clasificando correos como spam o no spam
Fracción de correos correctamente clasificados
Ehhh….tranquilo
Porque gran parte de la investigación se hizo en los años 1950s.
1956: Se inventa el término “Inteligencia Artificial” en Darthmouth para diferenciarlo de la cibernética y de la teoría de autómata
Período inicial (50’s a finales de los 60’s): Principios básicos y generalidades
–Solución de problemas generales–Demostración de teoremas–Juegos–Cálculo formal
¿Por qué parece ser viejo esto de AI/ML?
Actualmente, los algoritmos usados para ML son:–Aprendizaje supervisado–Aprendizaje no supervisado
Otros: aprendizaje por reforzamiento, sistemas de recomendación
Es importante calibrar y analizar errores que el algoritmo genera
–Entender por qué se toma una decisión
¿Cómo se hace ML ahora?
En nuestro ejemplo del antispam, se puede escoger un conjunto de 100 palabras como características, en vez de usar las 50,000 o más que existen en español
Con un filtro de regresión logística Bayesiana, obtenemos un 20% de error…debemos recalibrar
¿Huh?
Pero…es mucha matemática
Más ejemplos de entrenamiento
Menos características
Más características
Cambiar las características: encabezado o cuerpo del email
Cambios en algoritmos de ML
Método #1: Diseño cuidadoso–Tomar tiempo para diseñar los features correctos, recolectando el conjunto de datos correctos y diseñando la estructura algorítmica adecuada
–Implementar y esperar que funcione –Beneficio: Solución más escalable. Puede descubrir nuevos algoritmos y contribuir a la investigación de ML
Método #2: Construir y arreglar–Implementar algo rápido–Correrlo, analizar errores y diangósticos y corregir–Beneficio: Aplicación puede llegar al mercado antes
Cómo iniciamos un proyecto de ML
Entro al auditorio, tengo limitaciones visuales
Mi celular (o un dispositivo hecho con un Raspberry Pi o similar) me informa en audio sintetizado: “Un amigo tuyo está acá”
“También hay 10 personas que son sus amigos”
Aplicación: un sistema de apoyo visual
Diferentes componentes en conjunto
Podemos hacer ingeniería de más…
Considero que el gran poder de procesamiento de la Nube está al alcance de cualquier aplicación de ML que podamos hacer
Pero…
El entrenamiento debe ser realizado en otras localidades, que a veces los investigadores no consideran
TROPICALIZACIÓN
¿Podemos usar eso acá?
Considero que el gran poder de procesamiento de la Nube está al alcance de cualquier aplicación de ML que podamos hacer
Pero…
El entrenamiento debe ser realizado en otras localidades, que a veces los investigadores no consideran
TROPICALIZACIÓN
¿Podemos usar eso acá?
Hay retos en todos lados
Amplificadores de ML
Ley de MooreLow Power Wireless
Low Power CPUs
Cloud Computing
Cloud Data Storage
Rapid Prototyping
Estándares
CrowdfundingToolsets & Libraries
Hemos logrado copiar la red neural completa de un gusano (C. Elegans) e implantarla en un robot de Lego, que se comporta como el gusano.
Disponible en www.openworm.org
Comportamiento es emergente, no se ha entrenado, solamente responde ante los estímulos del ambiente
Otra investigación en el campo de ML
Generar noticias o predicciones deportivas con base a resultados estadísticos
Otra investigación en ML
Chatbots
Minado de información
Gestión de inventarios
Gestión de la Cadena de Suministros
La próxima frontera para sistemas ERP, ¿ estarán las empresas de software tradicionales allí? SalesForce ya…
¿Y en los negocios?
Machine Learning es la ampliación de la investigación en Inteligencia Artificial
Amplificada enormemente por la capacidad de nuevos dispositivos, especialmente empresas que han sido adquiridas por Google, aprovechan capacidades masivas de
Aplicación casi inmediata, de disponibilidad universal
En conclusión…