Отчёт о проделанной работе: "Предсказание диабета на датасете Pima Indians Diabetes"

Просмотров: 18   |   Загружено: 5 дн
icon
KONTAKT`S
icon
2
icon
Скачать
iconПодробнее о видео
В этом видео я рассказываю о моём первом опыте создания модели машинного обучения для предсказания диабета на основе реального медицинского датасета Pima Indians Diabetes. Под моим руководством я последовательно продемонстрировал:

Загрузку и подготовку данных,
Анализ признаков и корреляционную матрицу,
Обучение модели логистической регрессии,
Оценку качества модели с помощью точности, precision, recall и F1-меры,
Реализацию предсказания для новых пациентов.
Также я расскажу о возможных направлениях для дальнейшей работы: обработке пропущенных значений, сравнении моделей, оптимизации гиперпараметров, сохранении модели и создании API.

Если вы интересуетесь практическим машинным обучением и хотите повторить этот путь со мной — это видео для вас!

===
1. Среда разработки

Установлена WSL (Ubuntu) на Windows 11.
Создано и активировано виртуальное окружение ml-env.
Установлены нужные библиотеки: numpy, pandas, scikit-learn, matplotlib, seaborn, jupyterlab.


2. Данные

Загрузили датасет pima-indians-diabetes.data.csv с официального GitHub.
Присвоили названия столбцам:


df.columns = [
"Pregnancies", "Glucose", "BloodPressure", "SkinThickness",
"Insulin", "BMI", "DiabetesPedigreeFunction", "Age", "Outcome"
]
3. Первичный анализ данных

Просмотрены первые строки df.head().
Построена корреляционная матрица с помощью seaborn.heatmap():


plt.figure(figsize=(10, 8))
sns.heatmap(df.corr(), annot=True, cmap="coolwarm")
plt.title("Корреляционная матрица")
plt.show()

Объяснено, что корреляция показывает степень взаимосвязи признаков между собой, особенно с целевой переменной Outcome.


4. Обучение модели

Разделили данные на X (признаки) и y (целевая переменная).
Использовали train_test_split() (разделение на 70/30).
Обучили логистическую регрессию:


from sklearn.linear_model import LogisticRegression
model = LogisticRegression(max_iter=1000)
model.fit(X_train, y_train)

Провели предсказание: y_pred = model.predict(X_test)


5. Оценка качества модели

Точность модели: ~0.74
Матрица ошибок:


[[120 31]
[ 30 50]]

Отчёт по классификации (classification_report()):


Метрика Класс 0 (здоров) Класс 1 (болен)
Precision 0.80 0.62
Recall 0.79 0.62
F1-score 0.80 0.62
6. Предсказание для новых пациентов

Реализован ввод данных для одного пациента:


data = [[2, 130, 70, 30, 100, 32.0, 0.5, 33]]
new_patient_df = pd.DataFrame(data, columns=columns)
prediction = model.predict(new_patient_df)

# Вывод
if prediction[0] == 1:
print("Пациент БОЛЕН диабетом.")
else:
print("Пациент ЗДОРОВ.")

Предсказание работает корректно, предупреждения устранены.


Что ты уже знаешь и умеешь:

Установка и использование JupyterLab
Работа с CSV и pandas
Обработка и визуализация данных
Корреляция признаков
Обучение и тестирование модели логистической регрессии
Оценка качества: accuracy, precision, recall, f1-score
Предсказание новых данных
Работа в виртуальной среде (venv + WSL)

===
Общая структура пайплайна ML в Azure:

Рабочая среда — Jupyter, Azure Notebooks или VS Code + AML SDK.
Управление данными — Azure Blob Storage, Datasets.
Обучение — автоматическое или вручную, скрипты на Python, запуск на кластерах.
Отслеживание экспериментов — Azure ML Experiments, Runs.
Развёртывание — через контейнеры в AKS или Web Service.


Аналогичный подход в Linux с Open Source инструментами:

Компонент Azure Open Source Альтернатива на Linux
Azure ML Studio / SDK JupyterLab + Python (scikit-learn, PyTorch, TensorFlow)
Azure Storage MinIO, DVC, Apache Parquet, локальные диски
Azure ML Pipelines Kedro, MLFlow Pipelines, Luigi, Airflow
AutoML Azure Auto-sklearn, H2O AutoML, TPOT
Azure ML Experiments MLflow Tracking, Sacred, Weights & Biases (open)
Azure Compute (VM/Cluster) Docker + Kubernetes (k3s, k8s), local CPU/GPU, Slurm
Azure Container Instances Docker + Podman + FastAPI/Flask + NGINX
Azure DevOps Pipelines GitHub Actions, GitLab CI, Jenkins
===
Минимальный стек для обучения ML на Linux:

1. Установка базовых инструментов

# Установка Python и pip
sudo apt update
sudo apt install python3 python3-pip -y

# Установка JupyterLab
pip install jupyterlab

# Установка ML-библиотек
pip install numpy pandas matplotlib scikit-learn seaborn

# (Дополнительно) Для глубокого обучения:
pip install torch torchvision torchaudio
pip install tensorflow

# Автоматизация и мониторинг
pip install mlflow dvc

2. Рабочая среда: JupyterLab

Запуск:
jupyter lab --no-browser --ip=0.0.0.0
Можно использовать VS Code с Jupyter-расширением — работает как в Azure Notebooks.



===
Подробнее тут

Похожие видео

Добавлено: 56 год.
Добавил:
  © 2019-2021
  Отчёт о проделанной работе: 'Предсказание диабета на датасете Pima Indians Diabetes' - RusLar.Me