Este documento describe un sistema de clasificación automática de la polaridad (positiva, negativa o neutra) de notas clínicas de evolución. Presenta el corpus utilizado, su procesamiento y etiquetado, y los pasos seguidos para la clasificación, incluyendo la selección de atributos, el manejo del desequilibrio de clases y la evaluación de clasificadores. El objetivo final es utilizar las predicciones de polaridad como entrada para un generador automático de informes de alta hospitalaria.
Panorama Sociodemográfico de México 2020: GUANAJUATO
Presentación TFG Informes de Alta Automáticos
1. Sistema de clasificación automática de la polaridad
de notas clínicas de evolución
•Departamento: Tecnologías de la Información
•Directores de los trabajos: Manuel J. Maña López , Manuel de la Villa Cordero
•Autores de los trabajos: Samuel Díaz Millán, Eduardo Acuña Coronado
1/66
Sistema para la elaboración automática de informes de alta
hospitalaria
7. Sistema de clasificación automática de la polaridad
de notas clínicas de evolución
•Departamento: Tecnologías de la Información
•Director del trabajo: Manuel J. Maña López, Manuel de la Villa Cordero
•Autor del trabajo: Samuel Díaz Millán
7/66
8. ÍNDICE
1. OBJETIVOS
2. EL CORPUS Y SU PROCESAMIENTO
3. CLASIFICACIÓN AUTOMÁTICA
4. ANÁLISIS DE RESULTADOS
5. CONCLUSIONES Y TRABAJO FUTURO
6. DEMOSTRACIÓN DEL SISTEMA
Dirigido por: Manuel J. Maña López
Autor: Samuel Díaz Millán
Departamento: Tecnologías de la Información
8/66Manuel de la Villa Cordero
9. 1. OBJETIVOS
• Creación de sistema de predicción de
polaridad.
• Predicciones resultantes como entrada para el
elaborador de informes de alta.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 9/66
10. 2. EL CORPUS Y SU PROCESAMIENTO
2.1. Elaboración del corpus
2.2. Procesamiento con FreelingMed
2.3. Etiquetado con KAF
2.4. Sistema Gestor de Base de Datos
2.5. Modelo entidad-relación
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 10/66
11. 2.1. ELABORACIÓN DEL CORPUS
• Disponemos de 929 notas clínicas de evolución
de 161 pacientes anónimos durante 2015.
• Provienen del Hospital Virgen del Rocío de Sevilla.
• Pacientes con al menos 2 evoluciones.
• Casos de insuficiencia cardíaca, síndrome
coronario o EPOC.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 11/66
12. 2.1. ELABORACIÓN DEL CORPUS
Anonimización del personal sanitario:
//ESPAÑA ESPAÑA, MANUEL/ DR GARCÍA.
Subjetivamente mejor. Respiración nasal, sin utilización de prensa abdominal, habla
fluida, no disnea. Tolera el decúbito. No fiebre, no otra sintomatología.
GUARDIA RESPIRAOTRIO (GARCÍA)
En la tarde de ayer repitió nuevo episodio de disnea intensa con trabajo respiratorio y
uso de musculatura abdominal, evidenciándose en la exploración crpitantes en ambos
hemitórax hasta tercio medio. Por lo que se reinicia nuevamente VMNI con parámetros
IPAP 15/EPAP 5.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 12/66
13. 2.1. ELABORACIÓN DEL CORPUS
• Para etiquetar, 3 anotadores:
Anotador 1, Anotador 2 y Juez.
• Anotadores 1 y 2 siguen:
1. Lectura comprensiva de una nota.
2. Buscar cambio o mantenimiento en el estado.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 13/66
14. 2.1. ELABORACIÓN DEL CORPUS
3. Etiquetar la nota con uno de estos valores.
Signo Significado Ejemplo
+ Evolución favorable, mejoría “Continúa con evolución favorable, eupneica en reposo
tolerando la deambulación y el habla sin O2
suplementario. No refiere más episodios de disnea y pasa
mejor las noches, aunque refiere que se encuentra muy
nerviosa. No deposiciones desde el ingreso.”
0 Estabilidad, sin signos palpables
de mejoría ni de empeoramiento
“Aceptablemente estabilizada. Asintomática. Mantiene
buenas diuresis. En control analítico previo al alta:
creatinina de 1,21.Hb. de 9.2.“
- Evolución negativa,
empeoramiento
“Durante el día con glucemias de 400-247-339-375 mg/dl y
actualmente con 470 mg/dl. Mal control con pauta
subcutánea por lo que iniciamos perfusión iv de insulina a 6
UI/h.”
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 14/66
15. 2.1. ELABORACIÓN DEL CORPUS
4. Copiar las expresiones que sustentan el juicio
de la polaridad.
Ejemplo Motivación
“Continúa con evolución favorable, eupneica en reposo
tolerando la deambulación y el habla sin O2 suplementario. No
refiere más episodios de disnea y pasa mejor las noches,
aunque refiere que se encuentra muy nerviosa. No deposiciones
desde el ingreso.”
evolución favorable; eupneica;
tolerando la deambulación; pasa
mejor las noches
“Aceptablemente estabilizada. Asintomática. Mantiene buenas
diuresis. En control analítico previo al alta: creatinina de
1,21.Hb. de 9.2. “
Aceptablemente estabilizada
“Durante el día con glucemias de 400-247-339-375 mg/dl y
actualmente con 470 mg/dl. Mal control con pauta subcutánea
por lo que iniciamos perfusión iv de insulina a 6 UI/h.”
Mal control
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 15/66
16. 2.1. ELABORACIÓN DEL CORPUS
• El juez sigue el siguiente procedimiento:
+ +
- 0 ++
0
–
+
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 16/66
17. 2.1. ELABORACIÓN DEL CORPUS
Coincidencias y discrepancias en el juicio de la
polaridad:
Notas + 0 -
Coincidencias 729 (78,47%) 424 (45,64%) 151 (16,25%) 154 (16,58%)
+ 0 ó 0 + 0 - ó - 0 + - ó - +
Discrepancias 200 (21,53%) 84 (9,04%) 64 (6,89%) 52 (5,60%)
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 17/66
18. 2.1. ELABORACIÓN DEL CORPUS
Distribución de polaridades:
455
288
186
Polaridades
+ (49%)
0 (31%)
– (20%)
Total: 929 notas
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 18/66
19. 2.2. PROCESAMIENTO CON FREELINGMED
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 19/66
Freeling
Diccionarios
médicos
FreelingMed KAF
20. 2.3. ETIQUETADO CON KAF
• Text
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 20/66
21. 2.3. ETIQUETADO CON KAF
• Term y References
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 21/66
22. 2.3. ETIQUETADO CON KAF
• Term y References
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 22/66
23. 2.3. ETIQUETADO CON KAF
• Chunks
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 23/66
24. 2.3. ETIQUETADO CON KAF
• Dependences
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 24/66
25. 2.4. SISTEMA GESTOR DE BASE DE DATOS
• Para almacenar la información de KAF
necesitamos una base de datos.
• Apache Derby.
• Basado en estándares SQL, Java y JDBC
Permite una buena integración en Java.
• Permite incrustarse en la aplicación.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 25/66
27. 3. CLASIFICACIÓN AUTOMÁTICA
3.1. Escenario de experimentación
3.2. Preproceso de datos y atributos
3.3. Representación de los datos
3.4. Selección de atributos
3.5. Desequilibrio de clases
3.6. Selección de clasificadores
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 27/66
28. 3.1. ESCENARIO DE EXPERIMENTACIÓN
• División del corpus: 2/3 – 1/3
• Mantenemos la proporción de clases:
Estratificación
COLECCIÓN COMPLETA (929)
TRAINING (620) TEST (309)
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 28/66
29. 3.2. PREPROCESO DE DATOS Y ATRIBUTOS
• Eliminación de símbolos aislados.
• Pasar a minúscula todas la palabras.
... .. . , ; : < > [ ]
( ) + - / * ¡ ! ¿ ?
| @ “ · # % € $ & =
‘ ‘’ ` { }
Diuresis diuresis
Historial historial
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 29/66
30. 3.2. PREPROCESO DE DATOS Y ATRIBUTOS
• Eliminación de palabras vacías.
Posición Palabra Ocurrencias
1 de 3190
2 en 1558
3 con 1545
4 la 1326
5 y 1272
6 a 1031
7 se 834
8 el 821
9 que 721
10 por 597
11 ha 341
12 al 311
13 para 264
Posición Palabra Ocurrencias
14 desde 217
15 los 187
16 su 168
17 las 156
18 lo 148
19 esta 129
20 mi 114
21 aunque 109
22 hasta 105
23 un 103
24 durante 96
25 una 95
26 es 92
Posición Palabra Ocurrencias
27 si 91
28 tras 89
29 está 85
30 más 85
31 pero 82
32 muy 82
33 le 82
34 hace 72
35 e 72
36 como 67
37 tiene 66
38 o 53
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 30/66
31. 3.3. REPRESENTACIÓN DE DATOS
• Herramienta de minería de datos Weka
• Para experimentar con Weka ARFF
KAF Sistema ARFF WEKA Modelo
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 31/66
32. 3.3. REPRESENTACIÓN DE DATOS
Pesos
Binario Frecuencia TF TF-IDF
0 / 1 n ocurrencias
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 32/66
33. 3.4. SELECCIÓN DE ATRIBUTOS
• Existen miles de atributos por cada ARFF, por
tanto, posibilidad de ruido en los datos.
• Solución Selector de atributos Infogain
• Empleamos 3 porcentajes de Infogain:
– 10%
– 5%
– 1%
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 33/66
34. 3.5. DESEQUILIBRIO DE CLASES
• Corpus no equilibrado.
• Algunos clasificadores pueden verse afectados.
+ 0 –
304 192 124
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 34/66
35. 3.5. DESEQUILIBRIO DE CLASES
• SpreadSubsampling:
– 1
– 1.5
– 2
124 124 124
186 186 124
248 192 124
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 35/66
304 192 124
Conjunto original:
36. 3.5. DESEQUILIBRIO DE CLASES
• Resample:
– 1
– 0.75
– 0.5
206 206 206
231 203 186
255 199 165
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 36/66
304 192 124
Conjunto original:
37. 3.5. DESEQUILIBRIO DE CLASES
• SMOTE:
– 25%
– 50%
304 192 155
304 192 186
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 37/66
304 192 124
Conjunto original:
38. 3.6. SELECCIÓN DE CLASIFICADORES
• J48 – Árbol de decisión
• NaiveBayes – Teorema de Bayes
• SMO – Máquina de Vector Soporte
• IBk – Aprendizaje perezoso
• JRip – Reglas de decisión
• RandomForest – Bagging
• AdaBoost – Boosting
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 38/66
39. 4. ANÁLISIS DE RESULTADOS
4.1. Introducción
4.2. Discusión de resultados
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 39/66
41. 4.1. INTRODUCCIÓN
Realizamos un total de 308 pruebas:
1. Motivaciones: 84 pruebas.
1.1. Colección completa: 7 algoritmos x 4 pesos = 28 pruebas.
1.2. Colección completa y sampling:
7 parejas algoritmo-peso x 8 combinaciones de sampling = 56 pruebas.
2. Palabras: 112 pruebas.
2.1. Colección completa: 7 algoritmos x 4 pesos = 28 pruebas.
2.2. Infogain: 7 algoritmos x 4 pesos x 3 porcentajes de atributos = 84 pruebas.
3. Términos: 112 pruebas.
3.1. Colección completa: 7 algoritmos x 4 pesos = 28 pruebas.
3.2. Infogain: 7 algoritmos x 4 pesos x 3 porcentajes de atributos = 84 pruebas.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 41/66
42. 4.2. DISCUSIÓN DE RESULTADOS
Comparamos los mejores resultados de las
pruebas con los de los anotadores.
Resultados + 0 -
Anotador 1
+ 0,922 436 8 11
0 0,813 45 211 32
- 0,835 10 12 164
Anotador 2
+ 0,928 440 9 6
0 0,801 44 203 41
- 0,844 9 7 170
Resultados + 0 -
Motivaciones
SMO Binario ó
AdaBoost (SMO Binario)
+ 0,8 128 16 7
0 0,576 29 49 18
- 0,641 12 9 41
Palabras
AdaBoost
(SMO tf-idf) 100%
+ 0,822 132 14 5
0 0,639 31 61 4
- 0,66 7 20 35
Términos
NaiveBayes tf-idf ó
AdaBoost
(NaiveBayes tf-idf) 5%
+ 0,774 113 33 5
0 0,604 21 64 11
- 0,632 7 19 36
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 42/66
43. 4.2. DISCUSIÓN DE RESULTADOS
• Valores de Medida-F alejados de los expertos
sin embargo, marcan un buen punto de partida.
• Peores clasificadores: IBk, JRip, RandomForest.
• Mejores clasificadores: J48, NaiveBayes, SMO y
AdaBoost.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 43/66
44. 4.2. DISCUSIÓN DE RESULTADOS
• Mejores pesos: Binario y tf-idf.
• Mejor atributo: palabras.
• Infogain positivo para los términos y negativo
para las palabras.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 44/66
45. 4.2. DISCUSIÓN DE RESULTADOS
• Sampling mejora algunos resultados de las
motivaciones.
• SpreadSubsampling, mejor valor: 2.
• Resample, resultados similares.
• SMOTE, mejor valor: 25%.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 45/66
46. 5. CONCLUSIONES Y TRABAJO FUTURO
Como conclusiones:
• Los resultados son un buen punto de partida.
• Técnicas de Infogain y sampling no son críticas.
• Objetivos cumplidos.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 46/66
47. 5. CONCLUSIONES Y TRABAJO FUTURO
Como trabajo futuro:
• Ajustar parámetros de los clasificadores.
• Emplear otros clasificadores.
• Análisis de texto más complejo.
• Trabajar con un corpus mayor.
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 47/66
48. 6. DEMOSTRACIÓN DEL SISTEMA
SistemaARFF
Modelo
Nota
clínica
Polaridad
1: OBJETIVOS
2: EL CORPUS Y SU PROCESAMIENTO
3: CLASIFICACIÓN AUTOMÁTICA
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 48/66
49. Sistema para la elaboración automática de informes de
alta hospitalaria
49/66
•Departamento: Tecnologías de la Información
•Directores del trabajo: Manuel J. Maña López, Manuel de la Villa Cordero
•Autor del trabajo: Eduardo Acuña Coronado
50. 50/66
ÍNDICE
Dirigido por: Manuel J. Maña López
Autor: Eduardo Acuña Coronado
Departamento: Tecnologías de la Información
1. OBJETIVOS
2. ENTRADA DEL SISTEMA
3. ELABORACIÓN DEL RESUMEN
4. ANÁLISIS DE RESULTADOS
5. CONCLUSIONES Y TRABAJO FUTURO
6. DEMOSTRACIÓN DEL SISTEMA
Manuel de la Villa Cordero
51. 1. OBJETIVOS
• Recoger los documentos polarizados.
• Generar un resumen automático.
• Crear un resumen manual.
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 51/66
52. 2. ENTRADA DEL SISTEMA
• 929 notas clínicas con su polaridad de 161
pacientes.
• 84 resúmenes cortos:
42 resúmenes x 2 anotadores.
• 84 resúmenes largos:
42 resúmenes x 2 anotadores.
• Resúmenes generados con una aplicación.
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 52/66
54. 3. ELABORACIÓN DEL RESUMEN
3.1. Determinación de plantilla
3.2. Selección de sentencias
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 54/66
55. 3.1. DETERMINACIÓN DE PLANTILLA
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 55/66
56. 3.2. SELECCIÓN DE SENTENCIAS
Selección de
sentencias
Manual Automática
TextRank*
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 56/66
57. 3.2. SELECCIÓN DE SENTENCIAS
O3
O1
O4
O2
O5
disnea
Algoritmo TextRank*
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 57/66
58. 3.2. SELECCIÓN DE SENTENCIAS
O3
O1
O4
O2
O5
1º
2º
3º
4º
5º
Algoritmo TextRank*
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 58/66
59. 4. ANÁLISIS DE RESULTADOS
4.1. ROUGE
4.2. Discusión de resultados
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 59/66
60. 4.1. ROUGE
• Usamos ROUGE para analizar los resúmenes.
• Usa n-gramas para indicar el solapamiento
entre términos.
• Nos devuelve valores de precisión, cobertura y
medida-F.
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 60/66
61. 4.1. ROUGE
ROUGE
Resúmenes del
sistema
Resúmenes de
los expertos
Resultados
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 61/66
62. 4.2. DISCUSIÓN DE RESULTADOS
Realizamos un total de 336 pruebas:
1. Resúmenes cortos: 168 pruebas 42 resúmenes cortos x 4 tipos de n-grama.
2. Resúmenes largos: 168 pruebas 42 resúmenes largos x 4 tipos de n-grama.
Resumen del
paciente
Cobertura media Precisión media Medida F media
Corto 1-Grama 0,197 0,252 0,195
Corto 2-Grama 0,138 0,145 0,127
Corto 3-Grama 0,117 0,129 0,111
Corto 4-Grama 0,097 0,102 0,090
Largo 1-Grama 0,246 0,340 0,252
Largo 2-Grama 0,178 0,222 0,176
Largo 3-Grama 0,172 0,208 0,166
Largo 4-Grama 0,169 0,186 0,156
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 62/66
63. 5. CONCLUSIONES Y TRABAJO FUTURO
Como conclusiones:
• Ahorro en tiempo.
• Resultados prometedores.
• Discrepancia de criterios.
• Pérdida de información.
• Oraciones inconexas.
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 63/66
64. 5. CONCLUSIONES Y TRABAJO FUTURO
Posibles trabajos futuros:
• Resumen abstractivo.
• Usar técnicas de aprendizaje automático.
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 64/66
65. 6. DEMOSTRACIÓN DEL SISTEMA
1: OBJETIVOS
2: ENTRADA DEL SISTEMA
3: ELABORACIÓN DEL RESUMEN
4: ANÁLISIS DE RESULTADOS
5: CONCLUSIONES Y TRABAJO FUTURO
6: DEMOSTRACIÓN DEL SISTEMA 65/66
Sistema
Notas del
paciente
polarizadas
Resumen
66. Sistema de clasificación automática de la polaridad
de notas clínicas de evolución
•Departamento: Tecnologías de la Información
•Directores de los trabajos: Manuel J. Maña López , Manuel de la Villa Cordero
•Autores de los trabajos: Samuel Díaz Millán, Eduardo Acuña Coronado
66/66
Sistema para la elaboración automática de informes de alta
hospitalaria
Notas del editor
Procedemos a explicar la motivación que nos lleva a realizar juntos la exposición de nuestros TFG.
La idea que engloba a ambos trabajos surge en el marco del proyecto BIDAMIR, perteneciente a la Universidad de Huelva.
Durante las conversaciones con los médicos, éstos trasladaron un problema a la hora de elaborar los informes de alta de pacientes, ya que es una tarea intelectualmente compleja y de una duración considerable, sobre todo en pacientes con estancias de semanas.
Durante la estancia es más que probable que el paciente sea visto por varios médicos y que todas las notas clínicas de evolución no sean del mismo autor e incluso que el médico encargado de redactar el informe de alta no haya visto nunca al paciente. Por lo que deberá realizar un resumen del progreso del paciente con información que ni siquiera es suya.
Parte 1: pondremos como ejemplo un doctor que deba revisar 15 notas de evolución.
Parte 2: a día de hoy, el médico sólo tiene dos opciones:
bien seleccionar todas las notas e ir eliminando toda la información irrelevante,
o bien partir de una hoja en blanco e ir escribiendo la información más importante.
Parte 3: el tiempo requerido para este proceso ronda entre los 30 y los 50 minutos, demasiado para el ambiente estresante de un hospital. Necesitamos una herramienta capaz de solventar este problema.
Como informe de alta proponemos crear una plantilla que indique los sucesos de mejora así como las complicaciones durante el ingreso.
Para asistir en la redacción del informe, necesitamos conocer el estado de salud que indican las notas de evolución, a este estado de salud lo llamaremos polaridad.
Partiendo de esta motivación, se decidió separar nuestra solución en 2 funcionalidades principales: un sistema de clasificación automática de polaridad y un sistema de elaboración automática de informes de alta.
Comenzaremos por exponer el sistema para predecir la polaridad de las notas de evolución.
Haremos un recorrido de todas las tareas y procedimientos que han sido realizados hasta la finalización del trabajo. Desde cómo hemos obtenido los datos iniciales y las transformaciones que se les han aplicado, pasando por la fase de pruebas y las conclusiones que hemos obtenido de los resultados, hasta una demostración de la funcionalidad del sistema mediante su interfaz gráfica.
Los objetivos del presente trabajo son:
Primero, la creación de un sistema que realice unas predicciones sólidas sobre el estado de salud de un paciente respecto a su evolución.
Segundo, que dichas predicciones formen parte fundamental de la entrada para el sistema de elaboración automática de informes de alta para así realizar una diferenciación de los sucesos de mejora y empeoramiento de cara a realizar el informe.
Durante el punto 2, hablaremos sobre cómo hemos obtenido las notas de evolución y su tratamiento hasta ser almacenadas en nuestro sistema.
Desde el Hospital Virgen del Rocío de Sevilla se nos han concedido 929 notas de evolución referidas a casos reales de 161 pacientes anónimos y están fechadas entre enero y septiembre de 2015. Estos pacientes han presentado cambios en su estado de salud al menos 2 veces.
Aunque los pacientes estaban anonimizados, en las notas aún quedaban referencias al personal sanitario y a lugares concretos. Así que para preservar el anonimato y ya que no son relevantes, dichas referencias fueron eliminadas.
Para etiquetar el corpus disponemos de 3 anotadores expertos en el campo de la biomedicina: Anotador 1, Anotador 2 y Juez. Los dos primeros siguen de manera independiente el siguiente procedimiento:
Primero, una lectura comprensiva de una nota clínica de evolución aislada. Se les presentan desordenadas para que se centren en la información que contiene la nota, sin el contexto de las adyacentes.
En segundo lugar, buscar expresiones relevantes que indiquen un cambio o mantenimiento en el estado de salud del paciente.
3. El siguiente paso es etiquetar la nota según la evolución del paciente. Si el paciente goza de una mejoría se etiquetará con un “+”, si mantiene una estabilidad se etiquetará con un “0” y si sufre un empeoramiento se etiquetará con un “-”. Esto es a lo que llamamos polaridad.
4. Por último, los anotadores deberán copiar las expresiones que han determinado el juicio de la polaridad de la forma que se observa en la tabla. Estas expresiones es a lo que llamamos motivación.
Sin embargo, el procedimiento que sigue el juez es diferente:
Si ambos anotadores coinciden en el juicio de la polaridad, el juez no interviene y la nota queda etiquetada con la coincidencia.
Si ambos anotadores difieren en su juicio, el juez es quien decide la polaridad, y lo decide en base al texto de la evolución, las polaridades que eligieron los anotadores y las motivaciones que les llevaron a ese juicio. Destacar que el juez puede estar de acuerdo con uno de los anotadores o diferir de ambos.
En esta tabla podemos observar la cantidad de notas y los porcentajes de coincidencia y discrepancia de ambos anotadores. Podríamos decir que en aproximadamente 4 de cada 5 notas coinciden y observando aquellas en las que no, el menor número de discrepancias se obtiene cuando ambos anotadores etiquetan polaridades opuestas.
En esta gráfica podemos ver el resultado final del proceso de etiquetado. Se observa que existe una mayoría de notas positivas, que por otra parte, es la situación deseable en los pacientes que ingresan en un hospital.
Una vez etiquetado nuestro corpus, comenzamos el proceso para almacenar la información de las notas en nuestro sistema.
Para tratar las notas de evolución usaremos FreelingMed, el cuál combina Freeling, que es una suite de procesamiento del lenguaje natural desarrollado por la Universidad Politécnica de Cataluña, unido a diccionarios médicos UMLS.
El motivo de su uso es la falta de estos recursos en español y aún más cuando se trata de términos biomédicos.
Cada nota de evolución procesada con FreelingMed dará lugar a un archivo KAF.
KAF representa el análisis sintáctico y semántico del lenguaje natural, y está desarrollado en XML.
A continuación, describiremos la estructura de un archivo KAF.
El bloque text contiene todas las palabras separadas de la nota de evolución.
El bloque term contiene las palabras en su forma canónica y cada término puede estar formado por más de una palabra como se observa en el atributo lemma y en las etiquetas target.
Si son términos clínicos, aparecerán referencias a los diccionarios médicos.
El bloque chunk contiene los sintagmas nominales.
El bloque dependences contiene las relaciones funcionales entre los términos.
Toda esta información que nos ofrece KAF debería estar siempre accesible y manipulable, es por ello que hemos diseñado e integrado una base de datos en nuestro sistema capaz de albergar los archivos KAF.
Como Sistema Gestor de Base de Datos hemos elegido Apache Derby ya que es un gestor muy ligero, de apenas 4 MB de tamaño y está basado en los estándares SQL, Java y JDBC por lo que permite integrarlo en nuestro sistema sin recurrir a procesos externos. A continuación, mostraremos el diagrama del modelo entidad-relación resultante.
Vemos que un documento o nota clínica está anotada por las motivaciones y las polaridades que decidieron los anotadores además de estar compuesta por palabras, de éstas se obtienen los términos y la información relacionada con ellos como las referencias médicas.
Durante el punto 3, hablaremos sobre las técnicas que aplicamos a la información obtenida de nuestra base de datos.
De cara a realizar las pruebas, necesitamos crear dos subconjuntos del corpus, uno para entrenamiento de los clasificadores y otro de prueba. La proporción elegida para la división ha sido de 2/3 – 1/3 respectivamente ya que entra dentro de una división normal y así tenemos 2 notas de entrenamiento para cada una de prueba.
Según vimos en la gráfica de la distribución de polaridades, existía un desequilibrio entre ellas. Se ha seguido un proceso de estratificación para mantener la proporción en ambos subconjuntos.
Con el objetivo de que los clasificadores obtengan datos de calidad, decidimos eliminar el ruido que provocan ciertos datos extraídos de las notas.
Para ello, eliminamos los símbolos aislados así como transformamos todas las palabras a minúscula dado que realmente en ambos casos no aportaban información.
Además, decidimos eliminar las palabras vacías, que son aquellas que no ofrecen información alguna. Pero en lugar de utilizar una lista de palabras vacías genérica, optamos por crear nuestra propia lista.
Decidimos que una palabra podría considerarse vacía si se utilizaba en al menos 50 ocasiones. De las 129 palabras que obtuvimos, fue necesario examinar individualmente si carecían de significado en nuestro contexto. Palabras como disnea o edema se utilizaron cientos de veces en las notas pero aunque fuesen muy comunes, tenían gran relevancia. Aquí vemos la lista final de palabras vacías, compuesta principalmente por preposiciones y artículos.
Para representar los datos de cara a los clasificadores utilizamos la herramienta de minería de datos Weka. Para trabajar con Weka necesitamos transformar la información de nuestro sistema en archivos ARFF que se componen de atributos e instancias.
Como atributos hemos utilizado las palabras de las motivaciones, las palabras de las notas de evolución y los términos asociados a las palabras de las notas.
Como instancias hemos utilizado las notas de la evolución.
En la figura vemos el proceso que ha seguido la información de las notas a través de nuestro trabajo.
Para nuestra fase de pruebas utilizamos 4 pesos para los atributos:
Binario: indica si el atributo aparece en la nota o no.
Frecuencia: indica el número de apariciones del atributo en la nota.
tf: indica el número de apariciones del atributo en la nota escalado logarítmicamente.
tf-idf: aumenta según el número de ocurrencias y se compensa en base al número de notas en las que aparece.
Dado que se pueden llegar a tener hasta 5000 atributos por cada ARFF aun eliminando atributos que no aportaban información, es posible que todavía existan atributos que dificulten la clasificación de las notas, por ejemplo, atributos que sólo aparezcan unas cuantas veces en todo el corpus. Por esta razón realizaremos una selección de los atributos más prometedores mediante Infogain, que mide la ganancia de información para definir la clase.
Para las pruebas, optamos por experimentar con el 10%, 5% y 1% de los atributos más relevantes.
Sabemos que las polaridades de nuestro corpus no están equilibradas, este desequilibrio puede afectar a las predicciones de algunos clasificadores. Por esta razón, empleamos 3 métodos de sampling o muestreo.
En la gráfica observamos la proporción del conjunto de entrenamiento, la tomaremos como referencia para comparar los cambios.
SpreadSubsampling reduce el número de instancias de las clases en relación a la clase con menor número de instancias y a un parámetro. Ajustamos ese parámetro en 3 valores:
1: todas las clases tienen el mismo número de instancias que la clase negativa.
1.5: las clases tienen como máximo 1.5 veces el número de instancias negativas.
2: las clases tienen como máximo 2 veces el número de instancias negativas.
Resample modifica el número de instancias de las clases en relación a un porcentaje del número de instancias original menos la media de instancias por clase en valor absoluto. Ajustamos ese porcentaje en 3 valores.
1: todas las clases tienen el mismo número de instancias, que es la media de instancias por clase.
0.75: la diferencia entre el número de instancias original y la media de instancias por clase se reduce en un 75% para todas las clases.
0.5: la diferencia entre el número de instancias original y la media de instancias por clase se reduce en un 50% para todas las clases.
|% n instancias – media(instancias*clase)|
SMOTE aumenta el número de instancias de la clase minoritaria en relación a un porcentaje. Ajustamos ese porcentaje en 2 valores:
25%: el número de instancias negativas aumenta en un 25%.
50%: el número de instancias negativas aumenta en un 50%.
Aquí mostramos nuestra selección de 7 clasificadores. Todos ellos utilizan distintos enfoques para resolver nuestro problema de clasificación de la polaridad y además son estándares en los campos del aprendizaje automático y la medicina.
Durante el punto 4, hablaremos sobre la distribución de las pruebas, además de comentar sus resultados.
En la imagen, vemos una descripción gráfica de las medidas básicas. La medida que hemos elegido para valorar los resultados es la Medida-F ya que unifica la información que ofrecen la precisión y la cobertura.
La fase de pruebas la formaron 308 pruebas individuales. Se separaron en 3 grandes bloques según el tipo de atributo: para las motivaciones se realizaron 84 pruebas y 2/3 partes de ellas implicaron el uso de sampling, tanto para las palabras como los términos se realizaron 112 pruebas de las cuales ¾ partes implicaron el uso de la selección de atributos.
En estas dos tablas, presentamos a la izquierda los resultados obtenidos por los anotadores 1 y 2 tratados como si fueran clasificadores y a la derecha los mejores resultados para cada tipo de atributo. Observando ambas tablas podemos comenzar a sacar conclusiones sobre los resultados.
El mejor resultado de todas las baterías de pruebas lo ha conseguido la combinación de Palabras con AdaBoost de SMO tf-idf utilizando el 100% de los atributos.
De las 3 clases, la mejor clasificada ha sido la clase positiva debido a que contenía un mayor número de instancias, que como ya comentamos, es una situación deseable en un hospital.
También observamos que tanto la clasificación humana como la clasificación automática tienen mayor facilidad para clasificar los casos positivos y clasifican con eficacia pareja los casos neutros y negativos. Además, ambos tipos de clasificadores tienen mayor facilidad para errar en polaridades adyacentes.
Respecto a los mejores valores de la Medida-F, aunque algo alejados de los expertos, establecen un buen punto de partida para posteriores investigaciones.
Los clasificadores que desaconsejamos que se vuelvan a emplear para este trabajo son IBk, JRip y RandomForest. En cambio, aquellos que han mostrado resultados consistentes durante la fase de pruebas son J48, NaiveBayes, SMO y AdaBoost.
Los mejores pesos han resultado ser Binario y tf-idf, curiosamente, tanto el peso más simple como el más complejo.
Los mejores atributos han resultado ser los formados por las palabras de la evolución.
El uso de Infogain como selector de atributos sólo ha resultado positivo para los términos, no aconsejamos emplearlo de nuevo para las palabras.
El uso de sampling ha conseguido mejorar algunos resultados de las motivaciones, aunque sin llegar a conseguir el mejor. En cuanto a los métodos, el mejor valor para SpreadSubsampling ha sido 2, que es cuando más se acercaba a la proporción original. Todos los valores de Resample han obtenido resultados similares y en cuanto a SMOTE, obtiene mejores resultados con su valor 25%, esto puede deberse a que al aumentar de forma artificial las instancias negativas un 50%, produzca ruido en los nuevos datos.
Como conclusiones del trabajo realizado, decir que los resultados que hemos obtenido son bastante buenos y marcan una base para futuros desarrollos.
Hemos visto que las técnicas de selección de atributos y de muestreo no son claves para obtener unos buenos resultados.
Y además, podemos afirmar que los objetivos marcados al inicio se han logrado: hemos conseguido construir un sistema de clasificación automática de la polaridad de notas clínicas de evolución y con unos resultados lo suficientemente buenos como para que sirvan de entrada para el sistema elaborador de informes de alta.
Respecto al trabajo futuro existen varias opciones para intentar mejorar resultados.
En lugar de utilizar la configuración base, se podrían modificar los parámetros de los clasificadores hasta alcanzar el punto óptimo.
Probar más clasificadores, ya sean con los mismos enfoques que los empleados en el trabajo u otros distintos.
Realizar un análisis de texto más profundo, por ejemplo teniendo en cuenta las relaciones entre las palabras y las negaciones.
Por último, nuestro corpus es de un tamaño considerable, pero si se pudiera contar con un mayor número de documentos, sería beneficioso para mejorar los resultados.
Para finalizar vamos a mostrar cómo el sistema clasifica una nota, para ello, necesitamos un modelo generado por un clasificador y peso, el ARFF empleado para generar dicho modelo y una nota a evaluar. Con todo ello nuestro sistema determinará una polaridad para la nota.
Ahora procedemos a exponer el sistema generador de informes de alta.
Comenzaremos explicando la entrada de nuestro sistema, continuaremos con el procedimiento para generar resúmenes seguido de un análisis de resultados.
Terminaremos hablando de las valoraciones finales de nuestro trabajo, además de una demostración del mismo.
Nuestro objetivo principal será el de recoger los documentos clínicos ya polarizados, usaremos esta información para generar un resumen automático. También otorgamos la posibilidad al usuario de crear un resumen manual.
De la misma forma que en el caso de mi compañero, tenemos las mismas notas clínicas (929), pero ya polarizadas. Además, disponemos de 84 resúmenes cortos , 42 pacientes con resumen x 2 anotadores y 84 largos.
Los resúmenes cortos y largos tendrán el 10 y 20% del número total de sentencias respectivamente.
Dichos resúmenes fueron realizados por expertos, usando una aplicación de mi autoría, proporcionada por la Universidad de Huelva.
Aquí tenemos una captura de la aplicación, en la cual vemos las notas de evolución de un paciente distribuidas por pestañas, como podemos apreciar, cada pestaña tiene un color determinado por la polaridad y abajo vemos las oraciones de las que se compone la nota seleccionada (en gris oscuro).
A continuación veremos el proceso de generación del resumen.
Aquí tenemos la plantilla de un resumen, en el que organizamos y separamos las oraciones positivas y las negativas.
Como mencionamos anteriormente, el usuario podrá generar un resumen, bien con las oraciones que él mismo desee, o bien, generando un resumen automático. Para este último caso usaremos una versión del algoritmo TextRank.
Parte 1: este algoritmo consiste en convertir las oraciones de un mismo paciente en nodos de un grafo.
Parte 2: las aristas se crearán si coincide un término clínico entre los nodos.
Al final ordenaremos las oraciones en función de los nodos con más conexiones.
A continuación explicaremos ROUGE y haremos una discusión de los resultados.
Usamos ROUGE para comparar los resúmenes.
ROUGE usa n-gramas para indicar el solapamiento o conjuntos de palabras coincidentes con los del sistema.
Como resultado tendremos valores de precisión, cobertura y medida-f.
ROUGE recibe dos carpetas, una con los resúmenes del sistema y otra con los resúmenes generados por los expertos (o ‘gold standard’), dicha aplicación nos devolverá los resultados.
Después de varios experimentos con distintos valores de n para el n-grama y los dos tipos de resúmenes de los que disponemos, realizamos estadísticas medias de cobertura, precisión y medida-f.
Destacamos que los resultados no son muy buenos, aunque mejoran en el caso de los resúmenes largos al disponer de más margen para incluir un número mayor de oraciones.
Al aumentar el valor n del n-grama vemos que los resultados empeoran por el hecho de que es más difícil que coincidan conjuntos de palabras mayores.
Como conclusiones destacamos:
Ahorro en costes temporales, tanto en resúmenes automáticos como manuales.
Vemos que los resultados, aun no siendo los mejores, son prometedores. Además, nos pueden servir de baseline para futuros proyectos.
La discrepancia de criterios entre los expertos y el sistema, por otro lado, cabe destacar la pérdida de información sobre la progresión del paciente a la hora de generar el resumen.
También nos encontramos con resúmenes con oraciones inconexas al no estar escritas de forma consecutiva en el texto original.
Como trabajos futuros podemos realizar distintas tareas:
Para solucionar el problema de las oraciones inconexa, estaría bien usar en un futuro un resumen abstractivo. Ya que usaríamos expresiones del lenguaje natural en lugar de simplemente extractos del texto original.
Por otro lado, está la posibilidad de emplear técnicas de aprendizaje automático, ya que, a veces, no sabemos con seguridad qué palabras serán importantes para un resumen y el hecho de usar estos algoritmos nos podría reportar unos mejores resultados.
A continuación realizaremos una demostración del sistema.
Procedemos a explicar la motivación que nos lleva a realizar juntos la exposición de nuestros TFG.