Diziler oluşturma
Sıralı veriler üzerinde sinir ağlarını eğitebilmek için önce ön işleme yapman gerekir. Veriyi girdi-hedef çiftlerine böleceksin; burada girdiler art arda gelen belli sayıda veri noktası, hedef ise bir sonraki veri noktası olacak.
Görevin, bunu yapan create_sequences() adlı bir fonksiyon tanımlamak. Girdi olarak bir DataFrame içinde tutulan df verisini ve girişlerin uzunluğunu belirten seq_length değerini alacak. Çıktı olarak ise iki NumPy dizisi döndürmeli: biri girdi dizileri, diğeri de bunlara karşılık gelen hedefler.
Hatırlatma olarak, df DataFrame'i şöyle görünüyor:
timestamp consumption
0 2011-01-01 00:15:00 -0.704319
... ... ...
140255 2015-01-01 00:00:00 -0.095751
Bu egzersiz
PyTorch ile Orta Düzey Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- Veri noktalarının sayısından bir giriş dizisinin uzunluğunu çıkararak elde edeceğin aralık üzerinde yinele.
- Girdileri
xolarak,df'ini. satırındani + seq_length. satırına kadar olan dilimini ve indeks1'deki sütunu tanımla. - Hedefi
yolarak,df'tei + seq_lengthsatır indisi ve indeks1'deki sütunun dilimini tanımla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
import numpy as np
def create_sequences(df, seq_length):
xs, ys = [], []
# Iterate over data indices
for i in range(____):
# Define inputs
x = df.iloc[____, ____]
# Define target
y = df.iloc[____, ____]
xs.append(x)
ys.append(y)
return np.array(xs), np.array(ys)