Menu
CoddyTech

Artıklar

Coddy'nin Machine Learning Journey'sinin Makine Öğrenimi için İstatistik bölümünün bir parçası. Ders 35 / 64.

Bu bölüm, verilerden geçen bir eğilim çizgisi çizer, bu çizgiyi kullanarak tahminlerde bulunur ve çizgiyi değerlendirir. İşte varacağı yer:

Çim alanına göre dakikaları gösteren, noktalarla işaretlenmiş beş çim biçme işi; noktaların içinden geçen turuncu bir eğilim çizgisi ve 10 birimlik yeni bir çim alanı için 50 dakika tahminini gösteren, çizginin üzerinde büyük yeşil bir yıldız

Bir doğru ne kadar iyi? Bir çim bakım hizmeti, her iş için 4.5 * area + 5 dakika tahmin ediyor. Her kırmızı boşluk bir artıktır: gerçek değer eksi tahmin edilen değer.

Beş çim işi ve tahmin edilen doğru; her noktadan doğruya uzanan, +6, -5, +3.5, -7 ve +3.5 olarak etiketlenmiş kırmızı dikey bir boşluk

Karelerini alıp toplayarak doğrunun puanını hesapla:

area = np.array([4, 6, 9, 12, 15])
minutes = np.array([29, 27, 49, 52, 76])
residuals = minutes - (4.5 * area + 5)
print(residuals)
print((residuals ** 2).sum())

Bu, şunu yazdırır:

[ 6.  -5.   3.5 -7.   3.5]
134.5

Kareler, +6 ve -6'nın birbirini götürmesini engeller. Karelenmiş artıkların toplamı ne kadar küçükse, doğru o kadar iyidir. Bir model, bu değeri küçülterek öğrenir.

challenge icon

Görev

Orta

Bir nakliye şirketi, koli sayısına göre taşınmanın ne kadar süreceğini tahmin ediyor. boxes ve hours, geçmişteki sekiz taşınmanın verilerini içeriyor ve program iki tahmini doğruyu okuyor: önce slope1, intercept1, ardından slope2, intercept2.

  1. Her doğruyu, artıkların kareleri toplamına göre puanlayın.
  2. Aşağıda gösterildiği gibi, her iki toplamı da 2 ondalık basamağa yuvarlayarak ve daha iyi doğruyu yazdırın.

0.16 * boxes + 0.8 ve 0.12 * boxes + 2.5 doğruları için:

Line 1 SSR: 0.57
Line 2 SSR: 4.1
Better: line 1

Kendin dene

import numpy as np

boxes = np.array([10, 18, 25, 32, 40, 47, 55, 60])
hours = np.array([2.5, 3.5, 5.0, 5.5, 7.0, 8.0, 9.5, 10.0])
slope1 = float(input())
intercept1 = float(input())
slope2 = float(input())
intercept2 = float(input())

# Kodunuzu aşağıya yazın
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Makine Öğrenimi için İstatistik bölümündeki tüm dersler

Kendi başına pratik yap: Online Python derleyicisi