NLP ML

NLP ML performs binary classification of medical text data using natural language processing and machine learning to extract diagnostic features from chest x-ray radiology reports.


Key Features:

  • Data Handling: Accepts CSV input requiring mandatory 'text' and 'class' columns and requires commas within text to be replaced with spaces prior to processing.
  • Vectorization Options: Supports TF-IDF and bag-of-words vectorization as candidate feature representations.
  • Model Selection: Employs a random search strategy to select among vectorization techniques and machine learning models.
  • Validation: Evaluates model performance using 10-fold cross-validation on the training dataset.
  • Imbalance Handling: Applies SMOTE (Synthetic Minority Over-sampling Technique) to address class imbalance.
  • Result Storage: Saves experimental results and model outputs in a SQLite database.
  • Development Dataset: Was developed using the General Medicine Inpatient Initiative (GEMINI) dataset comprising clinical data from seven hospitals.
  • Diagnostic Targets: Demonstrated detection of chest x-ray report features including presence or absence of opacities and endotracheal intubation.
  • Performance Metrics: Reported performance for detecting absence of opacities includes accuracy 0.84, precision 0.94, recall 0.81, and ROC AUC 0.86, with reduced performance on highly imbalanced datasets.

Scientific Applications:

  • Radiology Report Classification: Automates extraction of diagnostic features such as opacities and endotracheal tubes from chest x-ray reports to support clinical workflows on internal medicine wards.
  • Clinical Text Model Development: Provides a framework for developing and evaluating binary classifiers for medical informatics research using imbalanced clinical text datasets.

Methodology:

Accepts CSV input with mandatory 'text' and 'class' columns (commas in text replaced with spaces); performs random search over TF-IDF or bag-of-words vectorizers and multiple ML models; applies SMOTE for class imbalance; evaluates with 10-fold cross-validation; saves results to a SQLite database; developed and evaluated on the GEMINI dataset.

Topics

Details

License:
GPL-3.0
Tool Type:
command-line tool
Programming Languages:
Python
Added:
1/14/2020
Last Updated:
1/14/2021

Operations

Publications

Towfighi S, Agarwal A, Mak DYF, Verma A. Labelling chest x-ray reports using an open-source NLP and ML tool for text data binary classification. Unknown Journal. 2019. doi:10.1101/19012518.