Apprendimento automatico - Distribuzione dei dati
Distribuzione dei dati
In precedenza in questo tutorial abbiamo lavorato con quantità molto piccole di dati nei nostri esempi, solo per comprendere i diversi concetti.
Nel mondo reale, i set di dati sono molto più grandi, ma può essere difficile raccogliere dati del mondo reale, almeno nella fase iniziale di un progetto.
Come possiamo ottenere grandi set di dati?
Per creare grandi set di dati per i test, utilizziamo il modulo Python NumPy, che viene fornito con una serie di metodi per creare set di dati casuali, di qualsiasi dimensione.
Esempio
Crea un array contenente 250 float casuali compresi tra 0 e 5:
import numpy
x = numpy.random.uniform(0.0, 5.0, 250)
print(x)
Istogramma
Per visualizzare il set di dati possiamo disegnare un istogramma con i dati che abbiamo raccolto.
Useremo il modulo Python Matplotlib per disegnare un istogramma.
Scopri il modulo Matplotlib nel nostro Tutorial Matplotlib .
Esempio
Disegna un istogramma:
import numpy
import matplotlib.pyplot as plt
x =
numpy.random.uniform(0.0, 5.0, 250)
plt.hist(x, 5)
plt.show()
Risultato:
Spiegazione dell'istogramma
Usiamo l'array dall'esempio sopra per disegnare un istogramma con 5 barre.
La prima barra rappresenta quanti valori nell'array sono compresi tra 0 e 1.
La seconda barra rappresenta quanti valori sono compresi tra 1 e 2.
Eccetera.
Il che ci dà questo risultato:
- 52 valori sono compresi tra 0 e 1
- 48 valori sono compresi tra 1 e 2
- 49 valori sono compresi tra 2 e 3
- 51 valori sono compresi tra 3 e 4
- 50 valori sono compresi tra 4 e 5
Nota: i valori dell'array sono numeri casuali e non mostreranno lo stesso identico risultato sul tuo computer.
Distribuzioni di Big Data
Un array contenente 250 valori non è considerato molto grande, ma ora sai come creare un insieme casuale di valori e, modificando i parametri, puoi creare il set di dati grande quanto desideri.
Esempio
Crea una matrice con 100000 numeri casuali e visualizzali utilizzando un istogramma con 100 barre:
import numpy
import matplotlib.pyplot as plt
x =
numpy.random.uniform(0.0, 5.0, 100000)
plt.hist(x, 100)
plt.show()