BSODA: A Bipartite Scalable Framework for Online Disease Diagnosis
  A growing number of people are seeking healthcare advice online. Usually,
they diagnose their medical conditions based on the symptoms they are
experiencing, which is also known as self-diagnosis. From the machine learning
perspective, online disease diagnosis is a sequential feature (symptom)
selection and classification problem. Reinforcement learning (RL) methods are
the standard approaches to this type of tasks. Generally, they perform well
when the feature space is small, but frequently become inefficient in tasks
with a large number of features, such as the self-diagnosis. To address the
challenge, we propose a non-RL Bipartite Scalable framework for Online Disease
diAgnosis, called BSODA. BSODA is composed of two cooperative branches that
handle symptom-inquiry and disease-diagnosis, respectively. The inquiry branch
determines which symptom to collect next by an information-theoretic reward. We
employ a Product-of-Experts encoder to significantly improve the handling of
partial observations of a large number of features. Besides, we propose several
approximation methods to substantially reduce the computational cost of the
reward to a level that is acceptable for online services. Additionally, we
leverage the diagnosis model to estimate the reward more precisely. For the
diagnosis branch, we use a knowledge-guided self-attention model to perform
predictions. In particular, BSODA determines when to stop inquiry and output
predictions using both the inquiry and diagnosis models. We demonstrate that
BSODA outperforms the state-of-the-art methods on several public datasets.
Moreover, we propose a novel evaluation method to test the transferability of
symptom checking methods from synthetic to real-world tasks. Compared to
existing RL baselines, BSODA is more effectively scalable to large search
spaces.
