Engenharia automática de recursos
Com a engenharia automática de recursos, o Qlik AutoML pode usar recursos existentes em seus dados de treinamento para criar novos recursos. Esses novos recursos de engenharia automática permitem descobrir novos padrões em seus dados e podem melhorar muito o desempenho de seus modelos de aprendizado de máquina.
A engenharia de recursos é o processo de criação de novas colunas de recursos a partir das atuais. O AutoML pode realizar engenharia de recursos automaticamente para melhorar o manuseio de determinados tipos de dados. Para obter informações gerais sobre engenharia de recursos, consulte Criando novas colunas de recursos.
Os recursos de data de engenharia automática e os recursos principais dos quais são derivados são marcados com um ícone .
Depois de selecionar um conjunto de dados para uso em seu experimento, o conjunto de dados é analisado e as colunas dentro dele são identificadas como contendo determinados tipos de dados. Esses tipos de dados permitem que o AutoML atribua um tipo de recurso a cada coluna do conjunto de dados. Cada coluna recebe um dos seguintes tipos de recursos:
-
Categórico
-
Numérico
-
Data
-
Texto livre
Quando possível, o AutoML exibe uma lista de recursos de engenharia automática que podem ser criados a partir de recursos pai qualificados. Esta lista de recursos de engenharia automática é ainda mais refinada e reduzida à medida que o pré-processamento começa. A inclusão de recursos de engenharia automática em seu experimento é recomendada, mas é opcional. Você pode remover recursos individuais de engenharia automática antes de iniciar o treinamento e ao configurar cada nova versão do experimento.
Para obter mais informações sobre os processos concluídos antes do início do treinamento experimental, consulte Preparação e transformação automática de dados.
Engenharia de recursos de data
O AutoML gera recursos de engenharia automática a partir de colunas qualificadas com o tipo de recurso de data, que foram identificadas como contendo informações de data e hora. Os recursos de data de engenharia automática e os recursos principais dos quais são derivados são marcados com um ícone .
Quando o Qlik Cloud Analytics cria o perfil do conjunto de dados de treinamento selecionado para uso no AutoML, ele vincula determinados tipos de dados ao tipo de recurso de data. Isso inclui os seguintes tipos de dados:
-
Data
-
Data/hora
-
Tempo
-
Carimbo de data/hora
Os recursos aos quais qualquer um desses tipos de dados é atribuído durante a criação de perfil recebem o tipo de recurso de data. Para obter informações sobre as estatísticas de perfil disponíveis que podem ser visualizadas para seus campos de dados, consulte Exibição em lista de perfis.
Quando possível, o AutoML exibe uma lista de recursos de data projetados automaticamente que podem ser criados a partir de recursos pai qualificados que possuem o tipo de recurso de data. Os recursos de data projetados automaticamente são incluídos no experimento por padrão. Se você optar por incluí-los, os novos recursos serão gerados após a v1 do experimento.
Os recursos de data com engenharia automática têm o tipo de recurso numérico. Eles estão incluídos no experimento por padrão, mas são opcionais. Você pode remover alguns ou todos eles antes de iniciar o treinamento experimental ou ao configurar a próxima versão do experimento. Quando recursos de data projetados automaticamente são incluídos, o recurso de data pai original é removido do experimento.
Em vez disso, você pode incluir o recurso de data pai como um recurso categórico ou numérico. Ao fazer isso, os recursos de data projetados automaticamente não podem mais ser usados. Na maioria dos casos, é recomendável usar os recursos projetados automaticamente disponíveis em seu experimento, porque eles trazem desempenho aprimorado para seus modelos de aprendizado de máquina. No entanto, pode haver cenários em que uma coluna é identificada como um recurso de data, mas você precisa que ela seja tratada como categórica ou numérica. Nesses casos, você pode alterar manualmente o tipo de recurso.
Os recursos de data de engenharia automática não contam para o tamanho do conjunto de dados AutoML (contagens máximas de células em conjuntos de dados de treinamento e conjuntos de dados de aplicação) que foi especificado em sua assinatura do Qlik Cloud. Somente as células da coluna de data original são contadas.
Usando recursos de data como alvo do experimento
No caso raro em que você deseja usar um recurso com informações de data e hora como alvo de seu experimento, o tipo de recurso da coluna será alterado de data para categórico e os recursos de engenharia automática serão removidos. Se você selecionar outro alvo e, posteriormente, desejar adicionar o recurso de data e hora como um recurso regular; será necessário alterá-lo de volta para o tipo de recurso de data manualmente, se necessário. Se você retornar o recurso para o tipo de recurso de data, os recursos de data com engenharia automática serão gerados novamente.
Para obter mais informações sobre como alterar os tipos de recursos, consulte Alterando os tipos de recursos.
Recursos de data de engenharia automática disponíveis
Ao gerar recursos de data projetados automaticamente a partir de uma coluna no seu conjunto de dados, o AutoML extrai e calcula componentes específicos de cada data e valor de data e hora, isolando cada componente em sua própria coluna. A tabela abaixo lista os recursos de engenharia automática que podem ser gerados pelo AutoML.
Recurso de engenharia automática | Tipo de dados | Tipo de recurso | Descrição |
---|---|---|---|
YEAR | Inteiro | Numérico | Campo de ano analisado diretamente da data ou carimbo de data/hora de origem. |
MONTH | Inteiro | Numérico | Campo de mês analisado diretamente da data ou carimbo de data/hora de origem. |
DAY | Inteiro | Numérico | Campo de dia analisado diretamente da data ou carimbo de data/hora de origem. |
HOUR | Inteiro | Numérico | Campo de hora analisado diretamente do carimbo de data/hora de origem. |
MINUTE | Inteiro | Numérico | Campo de minuto analisado diretamente do carimbo de data/hora de origem. |
SECOND | Inteiro | Numérico | Campo de segundo analisado diretamente do carimbo de data/hora de origem. |
DAYOFWEEK | Inteiro | Numérico | Dia da semana, calculado a partir do dia, mês e ano de origem. |
WEEK | Inteiro | Numérico | Semana do ano, calculada a partir do dia, mês e ano de origem. |
Para cada novo recurso criado, o nome da coluna original é sufixado pelo recurso de engenharia automática aplicável.
Recursos de data com engenharia automática em previsões
Os recursos de data com engenharia automática são gerados ao usar o conjunto de dados de treinamento para criar um modelo, que é implementado e usado como uma implementação de ML para fazer previsões sobre novos dados (o conjunto de dados de aplicação).
Quando um modelo treinado com recursos de data de engenharia automática é implementado para fazer previsões, o conjunto de dados de aplicação no qual você está gerando previsões não precisa incluir os recursos de data de engenharia automática. O AutoML gera os recursos de engenharia automática para o conjunto de dados de aplicação antes da previsão. No entanto, o conjunto de dados de aplicação deve incluir o recurso de data pai e a coluna deve ter o perfil criado como tendo o tipo de dados Data, Data/hora, Carimbo de data/hora ou Hora.
Os conjuntos de dados de previsão criados por uma implementação de ML, incluindo conjuntos de dados SHAP e de aplicação, incluirão os recursos de data de engenharia automática.
Recursos de data com engenharia automática em previsões em tempo real
Para que a API de previsões em tempo real possa processar seus campos de data e carimbo de data/hora, a carga JSON enviada para a API de previsões em tempo real deve seguir os requisitos abaixo:
-
Os valores de data e de data/hora devem ser strings formatadas de acordo com os padrões ISO 8601
-
Os dados dentro de cada coluna precisam estar no mesmo fuso horário
Tratamento de dados de texto livre
Texto livre (por exemplo, dados de strings textuais inseridos em formulários) requer processamento especial por algoritmos de aprendizado de máquina para ser útil em um modelo. No Qlik AutoML, o processamento de texto livre é uma forma de engenharia automática de recursos. Tecnicamente falando, esse processamento utiliza o método TF-IDF (frequência de termo - frequência inversa de documento).
O AutoML oferece suporte ao processamento separado para recursos com dados de texto livre em inglês.
Se uma coluna em seus dados de treinamento contiver texto livre, será atribuído a ela o tipo de recurso de texto livre. Também pode ser usado como um recurso categórico, embora isso seja fortemente desencorajado se tiver alta cardinalidade (muitos valores únicos).
Você pode selecionar no máximo três colunas para serem usadas como recursos de texto livre em um experimento.
Requisitos para codificação de texto livre
Para que uma coluna contendo texto livre seja codificada com sucesso como texto livre, ela deve atender a dois requisitos. Esses requisitos são verificados em diferentes estágios da criação do experimento.
Os requisitos são:
-
A coluna deve ter um comprimento médio de 50 caracteres ou mais.
-
A coluna deve ter um comprimento médio de palavras de cinco ou mais palavras.
Tratando um recurso como texto livre
O processo de tratar um recurso como texto livre é o seguinte:
-
Quando você seleciona seus dados de treinamento, o Qlik AutoML identifica recursos que podem ser processados como texto livre. Eles são marcados com o insight Possível texto livre na exibição do esquema e terão o tipo de recurso de texto livre.
-
Depois de executar a v1 do experimento, a análise adicional será concluída. Neste ponto, os recursos inicialmente marcados como possível texto livre podem ser considerados inutilizáveis como recursos de texto livre.
Se os recursos que não podem ser utilizados como texto livre tiverem alta cardinalidade, é recomendável desmarcá-los do experimento. Esses recursos, quando tratados como categóricos, não agregam valor ao desempenho do modelo.
Se os recursos que não podem ser usados como texto livre não tiverem alta cardinalidade, você poderá incluí-los em seu experimento clicando em Tratar como categórico ou alterando seu Tipo de recurso de texto livre para categórico. Se você deixar o tipo de recurso como texto livre, ele também será tratado internamente como categórico e terá codificação de impacto.
Para obter detalhes completos sobre o pré-processamento, consulte Preparação e transformação automática de dados.
Para obter mais informações sobre cada um dos insights mostrados na visualização de esquema, consulte Exibindo ideias sobre os dados de treinamento.
Usando um recurso de texto livre como alvo do experimento
Em casos raros, um recurso de texto livre pode ser selecionado como destino. Se o recurso atender a todos os requisitos para codificação de texto livre e contiver entre dois e dez valores exclusivos, ele poderá ser usado como destino. Nestes cenários, o experimento é definido como um problema de classificação binária padrão ou de classificação multiclasse.
Recursos de texto livre em previsões
Quando você implementa um modelo treinado com um recurso de texto livre, a implementação de ML resultante pode gerar previsões, desde que os seguintes requisitos sejam atendidos para o conjunto de dados de aplicação:
-
Os nomes das colunas do recurso correspondem entre o conjunto de dados de treinamento e o conjunto de dados de aplicação
-
A coluna no conjunto de dados de aplicação, que corresponde ao recurso de texto livre nos dados de treinamento, contém dados de string
Considerações
A inclusão de recursos de texto livre em seu experimento aumenta a complexidade do experimento e dos processos necessários para executá-lo. É possível que os gráficos de Importância de permutação não estejam disponíveis para os modelos resultantes se seus dados de texto livre forem complexos o suficiente.
Solução de problemas
Usar dados de texto livre para treinar um modelo pode ser um processo que consome muitos recursos. Você pode encontrar um erro ao incluir colunas de texto livre contendo um grande número de palavras exclusivas como recursos.
Aqui estão algumas diretrizes para resolver esses erros:
-
Reduza o subconjunto de dados no seu conjunto de dados de treinamento para incluir menos linhas de texto livre.
-
Remova recursos de texto livre que você não precisa incluir no treinamento do modelo.
-
Trate uma ou mais colunas de texto livre como recursos categóricos, em vez de texto livre. Observe que isso não é recomendado se esses recursos de texto livre contiverem alta cardinalidade.