Use um widget interativo de preparação de dados em um notebook Amazon SageMaker Studio Classic para obter insights de dados - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use um widget interativo de preparação de dados em um notebook Amazon SageMaker Studio Classic para obter insights de dados

Use o widget de preparação de dados Data Wrangler para interagir com seus dados, obter visualizações, explorar insights acionáveis e corrigir problemas de qualidade de dados.

Você pode acessar o widget de preparação de dados em um notebook Amazon SageMaker Studio Classic. Para cada coluna, o widget cria uma visualização que ajuda você a entender melhor sua distribuição. Se uma coluna tiver problemas de qualidade de dados, um aviso será exibido em seu cabeçalho.

Para ver os problemas de qualidade dos dados, selecione o cabeçalho da coluna que mostra o aviso. Você pode usar as informações obtidas dos insights e das visualizações para aplicar as transformações integradas do widget e ajudá-lo a corrigir os problemas.

Por exemplo, o widget pode detectar que você tem uma coluna com apenas um valor exclusivo e mostrar um aviso. O aviso fornece a opção de remover a coluna do conjunto de dados.

Conceitos básicos com execução de widget

Use as seguintes informações para ajudá-lo a começar a executar um bloco de anotações.

Abra um caderno no Amazon SageMaker Studio Classic. Para obter informações sobre como abrir um bloco de anotações, consulte Crie ou abra um notebook Amazon SageMaker Studio Classic.

Importante

Para executar o widget, o bloco de anotações deve usar uma das seguintes imagens:

  • Python 3 (Ciência de dados) com Python 3.7

  • Python 3 (Ciência de dados 2.0) com Python 3.8

  • Python 3 (Ciência de dados 3.0) com Python 3.10

  • SparkAnalytics 1.0

  • SparkAnalytics 2.0

Para obter mais informações sobre imagens, consulte SageMaker Imagens da Amazon disponíveis para uso com o Studio Classic.

Use o código a seguir para importar o widget de preparação de dados e os pandas. O widget usa dataframes pandas para analisar seus dados.

import pandas as pd import sagemaker_datawrangler

O código de exemplo a seguir carrega um arquivo no quadro de dados chamado df.

df = pd.read_csv("example-dataset.csv")

Você pode usar um conjunto de dados em qualquer formato que possa ser carregado como um objeto de dataframe pandas. Para obter mais informações sobre formatos de pandas, consulte Ferramentas de E/S (texto,CSV,HDF5,...).

A célula a seguir executa a variável df para iniciar o widget.

df

A parte superior do dataframe apresenta as seguintes opções:

  • Exibir a tabela de pandas — alterna entre a visualização interativa e uma tabela de pandas.

  • Use todas as linhas do seu conjunto de dados para calcular os insights. Usar todo o conjunto de dados pode aumentar o tempo necessário para gerar os insights. — Se você não selecionar a opção, o Data Wrangler calcula os insights das primeiras 10.000 linhas do conjunto de dados.

O quadro de dados mostra as primeiras 1000 linhas do conjunto de dados. Cada cabeçalho de coluna tem um gráfico de barras empilhadas que mostra as características da coluna. Ele mostra a proporção de valores válidos, valores inválidos e valores ausentes. Você pode passar o mouse sobre as diferentes partes do gráfico de barras empilhadas para obter as porcentagens calculadas.

Cada coluna tem uma visualização no cabeçalho. Veja a seguir os tipos de visualizações que as colunas podem ter:

  • Categórico — Gráfico de barras

  • Numérico — Histograma

  • Data e hora — Gráfico de barras

  • Texto — Gráfico de barras

Para cada visualização, o widget de preparação de dados destaca os valores discrepantes em laranja.

Quando você escolhe uma coluna, ela abre um painel lateral. O painel lateral mostra a guia Insights. O painel fornece uma contagem para os seguintes tipos de valores:

  • Valores inválidos — Valores cujo tipo não corresponde ao tipo de coluna.

  • Valores ausentes — Valores que estão ausentes, como NaN ou None.

  • Valores válidos — Valores que não estão ausentes nem são inválidos.

Para colunas numéricas, a guia Insights mostra as seguintes estatísticas resumidas:

  • Mínimo — O menor valor.

  • Máximo — O maior valor.

  • Média — A média dos valores.

  • Modo — O valor que aparece com mais frequência.

  • Desvio padrão — O desvio padrão dos valores.

Para colunas categóricas, a guia Insights mostra as seguintes estatísticas resumidas:

  • Valores exclusivos — O número de valores exclusivos na coluna.

  • Top — O valor que aparece com mais frequência.

As colunas que têm ícones de aviso em seus cabeçalhos têm problemas de qualidade de dados. A escolha de uma coluna abre uma guia Qualidade de dados que você pode usar para encontrar transformações que ajudem a corrigir o problema. Um aviso apresenta um dos seguintes níveis de severidade:

  • Baixo — Problemas que podem não afetar sua análise, mas podem ser úteis para serem corrigidos.

  • Médio — Problemas que provavelmente afetarão sua análise, mas provavelmente não são essenciais para serem corrigidos.

  • Alto — Problemas graves que recomendamos que sejam corrigidos.

nota

O widget classifica a coluna para mostrar os valores que têm problemas de qualidade de dados na parte superior do quadro de dados. Também destaca os valores que estão causando os problemas. A cor do destaque corresponde ao nível de severidade.

Em SUGGESTEDTRANSFORMS, você pode escolher uma transformação para corrigir o problema de qualidade dos dados. O widget pode oferecer várias transformações que podem resolver o problema. Ele pode oferecer recomendações para as transformações mais adequadas ao problema. Você pode mover o cursor sobre a transformação para obter mais informações sobre ela.

Para aplicar uma transformação ao conjunto de dados, escolha Aplicar e exportar código. A transformação modifica o conjunto de dados e atualiza a visualização com valores modificados. O código para a transformação aparece na célula a seguir do bloco de anotações. Se você aplicar transformações adicionais ao conjunto de dados, o widget anexará as transformações à célula. Você pode usar o código gerado pelo widget para fazer o seguinte:

  • Personalize-o para melhor atender às suas necessidades.

  • Use-o em seus próprios fluxos de trabalho.

Você pode reproduzir todas as transformações que você fez executando novamente todas as células no bloco de anotações.

O widget pode fornecer informações e avisos para a coluna de destino. A coluna de destino é a coluna que você está tentando prever. Use o procedimento a seguir para obter insights da coluna de destino.

Para obter insights da coluna de destino, faça o seguinte.

  1. Escolha a coluna que você está usando como coluna de destino.

  2. Escolha Selecionar como coluna de destino.

  3. Escolha o tipo de problema. Os insights e avisos do widget são personalizados de acordo com os tipos de problemas. Os tipos de problemas são os seguintes:

    • Classificação — A coluna de destino tem dados categóricos.

    • Regressão — A coluna de destino tem dados numéricos.

  4. Escolha Executar.

  5. (Opcional) Em Insights da coluna de destino, escolha uma das transformações sugeridas.

Referência para os insights e transformações no widget

Para colunas de recursos (colunas que não são a coluna de destino), você pode obter os seguintes insights para avisá-lo sobre problemas com seu conjunto de dados.

  • Valores ausentes — A coluna tem valores ausentes None, como NaN (não é um número) ou NaT (não é um carimbo de data/hora). Muitos algoritmos de aprendizado de máquina não suportam valores ausentes nos dados de entrada. Preenchê-los ou eliminar as linhas com dados ausentes é, portanto, uma etapa crucial de preparação de dados. Se o aviso de valores ausentes for exibido, é possível usar uma das seguintes transformações para corrigir o problema.

    • Eliminar linhas ausentes — Elimina linhas com valores ausentes. Recomendamos eliminar as linhas quando a porcentagem de linhas com dados ausentes for pequena e a imputação dos valores ausentes não for apropriada.

    • Substituir por um novo valor — Substitui os valores textuais ausentes por Other. Você pode mudar Other para um valor diferente no código de saída. Substitui os valores numéricos ausentes por 0.

    • Substituir pela média — Substitui os valores faltantes pela média da coluna.

    • Substituir pela média — Substitui os valores faltantes pela média da coluna.

    • Eliminar coluna — Elimina a coluna com valores ausentes do conjunto de dados. Recomendamos descartar a coluna inteira quando houver uma alta porcentagem de linhas com dados ausentes.

  • Valores faltantes disfarçados — A coluna tem valores faltantes disfarçados. Um valor ausente disfarçado é um valor que não está explicitamente codificado como um valor ausente. Por exemplo, em vez de usar NaN a para indicar um valor ausente, o valor pode ser Placeholder. Você pode usar uma das seguintes transformações para lidar com os valores ausentes:

    • Eliminar linhas ausentes — Elimina linhas com valores ausentes

    • Substituir por um novo valor — Substitui os valores textuais ausentes por Other. Você pode mudar Other para um valor diferente no código de saída. Substitui os valores numéricos ausentes por 0.

  • Coluna constante — A coluna tem apenas um valor. Portanto, não tem poder preditivo. É altamente recomendável usar a transformação Eliminar coluna para remover a coluna do conjunto de dados.

  • Coluna de ID — A coluna não tem valores repetidos. Todos os valores na coluna são exclusivos. Elas podem ser uma IDs ou duas chaves de banco de dados. Sem informações adicionais, a coluna não tem poder preditivo. É altamente recomendável usar a transformação Eliminar coluna para remover a coluna do conjunto de dados.

  • Alta cardinalidade — A coluna tem uma alta porcentagem de valores exclusivos. A alta cardinalidade limita o poder preditivo das colunas categóricas. Examine a importância da coluna em sua análise e considere usar a transformação Eliminar coluna para eliminá-la.

Para a coluna de destino, você pode obter os seguintes insights para avisá-lo sobre problemas com seu conjunto de dados. Você pode usar a transformação sugerida fornecida com o aviso para corrigir o problema.

  • Tipos de dados mistos no alvo (regressão) — Há alguns valores não numéricos na coluna de destino. Pode haver erros na entrada de dados. Recomendamos remover as linhas que têm valores que não podem ser convertidos.

  • Rótulo frequente — Certos valores na coluna de destino aparecem com mais frequência do que o normal no contexto da regressão. Pode haver um erro na coleta ou processamento de dados. Uma categoria que aparece com frequência pode indicar que o valor é usado como valor padrão ou que é um espaço reservado para valores ausentes. Recomendamos usar a transformação Substituir por um novo valor para substituir os valores ausentes por Other.

  • Poucas instâncias por classe — A coluna de destino tem categorias que raramente aparecem. Algumas das categorias não têm linhas suficientes para que a coluna de destino seja útil. Você pode usar uma das seguintes transformações:

    • Derrube um alvo raro — Derruba valores únicos com menos de dez observações. Por exemplo, descarta o valor cat se ele aparecer nove vezes na coluna.

    • Substitua o alvo raro — substitui as categorias que raramente aparecem no conjunto de dados pelo valor. Other

  • Classes muito desequilibradas (classificação multiclasse) — Há categorias no conjunto de dados que aparecem com muito mais frequência do que as outras categorias. O desequilíbrio de classes pode afetar a precisão da previsão. Para obter as previsões mais precisas possíveis, recomendamos atualizar o conjunto de dados com linhas que tenham as categorias que atualmente aparecem com menos frequência.

  • Grande quantidade de classes/muitas classes — Há um grande número de classes na coluna de destino. Ter muitas aulas pode resultar em tempos de treinamento mais longos ou em baixa qualidade preditiva. Recomendamos seguir um destes procedimentos:

    • Agrupando algumas das categorias em sua própria categoria. Por exemplo, se seis categorias estiverem intimamente relacionadas, recomendamos usar uma única categoria para elas.

    • Usando um algoritmo de ML que seja resiliente a várias categorias.