Perché scalare le feature
Fa parte della sezione Statistica per il machine learning del percorso Machine Learning di Coddy. Lezione 47 di 64.
Quale cliente è più simile a uno nuovo? Molti modelli misurano la distanza tra i campioni: elevano al quadrato lo scarto di ciascuna caratteristica, li sommano e calcolano la radice quadrata.
Una persona di 25 anni che guadagna $52,000 rispetto a una persona di 61 anni che guadagna $53,000:
Per un'intera tabella, axis=1 somma i quadrati di ogni riga e .argmin() trova la riga più vicina:
a = np.array([25, 52000]) # età, reddito
X = np.array([[61, 53000], # la persona di 61 anni
[26, 55000]]) # una persona di 26 anni che guadagna $55,000
dists = np.sqrt(((X - a) ** 2).sum(axis=1))
print(np.round(dists, 2))
print(dists.argmin())Stampa:
[1000.65 3000. ]
0La persona di 61 anni è la più vicina: i dollari hanno numeri più grandi, quindi $1,000 supera 36 anni. Senza normalizzazione, decidono le unità più grandi.
Questo capitolo dà a ogni funzionalità la giusta considerazione.
Sfida
MedioUn negozio confronta le lavatrici in base al prezzo ($), al consumo energetico (kWh all'anno) e all'acqua (litri per lavaggio), indicati in features. Il programma legge le posizioni di due macchine, i e j. Stampa:
Squared gaps:lo scarto di ciascuna caratteristica, elevato al quadrato.Distance:arrotondata a 2 decimali.Dominant feature:il nome della caratteristica con lo scarto al quadrato più grande.
Per altre due macchine:
Squared gaps: [2500 6400 1]
Distance: 94.35
Dominant feature: energyProvalo tu
import numpy as np
features = ["price", "energy", "water"]
# Una riga per ogni lavatrice: prezzo in dollari, consumo energetico in kWh all'anno, acqua in litri per lavaggio
machines = np.array([[499, 160, 48],
[349, 210, 55],
[899, 120, 42],
[529, 250, 50],
[279, 230, 60],
[749, 140, 45]])
i = int(input())
j = int(input())
# Scrivi il tuo codice qui sotto
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Statistica per il machine learning
1Centro e dispersione
Media e medianaPercentili e quartiliVarianza e deviazione standardCampione o popolazione?Il valore più frequenteRiepilogo: tempi di consegna4Campioni e popolazioni
Popolazione e campioneLe medie campionarie varianoDistribuzione campionariaCampioni più grandi, meno rumoreRiepilogo: sondare una città7Linee di tendenza
ResiduiAdattamento dei minimi quadratiTracciare la retta di adattamentoFare previsioni con una rettaQuanto è buono l’adattamento?Riepilogo: ore di pratica10Codifica delle categorie
Categorie come numeriCodifica one-hotRaggruppamento dei numeri in intervalliRiepilogo: annunci di auto2Distribuzioni
Istogrammi di densitàForme dei datiCurva normaleRegola 68-95-99,7Punteggi ZRiepilogo: durata della batteria5Valori anomali
Diagrammi a scatolaLa regola dell'IQRLa regola dello z-scoreGestire i valori anomaliRiepilogo: anomalie dei sensori3Probabilità tramite simulazione
La probabilità come frequenzaLa legge dei grandi numeriSomme dei dadiValore attesoProbabilità condizionataRiepilogo: probabilità al banco dei dadi6Relazioni
Leggere i grafici a dispersioneCorrelazioneMatrice di correlazioneMappe di calore della correlazioneCorrelazione non significa causalitàRiepilogo: gelato e sole9Scalatura delle feature
Perché scalare le featureScalatura Min-MaxStandardizzazioneStandardScalerRiepilogo: compagni di scalataEsercitati da solo: Compilatore Python online