Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Modelos | Modelagem
Introdução ao ML com Scikit-learn

bookModelos

Os fundamentos da pré-processamento de dados e construção de pipelines já foram abordados. O próximo passo é a modelagem.

Um modelo no Scikit-learn é um estimador que fornece os métodos .predict() e .score(), além do .fit() herdado de todos os estimadores.

.fit()

Após o pré-processamento dos dados e estando prontos para o modelo, o primeiro passo para construir um modelo é o treinamento do modelo. Isso é feito utilizando o .fit(X, y).

Note
Nota

Para treinar um modelo que executa uma tarefa de aprendizado supervisionado (por exemplo, regressão, classificação), é necessário passar tanto X quanto y para o método .fit().

Se estiver lidando com uma tarefa de aprendizado não supervisionado (por exemplo, clustering), não é necessário fornecer dados rotulados, então é possível passar apenas a variável X, .fit(X). No entanto, utilizar .fit(X, y) não gerará um erro. O modelo simplesmente ignora a variável y.

Durante o treinamento, um modelo aprende tudo o que precisa para realizar previsões. O que o modelo aprende e a duração do treinamento dependem do algoritmo escolhido. Para cada tarefa, existem diversos modelos disponíveis, baseados em diferentes algoritmos. Alguns treinam mais lentamente, enquanto outros treinam mais rapidamente.

No entanto, o treinamento geralmente é o aspecto mais demorado do aprendizado de máquina. Se o conjunto de treinamento for grande, um modelo pode levar minutos, horas ou até dias para treinar.

.predict()

Após o modelo ser treinado utilizando o método .fit(), ele pode realizar previsões. Prever é tão simples quanto chamar o método .predict():

model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction

Normalmente, deseja-se prever um alvo para novas instâncias, X_new.

.score()

O método .score() é utilizado para medir o desempenho de um modelo treinado. Geralmente, ele é calculado no conjunto de teste (os próximos capítulos explicarão o que é). Veja a sintaxe:

model.fit(X, y) # Training the model
model.score(X_test, y_test)

O método .score() requer valores reais do alvo (y_test no exemplo). Ele calcula a previsão para as instâncias de X_test e compara essa previsão com o alvo verdadeiro (y_test) utilizando alguma métrica. Por padrão, essa métrica é a acurácia para classificação.

Note
Nota

X_test refere-se ao subconjunto do conjunto de dados, conhecido como conjunto de teste, utilizado para avaliar o desempenho de um modelo após o treinamento. Ele contém as features (dados de entrada). y_test é o subconjunto correspondente de rótulos verdadeiros para X_test. Juntos, eles avaliam o quão bem o modelo prevê novos dados não vistos.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain more about what an estimator is in Scikit-learn?

What are some common algorithms used for modeling in Scikit-learn?

How does the .score() method differ for regression and classification tasks?

Awesome!

Completion rate improved to 3.13

bookModelos

Deslize para mostrar o menu

Os fundamentos da pré-processamento de dados e construção de pipelines já foram abordados. O próximo passo é a modelagem.

Um modelo no Scikit-learn é um estimador que fornece os métodos .predict() e .score(), além do .fit() herdado de todos os estimadores.

.fit()

Após o pré-processamento dos dados e estando prontos para o modelo, o primeiro passo para construir um modelo é o treinamento do modelo. Isso é feito utilizando o .fit(X, y).

Note
Nota

Para treinar um modelo que executa uma tarefa de aprendizado supervisionado (por exemplo, regressão, classificação), é necessário passar tanto X quanto y para o método .fit().

Se estiver lidando com uma tarefa de aprendizado não supervisionado (por exemplo, clustering), não é necessário fornecer dados rotulados, então é possível passar apenas a variável X, .fit(X). No entanto, utilizar .fit(X, y) não gerará um erro. O modelo simplesmente ignora a variável y.

Durante o treinamento, um modelo aprende tudo o que precisa para realizar previsões. O que o modelo aprende e a duração do treinamento dependem do algoritmo escolhido. Para cada tarefa, existem diversos modelos disponíveis, baseados em diferentes algoritmos. Alguns treinam mais lentamente, enquanto outros treinam mais rapidamente.

No entanto, o treinamento geralmente é o aspecto mais demorado do aprendizado de máquina. Se o conjunto de treinamento for grande, um modelo pode levar minutos, horas ou até dias para treinar.

.predict()

Após o modelo ser treinado utilizando o método .fit(), ele pode realizar previsões. Prever é tão simples quanto chamar o método .predict():

model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction

Normalmente, deseja-se prever um alvo para novas instâncias, X_new.

.score()

O método .score() é utilizado para medir o desempenho de um modelo treinado. Geralmente, ele é calculado no conjunto de teste (os próximos capítulos explicarão o que é). Veja a sintaxe:

model.fit(X, y) # Training the model
model.score(X_test, y_test)

O método .score() requer valores reais do alvo (y_test no exemplo). Ele calcula a previsão para as instâncias de X_test e compara essa previsão com o alvo verdadeiro (y_test) utilizando alguma métrica. Por padrão, essa métrica é a acurácia para classificação.

Note
Nota

X_test refere-se ao subconjunto do conjunto de dados, conhecido como conjunto de teste, utilizado para avaliar o desempenho de um modelo após o treinamento. Ele contém as features (dados de entrada). y_test é o subconjunto correspondente de rótulos verdadeiros para X_test. Juntos, eles avaliam o quão bem o modelo prevê novos dados não vistos.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt