VII.1
Representación del Conocimiento Fernando
Galindo Soria* Junio de 1985. Ultima revisión 2 de
Noviembre del 2010 Introducción La necesidad de contar con mecanismos que nos permitan
obtener, preservar y transmitir el conocimiento es uno de los problemas que
se presentan al tratar de comprender la realidad que nos rodea y en
particular con la explosión de la información que se presenta en nuestro
tiempo, esta necesidad de obtención-transmisión de conocimiento ha crecido en
forma acelerada, por lo que cada vez se necesitan mecanismos más “compactos”
que nos permitan conservar el conocimiento que se está manejando. Lo anterior
ha propiciado el surgimiento de diferentes niveles de abstracción en la
representación del conocimiento, comenzando con los mecanismos en los cuales
simplemente se listan los hechos, continuando con aquellos en los que se
busca ordenar y jerarquizar esos hechos y así hasta llegar a obtener reglas generales que explican y
sintetizan el conocimiento aportado por múltiples hechos (por ejemplo, las
leyes de la Física). Con el
surgimiento de la Computación, de la Informática y en particular de la
Inteligencia Artificial, el problema de representar el conocimiento adquiere
una relevancia trascendental ya que ahora se trata de que los sistemas
automatizados capten, almacenen, transmitan, evalúen y generen conocimiento,
de donde uno de los puntos cruciales
de la Inteligencia Artificial se centra en los mecanismos que permitan
representan el conocimiento en forma automatizada. Por lo anterior, se presenta un panorama de las
múltiples formas de representación del conocimiento y sus posibilidades de
automatización, para lo cual se parte de la asociación de datos a hechos y
objetos, se ven los diferentes niveles para relacionar datos (expresiones,
funciones, relaciones, algoritmos, heurismas), continuando con herramientas
como las Bases de Conocimiento y el Álgebra Cualitativa y terminando con
mecanismos en los cuales el conocimiento no se almacena en un nodo
específico, sino que se encuentra representado por toda la complejidad de un
sistema, como es el caso, por ejemplo, de los circuitos de computadora
(almacenan operaciones en el sistema) y las Redes Neuronales (almacenan
conocimiento en el sistema). 1 Conceptos
Generales El ser humano siempre ha tratado de representar y
comprender la realidad que le rodea y en ese intento ha generado múltiples
teorías y desarrollado su creatividad artística, tecnológica y científica. En particular, se considera que la informática es una
herramienta con la cual se puede facilitar la construcción de modelos de la
realidad, ya que, dado un universo conceptual en el cual existen relaciones
de materia, energía e información entre los entes u objetos que forman el
universo, se puede encontrar un modelo informático, en el cual, tanto el
conocimiento que se tiene de los entes como de las interrelaciones entre
ellos se pueden representar como datos y transformaciones entre estos. * Fernando Galindo Soria, escribió este trabajo en junio de 1985 cuando estaba en la Unidad de Investigación y Desarrollo en Computación (UIDC) del Dpto. de Computación de la UPIICSA del IPN, lo presentó como ponencia y publicó en las memorias del II Congreso Internacional de Ingeniería en Comunicaciones Eléctricas y Electrónicas, en la Cd. de México en Noviembre de 1985, cuando era Jefe de la Licenciatura en C. de la Informática de la UPIICSA. Ultima revisión el 2 de Noviembre del 2010. De lo
anterior se observa que uno de los problemas de la informática se centra en
los mecanismos para representar el conocimiento que se tiene acerca de un
universo dado. Antes de
estudiar los mecanismos específicos se verán algunas consideraciones sobre el
conocimiento y sus diferentes niveles. Desde el
punto de vista de la pedagogía se tienen escuelas que estructuran los niveles
de conocimiento de acuerdo a una secuencia o taxonomía, de estas la más
conocida es la Taxonomía de Bloom, en la cual se considera que el
conocimiento que se tiene de algo puede caer en alguna de las siguientes
categorías: 1) Conocer, se sabe que
existe algo. 2) Comprender, se
entiende algo y se puede usar de alguna manera ese conocimiento. 3) Aplicar, dado un
problema es capaz de solucionarlo utilizando el conocimiento adquirido. 4) Analizar, se es capaz
de encontrar las partes constitutivas de algo y las relaciones entre estas. 5) Sintetizar, se es
capaz de integrar diferentes partes para formar un todo. 6) Evaluar, se puede
formar un juicio sobre algo. Por otro
lado, en el área de la Lingüística Matemática se manejan los siguientes niveles de conocimiento: 1) Fonético, se conocen
los elementos “atómicos” de un universo. 2) Léxico, se conocen las
relaciones entre los elementos atómicos para formar elementos básicos o
“moléculas”. 3) Sintáctico, se conocen
las reglas que indican cuales son las estructuras o relaciones entre
elementos permitidas. 4) Semántico, se conoce
el significado general de los elementos y de sus relaciones. 5) Pragmático, se conoce
el significado particular o referencia a un contexto de los elementos y sus
relaciones. 6) Hermenéutico, se
conoce el significado real de las cosas Si se observa
el proceso de concretización de una disciplina o Área del Conocimiento se
puede observar que en general esta pasa por los siguientes niveles: 1) Temas aislados, se tiene
una serie de temas reunidos en forma circunstancial (diccionario). 2) Temas agrupados, los
temas se agrupan en temas generales según un criterio de agrupamiento
(enciclopedia). 3) Temas jerarquizados o
disciplina taxonómica, los temas se integran según un orden y se tiene
una primera relación entre ellos (biblioteca especializada). 4) Sistema de conocimiento o
disciplina empírica, en este nivel a partir de los temas se abstraen
reglas, técnicas, métodos y principios no aceptados en general y la disciplina
se describe en término de estas abstracciones y no de los temas específicos. 4) Disciplina o Ciencia,
en este nivel a partir de los temas se abstraen reglas, técnicas, métodos,
principios y paradigmas aceptados en general y la disciplina se describe en
término de estas abstracciones y no de los temas específicos. 2 Formas
Básicas de Representación del Conocimiento El conocimiento que se tiene de una realidad puede caer
en cualquiera de los enfoques y niveles presentados anteriormente, por lo que
es difícil pensar en un único mecanismo para representar el conocimiento
(esto no indica que no exista tal mecanismo, sino únicamente que, el nivel de
conocimiento sobre este tema es aun elemental). Por lo que a
continuación se verán algunas de las formas de representación que se manejan
actualmente y en particular aquellas
que son independientes de una computadora. La forma más
sencilla de representar el conocimiento consiste simplemente en asociar un
dato o etiqueta a lo que se quiere representar, como por ejemplo, asociar un
nombre a una persona y almacenar ese nombre o asociar un numero a cierta
cantidad de manzanas un mecanismo más complejo de representación surge cuando
se observa que existe una relación entre el número de manzanas que se obtiene
al juntar varios grupos de manzana y el número de manzanas de cada grupo y
que este tipo de relaciones se mantienen independientemente de si lo que unen
son manzanas o cualquier otra cosa. Después de
observar múltiples veces este fenómeno se puede pasar a un nuevo nivel de
representación de conocimiento en el cual se plantea una regla del tipo Si
unimos un grupo con “n” elementos y otro grupo con “m” elementos en total se
tienen “l” elementos siguiendo este proceso, mas adelante se llega a obtener
una regla general, por ejemplo, para la suma. Es así que en la regla de la
suma se encuentra representado el conocimiento de múltiples generaciones.
Este proceso se ha repetido para las otras reglas básicas de la aritmética,
donde cada regla es una forma de representar conocimiento. Pasando a
otro nivel se tiene que, por ejemplo, la regla de la suma se puede abstraer y
generalizar para representar la suma entre cualquier grupo de datos con lo
cual se pasa a una nueva forma de representar el conocimiento en donde se
representan las relaciones entre los datos de un universo dado como ocurre
por ejemplo en el Álgebra. Las
operaciones aritméticas son un caso particular de lo que se conoce como una
relación y nuevamente este concepto nos marca un nuevo nivel de representación
de conocimiento, ya que al establecer una relación se están generalizando
múltiples casos particulares. Nuevamente se
puede observar que al pasar de un nivel de representación a otro existe una
compactación del mecanismo con lo que, por ejemplo miles de reglas
particulares se integran en una regla general que las abarca y las sustituye. Hasta este
punto se han mencionado mecanismos de representación que funcionan como
reglas generales, sin embargo conforme los problemas atacados crecen en complejidad,
la misma regla general es difícil que se quede en una sola acción u
operación, es por eso que se requieren mecanismos mas complejos para
representar conocimiento. Estos
mecanismos se pueden dividir en dos formas: 1) Grupos de reglas. 2) Tablas de relación. El primer
caso se encuentra que dado un problema, se puede plantear un conjunto de
reglas que representan el conocimiento necesario para resolver el problema.
Nuevamente este conjunto de reglas no surge por lo común en forma espontanea,
sino que, es el resultado del trabajo de múltiples gentes, cuando estas
reglas se orientan a obtener una solución independientemente de que sea la
mejor o no, se conocen como heurismas y prácticamente todas las actividades
comunes están repletas de heurismas o reglas de trabajo. Por su parte
cuando las reglas pretenden llegar a obtener la mejor solución a un problema
se tiene un algoritmo. Otra forma de
representar un conocimiento complejo se tiene mediante las tablas de
relaciones. Nuevamente se
tienen dos tipos de tablas, una en las cuales a cada relación entre elementos
se les asocia un valor y este es inmutable y cuantitativo como por ejemplo en
el caso de la suma, multiplicación, tangente, etc., etc. Como no todos
los problemas se pueden reducir a un esquema cuantitativo, en el otro tipo de
tablas se representa un “conocimiento de todos los días” que no
necesariamente es medible.
En base a las
relaciones cualitativas se puede construir toda una Álgebra Cualitativa en la cual se opere de acuerdo
a las tablas cualitativas y se represente precisamente el “conocimiento de
todos los días”, por ejemplo: Gris # Gris Claro = Gris Claro Gris Claro # Negro = Gris Oscuro Negro # Blanco # Blanco = Gris Oscuro # Blanco = Gris En un momento
dado se pueden tener múltiples tablas y combinar las operaciones entre los
datos para obtener nuevos datos. 3 Representación
del Conocimiento en la Computadora Cuando la cantidad de objetos que se quieren
representar y las posibles relaciones entre estos crece en forma considerable
surge la necesidad de herramientas automatizadas para representarlas, es por
lo anterior que en el área de computación se cuenta con varios medios de
representación del conocimientos, de los cuales los mas sencillos constan
solamente de datos almacenados en un campo (bit, carácter, palabra, etc.)
concatenando varios campos se puede almacenar información mas compleja ya que
si se quiere almacenar la edad de 10 personas se colocan 10 campos para edad. Por otro lado
para representar las características que nos interesan sobre una persona se
pueden tener un grupo de campos en cada uno de los cuales se alacena un dato
diferente, por ejemplo, se pude tener campo de nombre, edad, sexo, grado de
estudios, etc. y los valores que tomemos dan el conocimiento acerca de la
persona por ejemplo: nombre /Juan Pérez, edad/30, sexo /m, grados de
estudios/2do. de secundaria. Entonces a
cada objeto o ente que se quiera conceptualizar se le puede asociar un grupo
de campos a los que se les asocia los atributos mas relevantes. Si en lugar
de un ente se tienen varios entes del mismo tipo por ejemplo varias personas),
entonces se puede agrupar la representación de todos los entes para formar
una entidad. Cuando
existen múltiples entes de diferentes tipos se pueden forma agrupamientos de
entes del mismo tipo en entidades y en un momento dado tener varias entidades
que agrupan a los entes y cada ente esta caracterizado por un conjunto de
atributos. A pesar de que esta forma de almacenar el conocimiento
se pude considerar fuerte, resulta que tiene múltiples limitaciones ya que en
un momento dado los entes representados se encuentran relacionados entre si,
y esa relación no se conserva, por otro lado se esta manejando un nivel de
representación muy elemental, ya que a cada ente se le asocia solo un
conjunto de campos y no tiene otros mecanismos de abstracción. Para atacar
el primer problema se ha desarrollado en la Informática lo que se conoce como
Base de Datos , para el segundo las Bases de Conocimiento. En una Base
de Datos además de almacenar los datos de cada ente, también se almacenan las
relaciones sintácticas que existen entre diferentes entes. Por su lado
en las Bases de Conocimiento, a cada ente se le asocian relaciones con otros
entes, buscando que en sí la relación representa un nuevo conocimiento y
enfatizando la relación entre los entes mas que las características de un
ente en particular, con lo cual ya se cuenta con un mecanismo capaz de
representar el conocimiento en una forma que se puede utilizar para inferir
nuevo conocimiento. Cuando se
almacena el conocimiento en una Base
de Conocimiento por un lado se tienen hechos o sea relaciones entre
diferentes entes y por el otro lo que se conoce como reglas de inferencia,
con las cuales se tiene un nivel mas avanzado de representación que indican
características generales sobre los hechos, y marcan que si se cumple un
conjunto de circunstancias se pude inferir algo nuevo. Estas reglas son las
que le dan su fuerza a las Bases de Conocimiento y le permiten manejar un
nivel mas abstracto y general, aunque estas reglas de inferencia se aplican a
cualesquier hechos que cumplan con sus premisas independientemente de los
entes particulares que represente. Asociados con estos mecanismos se tiene lo
que se conoce como rutinas semánticas, las cuales son, algoritmos o heurismas
que representan el conocimiento de como hacer algo, y son llamadas o
ejecutadas cuando se cumplen ciertas reglas, y por otro lado tenemos el
álgebra cualitativa con la cual se representa el “conocimiento de todos los
días”. La
combinación de las Bases de Datos, Bases de Conocimiento, Rutinas Semánticas,
Álgebra Cualitativa, etc., nos proporcionan un mecanismo muy poderoso de
representación de conocimiento, ya que, en la base de conocimiento se
almacenan los entes y las relaciones entre estos y las reglas que permiten
inferir nuevo conocimiento a partir del ya existente, por otro lado los entes
pueden apuntar a las bases de datos, donde se encuentra la información de
detalle, y por su parte ciertas reglas de inferencia pueden inferir alguna
rutina semántica o alguna operación cualitativa entre diferentes componentes. 4 Representación en Base a Propiedades Emergentes de
las Estructuras Al analizar un sistema como el propuesto anteriormente
se puede observar que mucho del conocimiento no está almacenado en términos
de datos concretos, sino que, surge como una manifestación de las relaciones
entre los hechos y de las reglas que permiten combinar estos hechos. Es por
lo anterior que un mecanismo de representación de conocimiento no tiene
porque estar formado únicamente por nodos concretos en los cuales se almacene
este conocimiento, y se considera que se puede tener un mecanismo en el cual
el conocimiento se encuentre difundido por todo el sistema, y sea el
resultado emergente de la concatenación de múltiples nodos aplicados a un
caso particular. Como ejemplos de mecanismos de este tipo se tienen los
Circuitos Aritméticos y las Redes Neuronales. En el caso de
los Circuitos Aritméticos, por ejemplo los sumadores binarios, se tiene un
sistema en el cual se almacena el conocimiento de como sumar, pero no en
una tabla de la suma ni en un algoritmo de suma, sino un mecanismo que
obtiene la suma en base a relaciones que surgen en el sistema, lo cual indica
que no existen datos representando el conocimiento sino que este se encuentra
inmerso en el sistema. Este ejemplo
nos indica que un camino alterno para representar el conocimiento, es
logrando que se difunda en todo el sistema y que se aplique para cada caso
particular, con lo cual se tiene un nivel de abstracción alto, ya que no son
los datos concretos o reglas especificas, ni datos o reglas generales lo que
se almacena sino una abstracción de todo esto aplicable a cualquiera datos
que se puedan sumar. De lo
anterior surge la idea de desarrollar sistemas en los que el conocimiento no
se almacena en un punto especifico, sino que, se difunda en todo el sistema y
en un momento dado no queden hechos concretos sino la abstracción de estos
hechos. Un mecanismo
orientado a este fin, es lo que se conoce como Red Neuronal. Una Red Neuronal
o máquina que aprende es un mecanismo compuesto por nodos y relaciones entre
los nodos, donde cada nodo tiene un conjunto de entradas que pueden tomar dos
posibles valores preestablecidos para cada entrada +1 ó -1 (excitatorio e
inhibitorio), estas entradas toman su valor de acuerdo a que reciban o no una
señal del exterior, esta señal puede ser 0 si reciben un 1 toman el valor 1 ó
-1 según sean excitatorias o inhibitorias, la Red Neuronal suma todos los
valores que entran en forma algebraica y el resultado lo compara con un
umbral o valor mínimo del nodo, si la suma es mayor que el umbral entonces
del nodo sale un 1 que va a excitar o inhibir a otros nodos, si la suma es
menor que el umbral entonces se manda un cero que al llegar a otro nodos los
deja apagados. La ventaja de un sistema de este tipo se
encuentra en que se le pude “enseñar “ a distinguir entre diferentes entradas
al sistemas ya que si se quiere que a ciertas señales de entrada responda con
una señal especifica de salida se le da la señal de entrada y si no sale la
señal esperada se le modifican algunos umbrales o valores predefinidos, para
que se vuelva a enviar la señal repitiéndose el proceso hasta que aprende a
reconocer la señal de entrada, este método se puede utilizar para enseñarle a
responder a diferentes señales de alguna forma específica y logrando que
aprenda a distinguir entre diferentes tipos de entrada. En el proceso anterior lo que se ha hecho es lograr que la Red Neuronal represente el conocimiento que se permite distinguir entre diferentes entradas, en el sistema ya que no existe una caja especifica para cada entrada, sino que el conocimiento que permite distinguir entre las entradas esta dado por la configuración de la Red Neuronal y los valores del umbral. Esta forma de
representar el conocimiento se basa en un modelo del cerebro conocido como
Redes Neuronales de McCulloch -
Pitts y este modelo del
cerebro aunque burdo se acerca al funcionamiento de un cerebro humano. En la Red Neuronal cada nodo es un elemento muy sencillo y la fuerza la da la complejidad de las relaciones entre los elementos del sistema, ya que el conocimiento emerge del sistema, con lo que se pueden tener nodos mas complejos y sistemas que permitan múltiples relaciones entre los nodos, la relevancia de la Red Neuronal o de mecanismos desarrollados sobre su línea esta asegurada. Actualmente están adquiriendo gran importancia los estudios sobre procesamiento en paralelo, procesamiento distribuido y tejidos de computadora. Donde precisamente se empieza a trabajar sobre múltiples nodos (procesadores, computadoras, etc.) interrelacionados, sin embargo se ha seguido con un enfoque tradicional de representar el conocimiento ya que el conocimiento se almacena en puntos bien delimitados, de donde, la idea seria que se buscara almacenar el conocimiento en todo el tejido y no en un punto concreto. Por ejemplo
se tienen algoritmos que ordenan datos o calculan operaciones matriciales
distribuyendo el problema entre los nodos, en este caso se tiene que el
conocimiento del método de ordenamiento o de solución matricial se encuentra
distribuido pero no emerge del sistema ya que existen puntos específicos para
la función, por lo que a pesar de ser ya un mecanismo potente para
representar conocimiento y de que ya existen Bases de Datos Distribuidas y
seria conveniente contar con Bases de Conocimiento Distribuidas es necesario
pensar en la manera de representar el conocimiento difundo en todo el
sistema, para aprovechar las propiedades emergentes de sistemas de tanta complejidad
como son por ejemplo los tejidos de computadoras. Conclusión En este documento se presentaron algunas de las formas
con que se cuenta para representar el conocimiento buscando enfatizar los
puntos siguientes: 1) El concepto de conocimiento, se ha atacado desde múltiples enfoques y es conveniente
tomarlos en cuenta ya que dependiendo del nivel de conocimiento que se maneja
existe uno u otro mecanismo para representarlo. 2) El hecho de que un conocimiento no tenga un “nivel alto” (por
ejemplo, semántico, o de síntesis) no indica que no sea conocimiento y el
excluirlo o no tomarlo en cuenta, podría crear una barrera sobre los
mecanismos de representación que se consideran “convenientes” de estudio. 3) El ser humano siempre ha buscado formas físicas (dibujos,
letras, esculturas, etc.) de representar el conocimiento y actualmente cuanta
con un cúmulo muy grande de estas formas. 4) Al aumentar la complejidad del conocimiento se obtiene
mecanismos mas compactos para representarlo mediante un proceso de abstracción
que se “olvida” de los conocimientos específicos y busca reglas generales. 5) Actualmente en la computación se cuenta con múltiples mecanismos
para representar el conocimiento desde nivel de datos hasta relaciones
semánticas y pragmáticas. 6) Es conveniente combinar los diferentes mecanismos con que se
cuenta buscando el apoyo mutuo dependiendo de sus características, ya que por
ejemplo, en las bases de datos se pueden almacenar las características
léxicas y sintácticas de un universo conceptual y en las bases de
conocimiento, rutinas semánticas y álgebra cualitativa se pueden representar
las características semánticas y pragmáticas, por lo que la combinación de
estas herramientas aumenta la fuerza del sistema. 7) Las herramientas actuales cubren un rango muy amplio de
representación, sin embargo, no tienen la capacidad de abstraer y compactar
el conocimiento en reglas generales a partir de reglas o puntos específicos. 8) Una forma poco explotada de representación de conocimiento se
presenta cuando este se difunde en todo el sistema y no se queda en un punto
dado. 9) Con el surgimiento del procesamiento en paralelo y las redes y
tejidos de computadoras se ve posible el crear sistemas en los que el
conocimiento se encuentre difundido en toda la estructura. Como se puede
observar existen muchos puntos sueltos en los mecanismos de representación
del conocimiento y por tal motivo las posibilidades de desarrollo en el área
son muy grandes y en su momento se podría llegar a una forma mas general de
representación en la cual se integren todos los puntos mencionados. Bibliografía [1] Bloom, Benjamin, et.
Al., Taxonomía de los objetivos de la educación, editorial el ateneo, Buenos
Aires Argentina, 1971 [2] Galindo Soria,
Fernando, Comentarios sobre la informatización del derecho en Memoria del 1er
congreso iberoamericano de Informática Jurídica, Santo Domingo República
Dominicana, 1984 [3] Guzmán Arenas, Adolfo,
Sistemas Expertos, Fundamentos y aplicaciones inmediatas en Revista
Compumundo, vol. 1, no. 5, agosto 1984 [4] Guzmán Arenas, Adolfo,
Inteligencia Artificial Aplicada en Revista Compumundo, vol. 1, no. 6,
septiembre 1984 [5] Negrete, José,
Apropiación del conocimiento e inteligencia Artificial (partes I-VII), en
revista 010, diciembre 1983-junio 1984 [6] ____, _____, revista
010, marzo 1985 [7] Ayala, G.,
Representación de conocimiento, en memoria de la 1ra conferencia
internacional “las computadoras en instituciones de educación superior”,
México, D.F. 1985 [8] Colme Rauer, Alain,
PROLOG, Lenguaje de la Inteligencia Artificial, vol. 4, num. 41 [9]
Minsky, Marvin, Papert, Seymour, PERCEPTRONS, An introduction to
computational geometry [10]
Kleene, S.C., Representation of events in nerve nets and finite automata,
Automata Studies [11]
Minsky, Marvin L., Computation, Finite and Infinite Machines, Prentice Hall [12] Hofstadter, Doublas
R., Gödel, Escher, Bach: Una eterna trenza dorada, ed. Conacyt [13] Quezada, J. Daniel, La
Lingüística Generativo-Transformacional supuestos e implicaciones, ed.
Alianza Universidad [14] Bach, Emmon, Teoría
Sintáctica, Editorial Anagrama [15] Serrano, Sebastián,
Elementos de Lingüística Matemática, Editorial Anagrama |