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á.
Ative a detecção de anomalias nos sensores de um ativo
Crie um modelo de computação ()AWS CLI
Para criar um modelo computacional, use a interface de linha de AWS comando (AWS CLI). Depois de definir o modelo de computação, treine o modelo e programe a inferência para fazer a detecção de anomalias em um ativo em. AWS IoT SiteWise
-
Crie um arquivo
anomaly-detection-computation-model-payload.jsoncom o seguinte conteúdo:{ "computationModelName": "anomaly-detection-computation-model-name", "computationModelConfiguration": { "anomalyDetection": { "inputProperties": "${input_properties}", "resultProperty": "${result_property}" } }, "computationModelDataBinding": { "input_properties": { "list": [{ "assetModelProperty": { "assetModelId": "asset-model-id", "propertyId": "input-property-id-1" } }, { "assetModelProperty": { "assetModelId": "asset-model-id", "propertyId": "input-property-id-2" } } ] }, "result_property": { "assetModelProperty": { "assetModelId": "asset-model-id", "propertyId": "results-property-id" } } } } -
Execute o comando a seguir para criar um modelo de computação:
aws iotsitewise create-computation-model \ --cli-input-jsonfile://anomaly-detection-computation-model-payload.json
ExecuteAction Preparação da carga útil da API
As próximas etapas para executar o treinamento e a inferência são realizadas com a ExecuteActionAPI. Tanto o treinamento quanto a inferência são configurados com uma configuração de carga de ação JSON. Ao invocar a ExecuteActionAPI, a carga útil da ação deve ser fornecida como um valor com uma stringValue carga útil.
A carga útil deve seguir rigorosamente os requisitos da API. Especificamente, o valor deve ser uma string simples, sem caracteres de controle (por exemplo, novas linhas, guias ou retornos de carro).
As opções a seguir fornecem duas maneiras confiáveis de fornecer uma carga útil de ação válida:
Opção 1: usar um arquivo de carga útil limpo
O procedimento a seguir descreve as etapas para um arquivo de carga útil limpo:
-
Limpe o arquivo para remover os caracteres de controle.
tr -d '\n\r\t' < original-action-payload.json > training-or-inference-action-payload.json -
Execute a ação com o arquivo
@=file://....aws iotsitewise execute-action \ --target-resource computationModelId=<MODEL_ID> \ --action-definition-id <ACTION_DEFINITION_ID> \ --resolve-to assetId=<ASSET_ID> \ --action-payload stringValue@=file://training-or-inference-action-payload.json
Opção 2: string embutida com aspas escapadas
As etapas a seguir descrevem as etapas para fornecer a carga em linha e evitar arquivos intermediários:
-
Use aspas duplas de escape (
\") dentro da string JSON. -
Coloque a
StringValue=..expressão inteira entre aspas duplas.
exemplo de uma carga útil de ação que escapou:
aws iotsitewise execute-action \ --target-resource computationModelId=<MODEL_ID> \ --action-definition-id <ACTION_DEFINITION_ID> \ --resolve-to assetId=<ASSET_ID> \ --action-payload "stringValue={\"exportDataStartTime\":1717225200,\"exportDataEndTime\":1722789360,\"targetSamplingRate\":\"PT1M\"}"
Treine o modelo (AWS CLI)
Com um modelo de computação criado, você pode treinar um modelo em relação aos ativos. Siga as etapas abaixo para treinar um modelo para um ativo:
-
Execute o seguinte comando para encontrar
actionDefinitionIdda açãoAWS/ANOMALY_DETECTION_TRAINING.computation-model-idSubstitua pela ID retornada na etapa anterior.aws iotsitewise describe-computation-model \ --computation-model-idcomputation-model-id -
Crie um arquivo chamado
anomaly-detection-training-payload.jsone adicione os seguintes valores:nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
-
StartTimecom o início dos dados de treinamento, fornecidos em segundos de época. -
EndTimecom o final dos dados de treinamento, fornecidos em segundos de época. -
OpcionalmenteConfigurações avançadas de treinamento, você pode configurar para melhorar o desempenho do modelo.
-
(Opcional)
TargetSamplingRatecom a taxa de amostragem dos dados. -
(Opcional)
LabelInputConfigurationpara especificar períodos de tempo em que ocorreu um comportamento anômalo para melhorar o treinamento do modelo. -
(Opcional)
ModelEvaluationConfigurationpara avaliar o desempenho do modelo executando inferências em um intervalo de tempo especificado após a conclusão do treinamento. -
(Opcional)
ModelMetricsDestinationpara coletar dados de desempenho abrangentes (precisão, recuperação, área sob a curva).
-
{ "trainingMode": "TRAIN_MODEL", "exportDataStartTime": StartTime, "exportDataEndTime": EndTime }exemplo de um exemplo de carga útil de treinamento:
{ "trainingMode": "TRAIN_MODEL", "exportDataStartTime": 1717225200, "exportDataEndTime": 1722789360 } -
-
Execute o comando a seguir para iniciar o treinamento. Substitua os parâmetros a seguir no comando:
-
computation-model-idcom o ID do modelo de computação de destino. -
asset-idcom o ID do ativo com o qual você treinará o modelo. -
training-action-definition-idcom o ID daAWS/ANOMALY_DETECTION_TRAININGação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=computation-model-id\ --resolve-to assetId=asset-id\ --action-definition-idtraining-action-definition-id\ --action-payload stringValue@=file://anomaly-detection-training-payload.jsonexemplo de uma ação de execução:
aws iotsitewise execute-action --target-resource computationModelId=27cb824c-fd84-45b0-946b-0a5b0466d890 --resolve-to assetId=cefd4b68-481b-4735-b466-6a4220cd19ee --action-definition-id e54cea94-5d1c-4230-a59e-4f54dcbc972d --action-payload stringValue@=file://anomaly-detection-training-payload.json -
-
Execute o comando a seguir para verificar o status do processo de treinamento do modelo. O resumo da execução mais recente mostra o status da execução (
RUNNING/COMPLETED/FAILED).aws iotsitewise list-executions \ --target-resource-type COMPUTATION_MODEL \ --target-resource-idcomputation-model-id\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id -
Execute o comando a seguir para verificar a configuração do modelo treinado mais recente. Esse comando produz uma saída somente se pelo menos um modelo tiver sido treinado com sucesso.
aws iotsitewise describe-computation-model-execution-summary \ --computation-model-idcomputation-model-id\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id -
Quando a
ComputationModelestiver usando AssetModelProperty, use a ListComputationModelResolveToResourcesAPI para identificar os ativos com ações executadas.aws iotsitewise list-computation-model-resolve-to-resources \ --computation-model-idcomputation-model-id
Inicie e pare de treinar novamente o modelo ()AWS CLI
Após o treinamento inicial do modelo, você pode configurar o retreinamento automático para lidar com o desvio de dados e manter a precisão do modelo ao longo do tempo. O programador de reciclagem permite que você configure atualizações periódicas do modelo com modos de promoção configuráveis.
Inicie o agendador de reciclagem
-
Execute o seguinte comando para encontrar
actionDefinitionIdda açãoAWS/ANOMALY_DETECTION_TRAINING.computation-model-idSubstitua pelo ID retornado da criação do seu modelo de computação.aws iotsitewise describe-computation-model \ --computation-model-idcomputation-model-id -
Crie um arquivo chamado
anomaly-detection-start-retraining-payload.jsone adicione o código a seguir. Substitua os parâmetros por valores conforme descrito.nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
-
lookbackWindowcom a janela de dados históricos a ser usada para reciclagem (P180D//P360DP540D/P720D). -
retrainingFrequencycom a frequência com que retreinar o modelo (mínimoP30D, máximoP1Y). -
(Opcional)
promotioncom o modo de promoção do modelo (SERVICE_MANAGEDouCUSTOMER_MANAGED). O padrão éSERVICE_MANAGED. -
(Opcional)
retrainingStartDatecom a data de início do cronograma de reciclagem, fornecida em segundos de época. Trunca a hora até o dia UTC mais próximo. Opcional, o padrão é a data atual. -
Opcionalmente, você pode configurar Configurações avançadas de treinamento para melhorar o desempenho do modelo.
-
(Opcional)
ModelMetricsDestinationpara obter dados de desempenho abrangentes (precisão, recuperação, área sob a curva).
-
{ "trainingMode": "START_RETRAINING_SCHEDULER", "retrainingConfiguration": { "lookbackWindow": "P180D", "promotion": "SERVICE_MANAGED", "retrainingFrequency": "P30D", "retrainingStartDate": "StartDate" } } -
-
Execute o comando a seguir para iniciar o agendador de reciclagem. Substitua os parâmetros a seguir no comando:
-
computation-model-idcom o ID do modelo de computação de destino. -
asset-idcom o ID do ativo com o qual você treinará o modelo. -
training-action-definition-idcom o ID daAWS/ANOMALY_DETECTION_TRAININGação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=computation-model-id\ --resolve-to assetId=asset-id\ --action-definition-idtraining-action-definition-id\ --action-payload stringValue@=file://anomaly-detection-start-retraining-payload.jsonexemplo Exemplo de comando de execução de ação
aws iotsitewise execute-action --target-resource computationModelId=27cb824c-fd84-45b0-946b-0a5b0466d890 --resolve-to assetId=cefd4b68-481b-4735-b466-6a4220cd19ee --action-definition-id e54cea94-5d1c-4230-a59e-4f54dcbc972d --action-payload stringValue@=file://anomaly-detection-start-retraining-payload.json -
Pare o agendador de treinamento
-
Execute o seguinte comando para encontrar
actionDefinitionIdda açãoAWS/ANOMALY_DETECTION_TRAINING.computation-model-idSubstitua pelo ID real do modelo de computação criado anteriormente.aws iotsitewise describe-computation-model \ --computation-model-idcomputation-model-id -
Crie um arquivo
anomaly-detection-stop-retraining-payload.jsone adicione o seguinte:nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
{ "trainingMode": "STOP_RETRAINING_SCHEDULER" } -
Execute o comando a seguir para interromper o agendador de reciclagem. Substitua os parâmetros a seguir no comando:
-
computation-model-idcom o ID do modelo de computação de destino. -
asset-idcom o ID do ativo com o qual você treinará o modelo. -
training-action-definition-idcom o ID daAWS/ANOMALY_DETECTION_TRAININGação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=computation-model-id\ --resolve-to assetId=asset-id\ --action-definition-idtraining-action-definition-id\ --action-payload stringValue@=file://anomaly-detection-stop-retraining-payload.json -
Iniciar e interromper a inferência ()AWS CLI
Depois de treinar o modelo, inicie a inferência. Isso instrui AWS IoT SiteWise a monitorar ativamente seus ativos industriais em busca de anomalias.
Inicie a inferência
-
Execute o seguinte comando para encontrar
actionDefinitionIdda açãoAWS/ANOMALY_DETECTION_INFERENCE.computation-model-idSubstitua pelo ID real do modelo de computação criado anteriormente.aws iotsitewise describe-computation-model \ --computation-model-idcomputation-model-id -
Crie um arquivo
anomaly-detection-start-inference-payload.jsone adicione os seguintes valores:nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
"inferenceMode": "START", "dataUploadFrequency": "DataUploadFrequency"-
DataUploadFrequency: configure a frequência com que o cronograma de inferência é executado para realizar a detecção de anomalias. Os valores permitidos são:PT5M, PT10M, PT15M, PT30M, PT1H, PT2H..PT12H, PT1D. -
(Opcional)
DataDelayOffsetInMinutescom a compensação de atraso em minutos. Defina esse valor entre 0 e 60 minutos. -
(Opcional)
TargetModelVersioncom a versão do modelo a ser ativada. -
(Opcional) Configure o
weeklyOperatingWindowcom uma configuração de turno. -
Você pode configurar Configurações avançadas de inferência opcionalmente.
-
-
Execute o comando a seguir para iniciar a inferência. Substitua os parâmetros a seguir no arquivo de carga útil.
-
computation-model-idcom o ID do modelo de computação de destino. -
asset-idcom a ID do ativo contra o qual o modelo foi treinado. -
inference-action-definition-idcom o ID daAWS/ANOMALY_DETECTION_INFERENCEação da Etapa 1.
aws iotsitewise execute-action \ --target-resource computationModelId=computation-model-id\ --resolve-to assetId=asset-id\ --action-definition-idinference-action-definition-id\ --action-payload stringValue@=file://anomaly-detection-inference-payload.json -
-
Execute o comando a seguir para verificar se a inferência ainda está em execução. O
inferenceTimerActivecampo é definido comoTRUEquando a inferência está ativa.aws iotsitewise describe-computation-model-execution-summary \ --computation-model-idcomputation-model-id\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id -
O comando a seguir lista todas as execuções de inferência:
aws iotsitewise list-executions \ --target-resource-type COMPUTATION_MODEL \ --target-resource-idcomputation-model-id\ --resolve-to-resource-type ASSET \ --resolve-to-resource-idasset-id -
Execute o comando a seguir para descrever uma execução individual.
execution-idSubstitua pelo id da Etapa 5 anterior.aws iotsitewise describe-execution \ --execution-idexecution-id
Pare a inferência
-
Execute o seguinte comando para encontrar
actionDefinitionIdda açãoAWS/ANOMALY_DETECTION_INFERENCE.computation-model-idSubstitua pelo ID real do modelo de computação criado anteriormente.aws iotsitewise describe-computation-model \ --computation-model-idcomputation-model-id -
Crie um arquivo
anomaly-detection-stop-inference-payload.jsone adicione o código a seguir.{ "inferenceMode": "STOP" }nota
A carga útil deve estar em conformidade com. Opção 1: usar um arquivo de carga útil limpo
-
Execute o comando a seguir para interromper a inferência. Substitua o seguinte parâmetro no arquivo de carga:
-
computation-model-idcom o ID do modelo de computação de destino. -
asset-idcom a ID do ativo contra o qual o modelo foi treinado. -
inference-action-definition-idcom o ID daAWS/ANOMALY_DETECTION_INFERENCEação da Etapa 1.
exemplo do comando stop inference:
aws iotsitewise execute-action \ --target-resource computationModelId=computation-model-id\ --resolve-to assetId=asset-id\ --action-definition-idinference-action-definition-id\ --action-payload stringValue@=file://anomaly-detection-stop-inference-payload.json -
Encontre modelos de computação que usam um determinado recurso na vinculação de dados
Para listar modelos de computação vinculados a um determinado recurso:
-
modelo de ativo (busque todos os modelos de computação em que qualquer uma das propriedades desse modelo de ativo esteja vinculada).
-
ativo (obtenha todos os modelos de computação em que qualquer uma das propriedades desse ativo esteja vinculada)
-
propriedade do modelo de ativos (obtenha todos os modelos de computação em que essa propriedade está vinculada)
-
propriedade do ativo (obtenha todos os modelos de computação em que essa propriedade está vinculada). Isso pode ser para fins informativos ou obrigatório quando o usuário tenta vincular essa propriedade a outro modelo de computação (mas ela já está vinculada a outro lugar).
Use a ListComputationModelDataBindingUsagesAPI para buscar uma lista de ComputationModelId s que usam o ativo (propriedade) ou o modelo de ativo (propriedade) como vinculação de dados.
Prepare um request.json com as seguintes informações:
{ "dataBindingValueFilter": { "asset": { "assetId": "<string>" } // OR "assetModel": { "assetModelId": "<string>" } // OR "assetProperty": { "assetId": "<string>", "propertyId": "<string>" } // OR "assetModelProperty": { "assetModelId": "<string>", "propertyId": "<string>" } }, "nextToken": "<string>", "maxResults": "<number>" }
Use o list-computation-model-data-binding-usages comando para recuperar os modelos com ativos ou modelos de ativos como vinculações de dados.
aws iotsitewise list-computation-model-data-binding-usages \ --cli-input-json file://request.json