Загрузка встроенных наборов данных в scikit-learn

В scikit-learn, популярной библиотеке машинного обучения для Python, есть несколько встроенных наборов данных, которые можно использовать для обучения и тестирования моделей машинного обучения.

Загрузка встроенных наборов данных в scikit-learn
Краткое содержание

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

Одной из самых известных встроенных баз данных в scikit-learn является набор данных о цветах ирисов (Iris dataset). Этот набор данных содержит измерения для 150 ирисов из трех разных видов. Каждый экземпляр ириса в наборе данных имеет четыре признака: длину и ширину лепестков, длину и ширину чашелистников. Целью является классификация ирисов по видам на основе этих четырех признаков.

Загрузка набора данных о цветах ириса:

from sklearn.datasets import load_iris

# Загрузка набора данных
iris = load_iris()

# Печатаем информацию о наборе данных
print("Набор данных о цветах ирисов")
print("Форма набора данных: ", iris.data.shape)
print("Первые 5 строк набора данных:\n", iris.data[:5])
print("Имена признаков: ", iris.feature_names)
print("Имена классов: ", iris.target_names)

В этом коде мы сначала импортируем функцию load_iris из модуля sklearn.datasets. Затем мы используем эту функцию для загрузки набора данных о цветах ирисов. Загруженный набор данных содержит словарь с ключами, которые предоставляют доступ к информации о наборах данных, включая матрицу признаков (data), вектор целевых переменных (target), имена признаков (feature_names) и имена классов (target_names).

Вывод кода:

Набор данных о цветах ирисов
Форма набора данных:  (150, 4)
Первые 5 строк набора данных:
 [[5.1 3.5 1.4 0.2]
 [4.9 3.  1.4 0.2]
 [4.7 3.2 1.3 0.2]
 [4.6 3.1 1.5 0.2]
 [5.  3.6 1.4 0.2]]
Имена признаков:  ['length' 'width' 'height' 'width']
Имена классов:  ['setosa' 'versicolor' 'virginica']

Как видите, у нас есть 150 экземпляров ирисов с 4 признаками каждый. Первые 5 строк матрицы признаков отпечатаны, а также имена признаков и классов.

Теперь, когда у нас есть набор данных, мы можем использовать его для создания и обучения модели машинного обучения. Например, давайте создадим простую модель классификации на основе метода k-Nearest Neighbors (k-Ближайших Соседей):

from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score

# Разделение данных на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=42)

# Создание и обучение модели k-Ближайших Соседей
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)

# Предсказание на тестовой выборке
y_pred = knn.predict(X_test)

# Вычисление точности модели
accuracy = accuracy_score(y_test, y_pred)
print("Точность модели: {:.2f}".format(accuracy))

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

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

Какие существуют встроенные датасеты в scikit-learn?

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

  1. Набор данных о цветах ирисов (Iris dataset): Этот набор данных содержит измерения для 150 ирисов из трех разных видов. Каждый экземпляр ириса имеет четыре признака: длину и ширину лепестков, а также длину и ширину чашелистников.
  2. Набор данных о диабете (Diabetes dataset): Этот набор данных содержит информацию о пациентах с диабетом. Он включает в себя различные признаки, такие как уровень глюкозы в крови, артериальное давление и другие медицинские показатели.
  3. Набор данных о динозаврах (Dinosaur dataset): Этот набор данных содержит информацию о различных видов динозавров. Он включает в себя признаки, такие как длина, ширина и высота динозавров.
  4. Набор данных о домах в Бостоне (Boston Housing dataset): Этот набор данных содержит информацию о различных характеристиках домов в Бостоне, таких как уровень преступности, среднее количество комнат и другие факторы, которые могут влиять на стоимость жилья.
  5. Набор данных о рукописных цифрах (Digits dataset): Этот набор данных содержит изображения рукописных цифр от 0 до 9. Он может использоваться для обучения моделей распознавания рукописного текста.

Это только некоторые из встроенных наборов данных в scikit-learn. Вы можете найти больше информации о доступных наборах данных и их использовании в документации scikit-learn.

Надеюсь, эта статья была полезной и вдохновила вас на дальнейшее изучение машинного обучения с помощью scikit-learn!

Nerd IT 🌀 ML, DS, ANN, GPT
Привет! Меня зовут Семён, я работаю в сфере ML и аналитики данных и пишу в блог nerdit.ru статьи о своем опыте и том, что может пригодиться начинающим в начале их пути изучения больших данных.

Подписаться на новости Nerd IT

Не пропустите последние выпуски. Зарегистрируйтесь сейчас, чтобы получить полный доступ к статьям.
jamie@example.com
Подписаться