Partilhar via


Avaliar o desempenho do modelo no Machine Learning Studio (clássico)

APLICA-SE A: Aplica-se a.Machine Learning Studio (clássico) Não se aplica a.Azure Machine Learning

Importante

O suporte para o Estúdio de ML (clássico) terminará a 31 de agosto de 2024. Recomendamos a transição para o Azure Machine Learning até essa data.

A partir de 1 de dezembro de 2021, não poderá criar novos recursos do Estúdio de ML (clássico). Até 31 de agosto de 2024, pode continuar a utilizar os recursos existentes do Estúdio de ML (clássico).

A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.

Neste artigo, você pode aprender sobre as métricas que você pode usar para monitorar o desempenho do modelo no Machine Learning Studio (clássico). Avaliar o desempenho de um modelo é uma das principais etapas do processo de ciência de dados. Ele indica o quão bem-sucedida a pontuação (previsões) de um conjunto de dados foi por um modelo treinado. O Machine Learning Studio (clássico) suporta a avaliação de modelos através de dois dos seus principais módulos de aprendizagem automática:

Esses módulos permitem que você veja como seu modelo se comporta em termos de uma série de métricas que são comumente usadas em aprendizado de máquina e estatísticas.

A avaliação dos modelos deve ser considerada juntamente com:

São apresentados três cenários comuns de aprendizagem supervisionada:

  • regressão
  • classificação binária
  • Classificação multiclasse

Avaliação vs. Validação Cruzada

A avaliação e a validação cruzada são formas padrão de medir o desempenho do seu modelo. Ambos geram métricas de avaliação que você pode inspecionar ou comparar com as de outros modelos.

Avaliar Modelo espera um conjunto de dados pontuado como entrada (ou dois, caso você queira comparar o desempenho de dois modelos diferentes). Portanto, você precisa treinar seu modelo usando o módulo Train Model e fazer previsões em algum conjunto de dados usando o módulo Score Model antes de poder avaliar os resultados. A avaliação é baseada nos rótulos/probabilidades pontuados, juntamente com os rótulos verdadeiros, todos os quais são produzidos pelo módulo Modelo de Pontuação .

Como alternativa, você pode usar a validação cruzada para executar várias operações train-score-evaluation (10 dobras) automaticamente em diferentes subconjuntos dos dados de entrada. Os dados de entrada são divididos em 10 partes, onde uma é reservada para testes, e as outras 9 para treinamento. Este processo é repetido 10 vezes e as métricas de avaliação são calculadas em média. Isso ajuda a determinar o quão bem um modelo generalizaria para novos conjuntos de dados. O módulo Modelo de Validação Cruzada inclui um modelo não treinado e alguns conjuntos de dados rotulados e produz os resultados da avaliação de cada uma das 10 dobras, além dos resultados médios.

Nas seções a seguir, construiremos modelos simples de regressão e classificação e avaliaremos seu desempenho, usando os módulos Avaliar Modelo e Modelo de Validação Cruzada .

Avaliando um modelo de regressão

Suponha que queremos prever o preço de um carro usando recursos como dimensões, potência, especificações do motor e assim por diante. Este é um problema de regressão típico, onde a variável alvo (preço) é um valor numérico contínuo. Podemos ajustar um modelo de regressão linear que, dados os valores de característica de um determinado carro, pode prever o preço desse carro. Este modelo de regressão pode ser usado para pontuar o mesmo conjunto de dados em que treinamos. Uma vez que temos os preços de carro previstos, podemos avaliar o desempenho do modelo, observando o quanto as previsões se desviam dos preços reais em média. Para ilustrar isso, usamos o conjunto de dados de preço do automóvel (bruto) disponível na seção Conjuntos de dados salvos no Machine Learning Studio (clássico).

Criando o experimento

Adicione os seguintes módulos ao seu espaço de trabalho no Machine Learning Studio (clássico):

Conecte as portas como mostrado abaixo na Figura 1 e defina a coluna Etiqueta do módulo Modelo de trem como preço.

Avaliando um modelo de regressão

Figura 1. Avaliação de um Modelo de Regressão.

Inspeção dos resultados da avaliação

Depois de executar o experimento, você pode clicar na porta de saída do módulo Avaliar modelo e selecionar Visualizar para ver os resultados da avaliação. As métricas de avaliação disponíveis para os modelos de regressão são: Erro Absoluto Médio, Erro Absoluto Médio Raiz, Erro Absoluto Relativo, Erro Quadrado Relativo e Coeficiente de Determinação.

O termo "erro" aqui representa a diferença entre o valor previsto e o valor verdadeiro. O valor absoluto ou o quadrado dessa diferença é geralmente calculado para capturar a magnitude total do erro em todas as instâncias, pois a diferença entre o valor previsto e o valor verdadeiro pode ser negativa em alguns casos. As métricas de erro medem o desempenho preditivo de um modelo de regressão em termos do desvio médio de suas previsões em relação aos valores reais. Valores de erro mais baixos significam que o modelo é mais preciso ao fazer previsões. Uma métrica de erro geral de zero significa que o modelo se ajusta perfeitamente aos dados.

O coeficiente de determinação, que também é conhecido como R ao quadrado, também é uma forma padrão de medir o quão bem o modelo se ajusta aos dados. Pode ser interpretada como a proporção de variação explicada pelo modelo. Uma proporção maior é melhor neste caso, onde 1 indica um ajuste perfeito.

Métricas de Avaliação de Regressão Linear

Figura 2. Métricas de Avaliação de Regressão Linear.

Usando validação cruzada

Como mencionado anteriormente, você pode executar treinamentos repetidos, pontuações e avaliações automaticamente usando o módulo Modelo de validação cruzada. Tudo o que você precisa neste caso é um conjunto de dados, um modelo não treinado e um módulo de modelo de validação cruzada (veja a figura abaixo). Você precisa definir a coluna de rótulo como preço nas propriedades do módulo Modelo de validação cruzada.

Validação cruzada de um modelo de regressão

Figura 3. Validação cruzada de um modelo de regressão.

Depois de executar o experimento, você pode inspecionar os resultados da avaliação clicando na porta de saída direita do módulo Cross-Validate Model . Isso fornecerá uma visão detalhada das métricas para cada iteração (dobra) e os resultados médios de cada uma das métricas (Figura 4).

Resultados de validação cruzada de um modelo de regressão

Figura 4. Resultados de validação cruzada de um modelo de regressão.

Avaliando um modelo de classificação binária

Em um cenário de classificação binária, a variável de destino tem apenas dois resultados possíveis, por exemplo: {0, 1} ou {false, true}, {negative, positive}. Suponha que você recebe um conjunto de dados de funcionários adultos com algumas variáveis demográficas e de emprego, e que você é solicitado a prever o nível de renda, uma variável binária com os valores {"<=50 K", ">50 K"}. Em outras palavras, a classe negativa representa os empregados que ganham menos ou igual a 50 K por ano, e a classe positiva representa todos os outros funcionários. Como no cenário de regressão, treinaríamos um modelo, pontuaríamos alguns dados e avaliaríamos os resultados. A principal diferença aqui é a escolha de métricas, cálculos e saídas do Machine Learning Studio (clássico). Para ilustrar o cenário de previsão do nível de renda, usaremos o conjunto de dados Adult para criar um experimento Studio (clássico) e avaliar o desempenho de um modelo de regressão logística de duas classes, um classificador binário comumente usado.

Criando o experimento

Adicione os seguintes módulos ao seu espaço de trabalho no Machine Learning Studio (clássico):

Conecte as portas como mostrado abaixo na Figura 5 e defina a coluna Etiqueta do módulo Modelo de trem como renda.

Avaliando um modelo de classificação binária

Figura 5. Avaliação de um Modelo de Classificação Binária.

Inspeção dos resultados da avaliação

Depois de executar o experimento, você pode clicar na porta de saída do módulo Avaliar Modelo e selecionar Visualizar para ver os resultados da avaliação (Figura 7). As métricas de avaliação disponíveis para modelos de classificação binária são: Precisão, Precisão, Recall, F1 Score e AUC. Além disso, o módulo produz uma matriz de confusão mostrando o número de verdadeiros positivos, falsos negativos, falsos positivos e verdadeiros negativos, bem como as curvas ROC, Precision/Recall e Lift .

A precisão é simplesmente a proporção de instâncias corretamente classificadas. Geralmente é a primeira métrica que você olha ao avaliar um classificador. No entanto, quando os dados de teste estão desequilibrados (onde a maioria das instâncias pertence a uma das classes), ou você está mais interessado no desempenho em qualquer uma das classes, a precisão realmente não captura a eficácia de um classificador. No cenário de classificação de nível de renda, suponha que você esteja testando em alguns dados em que 99% das instâncias representam pessoas que ganham menos ou igual a 50K por ano. É possível obter uma precisão de 0,99 prevendo a classe "<=50K" para todas as instâncias. O classificador, neste caso, parece estar fazendo um bom trabalho em geral, mas, na realidade, não classifica nenhum dos indivíduos de alta renda (o 1%) corretamente.

Por essa razão, é útil calcular métricas adicionais que capturam aspetos mais específicos da avaliação. Antes de entrar nos detalhes de tais métricas, é importante entender a matriz de confusão de uma avaliação de classificação binária. Os rótulos de classe no conjunto de treinamento podem assumir apenas dois valores possíveis, que geralmente chamamos de positivos ou negativos. As instâncias positivas e negativas que um classificador prevê corretamente são chamadas de verdadeiros positivos (TP) e verdadeiros negativos (TN), respectivamente. Da mesma forma, as instâncias classificadas incorretamente são chamadas de falsos positivos (PF) e falsos negativos (FN). A matriz de confusão é simplesmente uma tabela que mostra o número de instâncias que se enquadram em cada uma dessas quatro categorias. O Machine Learning Studio (clássico) decide automaticamente qual das duas classes no conjunto de dados é a classe positiva. Se os rótulos de classe forem booleanos ou inteiros, as instâncias rotuladas 'true' ou '1' receberão a classe positiva. Se os rótulos forem strings, como no conjunto de dados de renda, os rótulos serão classificados alfabeticamente e o primeiro nível será escolhido para ser a classe negativa, enquanto o segundo nível será a classe positiva.

Matriz de Confusão de Classificação Binária

Figura 6. Matriz de Confusão de Classificação Binária.

Voltando ao problema da classificação de rendimentos, gostaríamos de fazer várias perguntas de avaliação que nos ajudem a compreender o desempenho do classificador utilizado. Uma pergunta natural é: "Dos indivíduos que o modelo previa ganhar >50 K (TP+FP), quantos foram classificados corretamente (TP)?" Esta pergunta pode ser respondida olhando para a Precisão do modelo, que é a proporção de positivos que são classificados corretamente: TP/(TP+FP). Outra pergunta comum é "De todos os empregados de alta renda com renda >50k (TP+FN), quantos o classificador classificou corretamente (TP)". Este é realmente o Recall, ou a verdadeira taxa positiva: TP/(TP+FN) do classificador. Você pode notar que há um compromisso óbvio entre precisão e recall. Por exemplo, dado um conjunto de dados relativamente equilibrado, um classificador que prevê principalmente instâncias positivas, teria uma alta recordação, mas uma precisão bastante baixa, pois muitas das instâncias negativas seriam classificadas incorretamente, resultando em um grande número de falsos positivos. Para ver um gráfico de como essas duas métricas variam, você pode clicar na curva PRECISION/RECALL na página de saída do resultado da avaliação (parte superior esquerda da Figura 7).

Resultados da Avaliação da Classificação Binária

Figura 7. Resultados da Avaliação da Classificação Binária.

Outra métrica relacionada que é frequentemente usada é a F1 Score, que leva em consideração tanto a precisão quanto a recordação. É a média harmónica destas duas métricas e é calculada como tal: F1 = 2 (precisão x recordação) / (precisão + recordação). A pontuação F1 é uma boa maneira de resumir a avaliação em um único número, mas é sempre uma boa prática olhar para a precisão e o recall juntos para entender melhor como um classificador se comporta.

Além disso, pode-se inspecionar a taxa de verdadeiro positivo versus a taxa de falso positivo na curva ROC (Receiver Operating Characteristic) e o valor correspondente da área sob a curva (AUC). Quanto mais próxima esta curva estiver do canto superior esquerdo, melhor será o desempenho do classificador (ou seja, maximizando a taxa de verdadeiros positivos enquanto minimiza a taxa de falsos positivos). As curvas que estão próximas da diagonal do gráfico, resultam de classificadores que tendem a fazer previsões próximas de adivinhações aleatórias.

Usando validação cruzada

Como no exemplo de regressão, podemos realizar validação cruzada para treinar, pontuar e avaliar subconjuntos diferentes dos dados automaticamente. Da mesma forma, podemos usar o módulo Cross-Validate Model , um modelo de regressão logística não treinado e um conjunto de dados. A coluna de rótulo deve ser definida como renda nas propriedades do módulo Modelo de validação cruzada. Depois de executar o experimento e clicar na porta de saída direita do módulo Cross-Validate Model , podemos ver os valores métricos de classificação binária para cada dobra, além da média e desvio padrão de cada uma.

Validação cruzada de um modelo de classificação binária

Figura 8. Validação cruzada de um modelo de classificação binária.

Resultados de validação cruzada de um classificador binário

Figura 9. Resultados de validação cruzada de um classificador binário.

Avaliando um modelo de classificação multiclasse

Neste experimento, usaremos o popular conjunto de dados Iris , que contém instâncias de três tipos diferentes (classes) da planta da íris. Há quatro valores de feição (comprimento/largura da sépala e comprimento/largura da pétala) para cada instância. Nos experimentos anteriores, treinamos e testamos os modelos usando os mesmos conjuntos de dados. Aqui, usaremos o módulo Split Data para criar dois subconjuntos de dados, treinar no primeiro e pontuar e avaliar no segundo. O conjunto de dados Iris está disponível publicamente no Repositório de Aprendizado de Máquina UCI e pode ser baixado usando um módulo de Importação de Dados.

Criando o experimento

Adicione os seguintes módulos ao seu espaço de trabalho no Machine Learning Studio (clássico):

Conecte as portas como mostrado abaixo na Figura 10.

Defina o índice da coluna Rótulo do módulo Modelo de trem como 5. O conjunto de dados não tem linha de cabeçalho, mas sabemos que os rótulos de classe estão na quinta coluna.

Clique no módulo Importar dados e defina a propriedade Fonte de dados como URL da Web via HTTP e a URL como http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data.

Defina a fração de instâncias a ser usada para treinamento no módulo Split Data (0,7, por exemplo).

Avaliando um classificador multiclasse

Figura 10. Avaliando um classificador multiclasse

Inspeção dos resultados da avaliação

Execute o experimento e clique na porta de saída de Avaliar modelo. Os resultados da avaliação são apresentados sob a forma de uma matriz de confusão, neste caso. A matriz mostra as instâncias reais vs. previstas para todas as três classes.

Resultados da Avaliação da Classificação Multiclasse

Figura 11. Resultados da Avaliação da Classificação Multiclasse.

Usando validação cruzada

Como mencionado anteriormente, você pode executar treinamentos repetidos, pontuações e avaliações automaticamente usando o módulo Modelo de validação cruzada. Você precisaria de um conjunto de dados, um modelo não treinado e um módulo de modelo de validação cruzada (veja a figura abaixo). Novamente, você precisa definir a coluna de rótulo do módulo Cross-Validate Model (índice de coluna 5 neste caso). Depois de executar o experimento e clicar na porta de saída direita do Modelo de Validação Cruzada, você pode inspecionar os valores métricos para cada dobra, bem como a média e o desvio padrão. As métricas exibidas aqui são semelhantes às discutidas no caso da classificação binária. No entanto, na classificação multiclasse, o cálculo dos verdadeiros positivos/negativos e falsos positivos/negativos é feito contando por classe, pois não há classe geral positiva ou negativa. Por exemplo, ao calcular a precisão ou recordação da classe 'Iris-setosa', assume-se que esta é a classe positiva e todas as outras como negativas.

Validação cruzada de um modelo de classificação multiclasse

Figura 12. Validação cruzada de um modelo de classificação multiclasse.

Resultados de validação cruzada de um modelo de classificação multiclasse

Figura 13. Resultados de validação cruzada de um modelo de classificação multiclasse.