Atributos em relação ao rótulo
Parte da seção Estatística para ML do Journey de Machine Learning da Coddy. Lição 58 de 64.
Quais características variam junto com o rótulo? Correlacione cada uma com ele, 0 para maligno e 1 para benigno, e ordene-as por intensidade:
X.corrwith(y) fornece o r de cada característica de uma só vez:
X = cancer.data[cancer.feature_names[:10]]
r = X.corrwith(cancer.target)
strength = np.abs(r).sort_values(ascending=False)
for name in strength.index[:3]:
print(name, np.round(r[name], 2))Isso imprime:
mean concave points -0.78
mean perimeter -0.74
mean radius -0.73Um r negativo significa que a característica é maior na classe 0: as células malignas têm mais pontos côncavos. np.abs classifica pela intensidade, independentemente do sinal.
Perto de 0, assim como a dimensão fractal, uma característica mal difere entre as classes: uma candidata a ser excluída.
Desafio
MédioQuais características do tecido um modelo deve testar primeiro? As entradas são um grupo, error ou worst, e k; o código inicial coloca as características do grupo em X.
- Classifique as características pela intensidade de sua correlação r com
y. - Imprima as
kprimeiras com seus valores de r com sinal, com 2 casas decimais. - Verifique o sinal: imprima as médias por classe da característica mais forte.
Para o grupo mean e k = 2:
Top 2 mean features:
mean concave points: -0.78
mean perimeter: -0.74
mean concave points by class: malignant 0.09, benign 0.03Experimente você mesmo
import numpy as np
from sklearn.datasets import load_breast_cancer
group = input()
k = int(input())
cancer = load_breast_cancer(as_frame=True)
df = cancer.frame
y = cancer.target
# As dez características do grupo: mean, error ou worst
start = {"mean": 0, "error": 10, "worst": 20}[group]
X = cancer.data[cancer.feature_names[start:start + 10]]
# 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 Estatística para ML
1Centro e dispersão
Média e medianaPercentis e quartisVariância e desvio padrãoAmostra ou população?O valor mais frequenteRevisão: tempos de entrega4Amostras e Populações
População e AmostraAs médias amostrais variamA distribuição amostralAmostras maiores, menos ruídoRevisão: pesquisa de opinião em uma cidade7Linhas de tendência
ResíduosAjuste por mínimos quadradosTraçando o ajusteFazendo previsões com uma linhaQuão bom é o ajuste?Revisão: horas de prática10Codificação de Categorias
Categorias como NúmerosCodificação One-HotAgrupamento de Números em FaixasRecapitulação: Anúncios de Carros2Distribuições
Histogramas de densidadeFormatos dos dadosA curva normalA regra 68-95-99,7Escores ZRecapitulando: duração da bateria5Valores atípicos
Diagramas de caixaA regra do IQRA regra do Z-scoreComo lidar com valores atípicosRevisão: falhas nos sensores8Comparando grupos
Gráficos de caixa por grupoDiferença entre médiasPode ser acaso?Valores-pO teste tRevisão: teste A/B11Explorando um conjunto de dados
Um primeiro olharTodos os atributos de uma vezAtributos em relação ao rótuloOs dois melhores atributosRevisão: dados de diabetes3Probabilidade por Simulação
Probabilidade como frequênciaA Lei dos Grandes NúmerosSomas de dadosValor esperadoProbabilidade condicionalRevisão: chances na barraca de dados6Relações
Lendo gráficos de dispersãoCorrelaçãoMatriz de correlaçãoMapas de calor de correlaçãoCorrelação não é causalidadeRevisão: sorvete e sol9Escalonamento de Recursos
Por que escalar os recursosEscalonamento Min-MaxPadronizaçãoStandardScalerRevisão: Parceiros de escaladaPratique por conta própria: Compilador de Python online