Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio 3: Pipelines | Scikit-learn
Desafio de Entrevista em Ciência de Dados

book
Desafio 3: Pipelines

As Pipelines desempenham um papel crucial na racionalização dos fluxos de trabalho de aprendizado de máquina, garantindo a transição coerente e eficiente dos dados de uma etapa de processamento para outra. Essencialmente, uma pipeline agrupa uma sequência de etapas de processamento de dados e modelagem em uma única estrutura unificada. A principal vantagem do uso de pipelines é a minimização de erros comuns de fluxo de trabalho, como o vazamento de dados ao padronizar ou normalizar os dados.

Tarefa

Swipe to start coding

Aplique a normalização dos dados ao conjunto de dados de vinho, e depois utilize o algoritmo KMeans para agrupar vinhos com base em suas propriedades químicas.

  1. Aplique a padronização dos dados às características do conjunto de dados de vinho.
  2. Utilize o algoritmo KMeans para agrupar os vinhos baseando-se em suas propriedades químicas. São necessários 3 grupos.
  3. Aplique o pipeline aos dados.

Solução

import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.datasets import load_wine
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
from sklearn.pipeline import Pipeline
import warnings

# Ignore warnings
warnings.filterwarnings('ignore')

# Load Wine dataset
wine = load_wine()
X = wine.data

# 1. Create a pipeline that first applies standard scaling and then KMeans clustering
pipeline = Pipeline([
('scaler', StandardScaler()),
('kmeans', KMeans(n_clusters=3, random_state=0))
])

# 2. Apply the pipeline to the data
clusters = pipeline.fit_predict(X)

# Result distribution
plt.title('Cluster assignments:')
sns.countplot(x=clusters)
plt.show()
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 7. Capítulo 3
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.datasets import load_wine
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
from sklearn.pipeline import Pipeline
import warnings

# Ignore warnings
warnings.filterwarnings('ignore')

# Load Wine dataset
wine = load_wine()
X = wine.data

# 1. Create a pipeline that first applies standard scaling and then KMeans clustering
pipeline = Pipeline([
('scaler', ___()), # 1. Initialize the scaler
('kmeans', ___(n_clusters=___, random_state=0)) # Create the clustering algorithm with 3 clusters
])

# 2. Apply the pipeline to the data
clusters = pipeline.___(X)

# Result distribution
plt.title('Cluster assignments:')
sns.countplot(x=clusters)
plt.show()
toggle bottom row
some-alt