Kodlar, geleneksel programcılar için olduğu kadar makine öğrenimi geliştiricileri için de önemlidir. Bu derste, verileriniz hakkında sormanız gereken soru türleri ele alınmaktadır.
Video Ders Özeti
ML sisteminin davranışı, giriş özelliklerinin davranışına ve niteliklerine bağlıdır. Bu özelliklerin giriş verileri değiştikçe modeliniz de değişir. Kimi zaman bu değişiklik tercih edilir, ancak bazen istenmez.
Geleneksel yazılım geliştirmede veri yerine koda daha fazla odaklanırsınız. Makine öğreniminin gelişiminde kodlama hâlâ bir parçası olsa da odak, verileri içerecek şekilde genişletilmelidir. Örneğin, geleneksel yazılım geliştirme projelerinde kodunuzu doğrulamak için birim testleri yazmak en iyi uygulamadır. Ayrıca makine öğrenimi projelerinde, giriş verilerinizi sürekli olarak test etmeniz, doğrulamanız ve izlemeniz gerekir.
Örneğin, kullanılmayan (veya az kullanılan) özellikleri kaldırmak için modelinizi sürekli olarak izlemeniz gerekir. Modele çok az katkıda bulunan veya hiçbir katkısı olmayan belirli bir özelliği düşünün. Söz konusu özelliğin giriş verileri aniden değişirse modelinizin davranışı da aniden istenmeyen şekillerde değişebilir.
Güvenilirlik
Giriş verilerinizin güvenilirliği hakkında sorulacak bazı sorular:
- Sinyaller her zaman kullanılabilir mi yoksa güvenilmeyen bir kaynaktan mı geliyor? Örneğin:
- Sinyal ağır yük altında kilitlenen bir sunucudan mı geliyor?
- Bu sinyal her Ağustos ayında tatile çıkan insanlardan mı geliyor?
Sürüm oluşturma
Sürüm belirleme hakkında sorulacak bazı sorular:
- Bu verileri hesaplayan sistem değişir mi? Bu durumda:
- Ne sıklıkta?
- Bu sistemin değiştiğini nasıl anlayacaksınız?
Bazen, veriler bir yukarı akış sürecinden gelir. Bu işlem aniden değişirse modeliniz bundan etkilenebilir.
Yayın sürecinden aldığınız verilerin kendi kopyasını oluşturmayı düşünebilirsiniz. Ardından, yalnızca yukarı akış verilerinin güvenli olduğundan emin olduğunuz sonraki verilerin sonraki sürümüne geçin.
Gereklilik
Aşağıdaki soru size normalleştirmeyi hatırlatır:
- Özelliğin kullanışlılığı, ekleme maliyetini doğruluyor mu?
Modele daha fazla özellik eklemek her zaman cazip görünmektedir. Örneğin, ekleme işlemini modelinizin biraz daha doğru hale getirdiği yeni bir özellik bulduğunuzu varsayalım. Doğruluğun yüksek olması, doğruluğun düşük olmasına göre kesinlikle daha iyi olur. Ancak, bakım yükünüzü artırdınız. Bu ek özellik beklenmedik bir şekilde bozulabilir ve özelliği takip etmeniz gerekir. Küçük çaplı kısa kazançlara yol açan özellikleri eklemeden önce iyi düşünün.
Bağıntılar
Bazı özellikler (diğer veya olumlu) diğer özelliklerle ilişkilendirilir. Kendinize şu soruyu sorun:
- Birbiriyle bağlantılı olup bunları tanıtmak için ek stratejilere ihtiyacınız var mı?
Geri Bildirim Döngüleri
Bazen bir model kendi eğitim verilerini etkileyebilir. Örneğin, bazı modellerin sonuçları doğrudan aynı modele özellikleri doğrudan veya dolaylı olarak girer.
Bazen bir model başka bir modeli etkileyebilir. Örneğin, hisse senedi fiyatlarını tahmin etmek için iki modeli ele alalım:
- Model A, hatalı tahmine dayalı bir modeldir.
- B Modeli.
A Modeli hatalı olduğundan X Stokunda hisse senedi satın almaya karar verir. Bu satın alma işlemleri X TL'nin fiyatını artırır. B Modeli, giriş özelliği olarak X Stoku'nun fiyatını kullanır. Bu nedenle, B Modeli kolayca Stok X stokunun değeriyle ilgili bazı yanlış sonuçlara gelebilir. Bu nedenle Model B, A Modeli'nin hatalı davranışına dayanarak X Stoku'nun hisselerini satın alabilir veya satabilir. Model B'nin davranışı sırasıyla A Modelini etkileyebilir ve muhtemelen lale çılgınlığını ya da X Şirketi envanterindeki bir slaydı tetikleyebilir