Dados numéricos: como um modelo ingere dados usando vetores de atributo

Até agora, demos a impressão de que um modelo atua diretamente nas linhas de um conjunto de dados. No entanto, os modelos consomem dados de maneira um pouco diferente.

Por exemplo, suponha que um conjunto de dados forneça cinco colunas, mas apenas duas delas (b e d) sejam recursos no modelo. Ao processar o exemplo na linha 3, o modelo simplesmente extrai o conteúdo das duas células destacadas (3b e 3d) da seguinte maneira?

Figura 1. Um modelo que consome um exemplo diretamente de um conjunto de dados.
            As colunas b e d da linha 3 estão destacadas.
Figura 1. Não é exatamente como um modelo recebe os exemplos.

Na verdade, o modelo ingere uma matriz de valores de ponto flutuante chamada de vetor de atributos. Pense em um vetor de recursos como os valores de ponto flutuante que compõem um exemplo.

Figura 2. O vetor de características é um intermediário entre o conjunto de dados
            e o modelo.
Figura 2. Mais próximo da verdade, mas não realista.

No entanto, os vetores de atributos raramente usam os valores brutos do conjunto de dados. Em vez disso, normalmente é necessário processar os valores do conjunto de dados em representações que o modelo possa aprender melhor. Um vetor de recursos mais realista pode ser parecido com este:

Figura 3. O vetor de recursos contém dois valores de ponto flutuante: 0,13 e 0,47. Um vetor de recurso mais realista.
Figura 3. Um vetor de recurso mais realista.

Um modelo não produziria previsões melhores com base no treinamento dos valores reais no conjunto de dados do que com os valores alterados? Surpreendentemente, a resposta é não.

É necessário determinar a melhor maneira de representar os valores do conjunto de dados brutos como valores treináveis no vetor de recursos. Esse processo é chamado de engenharia de atributos, e é uma parte vital do aprendizado de máquina. As técnicas mais comuns de engenharia de atributos são:

Esta unidade aborda a normalização e o agrupamento. A próxima unidade, Como trabalhar com dados categóricos, aborda outras formas de pré-processamento, como converter dados não numéricos, como strings, em valores de ponto flutuante.

Todos os valores em um vetor de recursos precisam ser de ponto flutuante. No entanto, muitos recursos são naturalmente strings ou outros valores não numéricos. Consequentemente, uma grande parte da engenharia de recursos representa valores não numéricos como valores numéricos. Você vai encontrar muito disso nos próximos módulos.