stringtranslate.com

Clasificador deductivo

Un clasificador deductivo es un tipo de motor de inferencia de inteligencia artificial . Toma como entrada un conjunto de declaraciones en un lenguaje de marco sobre un dominio como la investigación médica o la biología molecular. Por ejemplo, los nombres de clases, subclases , propiedades y restricciones sobre los valores permitidos. El clasificador determina si las diversas declaraciones son lógicamente consistentes y, si no, resaltará las declaraciones inconsistentes específicas y las inconsistencias entre ellas. Si las declaraciones son consistentes, el clasificador puede entonces afirmar información adicional en función de la entrada. Por ejemplo, puede agregar información sobre las clases existentes, crear clases adicionales, etc. Esto difiere de los motores de inferencia tradicionales que se activan a partir de condiciones IF-THEN en las reglas. Los clasificadores también son similares a los demostradores de teoremas en que toman como entrada y producen salida a través de la lógica de primer orden . Los clasificadores se originaron con los lenguajes de marco KL-ONE . Son cada vez más importantes ahora que forman parte de la tecnología habilitadora de la Web semántica . Los clasificadores modernos aprovechan el lenguaje de ontología web . Los modelos que analizan y generan se denominan ontologías . [1]

Historia

Un problema clásico en la representación del conocimiento para la inteligencia artificial es el equilibrio entre el poder expresivo y la eficiencia computacional del sistema de representación del conocimiento. La forma más poderosa de representación del conocimiento es la lógica de primer orden. Sin embargo, no es posible implementar una representación del conocimiento que proporcione el poder expresivo completo de la lógica de primer orden. Tal representación incluirá la capacidad de representar conceptos como el conjunto de todos los números enteros que son imposibles de iterar. Implementar una afirmación cuantificada para un conjunto infinito por definición da como resultado un programa indecidible y sin terminación. Sin embargo, el problema es más profundo que no poder implementar conjuntos infinitos. Como demostró Levesque, cuanto más se acerca un mecanismo de representación del conocimiento a la lógica de primer orden, más probable es que dé como resultado expresiones que requieren recursos infinitos o inaceptablemente grandes para su cálculo. [2]

Como resultado de esta disyuntiva, una gran parte del trabajo inicial sobre la representación del conocimiento para la inteligencia artificial implicó experimentar con varios compromisos que proporcionan un subconjunto de la lógica de primer orden con velocidades de cálculo aceptables. Uno de los primeros y más exitosos compromisos fue desarrollar lenguajes basados ​​predominantemente en modus ponens , es decir, reglas IF-THEN. Los sistemas basados ​​en reglas fueron el mecanismo de representación del conocimiento predominante para prácticamente todos los primeros sistemas expertos . Los sistemas basados ​​en reglas proporcionaban una eficiencia computacional aceptable al mismo tiempo que proporcionaban una representación del conocimiento potente. Además, las reglas eran muy intuitivas para los trabajadores del conocimiento. De hecho, uno de los puntos de datos que alentó a los investigadores a desarrollar la representación del conocimiento basada en reglas fue la investigación psicológica que mostraba que los humanos a menudo representaban la lógica compleja a través de reglas. [3]

Sin embargo, después del éxito inicial de los sistemas basados ​​en reglas, surgió un uso más generalizado de lenguajes de marcos en lugar de reglas o más a menudo combinados con ellas. Los marcos proporcionaban una forma más natural de representar ciertos tipos de conceptos, especialmente conceptos en jerarquías de subpartes o subclases. Esto condujo al desarrollo de un nuevo tipo de motor de inferencia conocido como clasificador. Un clasificador podía analizar una jerarquía de clases (también conocida como ontología ) y determinar si era válida. Si la jerarquía no era válida, el clasificador resaltaría las declaraciones inconsistentes. Para que un lenguaje utilizara un clasificador, requería una base formal. El primer lenguaje que demostró con éxito un clasificador fue la familia de lenguajes KL-ONE. El lenguaje LOOM de ISI estuvo muy influenciado por KL-ONE. LOOM también estuvo influenciado por la creciente popularidad de las herramientas y entornos orientados a objetos. Loom proporcionó una verdadera capacidad orientada a objetos (por ejemplo, paso de mensajes) además de las capacidades del lenguaje de marcos. Los clasificadores juegan un papel importante en la visión de la próxima generación de Internet conocida como la Web Semántica. El lenguaje de ontología web proporciona un formalismo que puede validarse y razonarse a través de clasificadores como Hermit y Fact++. [4]

Implementaciones

Editor de ontologías de Protege

Las primeras versiones de los clasificadores eran probadores de teoremas lógicos . El primer clasificador que funcionó con un lenguaje de marco fue el clasificador KL-ONE . [5] [6] Un sistema posterior creado sobre Common Lisp fue LOOM del Information Sciences Institute. LOOM proporcionó capacidades verdaderamente orientadas a objetos aprovechando el Common Lisp Object System, junto con un lenguaje de marco. [7] En la Web Semántica, la herramienta Protege de Stanford proporciona clasificadores (también conocidos como razonadores) como parte del entorno predeterminado. [8]

Enlaces externos

Referencias

  1. ^ Berners-Lee, Tim ; Hendler, James; Lassila, Ora (17 de mayo de 2001). "La Web semántica Una nueva forma de contenido web que es significativo para las computadoras desatará una revolución de nuevas posibilidades". Scientific American . 284 (5): 34–43. doi :10.1038/scientificamerican0501-34. Archivado desde el original el 24 de abril de 2013.
  2. ^ Levesque, Hector; Ronald Brachman (1985). "Un equilibrio fundamental entre la representación del conocimiento y el razonamiento". En Ronald Brachman y Hector J. Levesque (ed.). Lectura en la representación del conocimiento. Morgan Kaufmann. pág. 49. ISBN 978-0-934613-01-9La buena noticia de reducir el servicio de KR a la demostración de teoremas es que ahora tenemos una noción muy clara y muy específica de lo que el sistema de KR debería hacer; la mala noticia es que también está claro que los servicios no se pueden proporcionar... decidir si una oración en FOL es o no un teorema... es irresoluble .
  3. ^ Hayes-Roth, Frederick; Waterman, Donald; Lenat, Douglas (1983). Construcción de sistemas expertos. Addison-Wesley. págs. 6-7. ISBN 978-0-201-10686-2.
  4. ^ MacGregor, Robert (1994). "Un clasificador descriptivo para el cálculo de predicados" (PDF) . Actas de la AAAI - 94. Consultado el 17 de julio de 2014 .
  5. ^ Woods, WA ; Schmolze, JG (1992). "La familia KL-ONE". Computadoras y matemáticas con aplicaciones . 23 (2–5): 133–177. doi :10.1016/0898-1221(92)90139-9.
  6. ^ Brachman, RJ ; Schmolze, JG (1985). "Una visión general del sistema de representación del conocimiento KL-ONE". Ciencia cognitiva . 9 (2): 171–216. doi : 10.1207/s15516709cog0902_1 .
  7. ^ MacGregor, Robert (junio de 1991). "Uso de un clasificador de descripción para mejorar la representación del conocimiento". IEEE Expert . 6 (3): 41–46. doi :10.1109/64.87683. S2CID  29575443.
  8. ^ "Protege Wiki: Reasoners that integrate with Protege". Universidad de Stanford . Consultado el 19 de julio de 2014 .