Uczenie maszynowe — wykres punktowy
Wykres punktowy
Wykres punktowy to diagram, na którym każda wartość w zestawie danych jest reprezentowana przez kropkę.
Moduł Matplotlib ma metodę rysowania wykresów punktowych, potrzebuje dwóch tablic o tej samej długości, jednej dla wartości na osi x i jednej dla wartości na osi y:
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
Tablica x
reprezentuje wiek każdego samochodu.
Tablica y
reprezentuje prędkość każdego samochodu.
Przykład
Użyj tej scatter()
metody, aby narysować diagram wykresu punktowego:
import matplotlib.pyplot as plt
x =
[5,7,8,7,2,17,2,9,4,11,12,9,6]
y =
[99,86,87,88,111,86,103,87,94,78,77,85,86]
plt.scatter(x, y)
plt.show()
Wynik:
Objaśnienie wykresu punktowego
Oś x reprezentuje wiek, a oś y prędkość.
Z wykresu możemy wyczytać, że dwa najszybsze samochody miały 2 lata, a najwolniejszy 12 lat.
Uwaga: Wygląda na to, że im nowszy samochód, tym szybciej jeździ, ale to może być zbieg okoliczności, w końcu zarejestrowaliśmy tylko 13 samochodów.
Losowe dystrybucje danych
W uczeniu maszynowym zestawy danych mogą zawierać tysiące, a nawet miliony wartości.
Możesz nie mieć danych ze świata rzeczywistego podczas testowania algorytmu, być może będziesz musiał użyć losowo generowanych wartości.
Jak dowiedzieliśmy się w poprzednim rozdziale, moduł NumPy może nam w tym pomóc!
Utwórzmy dwie tablice, które są wypełnione 1000 liczb losowych z normalnego rozkładu danych.
Pierwsza tablica będzie miała średnią ustawioną na 5,0 z odchyleniem standardowym równym 1,0.
Druga tablica będzie miała średnią ustawioną na 10,0 z odchyleniem standardowym 2,0:
Przykład
Wykres punktowy z 1000 punktów:
import numpy
import matplotlib.pyplot as plt
x = numpy.random.normal(5.0,
1.0, 1000)
y = numpy.random.normal(10.0, 2.0, 1000)
plt.scatter(x, y)
plt.show()
Wynik:
Objaśnienie wykresu punktowego
Widzimy, że kropki są skoncentrowane wokół wartości 5 na osi x i 10 na osi y.
Widzimy również, że rozpiętość jest szersza na osi y niż na osi x.