Günümüzdeki tüketici uygulamaları, her zamankinden daha fazla veri üretiyor. Bu durum, işletmelerin gözlemsel verileri kullanarak bireysel uygulama bileşenlerinin iş metrikleri üzerindeki etkilerini anlamak için neden-sonuç çıkarım yöntemlerine yönelmesine yol açıyor.
Neden Neden-Sonuç Çıkarımı?
Son on yılda, ekonometrik yöntemler arasında çift makine öğrenimi (double machine learning) adı verilen bir teknik geliştirilmiştir. Bu teknik, makine öğrenimi modellerinin neden-sonuç çıkarım sorunlarına uygulamada etkisini artırmaktadır. İki ayrı veri kümesi örneği üzerinde öngörücü modeller eğitiliyor ve sonuçlar, hedef değişkenin nötr bir tahminini oluşturmak için birleştiriliyor.
Açık kaynaklı Python kütüphaneleri arasında, DoubleML gibi araçlar yenilikçi bu teknikleri veri bilimcilerin kullanımına sunuyor; ancak kurumsal veri boyutlarıyla başa çıkmakta zorlanıyorlar.
Hızlandırılmış Hesaplama ile Çift Makine Öğrenimini Birleştirmek
RAPIDS, GPU hızlandırmalı veri bilimi ve AI kütüphaneleri içeren açık kaynaklı bir koleksiyondur. cuML, Python için GPU hızlandırmalı bir makine öğrenimi kütüphanesi olup, scikit-learn uyumlu bir API sunmaktadır.
Bu yazıda, RAPIDS cuML ile DoubleML kütüphanesinin nasıl birleştiğini ve büyük veri kümeleri için neden-sonuç çıkarımı süreçlerini hızlandırmak için nasıl kullanılabileceğini gösteriyoruz.
Esnek Modeller ve Neden-Sonuç İlişkisi
Çoğu veri bilimi ve makine öğrenimi uygulaması tahminlerin kalitesine odaklanırken, bireysel özelliklerin sonuç değişkeni üzerindeki etki büyüklüklerini ölçmek ihtiyacı doğar. Bunun için en güvenilir yöntem, rastgele kontrollü deneme veya A/B testi yapmaktır. Ancak, bu tür testler işletmeler için her zaman pratik olmayabilir.
Örneğin, bir uygulama deneyiminin önemli bir parçasının kullanıcı ayrılmasını nasıl etkilediğini anlamak istiyoruz ama bu değişikliklerin olası zararlarını riske atamayız. Neden-sonuç çıkarım teknikleri, gerçek dünya kullanıcı davranış verileri üzerinden bu ilişkileri tahmin etmemize olanak tanır.
Geçmişte ise, rastgele orman ve XGBoost gibi esnek, parametrik olmayan modellerin neden-sonuç çıkarımında kullanılması zordu. Ancak çift makine öğrenimi, bu yeniliklerden faydalanmayı kolaylaştırıyor.
Sonuçların Hızlandırılması
Causal çıkarımda son teknoloji makine öğrenimi algoritmalarının kullanılması, iş akışının hesaplama ihtiyaçlarını artırıyor. Küçük veri setleriyle bu bir sorun değilken, veri setleri arttıkça CPU tabanlı DoubleML kullanımında zorluklar yaşanıyor.
Aşağıdaki benchmark çalışmasında, DoubleML belgelerinden uyarladığımız bir örneği inceleyeceğiz. Burada, farklı veri seti boyutları üzerinde scikit-learn ve cuML kullanılarak performans değişikliklerini gözlemleyeceğiz.
Veri setinizde yüz binlerce veya milyonlarca kayıt olduğunda, CPU tabanlı eğitim süreçleri yavaşlayabilir. Örneğin, 10 milyon satır ve 100 sütun içeren bir veri kümesinde DoubleMLPLR modelinin eğitimi 6.5 saatten fazla sürerken, GPU ile hızlandırılmış RAPIDS cuML kullanıldığında bu süre sadece 51 dakikaya düşmektedir. Bu, %7.7 oranında bir hızlanma demektir.
Sonuçlar göstermektedir ki, GPU hızlandırmalı kütüphaneler kullanıldığında, cuML, scikit-learn’ün CPU tabanlı RandomForestRegressor’ına göre %12 oranında hız kazandırabilmektedir. Bunun için yalnızca az bir kod değişikliği gerekmektedir.
Sonuç ve Gelecek Bakışı
Neden-sonuç çıkarımı, işletmelerin ürünlerinin kilit bileşenlerini daha iyi anlama yolunda önemli bir araçtır; fakat bunun yanı sıra bu tür gelişmelerin avantajlarından faydalanmak da zamanında zorlu hale gelebiliyor.
Çift makine öğrenimi gibi yeni teknikler, işletmelerin nesnel makine öğrenimi algoritmalarını kullanarak neden-sonuç çıkarım problemlerinde yararlanmasına olanak tanıyor. Veri tabanları büyüdükçe, CPU tabanlı altyapı iş üretkenliği taleplerine ayak uydurmakta zorlanıyor.
Bu nedenle, RAPIDS cuML gibi hızlandırılmış hesaplama kütüphaneleri ile DoubleML kullanmak, bekleme süresini saatlerden dakikalar seviyesine düşürüyor. Daha fazlasını öğrenmek için cuML belgelerini ziyaret edebilirsiniz.