Dağılım grafiği
- Makine Öğrenmesi kursu
- Başlangıç
- Ders 104/112
- 5 dk
Dağılım grafiği, iki değişken arasındaki ilişkiyi noktalarla gösterir.
Dağılım grafiği
Dağılım grafiği iki sayısal değişkenin ilişkisini noktalarla gösterir. c parametresiyle noktalar sınıfa göre renklendirilir; sınıflandırmada sınıfların ayrılıp ayrılmadığı hemen görülür:
from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
fig, ax = plt.subplots()
sc = ax.scatter(X[:, 2], X[:, 3], c=y, cmap="viridis", s=20)
ax.set_xlabel("taç yaprak uzunluğu")
ax.set_ylabel("taç yaprak genişliği")
fig.colorbar(sc)Iris'te bu iki özellik üç türü neredeyse tamamen ayırır; bu, ağacın neden onları önemli bulduğunu açıklar.
Gerçek ve tahmin
Regresyon modelini değerlendirmenin en açık yolu, gerçek değerleri tahminlere karşı çizmektir. İyi bir modelde noktalar y = x köşegeni etrafında toplanır:
ax.scatter(y_test, p, alpha=0.6)
lim = [y_test.min(), y_test.max()]
ax.plot(lim, lim, "r--") # kusursuz tahmin çizgisiNoktalar köşegenin altında yığılıyorsa model sistematik olarak az tahmin ediyordur.
Uygulama Sınıfları çiz
Iris'in 3. ve 4. sütunlarını (X[:, 2], X[:, 3]) c=y ile dağılım grafiğine çiz ve kaydet. Ardından her sınıfın taç yaprak uzunluğu ortalamasını [X[y == k, 2].mean() for k in range(3)] ile hesaplayıp np.round(..., 2) ile yazdır.
Başlangıç kodu
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
# buraya yazÖrnek çözüm
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
fig, ax = plt.subplots()
ax.scatter(X[:, 2], X[:, 3], c=y)
fig.savefig("iris.png")
print(np.round([X[y == k, 2].mean() for k in range(3)], 2))Beklenen çıktı
[1.46 4.26 5.55]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Noktaları sınıf etiketine göre renklendiren parametre hangisidir?
- s
- alpha
- marker
- c Doğru cevap
Açıklama: c renk değerlerini alır; s boyutu, alpha saydamlığı belirler.
2 Noktaları yarı saydam çiz.
ax.scatter(x, y, ____=0.5)
ax.scatter(x, y, alpha=0.5)
Açıklama: alpha 0 (görünmez) ile 1 (opak) arasıdır; üst üste binen noktaları gösterir.
3 Parametreleri eşleştir.
| Kavram | Anlamı |
|---|---|
c |
Renk değerleri |
s |
Nokta boyutu |
alpha |
Saydamlık |
cmap |
Renk haritası |