При таком современном образе жизни большинство людей склонны пренебрегать своим здоровьем. Иногда, даже при осторожном отношении к собственному здоровью, в организм людей вторгаются проблемные заболевания.
Из-за отсутствия медицинских знаний и дорогостоящих медицинских консультаций многие люди склонны пренебрегать или не замечать любые симптомы, появляющиеся в их организме.
В этой ситуации может помочь система прогнозирования заболеваний.

В этом блоге мы рассмотрим, как предсказать, есть ли у человека какое-либо конкретное проблемное заболевание или нет, используя машину опорных векторов (SVM) и библиотеку Scikit-Learn, оптимизированную для Intel oneAPI.

Прежде всего, нам нужно знать, что такое алгоритм опорных векторов. Это легкий, но мощный алгоритм машинного обучения, используемый для решения задач как классификационного, так и регрессионного типа.

Алгоритм находит наилучшую границу решения, которая разделяет точки данных на разные классы.

Простое объяснение того, как работает SVM:
1. Точки данных нанесены на график, где каждая точка представляет собой наблюдение с несколькими функциями.

2. Алгоритм пытается найти линию (или гиперплоскость в более высоких измерениях), которая разделяет два класса с максимально возможным запасом.

3. Поле — это расстояние между границей решения и ближайшими точками данных из обоих классов.

4. Точки данных, ближайшие к границе решения, называются опорными векторами, и они определяют положение и ориентацию границы.

5. Как только граница найдена, алгоритм может классифицировать новые точки данных, определяя, по какую сторону границы они попадают.

SVM также можно использовать для задач линейной классификации, используя функции ядра для преобразования данных в многомерное пространство, где можно найти линейную границу.

Алгоритм SVM определен в пакете Scikit-learn. Scikit-learn — это модуль Python для машинного обучения. Расширение Intel® для Scikit-learn плавно ускоряет ваши приложения scikit-learn для ЦП и ГП Intel в одноузловых и многоузловых конфигурациях. Ускорение достигается за счет использования библиотеки аналитики данных Intel® oneAPI (oneDAL). Расширение Intel(R) для Scikit-learn содержит функциональные возможности исправления scikit-learn, которые изначально были доступны в пакете thedaal4py. Этот пакет расширения динамически исправляет оценщики scikit-learn, повышая при этом производительность ваших алгоритмов машинного обучения.

Расширение является частью набора инструментов Intel® AI Analytics Toolkit (AI Kit), который обеспечивает гибкость использования инструментов машинного обучения с вашими существующими пакетами ИИ. Используя Scikit-learn с этим расширением, мы можем ускорить обучение и логические выводы до 100 раз с эквивалентной математической точностью.

Требования:
Python 3.7 или выше.
Требуемый пакет: Numpy, Pandas, scikit-learn, scikit-learn-intelex, PIL, matplotlib.

Установка библиотеки scikit-learn-intelex:
Вы можете создать виртуальную среду для установки этих пакетов. Запишите следующий код в ячейку Jupyter Notebook:

pip установить scikit-learn-intelex

Затем запустите:

из sklearnex импортировать patch_sklearn
patch_sklearn()

Набор данных:
Наборы данных были взяты из Kaggle. Он содержит наборы данных о различных заболеваниях, таких как ковид, диабет, болезнь Паркинсона и т. д.

Ссылка на набор данных: https://www.kaggle.com/datasets/athirags/projectcsv
https://www.kaggle.com/datasets/gargmanas/parkinsonsdataset
https:// www.kaggle.com/datasets/vuppalaadithyasairam/предсказание-на-анализе-мочи-камней

импорт набора данных и преобразование его в массив numpy:

мы использовали numpy libary для ввода набора данных, а затем преобразовали его в массив numpy

Предварительная обработка данных:
Теперь мы добавим все значения в один список, создав еще один список меток, содержащих 0 и 1, и будем использовать train_test_split. разделить набор данных на обучение и тестирование.

Обучение модели:
Мы будем использовать классификатор опорных векторов SVM, чтобы подогнать нашу модель, а затем делать прогнозы.

Теперь мы можем делать прогнозы и проверять точность нашей модели.

Тестирование:

Теперь мы можем проверить нашу модель, чтобы увидеть, поражен человек болезнью или нет.

Ссылка на Github: riddhi-002892/Predicting-Disesse-Outcomes: он может обнаруживать различные заболевания с помощью Putting Some (github.com)

Эта модель также может быть реализована в модели здравоохранения, которая может прогнозировать различные заболевания в режиме реального времени.

Этот проект был представлен Риддхи Пратимом Ши (я) на конференцииIntel oneAPI Innvoa-a-Thon, организованной Skepsis ( Технический клуб сестры Ниведита Университет ) в партнерстве с Intel.

Спасибо за ваше время.