Compartilhar 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 Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. É recomendável fazer a transição para o Azure Machine Learning até essa data.

A partir de 1º de dezembro de 2021, você não poderá criar recursos do Machine Learning Studio (clássico). Até 31 de agosto de 2024, você pode continuar usando os recursos existentes do Machine Learning Studio (clássico).

A documentação do ML Studio (clássico) está sendo desativada e pode não ser atualizada no futuro.

Neste artigo, você pode saber mais sobre as métricas que pode usar para monitorar o desempenho do modelo no Machine Learning Studio (clássico). Avaliar o desempenho de um modelo é um dos estágios principais do processo de ciência de dados. Indica o êxito da pontuação (previsões) de um conjunto de dados feitas por meio de um modelo treinado. O Machine Learning Studio (clássico) dá suporte à avaliação de modelo por meio de dois dos principais módulos de machine learning:

Esses módulos permitem que você veja como o seu modelo é executado em termos de um número de métricas que são usados normalmente em estatísticas e aprendizado de máquina.

A avaliação de modelos deve ser considerada em conjunto com:

Três cenários comuns de aprendizado supervisionado são apresentados:

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

Avaliação versus Validação cruzada

Avaliação e Validação cruzada são as formas padrão de medir o desempenho do seu modelo. Ambas geram métricas de avaliação que você pode inspecionar ou comparar com os outros modelos.

Avaliar Modelo espera um conjunto de dados de pontuação como entrada (ou 2 caso você deseje comparar o desempenho de dois modelos diferentes). Assim, você precisa treinar o modelo usando o módulo Treinar Modelo e fazer previsões em um conjunto de dados usando o módulo Modelo de Pontuação para poder avaliar os resultados. A avaliação se baseia nas probabilidades/rótulos pontuados juntamente com os rótulos verdadeiros, que 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 para avaliar-treinar-pontuar (10 partições) automaticamente em diferentes subconjuntos dos dados de entrada. Os dados de entrada são divididos em 10 partes, em que uma está reservada para teste, e as outras 9 para treinamento. Esse processo é repetido 10 vezes e as métricas de avaliação são transformadas em médias. Isso ajuda a determinar como um modelo seria generalizado para novos conjuntos de dados. O módulo Modelo de Validação Cruzada aproveita um modelo não treinado e alguns conjuntos de dados rotulados e gera os resultados da avaliação de cada uma das 10 partições, além dos resultados médios.

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

Avaliar um Modelo de regressão

Suponha que desejamos prever o preço do carro usando recursos, como dimensões, potência, especificações de mecanismo e assim por diante. Este é um problema comum de regressão, em que a variável de destino (preço) é um valor numérico contínuo. Conseguimos ajustar um modelo de regressão linear que, considerando os valores das características de um determinado carro, pode prever o preço daquele carro. Esse modelo de regressão pode ser usado para a pontuação do mesmo conjunto de dados no qual treinamos. Assim que tivermos previsto os preços dos carros, poderemos avaliar o desempenho do modelo observando quanto, em média, as previsões se desviam dos preços reais. Para ilustrar isso, usamos o Conjunto de dados dos dados de preço de automóvel (Brutos) disponível na seção Conjuntos de Dados Salvos no Azure Machine Learning Studio (clássico).

Criando o experimento

Adicione os seguintes módulos ao workspace no Machine Learning Studio (clássico):

Conecte as portas, conforme mostrado abaixo na Figura 1 e defina a coluna Rótulo do módulo Treinar Modelo como preço.

Avaliar um Modelo de regressão

Figura 1. Avaliar um Modelo de regressão.

Inspecionando os 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 modelos de regressão são: Erro Absoluto Médio, Erro Absoluto Médio de 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 são computados para capturar a magnitude total do erro em todas as instâncias, como a diferença entre o valor previsto e o verdadeiro pode ser negativa em alguns casos. As métricas de erro medem o desempenho de previsão de um modelo de regressão em termos do desvio da média de suas previsões dos valores verdadeiros. Valores mais baixos de erro significam que o modelo é mais preciso para fazer previsões. Uma métrica de erro geral zero significa que o modelo se ajusta aos dados perfeitamente.

O coeficiente de determinação, que também é conhecido como R ao quadrado, também é uma maneira padrão de medir o quão bem o modelo se ajusta aos dados. Ele pode ser interpretado como a proporção da variação explicada pelo modelo. Uma proporção mais alta é melhor nesse caso, em que 1 indica um ajuste perfeito.

Métrica de avaliação de regressão linear

Figura 2. Métrica de avaliação de regressão linear.

Usando Validação Cruzada

Como mencionado anteriormente, você pode executar treinamento, pontuação e avaliações repetidas automaticamente usando o módulo Modelo de Validação Cruzada. Tudo o que você precisa nesse caso é um conjunto de dados, um modelo não treinado e um módulo 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. A validação cruzada em 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 Modelo de Validação Cruzada. Isso fornecerá uma exibição detalhada das métricas para cada iteração (partição) 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.

Avaliar um modelo de classificação binária

Em um cenário de classificação binária, a variável de destino tem somente dois resultados possíveis, por exemplo: {0, 1} ou {falso, verdadeiro}, {negativo, positivo}. Suponha que você terá um conjunto de dados de funcionários adultos com algumas variáveis demográficas e de emprego e que você será 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 funcionários que recebem um valor menor ou igual a 50 mil por ano, e a classe positiva representa todos os outros funcionários. Como no cenário de regressão, podemos treinar um modelo, pontuar alguns dados e avaliar os resultados. As principais diferenças são a opção de métricas que o Machine Learning Studio (clássico) computa e gera. Para ilustrar o cenário de previsão de nível de renda, usaremos o conjunto de dados Adulto para criar um experimento do Studio (clássico) e avaliar o desempenho de um modelo de regressão logística de duas classes, uma classificação binária tipicamente usada.

Criando o experimento

Adicione os seguintes módulos ao workspace no Machine Learning Studio (clássico):

Conecte as portas, conforme mostrado abaixo na Figura 5 e defina a coluna Rótulo do módulo Treinar Modelo como renda.

Avaliar um modelo de classificação binária

Figura 5. Avaliar um modelo de classificação binária.

Inspecionando os 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). A métrica de avaliação disponível para modelos de classificação binária são: Exatidão, Precisão, Recuperação, Pontuação F1 e AUC. Além disso, o módulo gera uma matriz de confusão, mostrando o número de verdadeiros positivos, de falsos negativos, de falsos positivos e de verdadeiros negativos, bem como as curas ROC, Precisão/Recuperação e Elevação.

A precisão é simplesmente a proporção das instâncias classificadas corretamente. Geralmente, ela é a primeira métrica a observar ao avaliar um classificador. No entanto, quando os dados de teste não estão desbalanceados (em que 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 um valor menor ou igual a 50 mil por ano. É possível obter uma precisão de 0,99 prevendo a classe “<=50K” para todas as instâncias. O classificador parece estar fazendo um bom trabalho em geral nesse caso, mas na realidade, ele não consegue classificar qualquer uma das pessoas com um recebimento mais elevado (% 1) corretamente.

Por esse motivo, é útil computar métricas adicionais que capturam aspectos mais específicos da avaliação. Antes de entrar em detalhes sobre essas métricas, é importante compreender 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, o que normalmente chamamos como positivo ou negativo. As instâncias positivas e negativas que um classificador prevê corretamente são chamadas verdadeiros positivos (TP) e verdadeiros negativos (TN), respectivamente. Da mesma forma, as instâncias classificadas incorretamente são chamadas de falsos positivos (FP) 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 inteiros ou boolianos, as instâncias rotuladas como “true” ou “1” serão atribuídas à classe positiva. Se os rótulos forem cadeias de caracteres, como no caso do conjunto de dados de renda, os rótulos serão classificados em ordem alfabética 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 de classificação de renda, queremos fazer várias perguntas de avaliação que nos ajudam a compreender o desempenho do classificador usado. Uma pergunta comum é: “Dentre os indivíduos que o modelo prevê estarem ganhando > 50 K (TP + FP), quantos foram classificados corretamente (TP)?” Essa pergunta pode ser respondida, examinando a Precisão do modelo, que é a proporção de positivos que foram classificados corretamente: TP/(TP + FP). Outra pergunta comum é “Dentre todos os funcionários com renda alta > 50 K (TP + FN), quantos o classificador classifica corretamente (TP)?” Na verdade, isso é a Recuperação ou a taxa de positivos verdadeiros: TP/(TP + FN) do classificador. Você observará que há uma opção óbvia entre a precisão e a recuperação. Por exemplo, dado um conjunto de dados relativamente equilibrado, uma classificação que prevê principalmente instâncias positivas, teria um lembrete alto, mas uma precisão bastante baixa com muitas instâncias negativas deve ser classificada 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 de avaliação (parte superior esquerda da Figura 7).

Resultados da avaliação de classificação binária

Figura 7. Resultados da avaliação de classificação binária.

Outra métrica relacionada usada com frequência é a Pontuação F1, que usa a precisão e a recuperação em consideração. Ela é a média harmônica dessas duas métricas e é calculada como tal: F1 = 2 (precisão x recuperação) / (precisão + recuperação). A pontuação F1 é uma boa maneira de resumir a avaliação de um único número, mas é sempre uma boa prática examinar a precisão e a recuperação para entender melhor como um classificador se comporta.

Além disso, é possível inspecionar a taxa de positivos verdadeiros versus a taxa de falsos positivos na curva ROC (Característica de Operação do Receptor) e o valor correspondente de AUC (Área sob a Curva). Quanto mais próxima essa curva estiver do canto superior esquerdo, melhor estará o desempenho do classificador (que é maximizar a taxa de positivos verdadeiros enquanto minimiza os falsos positivos). As curvas que estão próximas à diagonal do gráfico, o resultado dos classificadores que tendem a fazer previsões próximas à previsão aleatória.

Usando Validação Cruzada

Como no exemplo de regressão, podemos executar validação cruzada para treinar repetidamente, classificar e avaliar os diferentes subconjuntos de dados automaticamente. Da mesma forma, podemos usar o módulo Modelo de Validação Cruzada, 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. Após executar o experimento e clicar na porta de saída à direita do módulo Modelo de Validação Cruzada, podemos ver os valores de métrica de classificação binária para cada partição, além da média e do desvio padrão de cada um.

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

Figura 8. Validação cruzada em 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.

Avaliar um modelo de classificação com multiclass

Neste experimento, usaremos o conjunto de dados popular Íris, que contém instâncias de três diferentes tipos (classes) da planta íris. Há quatro valores de recurso (comprimento/largura da sépala e comprimento/largura da pétala) para cada instância. Nas experiências anteriores, treinamos e testamos os modelos usando os mesmos conjuntos de dados. Aqui, usaremos o módulo Dividir Dados para criar dois subconjuntos de dados, treinar no primeiro e pontuar e avaliar no segundo. O conjunto de dados Íris está disponível publicamente no Repositório de Machine Learning UCI e pode ser baixado usando um módulo Importar Dados.

Criando o experimento

Adicione os seguintes módulos ao workspace no Machine Learning Studio (clássico):

Conecte as portas, conforme mostrado abaixo na Figura 10.

Configure o índice da coluna Rótulo do módulo Treinar Modelo como 5. O conjunto de dados não tem nenhuma 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 serem usadas para treinamento no módulo Dividir Dados (0,7, por exemplo).

Avaliar um classificador Multiclass

Figura 10. Avaliar um classificador Multiclass

Inspecionando os Resultados da avaliação

Execute o experimento e clique na porta de saída de Avaliar Modelo. Os resultados de avaliação são apresentados na forma de uma matriz de confusão, nesse caso. A matriz mostra o real comparado às instâncias previstas para todas as três classes.

Resultados da avaliação de classificação multiclass

Figura 11. Resultados da avaliação de classificação multiclass.

Usando Validação Cruzada

Como mencionado anteriormente, você pode executar treinamento, pontuação e avaliações repetidas automaticamente usando o módulo Modelo de Validação Cruzada. Você precisará de um conjunto de dados, um modelo não treinado e um módulo Modelo de Validação Cruzada (veja a figura abaixo). Novamente, você precisa definir a coluna de rótulo do módulo Modelo de Validação Cruzada (índice de coluna 5 neste caso). Após executar o experimento e clicar na porta de saída à direita do Modelo de Validação Cruzada, você pode inspecionar os valores de métrica para cada partição, além da média e do desvio padrão. As métricas exibidas aqui são semelhantes àquelas discutidas no caso de classificação binária. No entanto, na classificação multiclasse, os verdadeiros positivos/negativos e falsos positivos/negativos de computação são feitos baseados em uma base por classe, pois não há nenhuma classe geral positiva ou negativa. Por exemplo, ao computar a precisão ou o cancelamento da classe “Iris-setosa”, supõe-se que essa seja a classe positiva e todas as outras sejam negativas.

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

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

Resultados da validação cruzada de um modelo de classificação multiclass

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