Modelo con RNA para Diagnosticar Hipertensión Arterial

Juan Gilberto Mateos Suárez, Arturo Huerta Martínez, Emilio González Rodríguez., Rodrigo Rodríguez Godínez

Roberto Xavier Muñoz Quirarte, Ma. Guadalupe Minero Ramales, Ricardo López Gallardo.

EMAIL: jmateos@proton.ucting.udg.mx

 

Universidad de Guadalajara, Centro Universitario de Ciencias Exactas e Ingenierías

División de Electrónica y Computación, Departamento de Electrónica

Blvd. Marcelino García Barragán No. 1421 y Calzada Olímpica

Télefono/FAX; (++52)-(0133) 3619-8471 Guadalajara Jal. México C.P. 44420

 

RESUMEN:

El trabajo consiste en desarrollar un sistema con aplicaciones en el ámbito hospitalario, para interpretar la detección biológica de personas hipertensas, clasifica y reconoce la hipertensión arterial a través de técnicas con redes neuronales artificiales (RNA). Se optimiza el cuestionario médico de problemas con la hipertensión arterial (HTA), generándose un arreglo de minimización matricial. Se hace referencia a antecedentes que datan de la década de los 40, tales como la máquina de Turing. Se especifican las principales características eléctricas de las neuronas biológicas. Se aplica una red neuronal realimentada con el método de aprendizaje para una memoria autoasociativa bidireccional (BAM). Mediante la implantación en Mathcad se realiza la simulación y modelización del arreglo en RNA que apoya a los diagnósticos en los que se involucra dicho tipo de señales biológicas.

 

I.-   Introducción.

El corazón bombea sangre a través de las arterías a todo el cuerpo, la tensión que se genera en el interior arterial se denomina presión arterial. La hipertensión arterial ó presión alta es la elevación de esta presión arriba de un límite que se considera normal (140/90 mmHg). Es la principal enfermedad crónico degenerativa y la más común causa de muertes, afecta aproximadamente al 20% de la población mundial.

 

La elevación anormal de la presión constituye un importante factor de riesgo coronario, relacionándose al 40% de los fallecimientos o muertes por enfermedades cardiovasculares. Causa lesiones en el cerebro,  en el corazón, en riñones, ojos y en toda la economía de un país.  Al medirse se anotan dos números, el mayor es la presión sistólica, corresponde a la presión del corazón al contraerse para bombear la sangre y el número menor es la presión diastólica, es la presión de la sangre en las arterias en la fase de relajamiento del corazón.

 

El problema de la hipertensión arterial potencia al presentar además uno ó más de los signos que se llaman "factores de riesgo", como son: herencia familiar, obesidad, consumo excesivo de sal y alcohol, fumadores, tensión emocional (estrés), diabetes, vida sedentaria, edad avanzada, altas tasas de colesterol directo, y/o bajo consumo de potasio y magnesio. Para un correcto diagnóstico de hipertensión, el médico ademas de la Historia clínica puede además medir varias veces la presión arterial, en diferentes condiciones de esfuerzo y en diferentes horas del día. En personas hipertensas, la variación es mayor y permanece alta la mayor parte del día, incluso en los periodos de descanso. El conocimiento actual de éste problema de salud pública a nivel mundial, obliga a buscar estrategias de detección, control y tratamiento. El presente trabajo, ”Modelo con RNA para Diagnosticar la Hipertensión Arterial”, utiliza técnicas de redes neuronales artificiales para detectar a pacientes que sufren HTA.

 

II.- Las Redes Neuronales Artificiales.

Artificial Neural Networks (ANN), son un paradigma del procesamiento de datos en inteligencia artificial, éste tema se inspira en el funcionamiento del cerebro, consiste en simular con modelos matemáticos en computadoras, las propiedades que se observan en los sistemas neuronales biológicos, el fin es obtener efectos de aprendizaje similares a los que realizan los cerebros biológicos.

 

Historia de la Inteligencia Artificial.

En 1937, el matemático inglés Alan Mathison Turing (1912-1953) publica un artículo sobre los “Números Calculables”, se considera a éste hecho el origen oficial de la informática teórica. En el artículo se introduce el concepto de la Máquina de Turing, una entidad matemática abstracta que formaliza el algoritmo y que resulta ser la precursora de las computadoras digitales. El término Inteligencia Artificial se inventa en 1956. En 1980 la historia se repite con el desafío japonés de la quinta generación, que da lugar  al auge de los “sistemas expertos”, pero que no alcanza sus objetivos, por lo que este campo sufre una nueva detención en los años noventa.

 

La primera Red Neuronal.      En 1951, el estudiante de Harvard Marvin Minsky realiza experimentos sobre óptica en el laboratorio de física y con otros desarrolla la primera máquina de redes neuronales.

 

La neurona natural.    El cuerpo celular de una neurona suma los signos entrantes de las dendritas como los signos de  numerosas sinapsis en su superficie. Una neurona particular envía impulsos a su axón si recibe la cantidad de neurotransmisores suficientes de entrada para estimular  la neurona a su nivel de umbral.

 


 

Figura 1  Estructura de una Neurona


IV.- El asociador lineal como método de aprendizaje.

Supóngase que se tienen L pares de vectores {(x1, y1), (x2, y2), ... (XL, YL)} en donde  e .  Estos vectores se denominan datos ejemplares porque utilizan asociaciones correctas. Se construye matemáticamente una memoria como ésta si se aplica la restricción adicional consistente en que los vectores xi sean un con­junto ortonormal. Se define un conjunto ortonormal mediante la relación   en donde  si i = j y si i ¹ j. Para construir una memoria asociativa interpoladora, se de­fine la función;

 

                               (4.1)

 

Si x1 es el vector de entrada, entonces F(xi) = Yi, puesto que el conjunto de vectores x es ortonormal.

 

Si el vector de entrada es distinto de uno de los ejemplares, tal como x = xi + d, entonces la salida es:

 

                                         (4.2)

en donde:

                                   (4.3)

 

Obsérvese que no existe ninguna condición en el tratamiento del asociador lineal que requiera que los vectores de entrada o de salida sean miembros del espacio de Hamming; el único requisito es que sean ortonormales. Además, obsérvese que tampoco existe ningún entrenamiento previo implícito en la definición del asociador lineal. La función que asocia “x” con “y” se define mediante la expresión matemática de la ecuación 4.1. El modelo de una BAM utiliza la aproximación de procesamiento distribuido.

V.-  La Memoria Asociativa Bidireccional (BAM)

La BAM consta de dos capas de elementos que están completamente interconectados entre capas. El caso general se ilustra en la figura siguiente.

 


Figura 1.0  La Memoria BAM

La BAM posee “n” unidades en la capa de entrada “x”, y “m” unidades en la capa de salida “y”.

Todas las conexiones entre unidades son bidireccionales, con pesos en ambos extremos.

La información va y viene de una capa a la otra, a través de estas conexiones.


 

Arquitectura de la BAM.

En la arquitectura de la BAM existen pesos que se asocian a las conexiones entre elementos de un proceso. Estos pesos se determinan por anticipado, así es posible identificar a todos los vectores de entrenamiento. Se toma el procesamiento del modelo del asociador lineal para construir la matriz de pesos. Dados L pares de vectores que constituyen al conjunto de ejemplares que deseamos almacenar, se construye la matriz:

 

                             (5.1)

 

Esta ecuación genera los pesos de las conexiones procedentes de la capa x, con destino en la capa y. Por ejemplo, el valor w23 es el peso de la conexión procedente de las tercera unidad de la capa x, con destino en la segunda unidad de la capa y. Para construir los pesos de las unidades de la capa x, sólo hay que tomar la transpuesta de la matriz de pesos, wt. Se transforma la BAM en una memoria autoasociativa construyendo la matriz de pesos en la forma siguiente:

 

     (5.2)

 

En este caso la matriz de pesos es cuadrada y simétrica.

 

Procesamiento en la BAM.

Una vez que se construye la matriz de pesos, la BAM se emplea para recordar información, (por ejemplo un numero de teléfono), al presentarse una cierta información clave (el nombre correspondiente a un numero de teléfono concreto). Si la información sólo se conoce parcialmente por anticipado, o si se tiene ruido (un timbre mal escrito, como pudiera ser <<Perec>>), la BAM es capaz de completar la información (produciendo la ortografía correcta, <<Perez>>, y el numero de teléfono correspondiente).

 

Para recordar información mediante la arquitectura BAM, se llevan a cabo los pasos siguientes:

 

1.                  Se aplica un par de vectores inicial (x0, y0) a los elementos de proceso de la BAM.

2.                  Se propaga la información de la capa “x” a la capa “y”, y se actualizan los valores de las unidades de la capa “y”.  Aunque siempre se empieza por la propagación de “x” a “y”, se puede empezar en la dirección contraria.

3.                  Se vuelve a propagar la información ya actualizada hacia la capa “x”, y se ac­tualizan las unidades que se encuentran allí.

4.                  Se repiten, 2 y 3 hasta que ya no existen cambios en las unidades de ambas capas.

 

Este algoritmo es lo que proporciona a la BAM su naturaleza bidireccional. Los términos entrada y salida se refieren a distintas magnitudes, dependen de la dirección real de la propagación. Por ejemplo, al pasar de la y a la x, el vector y se consi­dera como entrada de la red, y el vector x es la salida. Cuando la propagación se hace partiendo de x para llegar a y, sucede lo contrario. 

 

Si todo va bien, el estado final, ya estable, recuerda alguno de los ejemplares previamente empleado para construir la matriz de pesos. En este ejemplo se supone que se sabe algo acerca del vector x deseado, quizá no se sepa nada acerca del vector y, asociado, se espera que la salida final sea el ejemplar cuyo vector x1 sea el más próximo al vector de entrada original, x0, según la distancia de Hamming. Esta situación funciona bien si no se sobrecargan ejemplares a la BAM.   Si se deposita demasiada información en una BAM, se produce el fenómeno «Crosstalk» interferencia cruzada entre tramas ejemplares. La interferencia cruzada sucede si las tramas ejem­plares están muy próximas entre sí. La interacción entre estas tramas próximas dan lugar a la creación de estados estables espurios. En ese caso, la BAM se estabiliza en vectores sin sentido.

 

Matemáticas de la RAM

El procesamiento básico que realiza cada unidad de la BAM es similar al que se hace mediante un elemento general de proceso. Las unidades calculan sumas de productos de las entradas por los 4 pesos, para determinar un valor de entrada neto, en la capa y,

 

                            (5.3)

 

En donde netoy es el vector de valores de la capa y: En términos de las unidades individuales yi.

 

                   (5.4)

 

Las magnitudes n y m son las dimensiones de las capas x e y, respectivamente. El valor de salida para cada elemento de proceso depende del valor neto de la entrada, y del valor actual de salida de esa capa. El nuevo valor de y en el instante t + 1, y(t+1), esta relacionado con el valor de y en el instante t, y(t), mediante

 

                        (5.5)

 

VI.- El modelo matemático HTA de la BAM

El primer paso lo realiza el médico experto en HTA, a través de inspección en consultorio, resultados de laboratorio, interrogatorios, auscultaciones al paciente, todo con el fin de elaborar su historial clínico. Se incluyen los siguientes procedimientos:

 

  1. Interrogatorio: Hábitos alimenticios, actividad físico-deportiva, actitud ante el estrés, antecedentes familiares, adicciones, síntomas y molestias, antecedentes patológicos.

 

  1. Inspección:  Masa grasa corporal, actitud, postura, movimientos voluntarios e involuntarios, alteraciones de marcha, respiración, diaforésis, disfonías, retención de líquidos.

 

  1. Auscultación: P/A, RR, RC, pulso, peso, relación cintura-cadera, ruidos peristálticos.

Las preguntas del interrogatorio incluyen las siguientes:

 

Hábitos alimentarios: ¿Qué come Ud. en un día típico?, ¿Cuál es su platillo favorito?, ¿Cuántas comidas realiza al día?, ¿En qué porciones se sirve?, ¿Qué tipo de grasa le agrada?, ¿Como acompaña su comida?, ¿Come fuera de casa?, ¿Le apetece la comida rápida?, ¿Cual es la fruta que más consume?, ¿Se sienta al comer?

 

Actividad físico deportiva: ¿Qué deporte practica?, ¿Hace ejercicio en forma cotidiana?, ¿Cuanto dura en cada sesión?, ¿Cuándo fue la última vez que se ejercitó?, ¿Tiene un perfil médico de esfuerzos?, ¿Deja de ejercitarse por períodos mayores a un mes?

 

Actitud ante el estrés: ¿Se disgusta con facilidad?, ¿Que actividades le resultan pesado realizarlas?, ¿Tiene presión en su medio laboral?, ¿Discute con parientes sobre algún(os) tema(s)?, ¿Sufre de episodios depresivos?, ¿Se siente agredido por alguien o algo?

 

Antecedentes familiares: ¿En su familia se han detectado problemas de salud?, ¿De qué tipo?, ¿De los ya finados se determinó la causa de muerte?, ¿Hay parientes directos con algún padecimiento?

 

Adicciones: ¿Fuma Ud.?, ¿Cuantos cigarrillos o cajetillas por día?, ¿Toma bebidas alcohólicas en forma regular?, ¿Con que frecuencia y que cantidad?, ¿Alguna otra adicción, de que tipo?, ¿Come entre comidas?, ¿Siente nauseas seguido después de comer, sin causa aparente?.

 

Síntomas y molestias: ¿Tiene alguna molestia? ¿De que tipo?, ¿Padece algún tipo de dolor, donde y de que tipo?, ¿Se agita al hacer ejercicio, que tan intenso?, ¿Cómo es su periodo de sueño?,  ¿Se despierta con facilidad?

 

Antecedentes patológicos: ¿Ha estado enfermo antes, de qué?, ¿Tiene medicación actualmente?, ¿Cuándo fue su última consulta?, ¿Le han practicado algún tipo de cirugía?, ¿Toma algún medicamento alternativo sin prescripción?.

 

El siguiente paso es pasar los conocimientos en un formato para almacenarlos en la computadora; se utiliza una gráfica como sigue:

 

Figura 2, Gráfica de un experto en HTA

 

Esta gráfica indica la opinión de un experto para un paciente después de analizar su historia clínica, acerca de la HTA, como son: la presión arterial, los familiares hipertensos y el ejercicio. Las flechas con el símbolo (+) indican una relación  de incremento, por ejemplo, la presión arterial alta incrementa la HTA en el paciente, y las que tienen el símbolo (-) indican una relación de decremento, como la presión arterial normal disminuye la HTA, el paso siguiente es representar la información en una matriz:


 

Ejercicio

Presión arterial

Estrés

Alimentación

Familiares hipertensos

 

0

0

-1

0

0

Ejercicio

0

0

+1

0

0

Presión arterial

-1

+1

0

-1

+1

Estrés

0

0

-1

0

0

Alimentación

0

0

+1

0

0

Familiares hipertensos

 

Tabla 1.0  Matriz de Conocimientos.

 

Es posible empezar a proceder con una matriz de pesos “w” con todos sus elementos en cero, se llena poco a poco dándole como entradas los vectores de personas sanas, el resultado es el mismo que obtiene el experto, se muestra en la Tabla 1.0 la matriz de conocimientos que contiene los datos ejemplares.

 

Como ejemplo de aplicación, se desea utilizar el modelo de la matriz de conocimientos para determinar, si una persona es hipertensa; el primer paso es crear un vector respondiendo a las diferentes preguntas de su historial clínico:   Evaluando al primer paciente se obtiene el vector:

 

¿Realiza ejercicio constantemente? No  (0).

 

¿Padece de presión arterial anormal Si  (1).

 

¿Sufre constantemente de estrés? No (0)

 

¿Su alimentación es adecuada, incluye verduras y pocas grasas? Si (0).

 

¿Tiene familiares hipertensos? Si  (1).

 

Así se obtiene el vector (0, 1, 0, 0, 1), a continuación se aplica el éste vector según la ecuación 5.4.

 

 

Tenemos el vector resultante (0, 0, 2, 0, 0); a continuación se aplica la ecuación 5.5; en otras palabras se convierte en un vector cuyos valores sean –1 ó +1.  Así se genera la salida:

 

(0, 0, 1, 0, 0). El vector resultante predice que el paciente padece de hipertensión.

 

Evaluando al segundo paciente:

 

¿Realiza ejercicio constantemente? No  (1).

 

¿Padece de presión arterial anormal Si  (0).

 

¿Sufre constantemente de estrés? No (0)

 

¿Su alimentación es adecuada, incluye verduras y pocas grasas? Si (0).

 

¿Tiene familiares hipertensos? Si  (1)

 

Y se obtiene el vector (1, 0, 0, 0, 1) según la ecuación 5.5.

 

 

El vector resultante predice que el paciente no padece de HTA.

 

VII.- Aplicaciones

1.       Se hace referencia a antecedentes que datan de la década de los 40, (Máquina de Turing).

2.       Se especifican las principales características eléctricas de las neuronas biológicas.

3.       Se aplica un asociador lineal como método de aprendizaje para una BAM.

4.       Se muestra un cuestionario médico de personas con HTA, generándose del historial clínico un arreglo de minimización matricial, (matriz de conocimientos).

5.       Mediante la implantación en Mathcad se realiza la simulación de la RNA que apoya a los diagnósticos en los que se involucra la predicción de HTA.

 

VIII.- Bibliografía.

[1]   AIKEN, H.; BABBAGE, C.; VON NEUMAN, J., et al. Perspectivas de la revoluci¢n de los computadores. Alianza Editorial, Madrid, 197S.

 

[2]   HOPFLELD, J. J.; TANK, D. W., "Computing with neuronal circuits: a model". Science, v233 n4764: 625-633 (1986).

 

[3]   MC CULLOCH, W. S.; PITTS, W.  "A logical calculus of the ideal imanent in neuron activity". The bulletin of mathematics biophysics, The University of Chicago Press,  Diciembre 1943.

 

[4]   MINSKY, MARVIN L.; PAPER, SEYMOUR A. Perceptrons. The MIT Press, Cambridge MASS, 1988.

 

[5]   PITRAT, JACQUES, "'El nacimiento de la inteligencia artificial". Mundo Científico, v8 n53:1196-1209 (1988).

 

[6]   SANFELIU, ALBERT, "Robots inteligentes". Mundo Electrónico, n 150: 53-63 (1985).

 

[7]   SCOWN, SUSAN J., The Artificial Intelligence Experience: An Introduction. DEC 1985.

 

[8]   SHIRAI, Y.; TSUJII, J., Intelligence Artificielle. Concepts, tecniques et applications. Eyrolles, Paris, 1987.

o          

[9]   VALLE, RICARDO ET AL. Inteligencia Artificial. Introducción y situación en España. Fundesco, Madrid, 1984

 

[10]   WASSERMAN, PHILIP; SCHWARTZ, TOM, "Neural Networks". IEEE EXPERT, Invierno 1987.

 

[11]   "La Inteligencia Artificial y los Sistemas Expertos en España". IBERICA, : 142-180, Abril 1985.