Apuntes Completo
Apuntes Completo
Apuntes Completo
Comienzos:
Primera máquina analítica de propósitos generales: Babbage.
Ada Lovelace escribió el primer algoritmo en esa máquina
“Tan pronto como funciona ya nadie lo llama IA”: Resolución de problemas que no son
habituales
Persona inteligente:
Poder hacer cosas que el común denominador no puede o las hace de mejor manera. La
actividad donde se demuestra la inteligencia tiene que ver con el razonamiento, el
pensamiento, la síntesis, análisis y abstracción.
Se es inteligente en un dominio en particular.
Comportamiento inteligente:
Se reconoce a partir del entorno. Relacionado con la teoría general de sistemas (una entidad
se reconoce a partir de sus características/atributos y a de su comportamiento con su
entorno).
Para estudiar el comportamiento hay que adentrarse en el individuo.
Comportamiento es:
1. Conducta
2. Procesos internos
Concepto:
Rama de las ciencias computacionales encargada de estudiar modelos de cómputo
(tecnologías, arquitectura) capaces de realizar actividades propias de los seres humanos en
base a de sus características primordiales: razonamiento, conducta y aprendizaje.
Características de la IA:
1. Generar algoritmos basados en lógica y heurística
2. Requiere equipamiento convencional y no HW especializado vinculado a costos.
3. Requieren saber cómo reaccionar ante datos erróneos porque la realidad es
imperfecta.
4. Los algoritmos deben ser programados en lenguajes flexibles.
5. Mejora de forma independiente a lo largo del tiempo: Funciona de cierta forma al
empezar y mejora la performance a más tiempo trabaje, inverso a otros SW.
6. Modifica su comportamiento, tiene aprendizaje y se adapta.
Dos ramas:
- IA tradicional:
- Sistemas desarrollados por la ingeniería del conocimiento, basados en reglas,
métodos heurísticos y lógicas.
- Inteligencia computacional y machine learning
- Sistemas inteligentes basados en tecnologías mayoritariamente de inspiración
biológica.
- Algoritmos capaces de generalizar comportamientos a partir de información
suministrada en forma de ejemplos.
Evolución de IA:
altos y bajos, esperanzas/expectativas utópicas con inviernos.
Supuestos iniciales:
Al surgir IBM Watson también generó otro salto (sirve para debatir sobre un tema en
específico, computación cognitiva).
El alpha Go, juego complejo y tiene sucesores.
IBM project debater que debate sobre cosas generales y no específicas y tiene que tener un
alto repertorio de cosas.
Cerebro:
- Parte hardware.
- Órgano
- físico.
Mente:
- Parte software.
- No es tangible (lo que modelamos nosotros como meta sistemas/modelos)
- Conjunto de capacidades cognitivas que permiten razonar, analizar, conceptualizar,
deducir, etc (hacer algo con el cerebro).
- Manifestación del pensamiento, percepción, emoción, determinación, memoria e
imaginación.
Conocimientos:
- Facultad del ser humano de comprender a través de la razón la naturaleza, cualidades
y relaciones de las cosas.
- Relacionado con la pirámide de información: dato - noticia - conocimiento - sabiduría.
Dato era percepción del hecho, noticia era el dato con significado, conocimiento era
todo lo que se podía hacer con grandes volúmenes de noticias (razón, inducción,
deducción, todas las reglas del individuo que interpretaba las noticias).
Experiencia:
- Conocimiento adquirido por haber hecho algo un número significativo de veces.
- La reflexión y lo que aprendí de hacerlo muchas veces.
Clasificación IA:
1. IA fuerte: HW y SW podrían equiparar a la mente.
2. IA débil: Se sabía o presupone que HW y SW eran un modelo de la mente y eran de
menor capacidad.
1. Sistema inteligente
2. Sistema basado en conocimiento
3. Sistema experto
Su ciclo de vida: En cada fase se finaliza con el desarrollo de un prototipo, que sí está bien
construído daría pie a la siguiente fase. Tiene en cuenta el mantenimiento perfectivo por ello
tiene una estructura cónica para la adición de nuevos conocimientos. El eje que indica la
calidad de la adquisición de conocimientos va de mayor a menor diámetro (de más a menos
conocimientos) y de abajo a arriba (menor calidad a mayor calidad). Al principio podés tener
mucha información de distinta calidad pero cuando pasa el tiempo se refina y se obtienen
menos pero de una gran calidad.
2.Sistema inteligente:
En la medida que reconocemos que tiene un comportamiento vinculado con una conducta
inteligente.
La IA se toma como ingeniería entonces a través de sus técnicas y metodologías se
construyen sistemas inteligentes.
3.Sistema experto:
Una persona es experta cuando tiene saberes en un dominio que tiene comportamiento
inteligente, lo puede desarrollar y resuelve problemas que no puede resolver el resto o de
mejor manera que el resto.
Machine learning:
Identifica patrones complejos en millones de datos, predice comportamientos a través de un
algoritmo. Mejora de forma independiente a lo largo del tiempo.
Da como característica a la IA el mejoramiento de forma independiente a lo largo del tiempo,
en contraposición con otros SW que por entropía mueren.
Aprende a partir de ejemplos. Son algoritmos basados en cosas matemáticas muy complejas
pero son fáciles de automatizar.
Genera comportamientos generales a partir de comportamientos puntuales.
Tipos de algoritmos:
Los podemos clasificar según:
1. Estrategias de aprendizaje que se aplican para distintos tipos.
2. Tipos de entrenamientos
1.
- Supervisado:
Le damos ejemplos de entrada y le damos info adicional para que pueda encontrar el
patrón. Un agente externo EJ: una salida deseada o algo que permita valorar la salida
si es buena o mala.
- No supervisado:
Damos solo ejemplos de entrada, y el algoritmo trata de determinar un modelo que lo
representa.
2.
- Entrenamiento offline o estático
Tienen fase de entrenamiento donde el algoritmo aprende para generar el modelo y
luego de la instalación no aprenden más.
- Entrenamiento online o dinámico
Luego de la fase de instalación pueden seguir aprendiendo pero debe ser
monitoreado para no romper lo anterior.
Algoritmo de inducción:
Estrategia de aprendizaje supervisada porque le das una salida y entrenamiento estático.
Tiene muchos subtipos.
Algoritmo TDIDT:
Top-down-induction-decision-tree, generan un árbol de decisión donde en cada rama tenemos
los valores de los atributos de entrada y en el nodo hoja tenemos el valor del atributo objetivo.
Va de casos particulares a generales.
Ej:
La columna de objetivos tiene más de un valor, calculo la ganancia (Shannon) por cada
atributo de entrada, como entendimiento tiene mayor valor hago un subconjunto de él.
Generamos un árbol de decisión
por cada valor que toma entendimiento analizo qué pasa con el objetivo, si tiene más de un
valor vuelvo a calcular la ganancia de los datos de entrada pero sólo para los ejemplos del
valor “bajo” que toma entendimiento y tomo el de mayor valor y así sucesivamente.
Si tenes dos o más líneas con todos los datos de entrada iguales y un objetivo distinto (ej:
todas las cualidades iguales pero uno aprueba y el otro no) entonces asigno un nodo hoja
también pero indicando que la regla tiene un 50% de error.
06/04
- De diseño
- Ingeniero de Conocimiento: Da forma simbólica y automáticamente manipulable al
conocimiento proporcionado por el experto de campo.
Personas expertas:
Resuelven problemas mal definidos y desestructurados que requieren diagnóstico o
planificación para solucionarlos, usan heurísticas (métodos que determinan que parte de su
experiencia son aplicables).
Características:
- Tener conocimientos de los conceptos relevantes en el dominio y sus relaciones
- Tener riqueza de situaciones específicas y respuestas inmediatas o parciales que
acortan el proceso de solución del problema.
- Capacidad de reconocer la oportunidad de usar tales atajos.
Ingeniero de conocimiento:
debe descubrir las heurísticas y programarlas en el sistema experto.
Características:
Son deseables y no siempre obtenibles.
1. Aplican su experiencia eficientemente, pudiendo realizar inferencias a partir de datos
incompletos o inciertos.
2. Explican y justifican lo que hacen.
3. Se comunican con otros expertos y adquieren nuevos conocimientos.
4. Reestructuran y reorganizan el conocimiento.
5. Pueden quebrantar reglas, interpretan simultáneamente el espíritu y la letra de las
mismas. (aprendizaje offline y online, esa regla se puede reevaluar o ajustar, no es
estático y mejora.)
6. Determinan cuándo un problema está en el dominio de su experiencia.
Tareas del experto:
- Clasificación:
Seleccionar una respuesta a partir de un conjunto fijado antes de alternativas.
- Jerarquizada (reducir a clases, combinar y luego individual)
- Interpretación: Explica los datos asignándoles significados simbólicos
- Diagnosis:
Además se buscan datos adicionales cuando se necesitan para ayudar a verificar o
rechazar la línea de razonamiento emprendida.
Se infieren malfuncionamientos de sistemas a partir de datos observables.
Encontrar fallos en un sistema.
- Diseño y síntesis:
Capacidad de configurar un sist. sobre la base de un conjunto de posibles alternativas.
Efectuar especificaciones para crear objetos que satisfagan requisitos particulares.
- Planificación y catalogación:
Ordenar en el tiempo un conjunto dado de tareas para que puedan realizarse con los
recursos utilizables y sin interferir entre sí.
- Monitorización:
Observar la situación en curso cuando se va desarrollando según lo previsto e intentar
reconducirla si se desvía.
- Consejo al usuario
- Instrucción
- Control
- Ayudante inteligente.
Arquitectura:
Hay varias pero todas tienen:
Reglas:
Tienen restricciones (nadie lo va a preguntar en la clase).
- Aciclidad: No deben ocurrir que una o más causas estén en el consecuente. o que una
serie de reglas terminen en su comienzo.
- n,m >= 1. Al menos cada regla tendrá un antecedente y un consecuente.
3. Motor de inferencia MI
Activa las reglas en función de la info de la base de datos y la memoria de trabajo.
Pone la nueva info en la memoria de trabajo.
Da al trazador de explicaciones las reglas que motivaron una determinada consulta al
usuario (la explicación).
Usa métodos de búsqueda. (A*..)
- Universo abierto:
La info necesaria no está en el sistema sino afuera. Se comunica con el usuario.
La base de datos puede estar vacía.
4. Trazador de Explicaciones TE
Interpreta requerimientos del usuario sobre el porqué de determinadas preguntas por parte
del sistema, trazando la justificación de las mismas.
La justificación usa información que le da el motor de inferencias.
7. Manejador de Comunicación MC
- Deriva info inicial que suministra el usuario hacia la memoria de trabajo.
- Interpreta los mensajes del usuario que pueden ser respuestas de él hacia preguntas
que hizo el sistema o solicitudes de explicación a partir de una consulta del sistema.
1. Orientada al objetivo:
Búsqueda hacia atrás (backward chaining).
Va desde el objetivo y construye un árbol hacia los datos conocidos.
Estado:
Representaciones que contienen el conjunto de toda la info que describe la situación del
sistema en un momento determinado. Una foto.
Espacio de estados:
Estados del problema, dominio que contiene todos los posibles estados del sistema.
Puede ser un espacio finito o infinito.
Contiene el estado inicial (describe la situación actual u original del problema), el conjunto de
estados finales (donde encontras las distintas soluciones) e intermedios (por los cuales se
transita en pos de ir a los finales).
Operadores o reglas:
Vincula dos estados posibles:
- estado origen o padre
- estado destino o hijo
Representar un problema:
a través de un árbol
Estrategia de control:
Es el conjunto de técnicas que nos permiten elegir las distintas reglas o estados a través de
los distintos métodos de búsqueda.
a. Primero en amplitud
b. primero en profundidad
c. Generación y prueba
d. Primero en profundidad iterativa
e. bidireccional
f. etc.
a. Escalada simple
b. Escalada máxima pendiente
c. El primero mejor
d. Beam Search
e. A*
f. Dijkstra
g. etc.
Comparación de métodos:
1. Sin información del dominio o búsqueda ciega:
Primero en amplitud:
Comienza por estado inicial/raíz aplicando todas las reglas posibles y obtenemos un conjunto
de nuevos nodos, a cada uno se le aplican todas las reglas de vuelta y así sucesivamente.
Se crean niveles de nodos, todos los nodos de un nivel se crean antes de pasar al otro nivel.
Características:
- Aplica FIFO, el primero que ingresa es el primero que sale (el primero en generarse es
el primero en analizar).
- Si existe solución la va a encontrar porque recorre todos los estados en forma
ordenada.
- Encuentra todas las soluciones si existe más de una y te permite identificar la mejor.
Solución óptima
- Es buena si existen pocos nodos finales y están cerca de la raíz para no ocupar
mucha memoria.
- Usa mucha memoria porque recorre todo el árbol.
Recorrido de izquierda a derecha: (puede ser al revés también)
No verlo tan visual sino mecánico, a cuanto de distancia está (M por un camino está a 3
de A y por el otro está a 4).
Primero en profundidad:
Se realiza por rama y no por niveles. Por cada nodo se generan todos sus nodos sucesores
hasta que se llega a un nodo hoja o sin descendientes (si no es solución vuelvo para atrás
hasta encontrar una hoja solución), uno ya alcanzado o si la ruta se alarga más de lo que se
especifica.
Características:
- Encuentra la primera solución y no todas.
- No garantiza encontrar la solución óptima.
- Aplica LIFO, el último que se genera es el primero que se analiza.
- No requiere mucha memoria porque se expande de a una rama por vez.
- Es útil cuando los nodos solución son muchos y están lejos de la raíz.
Características:
- Adecuado para problemas sencillos, para complejos puede consumir mucho tiempo.
- Recorre todos los nodos, encuentras todas las soluciones.
Vos te movés por las transiciones de forma continua y vas consiguiendo las soluciones a
medida que pasa por cada rama.
Características:
- Dos búsquedas simultáneas top-bottom y bottom-up
- Al menos una búsqueda debe ser en amplitud.
- Si existe un camino solución, las dos búsquedas pasan por el mismo estado para
recrearlo.
- Complejidad igual a dos búsquedas unidireccionales para un grafo con la mitad de los
nodos del original.
- Encuentra una solución, tal vez no la óptima.
Capaz no me interesa la solución (porque ya la se) sino el cómo llego a esa solución.
Recorrido (desde izquierda o desde derecha): En por ramas sería por amplitud en la tabla.
2. Con información del dominio o búsqueda heurística:
Escalada simple:
Primero definir el sentido del recorrido (de izquierda a derecha) y el valor heurístico (cuanto
mayor o menor valor es más deseable).
Me pregunto si desde un nodo actual (genero los hijos en el orden indicado de izquierda o
derecha) si el estado del nodo hijo tiene un valor heurístico mayor/menor. Si lo tiene ese nodo
pasa a ser el actual y sino se continúa con los siguientes hijos hasta buscar uno que cumpla,
si no cumple ninguno detengo ahí el algoritmo.
Características:
- No requiere mucha memoria porque no recorro todo el árbol.
- Si existe un sucesor (hijo desde el nodo actual) mejor que por el que yo estoy
escalando y que aún no generé, se pierde. Ej: el nodo C tiene mayor valor que el B
pero no me fui por ahí y lo perdí).
- No contempla retrocesos en la búsqueda. Me puedo quedar atrapado en un
mínimo/máximo local. (La función debería ser monótonamente creciente para que
crezca a cada paso por hijo, pero no siempre pasa). Conviene utilizarlo cuando
sabemos que la función se comporta así.
- No siempre encuentra solución (por caso anterior en cuanto a la función).
Ejemplo:
de derecha a izquierda no encontré solución porque los hijos de D ninguno es mayor al padre.
Características:
- Puedo no encontrar solución igual que escalada simple si los hijos del nodo actual no
son mejores que el padre.
- Puede no encontrar la solución óptima.
- No requiere tanta memoria de almacenamiento (pero más que escalada simple).
- No contempla retrocesos en la búsqueda y puede trabarse en un máximo y mínimo
local.
El primero mejor:
Mejora los métodos de escalada, porque permite cambiar de camino cuando aparece uno
mejor o más prometedor.
Características:
- No necesita evaluar el estado del hijo con el nodo actual/padre.
- Te permite retroceder.
- Puede no encontrar solución dependiendo el N
A*:
Incluye valores heurísticos en las transiciones/aristas.
Características:
- Utiliza penalizaciones porque tiene valores en las aristas/transiciones.
- Tiene listas de nodos abiertos y cerrados. El valor heurístico del nodo se calcula como
su valor y el costo de la transición.
- Es similar al primero mejor.
Fuentes de conocimientos:
- Públicas: Libros, manuales, documentos procedurales, videos, audios, etc.
Extraer el conocimiento
- Base de datos:
Se guardan datos del problema que queremos que resuelva en un momento determinado
el SE. Son hechos puntuales para resolver un caso puntual.
- Memoria de trabajo:
Registro o logs de todos los conocimientos que va aplicando el motor de inferencia a su
vez accediendo a la base de datos.
- Trazador de explicaciones:
Lee lo que está en la memoria de trabajo y presentarla a través del manejador de
comunicaciones lo que hizo la máquina al humano.
- Trazador de consultas:
Permite al motor de inferencias hacerle preguntas al humano
Pueden o no tener base de conocimientos explícita (implícita es que se crean a partir de las
reglas).
Diferencias:
- Sistemas basados en conocimientos tienen base de conocimientos y provienen sólo
de fuentes públicas
- los sistemas expertos tradicionales tienen base de conocimientos vienen de fuentes
públicas (algun conocimiento público) y privadas (estas son obligatorias y las
principales)
- Los sistemas expertos pueden o no tener base de conocimientos y en ambos casos
vienen de fuentes públicas y privadas (estas son obligatorias). (SET + RNA + AG)
Dificultades de la IA:
- Los humanos no saben realmente cómo realizan la mayoría de sus actividades
intelectuales.
- Las máquinas no se enfrentan a esas tareas de la misma forma que los humanos.
2. privados:
Propio de una persona experta o conjunto de personas, está interiorizado y se
adquiere con el ejercicio de sus actividades. Se utilizan implícitamente.
Para hacerlo explícito se necesitan usar técnicas y herramientas de educción.
El experto lo puede verbalizar porque es consciente de sus acciones para resolver el
problema. Ej: diagnosticar una enfermedad.
3. metaconocimientos:
Propio de una persona experta o conjunto de personas, está interiorizado y se
adquiere con el ejercicio de sus actividades. Se utilizan implícitamente.
No se puede verbalizar porque no es consciente de sus acciones. Ej: correr antes de
chocar el auto.
1. Declarativos:
Qué son las cosas, describen el dominio de aplicación.
En términos de conceptos, objetos, atributos, valores y relaciones entre las entidades
anteriores, sin que importe cómo se usen esos conocimientos.
2. Procedimentales:
Para controlar el proceso de solución de un problema. Centrándose en el uso de los
conocimientos y esquemas de razonamiento usados para alcanzar una solución.
Cómo funcionan las cosas.
- Secuencial e iterativo: Ejecución un número de veces o en cierto orden.
- Metaconocimientos o condiciones de metanivel: Para tomar decisiones acerca de
cómo otros conocimientos pueden emplearse en el proceso de razonamiento.
- Verosimilitud: Cubre el uso de medidas de certidumbre en el proceso de
razonamiento.
A su vez estos se pueden clasificar en DEFINICIÓN DEL PROBLEMA:
1. Estructurantes
Vienen expresados de manera declarativa, se identifican con conocimientos públicos.
Detectan los conceptos relevantes estableciendo relaciones y estructuras conceptuales.
Definen mecanismos que dan origen a la certeza
Objetos del dominio, relaciones básicas, situaciones iniciales, posibles soluciones.
2. Heurísticos:
Se expresan en forma de reglas, son atajos que conducen a la solución en grandes
espacios de búsqueda en tiempo limitado.
Es la experiencia que está bien organizada e indexada en la memoria a largo plazo, su
poder procede de toda la experiencia que sumarizan.
La que más suelen usar los expertos (Experiencial e incierta).
3. Epistemológicos:
Incertidumbre no estructurada (los estados del sistema son desconocidos en todo
instante), incertidumbre estructurada (los estados del sistema son conocidos pero no se
sabe cuál será el estado del sistema en todo instante). Probabilidad (en todo instante los
estados así como las leyes de la probabilidad de los mismos son conocidos). Para pasar
de incertidumbre a probabilidad hay que aumentar la información, estadística.
Certidumbre cuando todos los estados del sistema son conocidos y saber cuál estado va
en cualquier momento.
Información:
- Dato:
Percepción del hecho.
Signos que se emplean en la comunicación.
Interesa el número de símbolos posibles, duraciones, restricciones, etc.
Es irrelevante que tengan o no significado o relevancia práctica.
áreas de aplicación: compresión de datos, códigos de corrección y verificación de
errores, muestreo, etc.
Sintáctico o técnico.
- Noticia:
El dato con significado
Relaciones entre los signos y las entidades que soportan, de significación del
significado de los signos.
Dependencia del receptor.
El contexto y la asociación de palabras.
Resultan de la clasificación de los datos a través del análisis.
Se usan durante un tiempo limitado, y con un alcance limitado.
Semántico
- Conocimiento:
Todo lo que se podía hacer con grandes volúmenes de noticias (razón, inducción,
deducción, todas las reglas del individuo que interpretaba las noticias).
Relaciones entre los signos y sus usos. Se estudia lo relativo al valor o utilidad (si se
pueden tomar decisiones correctas a tiempo).
Son dependientes del receptor.
Pragmática / de influencia.
Adquisición de conocimientos:
Proceso de recolección de información (dato, noticia y conocimientos) a partir de cualquier
fuente necesaria para construir un sistema basado en conocimiento.
No es un paso concreto sino es una tarea que se produce en paralelo a todas las etapas de
construcción de estos sistemas (identificación, conceptualización, formalización, validación,
mantenimiento, etc).
No es aislado, forma parte de cada fase, al principio es muy importante, en las últimas partes
el tiempo dedicado varía en 20% del tiempo total.
Formas:
2. Extracción de conocimientos
Estudio de documentación existente. No debe bajar a detalle.
3. Educción de conocimientos
Se obtienen los datos genuinamente privados del experto.
a. interrogatorio inicial: Visión de alto nivel del dominio, comprender el alcance, las
tareas del experto, etc.
b. Investigación profunda: Se realiza según un ciclo de educación predefinido.
Extracción de conocimientos:
1. Estudio de documentación:
Libros básicos e introductorios, manuales, catálogos, etc. Se suele requerir asistencia
externa para entender.
Educción de conocimiento:
Los expertos más competentes son incapaces de describir los conocimientos que usan para
resolver los problemas.
Existen 2 órdenes de conocimientos:
1. Primer orden: Los poseen y manipulan los expertos y normalmente se entiende
cuando se habla de ellos.
2. Segundo orden: Los que el IC busca, son conocimientos sobre los conocimientos del
experto, cómo efectúa su tarea el experto.
Problemas:
- Eliminación de datos clave en un proceso de razonamiento (se le pasa al experto)
- Palabras con referencias no especificadas.
- Referencias hechas con comparativos.
- Condensación con palabras de procesos complejos
- Implicación de conexión causal entre eventos.
- Palabras que definen necesidades y probabilidades causales.
- Palabras absolutas.
Técnicas:
1. Directas:
Se pregunta al E directamente lo que sabe. Ej: Entrevistas, cuestionarios.
2. Indirectas:
No se le pregunta al experto lo que sabe si no que se le dan otras tareas que pueda
hablar, que contemple objetos, similaridad de los mismos, etc Y el IC infiere los
conocimientos a partir de los resultados. Ej: Análisis de protocolos, emparrillado,
observación de tareas habituales, etc.
Entrevista:
- Más común y familiar para educir.
- Mucha o poca estructuración.
- Abierta: se debe evitar interrumpir al experto. Las de este tipo deben ser las primeras.
Permite educir información imprevista.
- Estructurada: Planificar más, se usa en la segunda parte del proceso, la investigación
profunda. Si aparecen cosas imprevistas se debe volver a una entrevista abierta.
- Consumen mucho tiempo.
Incidentes críticos:
- Se pide al E que describa casos especialmente interesantes o difíciles que se le hayan
presentado. Y debe contar cómo lo resolvió.
- Variación: plantear casos imaginarios. Sirve si estás re trabado con la educción.
Clasificación de conceptos:
- Obtener a partir de un glosario o texto un conjunto de conceptos que cubren
ampliamente el dominio. Se pasa cada concepto a una ficha y el E debe clasificarlo y
describiendo lo que comparten.
- El E puede introducir nuevos términos, se debe redefinir y combinar conceptos.
Cuestionarios:
- Entrevista estructurada pero indirecta.
Análisis de protocolos
13/04
Etapas
b. Puesta en situación
Proponer al experto pequeños ejercicios (anagramas, multiplicaciones, divisiones) que
el experto pueda practicar resolviéndolo en voz alta, practicando la técnica que luego
va a realizar.
Objetivo: Darle confianza al experto.
2. Transcripción:
- Escuchar esa grabación y transcribirla.
- Al transcribirlo se debe fragmentar/segmentar en líneas numeradas.
- No hay mejor segmentación que otra mientras no quede una frase muy larga o una
sola palabra. Se puede separar entre sujeto y predicado.
- Suelen transcribirlo más de un IC. Para tener más de una visión
- Luego de transcribir anotamos todo lo que nosotros vimos al momento de la grabación
(tal vez el experto se queda callado más de 3 segundos, busca en un libro o cosas así
que no se manifiestan en el texto) y lo anotamos. (lo que es color rojo).
3. Codificación:
- Analizar la transcripción.
- Es la etapa más importante (luego de terminar tengo todo el protocolo analizado).
- Debe ser lo más objetiva posible, recomendado que haga el protocolo más de una
persona y después unificar resultados.
Ejemplo:
El COVID es un estado que puede ser concepto o valor. Depende que elija cambia la creación
de la tabla que ordeno.
Mareo no es solo una característica sino un concepto ya que tiene características propias
Una vez definidos tengo que ordenarlos, para eso hago la tabla de
conceptos-características-valores. Esta no puede tener huecos (Caract. sueltas, valores
sueltos)
No puedo tener un valor sin una característica explícita (tipo repentino) lo tenemos que crear
para que conecte el concepto con el valor. y va entre (). El experto lo puede llamar de otra
forma, lo denotamos para saber que fuimos nosotros quien lo pusimos y luego hay que
consultar.
Cada característica tiene que tener un concepto y un valor asociado.
Los conceptos considerados como estados o como sinónimos no pueden tener
características.
Importante: Puede decir “tiene mareo” sin adjetivo o descripción, entonces en la tabla
pongo que el paciente tiene una característica “mareo” y el valor es un “SÍ”
Para terminar tengo que analizar las relaciones implícitas (aquellas que se dan entre
conceptos)
Queda igual que la transcripción en la primera vuelta pero al volver a ejecutar el protocolo
puede surgir otro estado o características nuevas en el estado asique se va actualizando.
Metacomentarios:
Son todos aquellos comentarios que el experto hace que no aporta información directa
a su razonamiento. Pueden haber metacomentario de subetapas (como el de la línea
13 en la imagen).
Los identifico por las líneas en las que están, su texto y su significado.
Si quiero dar sugerencias con el sistema puedo usar el metacomentario (Ej: estar
aislado).
Incertidumbres:
Aquellas nociones donde el experto le asigna una duda respecto al cambio de estado
(no sabe si se da en el 100% de los casos o en una menor proporción)
No todas las incertidumbres en la transcripción se identifican, sólo se identifican
aquellas relacionadas a un cambio de estado.
4. Interpretación:
Vemos cuál es el razonamiento del experto.
Identifico las reglas de razonamiento del experto a partir de un pseudo código:
Si se dan estas condiciones entonces hay una acción en particular que tiene que ver con la
generación de un estado.
Las reglas siempre se consideran de forma atómica, una regla no se relaciona con otra regla.
(La gripe clase A no tiene los otros síntomas del paciente).
- Declarativo: El conocimiento del qué, me dice los objetos que tiene, sus características,
relaciones y valores, me dice los sinónimos, metacomentarios e incertidumbres.
- Va más allá de lo que el experto puede explícitamente contar en una situación de solución
de un problema (permite inferencias sobre sus conocimientos).
- útil para atraer información sobre procedimiento que el experto usa pero no puede explicar.
- Cierta información salida de esta técnica es directamente utilizable en la actualización del
documento donde se registran los conocimientos educidos.
- La info que primero era lenguaje natural puede representarse en forma de algoritmo o
metarreglas.
- Es complementaria con otras.
Desventajas del protocolo:
1. Costo de utilización:
Exige gran cantidad de trabajo del IC. La transcripción requiere 10 veces más de
tiempo que la grabación, lo mismo para codificación e interpretación con otro x10.
Los protocolos siguientes son más rápidos de interpretar según el grado de similitud
del problema con los precedentes ya tratados.
Otros datos:
- Si llegaste a un estado final, el resto de texto (posibles nuevas características del concepto)
no son relevantes, serían metacomentarios.
- “es de x forma, lo que indica que es bueno” → metacomentario porque es consecuencia de
una característica y no característica en sí.
20/04
Algoritmos genéticos:
- Sistemas expertos sin base de conocimientos explícita.
- No es complejo en su arquitectura
- Va saltando de un lugar a otro (gracias a sus operadores) para tener distintos valores, y
después de muchas corridas encontrar el mejor valor. (no necesariamente el mejor del
universo, éste puede ser infinito).
Surge de:
Teoría de la evolución de Darwin:
- Selección natural
- Ecosistema: Ambiente dónde queremos sobrevivir, debemos adaptarnos.
- Población: Conjunto de individuos.
- Individuo: Con sus características y capacidad de adaptación.
- Herencia: Que damos a nuestra descendencia (rasgos físicos o psicológicos, genes
dentro de cromosomas y describen todas las características unívocas del individuo en
una cadena, viajan por el ADN).
- Genotipo: Composición genética
- Fenotipo: Manifestación física de un rasgo distintivo. (El valor que tiene en un
individuo), la instanciación en distintas opciones que puede tener.
-
Postulados:
- Las formas de vida no son estáticas sino que evolucionan
- El cambio es gradual, lento y contínuo.
- Los individuos parecidos se emparentan y descienden de un antepasado común.
- Selección natural explica todo el sistema.
Selección natural:
- Producción de variabilidad: Generación de modificaciones espontáneas en los
individuos. 2 individuos que se reproducen generan descendencia y en la siguiente no
va a ser igual, ejemplo hijos distintos entre sí.
- Supervivencia del más fuerte/apto: Los que están en mejores condiciones sobreviven.
Esto vamos a usar en la materia.
Vuelta - Ciclo: Cada vez que ciclo, que paso por el no en el criterio de paro. Una generación
es un ciclo.
Corrida: Si el criterio de paro se cumple (sí) y salgo. Tiene uno o más ciclos. Se hacen varias
corridas del algoritmo.
Cosas que debemos identificar en el algoritmo:
1. Genotipo - cromosoma:
- Identificar el cromosoma (cadena de bits)
- Identificar qué porción de la cadena identifica al gen. No todos los genes tienen la
misma longitud (Asociados a la cantidad de valores que puede tomar esa
característica).
- A cada gen le atribuímos una característica
Cromosoma compuesto:
La solución es la combinación de distintos dueños y debemos ver dónde está la casa, el color,
el tipo de bebida, cigarrillos y tipo de mascotas.
Tenemos un gen principal y dentro de éste genes auxiliares, es decir, las distintas
combinatorias de las demás características.
La cantidad de bits para cada característica dependen de la cantidad de valores que tengo.
Adicionales:
1. Generar población inicial
2. Paro
- Ad-Hoc:
Generar una cantidad de individuos válidos
Población:
- Cantidad de individuos
- Varianza
- Constante (con esta trabajamos).
- Variable.
B. Selección:
Del conjunto de individuos arma un subconjunto para poder permitirle a ese subconjunto
entrar a la próxima etapa (selección natural).
Toma de la población inicial o de la población del ciclo/vuelta en la que se encuentre
Métodos:
- Torneo
- Ranking
- Ruleta
- Control sobre número esperando
Torneo:
Justas medievales
Juntamos de a pares y hacerlos pelear con la función fitness.
Se pueden tomar parejas random o por un patrón.
En el ejemplo a mayor función de aptitud el individuo es más apto,se puede repetir el
individuo.
Toman la cantidad de individuos que consideren.
La nueva población es la que pasa al operador de cruzamiento.
No podría elegir el “peor” individuo porque siempre competiría con otro mejor.
Desventajas:
- Se pierden algunos individuos buenos y aparecen algunos malos (Si hago pelear al mejor
el mejor queda, pero si hago pelear al mejor y al segundo mejor y si el segundo no
participa en otra pelea lo pierdo de mi nuevo subconjunto)
Ranking:
Tomo la población inicial con los valores de la función que teníamos.
La ordeno y a partir de ella deciso cómo evaluar (tomo 2 veces el primero, una vez el
segundo, etc).
Ventaja:
- Garantizo quedarme con los mejores.
Desventaja:
- Convergencia prematura: No hago participar nunca a los malos y a veces eso me
sectoriza mucho la búsqueda y me puedo quedar en un máximo local, pierdo
soluciones.
Ruleta:
Más completo que los otros.
Se suma el valor de la función de aptitud y calculamos cuál es la proporción/porcentaje de
pertenencia de cada individuo.
Calculamos la probabilidad acumulada, para el primer caso es el mismo que su probabilidad
individual para el resto es el anterior + el porcentaje del siguiente individuo.
Se tira un par de randoms y ese es el subconjunto.
Ventajas:
- No le quito la probabilidad de ocurrencia a los malos, no desaparecen, solo le doy
mayor a los buenos. Da más heterogeneidad.
Desventaja:
- Depende del random pueden salir todos números malos. No garantiza que salgan
buenos.
Desventajas:
- Complejo de implementar
C. Cruzamiento:
Realizar alguna actividad de pares y generar descendencia, se eliminan los padres.
Siempre se generan 2 hijos.
Deberíamos conocer la estructura del cromosoma para implementarla.
Pueden ser hijos distintos o iguales (esto por VOF no porque sea útil).
Métodos:
- Simple
- Multipunto
- Binomial
- Máscara
- Complemento
- Doble
- Azar
Simple:
Se toma un único punto de corte donde se frena el cromosoma (cantidad de bits, posición), se
intercambian los segmentos del cromosoma separados por este punto.
De un padre se toma desde su inicio hasta el punto de corte y el resto va con la información
del otro padre. Y con otro hijo va lo que resta del primer padre y el inicio hasta el corte del
segundo.
La característica que va para un hijo no va para el otro hijo.
Para no tener valores erróneos: Los puntos de corte deben ser donde sean cambios de
atributo, no cortar un gen al medio.
Multipunto:
Tenemos más de un punto de corte.
La característica que va para un hijo no va para el otro hijo.
Los puntos no necesitan tener la misma distancia.
Cruza binomial - máscara complemento:
Se define una máscara. Ej: la primera posición es del padre x, la segunda del y, etc.
Como es complemento, las otras posiciones que no fueron ocupadas por los papas van para
el otro hijo.
No se pueden repetir características entre papas.
Es igual a una cruza multipunto, los lugares que cambio en la máscara son como si fueran
puntos de corte. Podría dar los mismos resultados que el multipunto.
Eso es para definir el primer hijo, para el segundo, el otro, hay 2 posibilidades:
- Tomamos el complemento (lo que no entró para el primero entra para este)
- Tirar al azar 10 posibilidades de vuelta.
Se pueden repetir o no características (si tiras devuelta al azar se pueden repetir y si usas
complemento no).
D. Mutación:
Conceptualmente: Alterar el cromosoma a partir de agentes exógenos (no tiene que ver con
el problema o el individuo que se está tratando).
Permite mantener la diversidad en la población disminuyendo el riesgo de convergencia
prematura.
En el algoritmo: Cuando cambia 1 posición del cromosoma del gen de un individuo, a veces,
no siempre.
Siempre que se pase por un ciclo, el operador mutación se activa pero no necesariamente se
ejecuta.
Si se muta:
- Genero otro random de posición (cuál de toda la cadena de población voy a alterar)
Si se pasa de la cantidad de bits, se vuelve a comenzar desde el principio, es cíclico
- A esa posición le aplico el complemento, si es 0 va 1, si es 1 va 0.
- Cuando elevas mucho la probabilidad de mutación se recorre casi todo el gráfico, con
menos probabilidad de mutación se va a los puntos máximos y mínimos
- Siempre se cambia 1 solo bit.
Métodos:
- Simple
- Adaptativa por convergencia
- Adaptativa por temperatura
- ascendente
- descendente
D. Paro:
Criterios:
1. Cantidad de vueltas = ciclos
2. Tiempo transcurrido: Lo dejo corriendo x tiempo y luego paro
3. f(Ix) > Valor = Se ejecuta hasta que la función fitness de un individuo sea mayor que
un determinado valor.
4. Promedio f(Ix) ≃ valor: La función fitness de una población da un valor aproximado
5. Etc
A veces puede quedarse iterando eternamente (con las relacionadas a la función), muchas
veces se combina o se corta directamente manual.
Si se cumple:
- Población final = población mutada
Población final:
En teoría: Se corre la función fitness y se selecciona al mejor individuo del conjunto.
En práctica: Tener los logs de distintas corridas, y de todos ellos buscamos el mejor individuo.
27/04
Una red que interconecta neuronas artificiales, solo vemos las que todas tienen el mismo tipo
funciones para calcular la entrada neta, la función de activación y de salida.
Se relaciona con:
- Inteligencia computacional (inspiración biológica)
- Machine learning (aprenden de forma automática).
Una red neuronal es muy rápida una vez entrenada, pero entrenarla demora tiempo.
Suelen estar encapsuladas en otro software que sirve de interfaz para el usuario (se suelen
usar en librerías, web services, etc).
Ventajas:
- Aprende, recolectando información de los ejemplos que le damos, buscando patrón.
Es un aprendizaje adaptativo porque puede aprender casi cualquier problema.
(Siempre aprende el problema)
- Operación en tiempo real: Tarda poco tiempo en ejecutar. Ej: agregar subtítulos,
traducir.
Umbral de activación: Hace algo, emite algo que se multiplexa y llega a otras neuronas.
Neurona artificial:
- Cuerpo
- Dendritas o conexiones de entrada (valores de entrada)
- Axón, que sale al exterior.
Valores de entrada:
números de rangos delimitados o de menos a más infinito.
Entrada neta:
Sumatoria de la multiplicación de los pesos por los valores de entrada.
Componentes:
Unidad de proceso
Neuronas artificiales, por niveles o capas:
- Entrada: La que recibe información del exterior
- Ocultas o de procesamiento: Capas entre entrada y salida.
Puedo tener varias capas, una capa o ninguna. Pueden ser opcionales u obligatorias
depende el modelo.
La cantidad depende de la complejidad de datos y del problema a resolver.
- Salida: envía información al exterior.
Conexión:
Los pesos son excitadores si son mayores de cero, neutros si son iguales e inhibidoras si son
menores a ceros.
Durante el aprendizaje o entrenamiento se modifican los pesos para que la red aprenda. No
se modifican el tipo de función de activación o salida o la ubicación de la neurona, sino la
forma que se conecta esa neurona con otra.
Características que determinan una red:
En la práctica se suele usar una única función que combina activación y salida. En vez de
aplicar una detrás de la otra, para que sea más fácil de analizar.
No conviene perder tiempo analizando el tipo de función ya que depende del modelo hay
algunas por defecto que se pueden usar.
2. Topología de la red
Muchas veces está restringida por el modelo. Lo que cambia:
- Cantidad de capas
- Multicapa (3 capas tiene 1 sola oculta, con 2 capas no hay oculta). Se usan en
reconocimiento o clasificación de patrones.
- Monocapa: Solo dos neuronas o más. Se usan para autoasociación, por
ejemplo regenerar informaciones de entrada que se presentan a la red
incompletas o distorsionadas
- Cantidad de neuronas por cada capa.
- La cantidad de neuronas de entrada depende de la cantidad de datos de entrada
que necesito.
- La cantidad de neuronas de salida son la cantidad de posibles valores de salida
que necesito
- La cantidad de neuronas ocultas depende de la complejidad.
- Formas de conexión
- Hacia adelante: De la capa de entrada a la de salida
- Hacías atrás:
- Entre neuronas de misma capa (como en monocapa)
- recursivas la salida de una neurona es entrada de ella misma
- Una neurona de una capa le manda su salida como entrada a una neurona
de la capa anterior. Se hace un ciclo que se cumple según un criterio dado.
3. Estrategia de entrenamiento
- Supervisado
Se le brinda información adicional desde un supervisor para que pueda aprender.
Se usa para redes heteroasociativos (quiero una salida determinada).
Ej: clasificar datos o predecir.
- No supervisado
Se usan redes autoasociativas
Ej: Clustering, clasificación automática, segmentación, completar patrones
incompletos.
- Off-line:
Fase de entrenamiento previo a estar en producción.
- On-line
Aprende antes de estar en producción, y una vez que está puede seguir aprendiendo.
Competitivo: Cooperan entre sí las neuronas. Se usa para clustering de datos. Las neuronas
compiten para activarse, queda una o una por grupo como ganadora anulando las otras,
forzadas al valor de respuesta mínimo. El aprendizaje afecta solo a las neuronas ganadoras,
reparte el peso total entre sus conexiones, les saca a las perdedoras.
Hebbiano: Gusto, olfato y oído. Se ajustan los pesos de acuerdo con la correlación de los
valores de activación de las dos neuronas conectadas, si ambas son activas (positivas), se
produce un refuerzo de la conexión
Por corrección de error: Encontrar unos pesos para las conexiones de la red que minimicen
esta función de error. Otra forma es de backpropagation. También se usan redes monocapa
con conexiones laterales y autor recurrentes.
Aprendizaje por refuerzo: Más lento que por corrección de error. No indicar exactamente la
salida que se desea, no disponer de un ejemplo completo del comportamiento para una
entrada.
El supervisor solo indica por señal de refuerzo si la salida se ajusta a la deseada (éxito o
fracaso). Es más un crítico que maestro.
Modelos:
Tipos de redes neuronales
Perceptrón:
- Red heteroasociativa
- Usa aprendizaje supervisado off line
- Usa la estrategia por corrección de errores
- Es monocapa, tiene una sola neurona que aprende.
- Es simple, en hardware porque es vieja
- Tiene desventajas que mejoraron las otras formas
- Quedó limitado en el primer invierno de la IA.
Patrones de entrenamiento:
- Datos de entrada
- Salida deseada
El proceso va a ciclar tantas veces hasta que los errores sean cero o consideremos aceptable
por cada valor.
Si yo modifiqué los pesos debo evaluar los patrones anteriores por si el sistema se olvidó del
resultado correcto.
Sólo puede resolver problemas de orden 1 porque usa un separador lineal como célula de
decisión.
Alpha - coeficiente de entrenamiento:
Sirve para que no se olvide la red fácilmente de los patrones anteriores aprendidos
Cada vez que se aprende un nuevo patrón perceptrón modifica muy poco los pesos de las
conexiones.
Tarda más en aprender algo nuevo pero no me olvido tán fácilmente lo viejo.
Debe ser pequeño, entre 0,1 y 0,3.
Aclaraciones:
- El umbral se puede cambiar y no ser constante, se usa la misma fórmula para que la
red aprenda más rápido
- Trabaja con valores binarios o entre 0 y 1.
- Los valores iniciales de los pesos es recomendable usar entre 0 y 0,5
- Funciones que no pueden ser representadas por una función lineal no pueden ser
aprendidas por perceptrón. (Ubicas una recta que te separa los resultados de cero y
de uno.
- Resuelve problemas cuyas salidas están clasificadas en dos categorías diferentes y
que permitan separarse en dos en el plano.
Aplicaciones:
- Clasificar datos: De acuerdo a ejemplos que di
- Estimación o predicción de resultados
Corrección de errores:
Cada vez que necesita ajustar los pesos de las conexiones se aplica el gradiente del error
para propagar el error hacia atrás.
Para un peso determinado W y quiero calcular su valor para obtener el valor mínimo.
Gradiente negativo: Para saber en qué dirección o de qué manera ajustar el W para obtener
el óptimo. Se realiza por cada peso de la red (cada W), se encuentra un error aceptable por la
combinación de Wn.
Cada neurona de una capa recibe entrada de todas las neuronas de la capa anterior y genera
salidas para todas las del siguiente. No hay conexiones hacía atrás ni laterales o autorrentes.
Aclaraciones:
- Se suele usar función sigmoidal más que nada en valores de entrada y salida binarios.
- Si se usan valores reales se usan función gausiana o tangente hiperbólica.
- Puede aprender cualquier función lineal o no-lineal mientras que le des una cantidad y
representativa de valores.
- A pesar de tener ejemplos válidos y representativos puede ser que la red no aprenda,
“queda en un mínimo local” valores que no pueden ajustar, para esto conviene:
En cuanto a neuronas:
- Salida y entrada definidas por el problema
- Las ocultas no tienen regla general, con una capa oculta está bien pero si esa
cantidad la separás en dos capas funciona más rápido.
Validación en producción:
Usar datos similares en producción y comparar la salida con el resultado esperado.
Acá no cambian los pesos de las conexiones
Sí o sí hay que usar datos similares sino de cualquier cosa, y sí o sí tenemos que usar
métricas para evaluar si funciona bien.
Matriz de confusión:
Muestra la cantidad de casos donde se generan casos verdaderos y casos que no.
A más valores de salida (devolver entre 0 y 9) la matriz es compleja y difícil de evaluar sola,
se usan métricas:
- Fórmula de exactitud: Cantidad de verdaderos pos y neg / cantidad total. La proporción
de modificaciones correctamente hechas.
- Precisión: Permite ver la proporción de clases identificadas como positivas que son
correctas. Calcular la cantidad de verdaderos positivos del total
Postulado biológico:
Neuronas A y B cercanas, el valor de excitación entre la neurona A y B es cada vez mayor,
cada vez tiende más a activarse.
Asociado a el recuerdo sensorial
Entrenamiento de la red:
Matriz:
- La diagonal se tacha porque no son recursivos. (igual a 0)
- Son los pesos correspondientes a patrones
- Cada patrón es independiente del otro
- La sumatoria de todos los patrones da el peso de la red (matriz de pesos de la red)
-
Desventaja:
- Todos los patrones que nosotros le vamos a enseñar tienen que ser ortogonales, diferir
por lo menos en más de la mitad de los componentes sino la red no se va a estabilizar.
N/2 componentes. No son elementos, en este caso es 4.
- Hay que considerar un valor de neuronas para evitar el error. Sino puede converger a
valores de salida diferentes a los aprendidos.
Aplicaciones:
- Sirve para completar datos faltantes o clasificar (devuelve el patrón entrenado más
similar al ingresado durante el entrenamiento)
- Identificación de caracteres.
- Reconocimiento de imágenes.
Resumen de tipos de RNA
04/05
Lógica:
Para sistemas con base de conocimientos explícita, el formalismo de la representación de la
información es la lógica, así se escribe para representar la información del experto que
obtenemos.
Las deducciones que se realizan en el motor de inferencias usan lógica también.
Lógica proposicional:
Es limitada para la utilización de sistemas expertos.
- Proposiciones
Representan hechos y conocimientos, tienen valor de verdad (V o F). p, q, r, s
- Operadores lógicos: Relacionan proposiciones. ^ →
Ejemplos:
Tips:
- Cuando existe un existe no hay implicación.
Deducción Natural:
Necesitamos
1. Hipótesis
2. Tesis
Reglas:
Introducir o eliminar operadores lógicos. Y además eliminar o agregar el para todo y él existe.
1. Introducción de la implicación:
Solo se puede aplicar una vez en todo el método de deducción natural.
3. Introducción de la conjunción:
4. Eliminación de la conjunción:
El y es verdadero cuando ambas partes son verdaderas, entonces por separado
ambas también lo son.
5. Introducción de la disyunción
Agrego la fórmula que me sirve.
Si una fórmula es verdadera todo es verdadero.
6. Eliminación de la disyunción
Podes tomar dos caminos y ver si llegás a lo mismo, son cálculos adicionales
No se pueden usar en el resto del método.
7. Introducción de la negación:
8. Eliminación de la negación
Se busca eliminar para todo y existe para llegar a lógica proposicional y luego reducido
volverlo a pasar a primer orden.
Tipos de ejercicios:
1. Implicación:
Se arranca suponiendo el antecedente de la tesis. Y la justificación es que lo estoy
suponiendo. Sólo se supone al inicio.
2. Sin implicación
Tipo 1:
Tipo 2:
Aclaraciones
- Hipótesis con existe tiene que tener tésis con existe, y no para todo, porque está
restringido.
- Si en la tesis yo tengo una implicación, la tengo que introducir en algún momento de
mi método. Si vos empezas de A y llegas a B entonces podés asumir A → B (A implica
B).
- Se tienen que usar todas las hipótesis, si no se usan todas tenemos algún problema
de resolución
Tips de parciales:
- Chequear que en la tesis no haya una letra que nunca apareció en las hipótesis en un
y (si está en un o, la podés inventar con una regla).
- Chequear los existe y para todo.
- Si te pide un hipótesis teniendo otras y la tesis fijate si te falta una letra de la tesis (si
tiene una y, si tiene una o no pasa nada se puede inventar).
Emparrillado:
- Técnica que me permite obtener información de un experto
- Técnica de educción dentro de las herramientas de adquisición de conocimiento.
- Modelo de pensamiento humano, cómo lo ve el humano.
- Trabaja sobre un área de interés.
- El método es objetivo (tiene pasos, números siempre igual) pero los valores de
entrada son subjetivos (los valores que asigna el experto).
- Se busca obtener una imagen.
- Es una técnica potente porque simula el pensamiento humano.
- Identifica prioridades y factores importantes que el observador tiene.
- Es intrusiva, hay que tener cuidado al mostrárselo al experto.
Definición:
Test de clasificación en el cual se vincula una lista de elementos homogéneos y
representativos sobre la base de un conjunto bipolar de características. Esta bipolaridad
estará dada por un conjunto de valores, y a partir de aplicar esta técnica sobre todos estos
componentes lograremos extraer la similitud de un conjunto de elementos y la diferencia de
éste conjunto con otros.
Esos datos del experto no se pueden volcar directamente a la base (como en análisis de
protocolos).
Etapas:
1. Diálogo inicial:
Se identifica el dominio y primera aproximación de dominios y permite reflexión
2. Sesión de valoración:
Obtener los valores anteriores y hacer la parrilla.
3. Análisis de los resultados.
Validación o análisis a partir de los árboles generados.
El emparrillado
- Describe elementos del dominio
- Los ubica en su imaginario (experto se puede sentir un poco incómodo, invadido)
- Tiene en cuenta aspectos importantes (A veces se la ve como incompleta porque sólo
se habla de lo que el experto considera más importante).
Ventajas:
- Reflexión del tema: Del experto a partir del diálogo con el ingeniero en conocimiento y
feedback en análisis de resultados.
- Representación gráfica: Permite simplificar el marco de la realidad.
- Asociaciones entre elementos y características
- Refina problema y mejora el conocimiento
Desventajas:
- Valores subjetivos: Los valores que se obtienen en la matriz dependen del experto que
se esté estudiando
- Captura conocimiento superficial: Elementos y características más representativas.
- Complejo en gran cantidad de elementos y/o características: Árboles complejos.
- Sólo no es útil para la base de conocimiento
Etapas:
Debo reconocer esos dos valores. Ej: color como característica no porque tiene infinitos
valores pero decir obscuro o claro sí.
3. 3 Diseño de la parrilla
Identifica la relación entre los elementos y las características, cuándo posee o no una
determinada característica.
- Dicotómica:
Valores binarios, 0 o 1, elemento tiene o no esa característica.
- Clasificatoria:
Escala de 1 a n con n número de elementos. [1,n]. No necesariamente son igual
cantidad de elementos y características.
El valor M indica qué posición ocupa el elemento dentro del rango total (orden, cómo
si fuera un ranking, no empate) a como poseen esa característica los elementos, cuál
tiene más y cuál menos.
- Evaluativa:
Con escala de uno a n, y n no necesariamente tiene relación con la cantidad de
elementos sino una escala que indica el experto.
Acá sí se pueden repetir valores para cada elemento.
Cada relación (elemento, característica) va a tener un valor y va a dar el grado de
satisfacción con que el elemento cubre una característica.
Escala [1,4]
Es evaluativa (no podría ser clasificatoria porque para C1 se repite el grado 2 en E1 y E4).
4. 4 Formalización
Distancia entre elementos: Es la sumatoria de las diferencias absolutas entre dos elementos
Ei y Eii en cada característica.
Y la distancia de los combinados se calcula como el elemento suelto y la distancia para cada
elemento del conjunto (ejemplo e2 calculas distancia separada de e1 y luego e4 y de esas
dos te quedás con la mínima).
Si tengo más de una mínima distancia: Según como está es como tiene que seguir el
ejercicio. Tienes que elegirlas a la par, no una después de la otra
Ver producto cartesiano de los dos grupos, (Ej. e1 con e2 y e3 con e4)
Para la original construyo una matriz que relacione características con dos pasos:
- Llenar la matriz triangular superior, calculando como el punto anterior. (igual que
elementos pero barres por cada columna para dos filas).
Obtenemos:
- Cardinalidad de grupos (cuántos son)
- Conformación de grupos
- Similitudes (cuál es más similar).
Del primero:
C1 y c2 son las más similares entre sí, se agruparon hasta el principio, entonces en el
problema puede ser que surjan siempre juntas ( par de características)
- Ortogonal (Siempre uno o 2 de los valores no se relaciona con los otros, dos valores
de una característica van al mismo de la otra)
- Ambigua (desde un valor de una característica A voy a los dos valores del B)
Existen:
- Relaciones tipificadas
- Relaciones no tipificadas
- Relaciones sin información para tipificar. (vacía)
Solamente se pueden relacionar características que armen un grupo. (Ejemplo c1 y c2, pero
si se quiere relacionar c4 y c3 no se puede porque son dos grupos distintos.)
01/06
1. Problema
Identificar el qué, y determinar el cómo que se plasma en el sistema inteligente.
Desde otro lado la organización es la fuente de información en relación a los datos que
maneja y las tecnologías posibles para aplicar en el sistema.
En el qué Identificamos:
- Metas
- Expectativas
- Contexto
- Necesidades
- Deseos
- Restricciones
- etc.
- Extracción
- Análisis de documentación, análisis de datos
- Educación (o educción?)
- Entrevistas, cuestionarios, prototipado, observación y análisis de tareas,
emparrillado, análisis de protocolos, reuniones JAD, etc.
El conocimiento no suele estar todo disponible de forma explícita, está distribuído en muchas
fuentes, pueden haber conflictos entre fuentes y está expresado en lenguaje natural.
- Abstraer:
ignorar las diferencias entre los conceptos similares y así poder agruparlos
Permite obtener un panorama general del problema (lo simple del problema) e identificar las
características esenciales del problema.
- Descomponer:
Dividir el problema en partes más simples de entender. Nos permite entender cada elemento
principal del problema y sus detalles.
- Proyectar:
Identificar y describir diferentes visiones de los mismos elementos.
Permite reconocer patrones entre distintos puntos de vista e identificar conflictos entre
stakeholders.
- Modularizar:
Ir agrupando, clusterizar, combinar los elementos identificados y entendidos en porciones
(módulos).
Permite delimitar estructuras estables y fáciles de reutilizar, y organizar las tareas y grupos
de trabajo. Una vez que se llega a algo consistente se modularizar
Modelos conceptuales:
Idea simplificada de la realidad. Sirve para entender mejor los requerimientos y detectar
problemas no definidos, mal definidos, inconsistencias, confusiones de terminología, etc. Y
comunican los requerimientos.
Ayudar a entender el problema, detectar las metas principales que deben ser alcanzadas por
el proyecto, determinar si se han adquirido todos los conocimientos necesarios para resolver
el problema.
Tipos:
- UML
- Fórmulas
- Pseudo reglas.
Un ejemplo:
ii. ¿Es viable aplicar IA?
Si es posible para cumplir los objetivos. o si existen mejores alternativas (no solo usarlo por
moda). Requiere un tiempo de aprendizaje.
Definimos:
- Propósito
- Entradas
- Acciones
- Optimización: Maximizar o minimizar una función matemática.
- Clasificación: Determinar la clase de un elemento
- Predicción: Determinar comportamiento posible futuro
- Regresión: Encontrar una función que represente el comportamiento.
- Clustering: Cómo conviene agrupar algo e identificar los grupos.
- Reglas de asociación: Inferir condiciones que representen la relación existente
entre componentes.
- Detección de anomalías: Tenemos comportamientos comunes e identificamos
un comportamiento distinto
- Salida
Ejemplo:
2. Datos
Identificación y transformación de los datos. (si los hay, es opcional)
Datos: toda información que se asocia al problema del paso anterior y se encuentra
estructurada como una tabla formada por:
- Columnas o atributos:
Una propiedad o característica de una instancia utilizada para resolver el problema.
Pueden ser atributos de entrada, atributo de clase, objetivo o etiqueta
Tenemos que evaluar si son confiables, si se modifican y quién, si son viejos o no, si es caro
acceder y si es útil.
Tomo en cuenta:
- Privacidad
- operativas
- técnicas.
3. Tecnología
1
Se va a determinar cuál tecnología de IA se va a usar.
Pueden ser:
- IA tradicional (motor de inferencia)
- Inteligencia computacional y machine learning
https://www.youtube.com/watch?v=sRPV6ciKqq0&list=PLliFKT3EY0k0U98ZEQHovegeNvAr-txli&index
=7&ab_channel=GrupoGEMISUTNFRBA
Por cada módulo definimos qué tecnología usar:
*Optimización: Queremos obtener la mejor solución, con una función para maximizar y
queremos obtener el valor combinatorio o reducir la longitud de un camino.
*Regresión: tengo ciertos valores y quiero obtener una función que represente el
comportamiento.
*Clasificación: Encontrar cómo definir con un criterio predefinido como se comportan ciertos
valores. Ej: ver si es bueno o malo un cliente para pagar un crédito:
- Algoritmos de inducción supervisados (id3, c4.5)
- Redes neuronales artificiales (red multi perceptrón back propagation)
- SBC y SET
*Predicción: Puedo usar SBC SET si tengo reglas, y sino redes neuronales como multi
perceptrón back propagation.
4. modelo
A partir de la info anterior:
- Módulos del sistema (lista de módulos, cada uno tiene tareas y acciones, datos de
entrada y salida, etc).
- Tecnologías a utilizar
- Datos para el sistema (datos, heurísticas o reglas).
Machine learning:
Tengo datos, se los doy a un algoritmo y me da un modelo.
Automático.
El modelo es fácil de conseguir, pero es más difícil que cumpla los objetivos que queremos.
Necesitamos entrenarlo.
Tiene como dificultad que tengan muchos parámetros, tengo que ver si uso los parámetros
mejores (el alpha o tasa de aprendizaje que hace que sea estable o no y cantidad de ciclos
que puede hacer que aprenda o se sobre entrene).
Una dificultad: ¿El modelo es capaz de generalizar? Puede ser que lo sobreentrenemos
cuando iteramos al entrenar y validar. Tiene un mal aprendizaje, aprende demasiado bien con
los datos dados pero para otra combinación de datos da incorrecto.
Para arreglar eso necesitamos otros datos de prueba y ahora tenemos:
Tomamos muestras para cada tipo
- Datos de prueba
- datos de entrenamiento
- datos de validación.
Inteligencia computacional:
1. Algoritmos genéticos:
No tienen capacidad de aprender sino que está dada por el cromosoma y función de aptitud
- Modelo simplificado, no tiene que ser perfecto.
- Se debe definir con mucho cuidado porque son la fuente de conocimiento.
- Los operadores de población inicial, selección, cruzamiento, mutación, criterio de paro
y análisis o evaluación de la población final son genéricos
- El conocimiento sólo va el cromosoma y función de aptitud.
- Todas las soluciones deben tener la misma posibilidad de ser generadas (uniformidad).
Tiene conflicto con el punto anterior de probabilidad.
- Fácil de interpretar.
- Pena de muerte:
Si veo un individuo con un valor inválido le pongo un valor muy bajo/malo pero el
algoritmo no ve cual es peor de varios. (un inválido, dos inválidos, etc). Conviene usar lo
siguiente.
- niveles de penas:
Depende de qué tan mal están, un inválido es menos penoso que dos inválidos en un
individuo. Pueden ser constantes o adaptativas.
5. Sistema inteligente
Se tiene que realizar:
- Integración de los modelos de cada módulo para que generen un SI integrado
- Tenemos en cuenta el alcance (objetivos, criterios de ética y riesgos) definido en la
primera fase.
- Integramos con otro software tradicional que estén disponibles en la organización
- Si se necesita implementar todas las interfaces SW para interactuar con el usuario
1. Integrar modelos construidos:
A través de canalizaciones o pipelines (conexiones o interfaces)
Consiste en determinar cómo se ejecutarán en producción todas las acciones relacionadas
con el SI en forma integrada:
- Recolección de datos
- Preparación de datos
- Ejecución del modelo
- Ajuste de resultados.
- etc
Considerar la golden rule o regla dorada: Siempre hacer las mismas acciones en producción
de recolección y preparación de datos que la construcción. Ejemplo: si normalice datos
cuando entrené el sistema, tengo que usar datos normalizados de igual forma en producción.
Modelo de “pan de pasas”: Puedo tener varios SW tradicionales en la organización, para que
realicen tareas más complejas o datos más complicados los puedo integrar con módulos de
inteligencia artificial. Ej: en inventario puedo agregar módulo de predicción de materias primas
y necesidades. Segmentación o clustering de clientes, análisis de riesgo en un banco, etc.
Reduzco chance de rechazos del nuevos sistema inteligente.
3. Instalar:
Ponerla en producción, similar a un SW tradicional, testeando con el usuario
4. Monitorear:
En los primeros momentos tenemos que hacer un monitoreo más exhaustivo para ver que no
falle.
5. Mantenimiento:
Si se quiere cambio o hay un error. A veces implica construir de cero si cambiamos la
tecnología.
Parcial:
- Emparrillado si se hace pero ver que parte, si pide características sólo eso.
- Análisis de protocolo no, marcar enunciado y no hacer todo.
- Traducción para el parcial no, nos dan las frases traducidas de una y vemos de
reducirlo.
- Siempre me va a dar el resultado en deducción, y con todas las hipótesis.
Ejercicios de parcial:
1. Supongo el antecedente, y me fijo si puedo llegar a algo del consecuente solo con lo
que tengo de hipótesis
2. Por resolución llego a M, me fijo en las opciones y hay una que llega directo al
consecuente desde esa M.
1. La 1 no va porque tiene para todo
2. Trato de ver si llego a algo suponiendo el antecedente de la tercera pero no llego a
nada
3. veo entre la 2 y 4, trato de resolver las hipótesis y llegué a Ba, como no puedo
agregarle el ^Aa pero si inventar una F es la primera.