Configurações avançadas de treinamento - AWS IoT SiteWise

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á.

Configurações avançadas de treinamento

Configuração da taxa de amostragem

A taxa de amostragem define a frequência com que as leituras do sensor são registradas (por exemplo, uma vez a cada segundo ou uma vez a cada minuto). Essa configuração afeta diretamente a granularidade dos dados de treinamento e influencia a capacidade do modelo de capturar variações de curto prazo no comportamento do sensor.

Visite Amostragem para dados de alta frequência e consistência entre treinamento e inferência para saber mais sobre as melhores práticas.

Configurar a taxa de amostragem alvo

Opcionalmente, você pode especificar a TargetSamplingRate em sua configuração de treinamento para controlar a frequência com que os dados são amostrados. Os valores compatíveis são:

PT1S | PT5S | PT10S | PT15S | PT30S | PT1M | PT5M | PT10M | PT15M | PT30M | PT1H

Esses são formatos de duração ISO 8601, representando os seguintes formatos de hora:

  • PT1S= 1 segundo

  • PT1M= 1 minuto

  • PT1H= 1 hora

Escolha uma taxa de amostragem que atinja o equilíbrio certo entre resolução de dados e eficiência do treinamento. As seguintes tarifas estão disponíveis:

  • Taxas de amostragem mais altas (PT1S) oferecem detalhes mais precisos, mas podem aumentar o volume de dados e o tempo de treinamento.

  • Taxas de amostragem mais baixas (PT10M,PT1H) reduzem o tamanho e o custo dos dados, mas podem ignorar anomalias de curta duração.

Lidando com o desalinhamento do timestamp

AWS IoT SiteWise compensa automaticamente o desalinhamento do timestamp em vários fluxos de dados durante o treinamento. Isso garante um comportamento consistente do modelo, mesmo que os sinais de entrada não estejam perfeitamente alinhados no tempo.

Visite Amostragem para dados de alta frequência e consistência entre treinamento e inferência para saber mais sobre as melhores práticas.

Ativar amostragem

Adicione o código a seguir anomaly-detection-training-payload.json a.

Configure a amostragem adicionando TargetSamplingRate a carga útil da ação de treinamento, com a taxa de amostragem dos dados. Os valores permitidos são:PT1S | PT5S | PT10S | PT15S | PT30S | PT1M | PT5M | PT10M | PT15M | PT30M | PT1H.

{ "exportDataStartTime": StartTime, "exportDataEndTime": EndTime, "targetSamplingRate": "TargetSamplingRate" }
exemplo de uma configuração de taxa de amostragem:
{ "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360, "targetSamplingRate": "PT1M" }

Rotule seus dados

Ao rotular seus dados, você deve definir intervalos de tempo que representem períodos de comportamento anormal do equipamento. Essas informações de rotulagem são fornecidas como um CSV arquivo, onde cada linha especifica um intervalo de tempo durante o qual o equipamento não estava operando corretamente.

Cada linha contém dois carimbos de data/hora:

  • A hora de início, indicando quando se acredita que um comportamento anormal tenha começado.

  • A hora de término, representando quando a falha ou problema foi observado pela primeira vez.

Esse arquivo CSV é armazenado em um bucket do Amazon S3 e é usado durante o treinamento do modelo para ajudar o sistema a aprender com exemplos conhecidos de comportamento anormal. O exemplo a seguir mostra como os dados da etiqueta devem aparecer como um .csv arquivo. O arquivo não tem cabeçalho.

exemplo de um arquivo CSV:
2024-06-21T00:00:00.000000,2024-06-21T12:00:00.000000 2024-07-11T00:00:00.000000,2024-07-11T12:00:00.000000 2024-07-31T00:00:00.000000,2024-07-31T12:00:00.000000

A linha 1 representa um evento de manutenção em 21 de junho de 2024, com uma janela de 12 horas (de 2024-06-21T00:00:00.000000Z até2024-06-21T12:00:00.000000Z) AWS IoT SiteWise para procurar comportamentos anormais.

A linha 2 representa um evento de manutenção em 11 de julho de 2024, com uma janela de 12 horas (de 2024-07-11T00:00:00.000000Z até2024-07-11T12:00:00.000000Z) AWS IoT SiteWise para procurar comportamentos anormais.

A linha 3 representa um evento de manutenção em 31 de julho de 2024, com uma janela de 12 horas (de 2024-07-31T00:00:00.000000Z até2024-07-31T12:00:00.000000Z) AWS IoT SiteWise para procurar comportamentos anormais.

AWS IoT SiteWise usa todas essas janelas de tempo para treinar e avaliar modelos que podem identificar comportamentos anormais em torno desses eventos. Observe que nem todos os eventos são detectáveis e os resultados são altamente dependentes da qualidade e das características dos dados subjacentes.

Para obter detalhes sobre as melhores práticas de amostragem, consultePráticas recomendadas.

Etapas de marcação de dados

{ "exportDataStartTime": StartTime, "exportDataEndTime": EndTime, "labelInputConfiguration": { "bucketName": "label-bucket", "prefix": "files-prefix" } }
exemplo de uma configuração de etiqueta:
{ "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360, "labelInputConfiguration": { "bucketName": "anomaly-detection-customer-data-278129555252-iad", "prefix": "Labels/model=b2d8ab3e-73af-48d8-9b8f-a290bef931b4/asset[d3347728-4796-4c5c-afdb-ea2f551ffe7a]/Lables.csv" } }

Avaliar seu modelo

O diagnóstico pontual do modelo para um modelo de AWS IoT SiteWise treinamento é uma avaliação do desempenho do modelo em eventos individuais. Durante o treinamento, AWS IoT SiteWise gera uma pontuação de anomalia e diagnósticos de contribuição do sensor para cada linha no conjunto de dados de entrada. Uma pontuação de anomalia mais alta indica uma maior probabilidade de um evento anormal.

Diagnósticos pontuais estão disponíveis quando você treina um modelo com ExecuteActionAPI e tipo de AWS/ANOMALY_DETECTION_TRAINING ação.

Para configurar a avaliação do modelo,

nota

O intervalo de avaliação do modelo (dataStartTimetodataEndtime) deve se sobrepor ou ser contíguo ao intervalo de treinamento. Nenhuma lacuna é permitida.

{ "exportDataStartTime": StartTime, "exportDataEndTime": EndTime, "modelEvaluationConfiguration": { "dataStartTime": evaluationStartTime, "dataEndTime": evaluationEndTime "resultDestination": { "bucketName": "s3BucketName", "prefix": "bucketPrefix" } } }
exemplo de uma configuração de avaliação do modelo:
{ "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360, "modelEvaluationConfiguration": { "dataStartTime": 1722789360, "dataEndTime": 1725174000, "resultDestination": { "bucketName": "anomaly-detection-customer-data-278129555252-iad", "prefix": "Evaluation/asset[d3347728-4796-4c5c-afdb-ea2f551ffe7a]/1747681026-evaluation_results.jsonl" } } }

Gere métricas de modelo

As métricas do modelo fornecem informações abrangentes sobre o desempenho e a qualidade de seus modelos treinados de detecção de anomalias. O processo de treinamento gera automaticamente essas métricas e as publica em seu bucket específico do Amazon S3, tornando-as facilmente acessíveis para análise, comparação de modelos e decisões de promoção em fluxos de trabalho de reciclagem.

Entendendo as métricas do modelo

O processo de treinamento gera automaticamente métricas de modelo e fornece informações detalhadas sobre:

  • Desempenho do modelo: medidas quantitativas como precisão, recall e AUC quando os dados rotulados estão disponíveis

  • Qualidade dos dados: informações sobre os dados de treinamento usados e os períodos abrangidos

  • Detecção de eventos: estatísticas sobre anomalias identificadas e eventos rotulados

  • Comparação de modelos: métricas de comparação entre diferentes versões do modelo durante o reciclagem

Configurar o destino das métricas do modelo

Para permitir a geração de métricas do modelo, configure um destino do Amazon S3 onde as métricas sejam publicadas.

  1. Configure seu bucket Amazon S3 de acordo com o. Pré-requisitos de avaliação do modelo

  2. Adicione o seguinte à sua carga de ação de treinamento para especificar onde as métricas do modelo devem ser armazenadas:

    { "trainingMode": "TRAIN_MODEL", "exportDataStartTime": StartTime, "exportDataEndTime": EndTime, "modelMetricsDestination": { "bucketName": "bucket-name", "prefix": "prefix" } }
    exemplo Exemplo de configuração de métricas do modelo
    { "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360, "modelMetricsDestination": { "bucketName": "anomaly-detection-metrics-bucket-123456789012-iad", "prefix": "ModelMetrics/computation-model-id/asset-id/training-metrics.json" } }

Configurar métricas do modelo para reciclagem

Quando você configura os cronogramas de reciclagem, o destino das métricas do modelo é necessário para permitir o rastreamento e a comparação abrangentes do desempenho do modelo:

{ "trainingMode": "START_RETRAINING_SCHEDULER", "modelMetricsDestination": { "bucketName": "bucket-name", "prefix": "prefix" }, "retrainingConfiguration": { "lookbackWindow": "P180D", "promotion": "SERVICE_MANAGED", "retrainingFrequency": "P30D", "retrainingStartDate": "StartDate" } }
Parâmetros
bucketName

Bucket do Amazon S3 onde as métricas do modelo serão armazenadas

prefix

Amazon S3 prefix/path para organizar arquivos de métricas de modelo

Estrutura de métricas do modelo

As métricas do modelo são armazenadas como arquivos JSON em seu bucket do Amazon S3 na seguinte estrutura:

{ "labeled_ranges": [], "labeled_event_metrics": { "num_labeled": 0, "num_identified": 0, "total_warning_time_in_seconds": 0 }, "predicted_ranges": [], "unknown_event_metrics": { "num_identified": 0, "total_duration_in_seconds": 0 }, "data_start_time": "2023-11-01", "data_end_time": "2023-12-31", "labels_present": false, "model_version_metrics": { "precision": 1.0, "recall": 1.0, "mean_fractional_lead_time": 0.7760964912280702, "auc": 0.5971207364893062 } }
Métricas-chave
labeled_ranges

Intervalos de tempo em que as anomalias rotuladas foram fornecidas durante o treinamento

labeled_event_metrics

Estatísticas sobre o quão bem o modelo identificou eventos rotulados conhecidos

num_labeled

Número total de eventos rotulados nos dados de treinamento

num_identified

Número de eventos rotulados que o modelo identificou corretamente

total_warning_time_in_seconds

Tempo total que o modelo passou no estado de aviso para eventos rotulados

predicted_ranges

Intervalos de tempo em que o modelo previu anomalias durante a avaliação

unknown_event_metrics

Estatísticas sobre anomalias detectadas em dados não identificados

data_start_time / data_end_time

Janela de tempo coberta pelos dados de treinamento

labels_present

Booleano indicando se os dados rotulados foram usados durante o treinamento

model_version_metrics

Métricas adicionais específicas da versão para comparação de modelos

Métricas avançadas para modelos rotulados

Quando você fornece dados rotulados durante o treinamento, métricas adicionais de desempenho são incluídas nos arquivos do Amazon S3:

  • Recordar: a proporção de eventos que foram identificados AWS IoT SiteWise corretamente em relação aos eventos que você rotulou durante o mesmo período. Por exemplo, você pode ter rotulado 10 eventos, mas identificado AWS IoT SiteWise apenas 9 deles. Nesse caso, o recall é de 90%.

  • Precisão: a proporção de verdadeiros positivos em relação ao total de eventos identificados. Por exemplo, se AWS IoT SiteWise identificar 10 eventos, mas somente 7 desses eventos corresponderem aos eventos que você rotulou, a precisão será de 70%.

  • MeanFractionalLeadTime: uma medida da rapidez (em relação à duração do evento), em média, AWS IoT SiteWise detecta cada evento. Por exemplo, um evento típico em suas instalações pode durar 10 horas. Em média, o modelo pode levar 3 horas para identificar o evento. Nesse caso, o lead time fracionário médio é 0,7.

  • AUC: Area Under the Curve (AUC) mede a capacidade de um modelo de aprendizado de máquina de prever uma pontuação mais alta para exemplos positivos em comparação com exemplos negativos. Um valor entre 0 e 1 que indica o quão bem seu modelo é capaz de separar as categorias em seu conjunto de dados. Um valor de 1 indica que ele foi capaz de separar as categorias perfeitamente.

Promoção e métricas do modelo

Durante os fluxos de trabalho de reciclagem, as métricas armazenadas no Amazon S3 permitem decisões informadas de promoção de modelos:

Modo gerenciado (promoção automática)

  • O sistema compara automaticamente as métricas entre versões antigas e novas do modelo usando os dados armazenados no Amazon S3

  • Os modelos são promovidos com base em indicadores de desempenho aprimorados

  • As decisões de promoção incluem códigos de motivos específicos armazenados junto com as métricas:

    • AUTO_PROMOTION_SUCCESSFUL: As métricas do novo modelo são melhores do que a versão atual

    • MODEL_METRICS_DIDNT_IMPROVE: O desempenho do novo modelo não melhorou

    • POOR_MODEL_QUALITY_DETECTED: O novo modelo tem uma avaliação de qualidade ruim

Modo manual (promoção controlada pelo cliente)

  • Você pode baixar e analisar métricas detalhadas do Amazon S3 para tomar decisões de promoção

  • Todas as versões históricas do modelo e suas métricas permanecem acessíveis no Amazon S3

  • Você pode criar painéis e ferramentas de análise personalizados usando as métricas armazenadas no Amazon S3