Читать книгу Искусственный интеллект. Машинное обучение онлайн


Пример 1

Давайте рассмотрим пример задачи снижения размерности данных с использованием метода главных компонент (PCA) на наборе данных Breast Cancer Wisconsin (данные о раке груди).

```python

# Импортируем необходимые библиотеки

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

from sklearn.datasets import load_breast_cancer

from sklearn.preprocessing import StandardScaler

from sklearn.decomposition import PCA

# Загрузим набор данных Breast Cancer Wisconsin

breast_cancer = load_breast_cancer()

X = breast_cancer.data

y = breast_cancer.target

target_names = breast_cancer.target_names

# Стандартизируем признаки

scaler = StandardScaler()

X_scaled = scaler.fit_transform(X)

# Применим метод главных компонент (PCA) для снижения размерности до 2 компонент

pca = PCA(n_components=2)

X_pca = pca.fit_transform(X_scaled)

# Визуализируем результаты

plt.figure(figsize=(8, 6))

colors = ['navy', 'turquoise']

lw = 2

for color, i, target_name in zip(colors, [0, 1], target_names):

plt.scatter(X_pca[y == i, 0], X_pca[y == i, 1], color=color, alpha=.8, lw=lw,

label=target_name)

plt.legend(loc='best', shadow=False, scatterpoints=1)

plt.title('PCA of Breast Cancer Wisconsin dataset')

plt.xlabel('Principal Component 1')

plt.ylabel('Principal Component 2')

plt.show()


Этот код загружает набор данных Breast Cancer Wisconsin, стандартизирует признаки, применяет метод главных компонент (PCA) для снижения размерности до 2 компонент и визуализирует результаты. В результате получаем двумерное представление данных о раке груди, которое помогает нам лучше понять структуру и взаимосвязи между признаками.

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

В коде мы выполняем следующие шаги:

1. Загрузка данных: Мы загружаем набор данных о раке груди и разделяем его на признаки (X) и метки классов (y).