Statut: Archivé. Le code est fourni tel quel sans mises à jour attendues. Malheureusement, je n'ai pas le temps personnel pour consacrer à la maintenance de ce repo / répondant aux problèmes, ni à l'accès à l'ensemble de données Mimic, bien que j'espère que le code du modèle et les divisions de données peuvent toujours être utiles à la communauté.
Code pour l'article Prédiction explicable des codes médicaux à partir du texte clinique.
D'autres versions peuvent également fonctionner, mais celles énumérées sont celles que j'ai utilisées
Pour commencer, éditez d'abord constants.py pour pointer vers les répertoires tenant vos copies des ensembles de données Mimic-II et Mimic-III. Ensuite, organisez vos données avec la structure suivante:
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)
Les fichiers Mimic-II peuvent être obtenus à partir de ce référentiel.
Maintenant, assurez-vous que votre chemin Python comprend le répertoire de base de ce référentiel. Ensuite, dans Jupyter Notebook, exécutez toutes les cellules (dans le menu, cliquez sur Cell -> Exécutez tout) dans notebooks/dataproc_mimic_II.ipynb et notebooks/dataproc_mimic_III.ipynb . Ceux-ci prendront du temps, alors allez vous promener ou faites cuire des biscuits pendant que vous attendez. Vous pouvez l'accélérer en sautant les sections "pré-trains de mot".
Pour reproduire directement les résultats du papier, exécutez d'abord les étapes de traitement des données ci-dessus. Nous fournissons nos modèles pré-formés pour CAML et DR-CAML pour l'ensemble de données MIMIC-III complet. Ils sont enregistrés comme model.pth dans leurs répertoires respectifs. Nous fournissons également un script evaluate_model.sh pour reproduire nos résultats des modèles.
Pour former un nouveau modèle à partir de zéro, veuillez utiliser le script learn/training.py . Exécutez python training.py -h pour une liste complète des arguments et des drapeaux d'entrée. Les scripts train_new_model.sh dans les predictions/ sous-répertoires peuvent servir d'exemples (ou vous pouvez les exécuter directement pour utiliser les mêmes hyperparamètres).
Les prédictions qui fournissent les résultats dans le document sont fournies dans predictions/ . Chaque répertoire contient:
preds_test.psv , un fichier de valeur séparée par tuyau contenant les prédictions de Hadm_id et de modèle de tous les exemples de testtrain_new_model.sh , qui forme un nouveau modèle avec les hyperparamètres fournis dans le document. Pour reproduire nos résultats de la mesure F des prédictions, par exemple les résultats CNN sur Mimic-II, exécutez python get_metrics_for_saved_predictions.py predictions/CNN_mimic2_full .