Menu
CoddyTech

Olá, Machine Learning

Parte da seção Dados e gráficos do Journey de Machine Learning da Coddy. Lição 1 de 60.

A maioria dos programas segue regras escritas por uma pessoa. Um modelo de aprendizado de máquina encontra suas próprias regras a partir de exemplos.

Aqui estão 150 flores de íris, cada uma representada por um ponto posicionado de acordo com o tamanho de suas pétalas:

150 flores de íris representadas por pontos, comprimento da pétala no eixo horizontal e largura da pétala no eixo vertical, em três grupos distintos, com uma cor e forma para cada espécie

Está vendo os três grupos? Um modelo também pode aprendê-los e, então, nomear flores que nunca viu.

challenge icon

Desafio

Fácil

Este programa está pronto. Pressione Run: o modelo estuda 112 flores e depois nomeia 38 flores novas.

Abra a aba Plots para ver suas previsões. Você consegue identificar o único erro? Depois, envie.

Experimente você mesmo

# Pressione Run para ver um modelo aprender
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 flores de íris: suas medidas e espécies
iris = load_iris()
X_learn, X_new, y_learn, y_new = train_test_split(iris.data, iris.target, random_state=0)

# O modelo estuda 112 flores com suas respectivas respostas...
model = KNeighborsClassifier()
model.fit(X_learn, y_learn)

# ...depois identifica 38 flores que nunca viu
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")

# Cada flor nova é um ponto, colorido de acordo com a previsão do modelo; um X vermelho marca um erro
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()
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Dados e gráficos

Pratique por conta própria: Compilador de Python online