Modelos
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)
.
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.
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.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
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
Modelos
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)
.
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.
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.
Obrigado pelo seu feedback!