Machine learning - gegevensdistributie
Gegevensdistributie
Eerder in deze tutorial hebben we in onze voorbeelden met zeer kleine hoeveelheden gegevens gewerkt, alleen om de verschillende concepten te begrijpen.
In de echte wereld zijn de datasets veel groter, maar het kan moeilijk zijn om echte data te verzamelen, tenminste in een vroeg stadium van een project.
Hoe kunnen we big datasets krijgen?
Om grote datasets voor testen te maken, gebruiken we de Python-module NumPy, die wordt geleverd met een aantal methoden om willekeurige datasets van elke grootte te maken.
Voorbeeld
Maak een array met 250 willekeurige floats tussen 0 en 5:
import numpy
x = numpy.random.uniform(0.0, 5.0, 250)
print(x)
Histogram
Om de dataset te visualiseren kunnen we een histogram tekenen met de data die we hebben verzameld.
We zullen de Python-module Matplotlib gebruiken om een histogram te tekenen.
Leer meer over de Matplotlib-module in onze Matplotlib-zelfstudie .
Voorbeeld
Teken een histogram:
import numpy
import matplotlib.pyplot as plt
x =
numpy.random.uniform(0.0, 5.0, 250)
plt.hist(x, 5)
plt.show()
Resultaat:
Histogram uitgelegd
We gebruiken de array uit het bovenstaande voorbeeld om een histogram met 5 staven te tekenen.
De eerste balk geeft aan hoeveel waarden in de array tussen 0 en 1 liggen.
De tweede balk geeft aan hoeveel waarden tussen 1 en 2 liggen.
Enzovoort.
Wat ons dit resultaat geeft:
- 52 waarden liggen tussen 0 en 1
- 48 waarden liggen tussen 1 en 2
- 49 waarden liggen tussen 2 en 3
- 51 waarden liggen tussen 3 en 4
- 50 waarden liggen tussen 4 en 5
Opmerking: de arraywaarden zijn willekeurige getallen en zullen niet exact hetzelfde resultaat op uw computer weergeven.
Big data-distributies
Een array met 250 waarden wordt niet als erg groot beschouwd, maar nu weet je hoe je een willekeurige set waarden kunt maken en door de parameters te wijzigen, kun je de dataset zo groot maken als je wilt.
Voorbeeld
Maak een array met 100.000 willekeurige getallen en geef ze weer met behulp van een histogram met 100 balken:
import numpy
import matplotlib.pyplot as plt
x =
numpy.random.uniform(0.0, 5.0, 100000)
plt.hist(x, 100)
plt.show()