Skip to main content

Классификатор заболеваний

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

Release files for distool 1.0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for distool 1.0.2.1
File Size Uploaded
distool-1.0.2.1.tar.gz 31.2 kB Details

Release files / distool-1.0.2.1.tar.gz

Download URL distool-1.0.2.1.tar.gz
Size 31.2 kB
Tags Source
SHA-256 checksum
How to use checksums
907d4ed0e8fe2c0c823a21b2d847d9b38e79cdd870e4adbeb6728364102918cb
BLAKE2b-256 checksum
How to use checksums
cde83e3e8d16660f212ef49330ae448762f0a56457fb60c08df57c177bf4da36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Release history Release notifications | RSS feed

This release

1.0.2.1 This release

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.1.9.1

1 release file

0.1.9

1 release file

0.1.8.1

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5.2

1 release file

0.1.5.1

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page