Inspiration

Patients often experience symptoms that can be associated with multiple conditions. They may self-diagnose based on what they believe is causing their symptoms—for example, assuming food poisoning when the underlying condition may be a kidney stone. This inspired us to explore how machine learning could support better symptom interpretation and clinical decision-making.

What it does

Our system analyzes a patient's reported symptoms and clinical features to identify possible conditions with overlapping presentations.

For patients, it provides understandable information and encourages appropriate clinical evaluation rather than giving a definitive diagnosis.

For clinicians, it provides differential-diagnosis support, highlighting possible conditions that may need further assessment.

How we built it

Collected and prepared clinical symptom data. Performed data cleaning and preprocessing. Selected relevant clinical features such as symptoms, duration, severity, and patient characteristics. Developed a classification model to identify possible conditions. Evaluated model performance using appropriate classification metrics. Built a simple interface to demonstrate the patient and clinician workflow. Designed the system as decision support, not autonomous diagnosis.

Challenges we ran into

Different diseases can have very similar symptoms. Patient-reported symptoms can be incomplete or subjective. Medical datasets may contain missing, imbalanced, or inconsistent data. A model with high accuracy is not automatically clinically useful. We had to balance patient simplicity with the detailed information required by clinicians. Avoiding false reassurance and inappropriate self-diagnosis was an important safety consideration.

Accomplishments that we're proud of

Converted a real-world healthcare problem into a measurable ML problem. Created a system that considers multiple possible diagnoses rather than only one disease. Connected a patient-facing workflow with clinician decision support. Focused on explainability and appropriate clinical evaluation rather than simply producing a prediction. Demonstrated how healthcare informatics and ML can work together to address symptom ambiguity

What we learned

Symptoms alone do not equal diagnosis. Machine learning can identify patterns, but clinical diagnosis requires context and appropriate testing. Differential diagnosis is more realistic than treating every symptom as belonging to one disease. Healthcare AI needs to consider safety, explainability, bias, and clinical workflow, not just model accuracy. Designing for both patients and clinicians requires two different levels of information.

What's next for Ml for overlapping diagonsis

Validate the model using larger and more diverse clinical datasets. Add more conditions with overlapping symptoms. Incorporate laboratory and other clinical findings where appropriate. Add explainable AI so clinicians can understand why particular possibilities were identified. Evaluate the system prospectively with clinicians. Improve patient communication and multilingual accessibility. Eventually integrate the tool into appropriate clinical workflows such as triage or decision support.

Built With

  • clinician
  • diagnosis
  • f1
  • logicregression
  • manchinelearning
  • numpy
  • precision
  • python
  • recall
  • red-flags
  • xgboost
Share this project:

Updates

Submission history