Masjienleer - Dataverspreiding
Dataverspreiding
Ons het vroeër in hierdie tutoriaal met baie klein hoeveelhede data in ons voorbeelde gewerk, net om die verskillende konsepte te verstaan.
In die werklike wêreld is die datastelle baie groter, maar dit kan moeilik wees om werklike data in te samel, ten minste in 'n vroeë stadium van 'n projek.
Hoe kan ons groot datastelle kry?
Om groot datastelle vir toetsing te skep, gebruik ons die Python-module NumPy, wat met 'n aantal metodes kom om ewekansige datastelle van enige grootte te skep.
Voorbeeld
Skep 'n skikking wat 250 ewekansige dryf tussen 0 en 5 bevat:
import numpy
x = numpy.random.uniform(0.0, 5.0, 250)
print(x)
Histogram
Om die datastel te visualiseer kan ons 'n histogram teken met die data wat ons ingesamel het.
Ons sal die Python-module Matplotlib gebruik om 'n histogram te teken.
Kom meer te wete oor die Matplotlib-module in ons Matplotlib-tutoriaal .
Voorbeeld
Teken 'n 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 verduidelik
Ons gebruik die skikking van die voorbeeld hierbo om 'n histogram met 5 stawe te teken.
Die eerste balk verteenwoordig hoeveel waardes in die skikking tussen 0 en 1 is.
Die tweede balk verteenwoordig hoeveel waardes tussen 1 en 2 is.
Ens.
Wat vir ons hierdie resultaat gee:
- 52 waardes is tussen 0 en 1
- 48 waardes is tussen 1 en 2
- 49 waardes is tussen 2 en 3
- 51 waardes is tussen 3 en 4
- 50 waardes is tussen 4 en 5
Let wel: Die skikkingwaardes is ewekansige getalle en sal nie presies dieselfde resultaat op jou rekenaar wys nie.
Groot data verspreidings
'n Skikking wat 250 waardes bevat, word nie as baie groot beskou nie, maar nou weet jy hoe om 'n ewekansige stel waardes te skep, en deur die parameters te verander, kan jy die datastel so groot skep as wat jy wil.
Voorbeeld
Skep 'n skikking met 100 000 ewekansige getalle, en vertoon hulle met 'n histogram met 100 stawe:
import numpy
import matplotlib.pyplot as plt
x =
numpy.random.uniform(0.0, 5.0, 100000)
plt.hist(x, 100)
plt.show()