Requisitos e Preparação de Dados
O algoritmo oracle MSET pode detectar sintomas precoces de falha, como anomalias de temperatura e alterações nos perfis de vibração.
Para detectar com eficácia os sintomas precoces, o perfil de dados deve atender a determinados critérios. Os critérios são explicados com mais detalhes posteriormente, mas brevemente, as leituras do sensor devem ser sequenciais. Timestamps não são essenciais, mas as leituras do sensor devem estar em ordem cronológica rígida, e devem ser numéricas. Além disso, os dados de treinamento devem consistir em leituras de sensores que são livres de anomalias e estão dentro de parâmetros operacionais normais.
Os requisitos significam que você talvez precise processar os dados brutos dos sensores antes de alimentá-los no modelo de detecção de anomalias.
Requisitos de Serviço
Para obter resultados válidos do serviço, prepare os dados adequados de treinamento e teste.
Os dados de treinamento e teste só devem conter carimbos de data/hora e outros atributos numéricos. Os dados são tipicamente de leituras de sensor e sinal. Campos categóricos não são suportados na versão atual.
Em linhas gerais, o serviço tem três requisitos importantes de qualidade de dados para os dados de treinamento:
- Os dados do treinamento devem ser sem anomalias e sem exceções. Ela deve conter observações somente de condições operacionais normais.
- Os dados do treinamento devem abranger todos os cenários de negócios normais que contêm todas as faixas de valores em todos os atributos.
- Os atributos nos dados devem estar bem relacionados ou pertencer ao mesmo sistema ou ativo. Recomendamos o treinamento de modelos separados se os atributos forem de sistemas diferentes.
Os dados de detecção devem ter os mesmos atributos dos dados de treinamento. Além disso, deve ser do mesmo sistema ou ativo que os dados de treinamento. Os dados de detecção podem ter pontos de dados de anomalia.
Qualidade dos Dados
O treinamento e os dados de teste de modelo devem representar valores de vários atributos, como sinais e sensores, registrados em uma ordem cronológica.
Para criar um modelo de alta qualidade, certifique-se de que os dados em seu conjunto de treinamento estejam de acordo com a lista de requisitos a seguir.
- Timestamps
- Uma coluna de timestamp é opcional. No entanto, se houver, ela deverá ser a primeira coluna na tabela.
- A coluna de timestamp deve ter o rótulo "timestamp", todas as letras minúsculas sem espaços.
- As marcas de data/hora devem ser classificadas em ordem crescente.
- Não deve haver registros de hora duplicados.
- Os registros de hora podem ter uma frequência variável. Por exemplo, 50 observações em uma hora e 200 observações na próxima hora.
- Se não houver uma coluna de timestamp, os dados serão classificados sequencialmente por tempo.
- Atributos
- Cada linha de dados é uma observação única no timestamp fornecido.
- O valor do atributo deve ser numérico. Para valores boolianos, use 1 para Verdadeiro e 0 para Falso.
- Os valores ausentes são representados por
null
nos arquivos JSON e por um campo vazio nos arquivos CSV. - Cada linha deve ter pelo menos um atributo que não esteja ausente. Ou seja, não é possível ter uma linha que seja apenas o timestamp.
- Os dados devem ter pelo menos três atributos altamente correlacionados.
- Cada nome de atributo deve ser exclusivo.
- O número de atributos não deve ser maior que 300.
- Treinamento
- Para determinar o número de linhas que você deve ter no conjunto de treinamento, multiplice o número de atributos por oito. É necessário ter no mínimo 40 linhas no conjunto de treinamento.
- Detecção
- Ao usar o processamento em batch, o número máximo de pontos de dados no batch é 30.000. O número de pontos de dados é o número de sinais vezes o número de linhas.
- Outras Considerações
- Se um ou mais atributos forem adicionados em algum momento no futuro, o modelo deverá ser treinado novamente com os novos atributos no conjunto de treinamento.
Esquema de Dados
O Anomaly Detection Service aceita dois formatos de dados: CSV e JSON.
Para arquivos CSV, cada coluna representa dados do sensor. Cada linha representa os valores correspondentes a cada sensor em determinado momento.
Os valores de timestamp devem estar no formato ISO 8601. Use o mais exato possível para evitar duplicações nos dados de treinamento.
Os dados formatados em CSV devem ter linhas separadas por vírgulas, com primeira linha como cabeçalho e outras linhas como dados. A primeira coluna é a coluna de timestamp. Veja um exemplo de dados formatados em CSV:
timestamp,sensor1,sensor2,sensor3,sensor4,sensor5
2020-07-13T14:03:46Z,,0.6459,-0.0016,-0.6792,0
2020-07-13T14:04:46Z,0.1756,-0.5364,-0.1524,-0.6792,1
2020-07-13T14:05:46Z,0.4132,-0.029,,0.679,0
Observação:
O arquivo CSV não deve ter linhas em branco, incluindo a última linha.Estes são os mesmos dados, exceto no formato JSON:
{
"requestType": "INLINE",
"signalNames": ["sensor1", "sensor2", "sensor3", "sensor4", "sensor5"],
"data": [{
"timestamp": "2020-07-13T14:03:46Z",
"values": [null, 0.6459, -0.0016, -0.6792, 0]
},
{
"timestamp": "2020-07-13T14:04:46Z",
"values": [0.1756, -0.5364, -0.1524, -0.6792, 1]
},
{
"timestamp": "2020-07-13T14:05:46Z",
"values": [0.4132, -0.029, null, 0.679, 0]
}
]
}