Encontrando os Diferentões
Parte da seção Aprendizado não supervisionado do Journey de Machine Learning da Coddy. Lição 34 de 51.
Este capítulo procura linhas estranhas. Ao final dele, você vai circular os minutos incomuns de um servidor:
Uma anomalia é uma linha rara, diferente das demais: uma falha, uma fraude, um erro de digitação. Cada nova anomalia é diferente, então ninguém consegue rotulá-las antecipadamente.
Comece com escores z. StandardScaler transforma cada coluna em escores z, então uma linha sinaliza as linhas com qualquer valor acima de 3:
z = StandardScaler().fit_transform(X)
odd = (np.abs(z) > 3).sum(axis=1) > 0Mas uma linha pode ser comum em cada coluna e ser incomum apenas na combinação delas. Os escores z das colunas não a detectam.
Desafio
MédioUm supermercado registrou as médias de um dia para seus 80 freezers. Quais precisam de um técnico? O programa lê um limite.
- Transforme cada coluna de
Xem escores z. - Para cada coluna, imprima quantos freezers ela sinaliza: escore z a uma distância de 0 maior que o limite.
- Imprima todos os freezers sinalizados por qualquer coluna, na ordem da tabela.
Para outra loja e 3:
temp_c: 1 flagged
power_kw: 2 flagged
door_openings: 0 flagged
defrost_min: 0 flagged
Freezers to check:
F05
F13
F51Experimente você mesmo
import numpy as np
import pandas as pd
from sklearn.preprocessing import StandardScaler
# Uma linha por freezer: médias de um dia
freezers = pd.read_csv("freezers.csv")
columns = ["temp_c", "power_kw", "door_openings", "defrost_min"]
X = freezers[columns]
cutoff = float(input())
# Escreva seu código abaixo
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Aprendizado não supervisionado
1Encontrando Grupos
Aprendendo sem RótulosMedindo a SimilaridadeK-Means à MãoK-Means no scikit-learnRevisão: Frequentadores da Academia4Clustering Hierárquico
Mesclando passo a passoModelos aglomerativosDendrogramasRevisão: raças de cães7PCA na prática
Visualizando 64 dimensõesComponentes como padrõesComprimir e reconstruirPCA antes de um modeloRecapitulação: scanner facial10Projeto: Explorando os Dígitos
Observe os DígitosReduza com PCAAgrupe os DígitosDê Nome aos GruposEncontre os Diferentes2Escolhendo k
InérciaO método do cotoveloPontuações de silhuetaEscale antes de agruparRecapitulando: zonas de entrega8Detecção de Anomalias
Encontrando os DiferentõesIsolation ForestLocal Outlier FactorPontuações de AnomaliaRevisão: Monitoramento do ServidorPratique por conta própria: Compilador de Python online