Redução da perda: uma abordagem iterativa

O módulo anterior apresente o conceito de perda. Neste módulo, você vai aprender como um modelo de machine learning reduz a perda de maneira iterativa.

O aprendizado iterativo pode lembrar você do jogo das crianças "Hot and Cold" para encontrar um objeto escondido, como um dedal. Neste jogo, o "objeto oculto" é o melhor modelo possível. Você vai começar com um palpite impreciso ("O valor de \(w_1\) é 0.") e esperar o sistema informar qual é a perda. Depois, vai tentar outro palpite ("O valor de \(w_1\) é 0,5.") e conferir qual é a perda. Ah, você está esquentando. Na verdade, se você jogar corretamente, a temperatura geralmente vai ficar mais alta. O verdadeiro truque do jogo é tentar encontrar o melhor modelo possível da forma mais eficiente possível.

A figura a seguir sugere o processo iterativo de tentativa e erro que os algoritmos de machine learning usam para treinar um modelo:

O ciclo de migração de atributos e rótulos para modelos e previsões.

Figura 1. Uma abordagem iterativa para treinar um modelo.

Usaremos essa mesma abordagem iterativa durante todo o curso intensivo de machine learning, detalhando várias complicações, principalmente na nuvem tempestada chamada "Modelo (função de previsão)". Estratégias iterativas são predominantes no machine learning, principalmente porque escalonam muito bem para grandes conjuntos de dados.

O "modelo" usa um ou mais atributos como entrada e retorna uma previsão como saída. Para simplificar, considere um modelo que usa um atributo (\(x_1\)) e retorna uma previsão (\(y'\)):

$$ y' = b + w_1x_1 $$

Quais valores iniciais precisamos definir para \(b\) e \(w_1\)? Para problemas de regressão linear, acontece que os valores iniciais não são importantes. Podemos escolher valores aleatórios, mas vamos usar os valores triviais abaixo:

  • \(b\) = 0
  • \(w_1\) = 0

Suponha que o primeiro valor do atributo seja 10. Conectar esse valor de atributo à função de previsão gera:

$$ y' = 0 + 0 \cdot 10 = 0 $$

A parte "Compute Loss" do diagrama é a função de perda que o modelo vai usar. Suponha que usamos a função de perda quadrática. A função de perda aceita dois valores de entrada:

  • \(y'\): a previsão do modelo para os recursos x
  • \(y\): o rótulo correto correspondente aos recursos x.

Finalmente, chegamos à parte "Atualizações de parâmetros do Compute" do diagrama. É aqui que o sistema de machine learning examina o valor da função de perda e gera novos valores para \(b\) e \(w_1\). Por enquanto, suponha que essa caixa misteriosa defina novos valores e, em seguida, o sistema de machine learning reavalie todos esses atributos em relação a todos os rótulos, gerando um novo valor para a função de perda, o que produz novos valores de parâmetros. O aprendizado continua iterando até que o algoritmo descubra os parâmetros do modelo com a menor perda possível. Normalmente, você itera até que a perda geral pare de mudar ou, pelo menos, mude muito lentamente. Quando isso acontece, dizemos que o modelo convergente.