Skip to content

Latest commit

 

History

History
75 lines (58 loc) · 4.55 KB

README.md

File metadata and controls

75 lines (58 loc) · 4.55 KB

PresRecST: A novel herbal prescription recommendation algorithm for real-world patients with integration of syndrome differentiation and treatment planning

1. Introduction

This repository contains source code and datasets for "PresRecST: A novel herbal prescription recommendation algorithm for real-world patients with integration of syndrome differentiation and treatment planning".

In this study, we proposed a novel herbal Prescription Recommendation network architecture for real-world patients with integration of Syndrome differentiation and Treatment planning (termed PresRecST, See Fig1 below), following the basic diagnostic and treatment process of real-world syndrome differentiation and treatment determination.

2. Overview

PresRecST Framework

Fig1. Framework of PresRecST. The model takes the knowledge embedding matrices of SDTKG and the patient’s symptom set as input, and combines them with the residual-like neural network for recommending syndromes(SDM), treatment methods(TMM) and herbs(HRM) progressively.

3. Install Python libraries needed

$ conda create -n presrecst_env python=3.6
$ conda activate presrecst_env
$ pip install -r requirements.txt

4. Basic Usage

(1) dataset

The relevant data required by the model are uniformly placed in the "data" folder. This folder contains the following two data files:

  • prescript_1195.csv: This dataset is derived from the work of [Yao et al., TKDE 2018], consisting of 33,765 entries after processing (termed TCM-PD in this study). This dataset was utilized for subsequent research on TCM prescription recommendation.
  • TCM_Lung.xlsx: This dataset was constructed in this study and originates from the First Affiliated Hospital of Henan University of Chinese Medicine (FAH-HUCM). It focuses on pulmonary diseases and comprises 14,948 entries after processing. Considering the clinical nature of the data, despite de-identification efforts, its clinical characteristics were still taken into account. Therefore, only 4,484 entries are made publicly available in this project. Each entry includes symptoms, syndromes, therapeutic methods, and TCM prescriptions in the form of IDs, along with a mapping table providing the corresponding names for these IDs.

    To ensure data security, we have encoded the TCM-Lung dataset (i.e., each symptom/syndrome/treatment method/herb has been converted into an ID). If you require the full names for research purposes, please contact us via email: [email protected].

    (2) main code

    The python script file of the model is shown in this project, including the following files:

  • main_Lung.py: Run the entire program (based on the TCM-Lung dataset)
  • main_TCMPD.py: Run the entire program (based on the TCM-PD dataset)
  • dataloader.py: Data loading functions, including loading for both datasets
  • model.py: Model-related programs, including models applicable to both datasets
  • tools.py: Some related utility functions
  • training_and_testing.py: Training and testing-related programs

    (3) result

    After running the "main_Lung.py" or "main_TCMPD.py" file, the Top@K performance results of the model on the testing set can be obtained. The result file is placed in the "result" folder, that is, the "Evaluation.xlsx" file. The result file contains four columns:

  • the "k" column represents the number of k in Top@k (k ranges from 1 to 20 in the results)
  • the "Precision" column represents the precision@k
  • the "Recall" column represents the recall@k
  • the "F1_score" column represents the F1 score@k
  • 5. Citation and Contact

    If you find PresRecST useful for your research, please consider citing the following paper:

    @article{dong2024presrecst,
      title={PresRecST: a novel herbal prescription recommendation algorithm for real-world patients with integration of syndrome differentiation and treatment planning},
      author={Dong, Xin and Zhao, Chenxi and Song, Xinpeng and Zhang, Lei and Liu, Yu and Wu, Jun and Xu, Yiran and Xu, Ning and Liu, Jialing and Yu, Haibin and others},
      journal={Journal of the American Medical Informatics Association},
      volume={31},
      number={6},
      pages={1268--1279},
      year={2024},
      publisher={Oxford University Press}
    }
    

    If you have better suggestions or questions about our work, please contact us: [email protected].

    Welcome to follow our project on GitHub: https://github.com/2020MEAI and https://github.com/xdong97 .