Disease processing tool kit in Russian
Project description
Классификатор заболеваний
Patient-intake - модуль, обеспечивающий дистанционное взаимодействие пациента и медицинского учреждения с помощью диалоговых агентов. Реализован на языке Python.
Модуль позволяет предсказывать возможное заболевание пациента на основе введенной им информации, присваивать диагнозу степень срочности приема, а также выводить интерпретацию результатов работы модели. Для обучения модели создан датасет, содержащий информацию о болезнях и их симптомах.
Модуль поддерживает анализ текстов на русском языке.
Применение
Модуль является инструментом для разработки медицинских чат-ботов. Может быть использован для управления потоками пациентов в медицинских учреждениях, а также будет полезен для реализации концепции второго мнения при взаимодействии с пациентом.
Установка модуля
pip install distool
Пример использования
from distool.feature_extraction import SmartSymptomExtractor
from distool.interpretation.explainer import SymptomBasedExplainer
from distool.estimators import DiseaseClassifier
texts = [
"У меня болит живот, но нет температуры",
"У меня температура, но нет недомогания",
"Я завтра иду домой",
]
diseases = ["гастрит", "отит", "-1"]
symptom_vectorizer = SmartSymptomExtractor()
features = symptom_vectorizer.transform(texts)
classifier = DiseaseClassifier()
classifier.fit(features, diseases)
predicted_diseases = classifier.predict(features)
print("Predicted diseases:", predicted_diseases)
# Predicted diseases: ['гастрит' 'отит' '-1']
explainer = SymptomBasedExplainer(symptom_vectorizer, classifier)
print(explainer.explain(features[1]))
# Наблюдается отит с вероятностью 59%.
# Это потому что у вас наблюдаются следующие симптомы: температура
# И отрицаются следующие: недомогание
Разработка
Нужно установить зависимости и подключить pre-commit.g
pip install -r requirements.py
pre-commit install
bash init.sh
Контрибьютинг
Каждый новый функционал должен покрываться документацией и тестом.
Тестирование
Чтобы запустить тесты нужно ввести:
pytest
Pull request
Каждый PR должен быть отревьювен.
История проекта
Работа над Patient-intake проводится в рамках НИР Университета ИТМО №622275 "Разработка модуля для предварительного диагноза: поддержание логистики потоков пациентов и концепции второго мнения при взаимодействии с пациентом через диалоговые системы" (2022-2023)
Участники проекта
Анна Чижик
руководитель проекта
Мичил Егоров
тимлид
Дмитрий погребной
разработчик
Айталина Кривошапкина
разработчик
Мария Якубова
аналитик
Обратная связь
Если у Вас есть какие-то вопросы, можете обращаться к нам по адресу: patientintake@yandex.ru
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file disease-0.1.9.tar.gz
.
File metadata
- Download URL: disease-0.1.9.tar.gz
- Upload date:
- Size: 32.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0898fabb5098fcb1af627ce4ce4714c4ea7f9fdd208903ca42e2c90947607598 |
|
MD5 | bf508634cf1bcdb8081c4a15d0a2b1a5 |
|
BLAKE2b-256 | 4cb26ad692ea1817669a25d57a2b1858e46f49a1e360f2244e26b410314515ad |