CodeBlanks Logo Icon CodeBlanks

Tahmin

Eğitilmiş model, predict() ile yeni veriler için tahmin yapar.

predict

predict her zaman iki boyutlu girdi alır ve tek boyutlu bir dizi döndürür. Tek bir örnek için bile çift köşeli parantez gerekir:

m.predict([[90]])              # bir örnek
m.predict([[90], [110], [130]]) # üç örnek -> üç tahmin
# m.predict([90])  ValueError: 2D dizi bekleniyor

Tahmin, öğrenilen doğrunun girdi noktasındaki değeridir: coef_ · x + intercept_.

Dış değerleme (extrapolation)

Model, eğitim verisinin aralığı dışında da bir sayı üretir ama bu sayıya güvenmek risklidir. 50-150 m² evlerle eğitilmiş bir model 1000 m² için doğrusal bir sonuç verir; gerçek fiyat çok farklı olabilir.

print(X.min(), X.max())         # eğitim aralığı
print(m.predict([[1000]]))      # aralık dışı: dikkat

Tahmin istenen girdilerin eğitim verisine benzer olması, ML'nin temel varsayımlarından biridir.

Uygulama Elle ve modelle tahmin

Modeli eğit. 6 ve 7 için tahminleri predict ile al ve np.round(..., 2) ile yazdır. Ardından 6 için tahmini elle (coef_[0] * 6 + intercept_) hesaplayıp 2 basamağa yuvarlayarak yazdır.

Başlangıç kodu

model.py
import numpy as np
from sklearn.linear_model import LinearRegression

X = np.array([[1], [2], [3], [4], [5]])
y = np.array([3.1, 4.9, 7.2, 8.8, 11.0])

# buraya yaz

Örnek çözüm

model.py
import numpy as np
from sklearn.linear_model import LinearRegression

X = np.array([[1], [2], [3], [4], [5]])
y = np.array([3.1, 4.9, 7.2, 8.8, 11.0])

m = LinearRegression().fit(X, y)
print(np.round(m.predict([[6], [7]]), 2))
print(round(m.coef_[0] * 6 + m.intercept_, 2))

Beklenen çıktı

[12.91 14.88]
12.91

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 <code>coef_ = [2]</code>, <code>intercept_ = 1</code> olan model 5 için ne tahmin eder?

  • 12
  • 11 Doğru cevap
  • 10
  • 7

Açıklama: 2 · 5 + 1 = 11.

2 İki örnek için tahmin al.

Soru
p = m.predict(____)
Cevap
p = m.predict([[3], [7]])

Açıklama: Her örnek ayrı bir iç liste olmalıdır; [[3, 7]] iki özellikli tek örnektir.

3 Girdileri eşleştir.

Kavram Anlamı
[[5]] Tek özellikli tek örnek
[[5], [6]] İki örnek
[[5, 6]] İki özellikli tek örnek
[5] Geçersiz girdi

Başlangıç bölümündeki tüm dersler