Привет, машинное обучение
Часть раздела Данные и графики путешествия по Machine Learning на Coddy. Урок 1 из 60.
Большинство программ следует правилам, написанным человеком. Модель машинного обучения находит собственные правила на основе примеров.
Вот 150 цветков ириса, каждый обозначен точкой в соответствии с размером его лепестков:
Видишь эти три группы? Модель тоже может научиться их различать, а затем определять цветы, которых она никогда не видела.
Задание
ЛегкоЭта программа готова. Нажми Run: модель изучает 112 цветов, а затем определяет 38 новых.
Открой вкладку Plots, чтобы увидеть её догадки. Сможешь найти одну ошибку? Затем отправь решение.
Попробуйте сами
# Нажмите Run, чтобы увидеть, как обучается модель
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
import matplotlib.pyplot as plt
# 150 цветков ириса: их размеры и виды
iris = load_iris()
X_learn, X_new, y_learn, y_new = train_test_split(iris.data, iris.target, random_state=0)
# Модель изучает 112 цветков и правильные ответы для них...
model = KNeighborsClassifier()
model.fit(X_learn, y_learn)
# ...затем определяет виды 38 цветков, которых она раньше не видела
guesses = model.predict(X_new)
right = (guesses == y_new).sum()
print(f"Studied {len(X_learn)} flowers")
print(f"Named {right} of {len(X_new)} new flowers correctly")
# Каждый новый цветок показан точкой, окрашенной в соответствии с предположением модели; красный X отмечает ошибку
fig, ax = plt.subplots()
for i, name in enumerate(iris.target_names):
picked = guesses == i
ax.scatter(X_new[picked, 2], X_new[picked, 3], label=f"guessed {name}")
wrong = guesses != y_new
ax.scatter(X_new[wrong, 2], X_new[wrong, 3], marker="x", color="red", s=120, label="mistake")
ax.set_title("The model's guesses for 38 new flowers")
ax.set_xlabel("petal length (cm)")
ax.set_ylabel("petal width (cm)")
ax.legend()
plt.show()
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Данные и графики
4Преобразование данных
Изменение формы массивовОбъединение массивовСлучайные числаПовторение: симуляция броска кубика2Массивы NumPy
Создание массивовФорма и размерДиапазоны чиселИндексация и срезыПовторение: температурная сетка5Линейные графики и диаграммы рассеяния
Подписи и заголовкиДиаграммы рассеянияНесколько линий и легендыЦвета и маркерыФигуры и осиПовторение: шаги за неделю8Фильтрация и сортировка
Выбор строкФильтрация строкСортировка значенийНовые столбцыПовторение: лучшие товары3Математика массивов
Математика над целыми массивамиСводная статистикаСтатистика по осямТранслированиеБулевы маскиПовторение: результаты экзамена6Графики для данных
Столбчатые диаграммыГистограммыНесколько графиков в одномИзображения как массивыПовторение: отчёт об осадках9Группировка и очистка данных
Подсчёт значенийГруппировка данныхНесколько сводокПропущенные значенияПовторение: результаты опроса12Заключительные задания
Отчёт о продажахПоказания датчиковЦифры с первого взглядаИсследователь-пингвинПотренируйтесь самостоятельно: Онлайн-компилятор Python