Presentación - Departamento de Ciencias de la Computación e IA

Anuncio
INGENIERIA INFORMATICA
ÁREA: CIENCIAS DE LA COMPUTACIÓN E INTELIGENCIA ARTIFICIAL
MODELOS DE COMPUTACION II
Presentación del profesor y de la asignatura
JUAN LUIS CASTRO PEÑA
2010-11
Información:
http://decsai.ugr.es/~castro/MCII
¿Dónde encuentro al profesor?
• Departamento: Ciencias de la Computación e Inteligencia
Artificial. Despacho: D-39
¿Cuando puedo encontrarlo?
• Horario de Tutorias: L: 9-11, Mi 11-14 y 17-18
(Pedir cita)
¿Y quién es este tío?
• Página Web: http://decsai.ugr.es/~castro/
Experiencia como Profesor
Experiencia Profesional
Universidad de Granada.
Departamento de Ciencias de la Computación e I.A.
01/10/1988 a 29/04/1991
Titular interino de E.U.
30/04/1991 a 28/05/1992
Titular de E.U.
29/05/1992 a 20/08/2003
Universidad
Profesor Titular de
Desde el 21/08/2003
Catedrático de Universidad
Curriculum
Vitae
Experiencia
Actividad Docente
como Profesor
Publicaciones de carácter docente o divulgativo
DOCUMENTOS EN LA WEB
- J.L. Castro. Sobre la teoría de la computabilidad.
http://decsai.ugr.es/~castro/MCII/Computability.html.
- J.L. Castro. Sobre la complejidad algorítmica.
http://decsai.ugr.es/~castro/CA/default.html.
-J.L. Castro. Curso on-line de "NEURO-COMPUTACION“
http://decsai.ugr.es/~castro/Neuro/default.htm
-J.L. Castro. Curso on-line de “Redes Neuronales y Sistemas
Neurodifusos“
http://decsai.ugr.es/~castro/Neuro-Fuzzy/Curso/nfs2.html
¿Y qué es eso que nos va a dar?
¿Modelos de Computación II?
Web: http://decsai.ugr.es/~castro/MCII/
Proyecto docente
Perfil
PERFIL: MODELOS DE COMPUTACION,
NEUROCOMPUTACION
•
Ciencias de la Computación
A) ¿Qué problemas se pueden resolver mediante un ordenador?.
B) ¿Cómo puede construirse un programa para resolver un
problema?.
C) ¿Resuelve realmente nuestro programa el problema?.
D) ¿Cuanto tiempo y espacio consume nuestro problema?.
Modelos de computación
Neurocomputación
Proyecto docente
Perfil
MODELOS DE COMPUTACION
Computabilidad
¿Qué problemas se pueden resolver mediante un
procedimiento automático?
1)¿Qué pueden hacer los ordenadores (sin restricciones de ningún
tipo )?
2) ¿Cuales son las limitaciones inherentes a los métodos automáticos
de cálculo?.
Proyecto docente
Perfil
MODELOS DE COMPUTACION
Computabilidad
•
Aparición de la noción de calculabilidad efectiva
-
Church: Lambda Cálculo
Turing: Máquinas de Turing
Kleene: Funciones recursivas de Herbrand-Gödel
Post: Sistemas de Post
Problemas no computables (problema de la parada)
Tesis de Church-Turing
Proyecto docente
Perfil
MODELOS DE COMPUTACION
Computabilidad
•
Resultados de computabilidad y no computabilidad (Codificación de
programas como números):
-
Máquinas y programas universales
Teorema del parámetro
Teorema de recursión
Teorema de Rice
Técnica de reducción
Proyecto docente
Perfil
NEUROCOMPUTACION
•
El concepto de red neuronal artificial
Una red neuronal es un procesador distribuido y masivamente paralelo
compuesto por unidades de procesamiento simples y que, de forma natural,
tiende a almacenar conocimiento experimental y a disponerlo de forma
adecuada para su explotación. Se asemeja al cerebro en dos aspectos:
1. El conocimiento es adquirido por la red de su entorno a través de un proceso de
aprendizaje.
2. Las fuerzas de las interconexiones entre las neuronas, llamadas pesos
sinápticos, se utilizan para almacenar el conocimiento adquirido.
Proyecto docente
Perfil
NEUROCOMPUTACION
•
Desarrollo histórico
- 1943 Modelo de McCulloch y Pitts (Lógica de umbral)
- 1949 Organization of Behavior de Hebb (Ley de Hebb)
- 1959 Adaline y Madaline de Widrow (funciones de activación)
- 1962 Perceptron de Rosemblatt (aprendizaje adaptativo)
- 1969 Minsky y Papert (la decepción)
- 1982 Redes de Hopfield (Memorias asociativas)
- 1984 Mapas auto-organizativos de Kohonen (aprendizaje no supervisado)
- 1986 Algoritmo de backpropagation (aprendizaje basado en derivadas)
- Otros modelos: Máquina de Boltzman, modelos BAM, ART, red de Jordan, …
Proyecto docente
NEUROCOMPUTACION
La situación actual
•
Gran variedad de modelos:
– Estructura
- Redes de propagación hacia delante
- Redes con realimentación
– Aprendizaje
- Supervisado y no supervisado
•
Herramienta de ingeniería (técnica de I.A):
- Aproximadores Universales
- ¿Cajas Negras?
- Paquetes de aplicación
- Aplicaciones en la industria
Perfil
Proyecto docente
Recomendaciones curriculares
Directrices Consejo de Universidades (RD
1459,1460,1461/1990)
Ingeniería en Informática, e
Ingeniería Técnica en Informática de Sistemas
Troncalidad
Máquinas secuenciales y autómatas finitos.
Máquinas de Turing.
Funciones recursivas.
Gramáticas y lenguajes formales.
Redes neuronales.
Proyecto docente
Programa
Objetivos docentes
- Los principales resultados de la computabilidad, entendida como la forma de
obtener funciones calculables mediante algún algoritmo.
- Que se puede hacer y que no se puede hacer de forma automática.
- Conocer los distintos modelos de cómputo
- Dejar clara la equivalencia de los distintos modelos de cómputo.
- El concepto y ámbito de uso de las redes neuronales de propagación hacia
adelante
Tema 1. Introducción a la computabilidad
•Planteamiento del problema
•Breve historia de la computabilidad
Tema 2. Programas y Func. Calculables
•Un lenguaje de programación (S)
•Ejemplos de programas
•Sintaxis
•Funciones Computables
•Macros
Tema 3: Funciones Recursivas
•Composición
•Recursividad
•Clases PRC (cerradas por recursividad
primitiva)
•Algunas funciones recursivas primitivas
•Predicados primitivos recursivos
•Operaciones iteradas y cuantificadores
acotados
•Minimización
Tema 4. Codif. de Programas. Programa
Universal
Números de código de Gödel
Codificación de programas mediante números
El problema de la parada
Universalidad
Conjuntos recursivamente enumerables
El teorema del parámetro
El segundo teorema de recursión
El teorema de Rice
Tema 5. Cálculo con cadenas
Representación de cadenas usando números
Un lenguaje para el cálculo con cadenas (Sn)
Equivalencia entre S y Sn
Programas de Post-Turing (el lenguaje T)
Simulaciones entre Sn y T, y entre T y S.
Tesis de Church-Turing
Tema 6. Máquinas de Turing
Máquinas de Turing. MT Universales
Leng. recursivos y recursivamente enumerables
El problema de la parada para MT
Máquinas de Turing no determinísticas
Máquinas de Turing modificadas
Tema 7. Introducción a la Complejidad Algorítmica
Planteamiento del problema. Complejidad en tiempo y en espacio.
Equivalencia polinomial de modelos de cómputo
P versus NP: NP-completitud
Tema 8. Introducción a las redes neuronales
Procesadores elementales. Redes Neuronales Artificiales.
Fundamentos de RNA.
Métodos de entrenamiento.
Modelos de Redes Neuronales.
Proyecto docente
Programa
Bibliografía Modelos de Computación II
N.J. CUTLAND: Computability An introduction to recursive function theory.
Cambridge University Press (1980).
M.D. DAVIS y E.J. WEYUKER: Computability, Complexity, and
Languages. Academic Press (1983).
H.R. LEWIS y C.H. PAPADIMITRIOU: Elements of the Theory of Computation.
Prentice-Hall (1981).
M. R. GAREY y D.S. JOHNSON: Computers and Intractability A Guide to the theory of
NP-Completeness. Freeman (1979).
B. MULLER y J. BEINHARDT. Neural Network an Introduction. SpringerVerlag, 1990.
-
Objetivos docentes
• Teora de la computabilidad: Que se puede hacer y que no se puede hacer de
forma automtica.
-Funciones primitivas recursivas
-Calculabilidad de la función universal
-Teorema del parámetro
-Teorema de recursión
-Teorema del punto fijo
-Teorema de Rice
-Equivalencia de distintos modelos de cmputo
• Introducción a las Redes Neuronales: Modelos básicos y sus algoritmos de
aprendizaje.
- Perceptron
- Perceptron multicapa
- Redes Neuronales Feedforward Multicapa
Línea argumental
Teoría de la computabilidad: seguiremos como hilo argumental el
libro de Davis-Weyuker. (OJO: Cambiaremos alguna notación y
ampliaremos en algunos temas).
1.- Abstracción del problema.
2.- Introducción de un modelo de computo simple pero potente.
3.- Comprobación de lo que se puede se puede calcular en ese
modelo.
4.- Principales resultados (para el concepto de computabilidad en
ese modelo).
5.- Comprobación de la equivalencia entre todos los modelos de
cómputo suficientemente potentes.
• Introducción a las Redes Neuronales: Introducción básica
1.- Abstracción del modelo clásico de neurona: Perceptron.
2.- Límites del perceptron: perceptron multicapa.
3.- Límites del perceptron multicapa: redes neuronales feedforward.
Metodología
Teoría:
-Clases:
-1ª hora: Conceptos e ideas del tema, remarcando lo importante.
-2ª hora: Estudio tutorizado del tema por los alumnos
-3ª hora: Ejercicios y Actividades
-Para cada tema hay que conocer:
-- Objetivos del tema -- Conceptos
-- Resultados
-- Ejercicios y cuestiones típicas
-- Fallos típicos
• Prácticas:
- 3 sesiones de prácticas para entender como funciona el perceptron y el
perceptron multicapa (entrega voluntaria)
- 1 sesión para explicar el software JavaNNS
- 1 sesión sobre la metodolgía de uso de RRNN para resolver un problema
- Resto de sesiones para realizar una aplicación de las redes neuronales,
siguiendo un guión y utilizando JavaNNS. (entrega obligatoria)
Forma de evaluación
• Examen:
- Teoría: 10 preguntas de 1 punto cada una. Para relacionar y
razonar sobre la materia.
- Problemas: 4 problemas valorados en 2.5 puntos cada uno.
• Prácticas: Se entregará una práctica obligatoria, valorada en 10
puntos.
Puntos adicionales: Se pueden obtener hasta 2 puntos adicionales
por las actividades que se irán proponiendo
• Calificación:
- N1 = “media entre la teoría y los problemas”
- N2 = nota de la práctica.
- Notafinal = “N1*(N2*0.08+0.6)+puntos adicionales, truncado por 10”.
Descargar