BaşlayınÜcretsiz başlayın

Modeli veri akışına uygula

Şimdi, eğittiğin Machine Learning Pipeline'ını akış verisine uygulayalım ve değerleri anında kategorize edelim.

Gelen iletilerin kategorisini belirlemek için predict() kullanacaksın. Tahmin sonucuna göre aksiyon alacak ve evindeki pencereleri kapatacaksın (ya da kapatmayacaksın).

Unutma: kategori 1 iyi havayı, kategori 0 ise kötü, soğuk havayı ifade eder.

Ayrıca, pipeline bir tahmin dizisi döndürür. Yalnızca tek bir öğe verdiğin için ilk öğeye category[0] ile erişmen gerekir.

close_window() fonksiyonu bunu senin için halledecek ve ek olarak kaydı daha sonra incelenmek üzere günlüğe yazacaktır.

Oturumda pandas pd olarak ve json önceden yüklendi, model ise pl olarak hazır.

Bu egzersiz, kursun bir parçasıdır

Python ile IoT Verilerini Analiz Etmek

Kursa Göz Atın

Egzersiz talimatları

  • Sözlüğü, DataFrame.from_records() ile bir pandas DataFrame'ine ayrıştır; "timestamp" indeks olsun ve sütunlar cols olsun.
  • Bu kaydın kategorisini, pipeline nesnesindeki predict() ile belirle ve sonucu category değişkenine ata.
  • close_window() fonksiyonunu, ilk argüman olarak df, ikinci argüman olarak category ile çağır.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

def model_subscribe(client, userdata, message):
    data = json.loads(message.payload)
    # Parse to DataFrame
    df = pd.____.____([data], index=____, columns=____)
    # Predict result
    category = ____
    if category[0] < 1:
        # Call business logic
        ____
    else:
        print("Nice Weather, nothing to do.")  

# Subscribe model_subscribe to MQTT Topic
subscribe.callback(model_subscribe, topic, hostname=MQTT_HOST)
Kodu Düzenle ve Çalıştır