
Representación del Conocimiento
Código: 106564Créditos: 6
| Titulación | Tipo | Curso |
|---|---|---|
| Inteligencia Artificial / Bachelor in Artificial Intelligence | OB | 2 |
Profesor/a de contacto
- Nombre :
- Marco Schorlemmer
- Correo electrónico :
- wernhermarco.schorlemmer@uab.cat
Idiomas de los grupos
Puede consultar esta información al final del documento.
Prerrequisitos
Haber cursado las asignaturas de Lógica Computacional, Fundamentos de Programación I y Fundamentos de Programación II; y tener conocimientos básicos del lenguaje de programación Python.
Objetivos
Representar conocimiento y razonar con él de forma computacionalmente efectiva es un aspecto importante y fundamental de la inteligencia artificial. Determina la eficacia y eficiencia de los sistemas computacionales en su capacidad de aprendizaje y resolución de problemas. Esta asignatura es una introducción a los principales enfoques y técnicas para representar conocimiento en sistemas computacionales con el fin de construir sistemas basados en conocimiento.
El objetivo de la asignatura es: estudiar la representación del conocimiento basada en lógica y en espacios de características, que proporcionan la estructura formal y los mecanismos de inferencia; analizar los fundamentos de las ontologías, mediante las cuales definimos las entidades que creemos relevantes en dominios de aplicación particulares; e introducir las principales técnicas computacionales que permiten el uso del conocimiento para el aprendizaje, el razonamiento y la resolución de problemas. En la asignatura también se examinan las principales dificultades para representar formalmente el conocimiento en sistemas computacionales y para implementar sistemas basados en conocimiento en aplicaciones del mundo real, abordando así los problemas de incertidumbre, vaguedad y cambio.
Resultados de aprendizaje
- CM04 (Integrar sistemas de representación de conocimiento en aplicaciones de inteligencia artificial en diferentes ámbitos, de forma adecuada a los requerimientos de la aplicación) Integrar sistemas de representación de conocimiento en aplicaciones de inteligencia artificial en diferentes ámbitos, de forma adecuada a los requerimientos de la aplicación
- KM13 (Describir los fundamentos algorítmicos, lógicos y matemáticos de las diferentes formas de representar el conocimiento en sistemas de inteligencia artificial) Describir los fundamentos algorítmicos, lógicos y matemáticos de las diferentes formas de representar el conocimiento en sistemas de inteligencia artificial
- SM13 (Seleccionar las técnicas de representación del conocimiento adecuadas para un problema determinado de aplicación de inteligencia artificial) Seleccionar las técnicas de representación del conocimiento adecuadas para un problema determinado de aplicación de inteligencia artificial
- SM14 (Aplicar sistemas de representación de conocimiento en la resolución de problemas de inteligencia artificial) Aplicar sistemas de representación de conocimiento en la resolución de problemas de inteligencia artificial
Contenidos
- Introducción: Conocimiento, ontología, representación. Sistemas basados en conocimiento. Ingeniería del conocimiento.
- Representación del conocimiento con lógica: Vocabulario, significado. Hechos básicos, complejos y terminológicos. Reglas, sistemas de producción. Variedades de la lógica.
- Ontologías: Conceptos, propiedades, individuos, datos. Taxonomías, meronimia. Marcos, herencia, valores por defecto. Lógicas de descripciones. Grafos de conocimiento.
- Representación del conocimiento con espacios de características: Espacios de características. Incrustación de grafos de conocimiento y sistemas neurosimbólicos.
- Incertidumbre, vaguedad y grados de creencia: Probabilidad condicional. Incertidumbre objetiva y subjetiva. Redes de creencias, inferencia bayesiana. Vaguedad, conjuntos difusos.
- Acción y planificación: Cálculo de situaciones. Acciones, fluentes. Problema del marco. Planificación en el cálculo de situaciones.
Actividades formativas y Metodología
| Título | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|
| Seminarios de resolución de problemas | 14 | 0,56 | SM13, SM14 |
| Clases teóricas | 24 | 0,96 | CM04, KM13, SM13 |
| Estudio personal y lecturas | 36 | 1,44 | KM13, SM13 |
| Desarrollo del proyecto de ingeniería del conocimiento | 36 | 1,44 | CM04, SM13, SM14 |
| Resolución de problemas | 21 | 0,84 | SM13, SM14 |
| Sesiones prácticas de ingeniería del conocimiento | 10 | 0,4 | CM04, SM13, SM14 |
El curso sigue una metodología docente libre de tecnología en las clases de teoría y en los seminarios de resolución de problemas, a la vez que fomenta el uso de la tecnología informática y de la IA generativa en las sesiones prácticas de ingeniería del conocimiento.
El contenido de las clases de teoría se presenta mediante actividades grupales basadas en la resolución de problemas en el aula, con un uso ocasional de la pizarra. Esto se complementa con seminarios de resolución de problemas, en los que se espera que los estudiantes completen ejercicios y resuelvan problemas en equipo, bajo supervisión. Los problemas y ejercicios se resuelven íntegramente durante los seminarios de resolución de problemas o bien se acompañan de pistas, de modo que los estudiantes puedan completarlos de forma autónoma. En las clases de teoría y en los seminarios de resolución de problemas, se espera que los estudiantes tomen apuntes manuscritos, ya que no se permite el uso de ordenadores portátiles ni de otros dispositivos informáticos en clase. Finalmente, los estudiantes deben llevar a cabo un proyecto de ingeniería del conocimiento en pequeños equipos, durante el cual se aplica la mayor parte del contenido del curso. En las sesiones prácticas supervisadas se presentan la metodología de ingeniería y las etapas de desarrollo, así como las competencias necesarias para utilizar entornos de programación y de desarrollo de sistemas. Sin embargo, la mayor parte del proyecto de ingeniería la llevan a cabo de manera autónoma los equipos de estudiantes. A diferencia de las clases teóricas y de los seminarios de resolución de problemas, estas sesiones requieren que los estudiantes utilicen sus ordenadores portátiles u otros dispositivos informáticos.
En este curso se permite el uso de tecnología de Inteligencia Artificial (IA) como parte integral del desarrollo del trabajo, siempre que el resultado final refleje una contribución significativa del estudiante al análisis y a la reflexión personal. El estudiante debe identificar claramente qué partes han sido generadas con esta tecnología, especificar las herramientas utilizadas e incluir una reflexión crítica sobre cómo estas han influido en el proceso y en el resultado final de la actividad. La falta de transparencia en el uso de la IA se considerará una falta de honestidad académica y puede conllevar una penalización en la calificación de la actividad o, en casos graves, sanciones más severas.
La plataforma Campus Virtual (http://cv.uab.cat/) se utilizará para compartir materiales docentes complementarios, entregar el proyecto de ingeniería, consultar las calificaciones de la asignatura y comunicarse con el profesorado, entre otros usos.
Evaluación
Actividades de evaluación continuada
| Título | Peso | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|---|
| Ejercicios de resolución de problemas | 20% | 3 | 0,12 | SM13, SM14 |
| Projecte d'enginyeria del coneixement | 20% | 2 | 0,08 | CM04, SM13, SM14 |
| Examen parcial de teoría y problemas | 30% | 2 | 0,08 | KM13, SM13, SM14 |
| Examen final de teoría y problemas | 30% | 2 | 0,08 | KM13, SM13, SM14 |
La evaluación del nivel de aprovechamiento del curso considera el trabajo en equipo en los seminarios de problemas y en las sesiones prácticas, así como los conocimientos científicos y técnicos de los estudiantes sobre la materia. Para llevar a cabo esta evaluación, se tienen en cuenta los siguientes aspectos:
- el proyecto de ingeniería del conocimiento junto con la documentación requerida presentada por los equipos de estudiantes
- la defensa del proyecto de ingeniería del conocimiento a la que serán convocados los equipos de estudiantes
- los ejercicios de los equipos de estudiantes entregados según el encargo propuesto en los seminarios de resolución de problemas
- el examen escrito individual y presencial para evaluar de forma adecuada e individual el nivel de aprovechamiento
Elementos de evaluación y su peso relativo en la calificación final
La calificación final refleja el nivel de aprovechamiento global del curso de cada estudiante, y se determina, en la primera convocatoria, combinando las notas de los distintos elementos de evaluación de la siguiente manera:
(a) el 20% de la nota final corresponde a la media aritmética de las notas de tres ejercicios escritos realizados y entregados en pequeños equipos; después de cada entrega se seleccionará aleatoriamente un subconjunto de equipos que deberán responder presencialmente algunas preguntas sobre el ejercicio.
(b) el 60% de la nota final corresponde a la media aritmética de las notas de los exámenes escritos parcial y final de teoría y problemas realizados individualmente los días de examen.
(c) el 20% de la nota final corresponde al proyecto de ingeniería del conocimiento realizado en pequeños equipos, basado en una entrega y una defensa presencial en el laboratorio, para la cual se requiere la asistencia de todos los miembros del equipo.
Para aprobar el curso en la primera convocatoria, es necesario obtener al menos una nota de 5 en cada uno de los elementos de evaluación (a), (b) y (c). Además, para el elemento (b), es necesario obtener al menos una nota de 4 en cada examen.
En la segunda convocatoria, es posible mejorar la nota del elemento de evaluación (b), es decir, el 60% de la nota final del curso, repitiendo el examen parcial, el final o ambos.
Para aprobar el curso en segunda convocatoria, es necesario obtener, igual que en la primera convocatoria, al menos una nota de 5 en cada uno de los elementos de evaluación (a), (b) y (c); y para el elemento (b), es necesario obtener al menos una nota de 4 en cada examen.
Este curso no prevé un sistema de evaluación única.
Planificación de las actividades de evaluación
Las fechas de la evaluación continua, como los ejercicios de resolución de problemas y las presentaciones del proyecto, se anunciarán en el Campus Virtual y en las diapositivas de clase. Las fechas pueden cambiar cuando sea necesario. Cualquier modificación de este tipo se comunicará siempre a los estudiantes en clase y a través del Campus Virtual, de acuerdo con el calendario establecido por el centro o la titulación.
Sin evaluación
Si los estudiantes no han sido evaluados en más del 30% de la asignatura, se considerará que no hay evidencia suficiente de evaluación, y el curso se calificará como no evaluable.
Matrícula de Honor
La concesión de una matrícula de honor es decisión del profesorado responsable de la asignatura. La normativa de la UAB establece que la Matrícula de Honor solo puede concederse a los estudiantes que hayan obtenido una nota final de 9 o superior, y que no puede otorgarse a más del 5% de los estudiantes matriculados.
Plagio
Sin perjuicio de otras medidas que se consideren oportunas y de acuerdo con la normativa académica vigente, las irregularidades cometidas durante una actividad de evaluación pueden comportar una nota de 0. Las actividades de evaluación calificadas de esta manera y mediante este procedimiento no serán recuperables. Si alguna de estas actividades de evaluación es necesaria para aprobar el curso, el estudiante no aprobará el curso, sin posibilidad de recuperarlo en una segunda convocatoria dentro del mismo curso académico. Estas irregularidades incluyen, entre otras:
- la copia total o parcial de una práctica, informe o cualquier otra actividad de evaluación;
- dejar copiar los ejercicios/examen/trabajo propios;
- presentar un trabajo en equipo que no haya sido realizado íntegramente por los miembros del equipo;
- presentar como propios materiales elaborados por un tercero, aunque sean traducciones o adaptaciones, y en general trabajos con elementos no originales ni exclusivos del estudiante;
- utilizar dispositivos de comunicación (como teléfonos móviles, relojes inteligentes, tabletas, etc.) durante las actividades de evaluación, individualmente o en equipo.
Si un estudiante ha cometido irregularidades en alguna actividad de evaluación (y, por tanto, no podrá aprobar el curso en segunda convocatoria), la calificación final del curso será la más baja entre el valor 3 y la media ponderada de las notas. En resumen: copiar, dejar copiar el propio trabajo o plagiar en cualquiera de las actividades de evaluación equivale a un suspenso con una nota igual o inferior a 3.
Bibliografía
- Brachman, R. J. & Levesque, H. J. (2004). Knowledge Representation and Reasoning. 1st edition. Amsterdam: Morgan Kaufmann. https://bibcercador.uab.cat/permalink/34CSUC_UAB/1eqfv2p/alma991010367030506709
- van Harmelen, F. et al. (2008) Handbook of Knowledge Representation. 1st edition. Amsterdam: Elsevier. https://bibcercador.uab.cat/permalink/34CSUC_UAB/1eqfv2p/alma991010507167406709
- Baader, F. (2003). The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press. https://bibcercador.uab.cat/permalink/34CSUC_UAB/rokuu2/cdi_nii_cinii_1971993809743743412
- Hogan, A., Blomqvist, E., Cochez, M., & al. (2021). Knowledge Graphs. ACM Computing Surveys, 54(4), 1–37. https://bibcercador.uab.cat/permalink/34CSUC_UAB/rokuu2/cdi_proquest_journals_2671351403
- Wang, Q., Mao, Z., Wang, B., & Guo, L. (2017). Knowledge Graph Embedding: A Survey of Approaches and Applications. IEEE Transactions on Knowledge and Data Engineering, 29(12), 2724–2743. https://bibcercador.uab.cat/permalink/34CSUC_UAB/rokuu2/cdi_crossref_primary_10_1109_TKDE_2017_2754499
- Badreddine, S., d’Avila Garcez, A., Serafini, L., & Spranger, M. (2022). Logic Tensor Networks. Artificial Intelligence, 303, Article 103649. https://bibcercador.uab.cat/permalink/34CSUC_UAB/rokuu2/cdi_crossref_primary_10_1016_j_artint_2021_103649
- Noy, N. F., McGuinness, D. (2004). Ontology Development 101: A Guide to Creating Your First Ontology. https://protege.stanford.edu/publications/ontology_development/ontology101.pdf
- Lamy, J.-B. Ontologies with Python (2020): Programming OWL 2.0 Ontologies with Python and Owlready2. Apress. https://bibcercador.uab.cat/permalink/34CSUC_UAB/ 1c3utr0/cdi_askewsholts_vlebooks_9781484265529
Software
El proyecto de ingeniería del conocimiento hará uso de herramientas de programación y desarrollo de acceso libre y disponibles para los principales sistemas operativos (Windows, macOS y Linux), como son el editor de ontologías Protégé (https://protege.stanford.edu/) y el lenguaje de programación Python (https://www.python.org/). Se explicarán durante las sesiones prácticas de ingeniería.
Grupos e idiomas de la asignatura
La información proporcionada es provisional hasta el 30 de noviembre. A partir de esta fecha, podrá consultar el idioma de cada grupo a través de este enlace. Para acceder a la información, será necesario introducir el CÓDIGO de la asignatura
| Tipo de docencia | Grupo | Idioma | Semestre | Turno |
|---|---|---|---|---|
| (TE) Teoría | 71 | Inglés | primer cuatrimestre | tarde |
| (PAUL) Prácticas de aula | 711 | Inglés | primer cuatrimestre | tarde |
| (PLAB) Prácticas de laboratorio | 711 | Inglés | primer cuatrimestre | tarde |