The latest model is in folder 'version_6'.
There are times when there is no hospital in the area near the residence, it is difficult for the patient to visit the hospital due to the burden of medical expenses, or when they want to receive medical treatment quickly and conveniently due to the burden of visiting in person. Through this, We thought it would be nice to have a service that provides simple non-face-to-face diagnosis through chatbots. Accordingly, based on the theme of developing a chatbot customized and symptom-disease prediction algorithm, our team worked on a project to develop an algorithm that can predict diseases through a machine learning model when patients enter information about symptoms.
The approximate workflow is as follows. Based on the basic information entered by the user, major symptoms are predicted, and additional symptom information is input through questions corresponding to the predicted major symptoms to predict and show the three most likely diseases (Top3).
- There are 27 Major Sypmtoms and about 200 diseases in data.
Model | Test Acc | Test F1-Score |
---|---|---|
Multinomial Naive Bayes | 0.92 | 0.92 |
Support Vector Machine | 0.95 | 0.94 |
Random Forest Classifier | 0.96 | 0.96 |
Decision Tree Classifier | 0.94 | 0.95 |
The structure model is as follows. Reflects the context by adding lstm, applies three different filters in cnn, goes through dropout and dense layers to prevent maxpooling 1d, concatenate and multiple overfitting, and predicts the disease with a softmax activation function. In addition, Model 1 was slightly lower than Model 2, so the part that connected lstm and cnn was added to supplement it.
Model | Test Acc | Test F1-Score | Top3 Hitrate |
---|---|---|---|
Model 1 (For Male) | 0.82 | 0.88 | 0.91 |
Model 2 (For Female) | 0.80 | 0.87 | 0.91 |
The MIT License (MIT) Copyright (c) 2021 이재훈, 김은선, 이현진, 정정민, Chomedicine