Estado: archivado. El código se proporciona AS-IS sin actualizaciones esperadas. Desafortunadamente, no tengo el tiempo personal para dedicarme a mantener este repositorio/responder a los problemas, ni acceso al conjunto de datos MIMIC, aunque espero que el código del modelo y las divisiones de datos aún puedan ser útiles para la comunidad.
Código para la predicción explicable en papel de códigos médicos del texto clínico.
Otras versiones también pueden funcionar, pero las enumeradas son las que he usado
Para comenzar, primero edite constants.py para señalar los directorios que sostienen sus copias de los conjuntos de datos MIMIC-II y MIMIC-III. Luego, organice sus datos con la siguiente estructura:
mimicdata
| D_ICD_DIAGNOSES.csv
| D_ICD_PROCEDURES.csv
| ICD9_descriptions (already in repo)
└───mimic2/
| | MIMIC_RAW_DSUMS
| | MIMIC_ICD9_mapping
| | training_indices.data
| | testing_indices.data
└───mimic3/
| | NOTEEVENTS.csv
| | DIAGNOSES_ICD.csv
| | PROCEDURES_ICD.csv
| | *_hadm_ids.csv (already in repo)
Los archivos MIMIC-II se pueden obtener de este repositorio.
Ahora, asegúrese de que su ruta de Python incluya el directorio base de este repositorio. Luego, en el cuaderno de Jupyter, ejecute todas las celdas (en el menú, haga clic en Cell -> Ejecutar todo) en notebooks/dataproc_mimic_II.ipynb y notebooks/dataproc_mimic_III.ipynb . Estos tomarán algún tiempo, así que salga a caminar o hornee algunas galletas mientras espera. Puede acelerarlo saltando las secciones de "incrustaciones de palabras previas al entrenamiento".
Para reproducir directamente los resultados del documento, primero ejecute los pasos de procesamiento de datos anteriores. Proporcionamos nuestros modelos previamente capacitados para CAML y DR-CAML para el conjunto de datos de etiqueta completo MIMIC-III. Se guardan como model.pth en sus respectivos directorios. También proporcionamos un script evaluate_model.sh para reproducir nuestros resultados de los modelos.
Para entrenar un nuevo modelo desde cero, utilice el script learn/training.py . Ejecute python training.py -h para una lista completa de argumentos de entrada y banderas. Los scripts train_new_model.sh en las predictions/ subdirectorios pueden servir como ejemplos (o puede ejecutarlos directamente para usar los mismos hiperparámetros).
Las predicciones que proporcionan los resultados en el documento se proporcionan en predictions/ . Cada directorio contiene:
preds_test.psv , un archivo de valor separado por tuberías que contiene las predicciones de HADM_ID y el modelo de todos los ejemplos de pruebastrain_new_model.sh , que entrena un nuevo modelo con los hiperparámetros proporcionados en el documento. Para reproducir nuestros resultados de la medida F de las predicciones, por ejemplo, los resultados de CNN en MIMIC-II, ejecutar python get_metrics_for_saved_predictions.py predictions/CNN_mimic2_full .