Araştırmacılar, bazı durumlarda geleneksel hash fonksiyonları yerine öğrenilmiş modellerin kullanılmasının yarı yarıya daha fazla çakışmaya neden olabileceğini buldular. Öğrenilmiş modeller, bir veri kümesi üzerinde bir makine öğrenimi algoritması çalıştırılarak oluşturulan modellere deniyor. Deneyler ayrıca öğrenilmiş modellerin, genellikle mükemmel hash fonksiyonlarından hesaplama açısından daha verimli olduğunu ortaya koydu.
Hashing Nedir?
Hashing, veri tabanı indekslemeden veri sıkıştırmaya ve kriptografiye kadar pek çok uygulamada kullanılan bir işlem. Hızlı ve verimli hash fonksiyonları, kritik öneme sahip. Geleneksel hash fonksiyonları, kodları rastgele ürettiğinden bazen iki veri parçası aynı değerle hashlenebilir ve bu da çakışmalara neden olur. Bir öge arandığında kullanıcı aynı hash değerine sahip birçok veri parçasına ulaşır ve doğru olanı bulmak çok daha uzun sürer, bu da aramaların yavaşlamasına ve performansın düşmesine neden olur. Bu nedenle araştırmacılar, daha iyi hash fonksiyonları oluşturmak için makine öğrenimini kullanıp kullanamayacaklarını görmek için harekete geçtiler.
Konferansta Sunulacak
Bilgisayar Bilimi ve Yapay Zekâ Laboratuvarı (CSAIL) MIT Veri Sistemleri Grubunda doktora sonrası araştırmacı olan İbrahim Sabek, “Bu çalışmada bulduğumuz şey bazı durumlarda hash fonksiyonunun hesaplanması ile karşılaşacağımız çakışmalar arasında daha iyi bir denge kurabileceğimizdir. Hash fonksiyonu için hesaplama süresini biraz artırabiliriz ancak aynı zamanda belirli durumlarda çarpışmaları çok önemli ölçüde azaltabiliriz.” açıklamasında bulundu.
Uluslararası Çok Büyük Veritabanları Konferansında sunulacak olan araştırma, büyük bir veri tabanındaki aramaları önemli ölçüde hızlandırmak için bir hash fonksiyonunun nasıl tasarlanabileceğini gösteriyor. Örneğin, geliştirdikleri teknik, bilim insanlarının DNA, amino asit dizileri veya diğer biyolojik bilgileri depolamak ve analiz etmek için kullandıkları hesaplama sistemlerini hızlandırabilir.
Araştırmacılar, öğrenilmiş modellerin oluşturulmasının mükemmel hash fonksiyonlarından daha kolay ve daha hızlı olduğunu buldular. Verilerin tahmin edilebilir bir şekilde dağıtılması durumunda ise geleneksel hash fonksiyonlarından daha az çakışmaya yol açtığını tespit ettiler. Ancak veriler, tahmin edilebilir bir şekilde dağıtılmamışsa veri noktaları arasındaki boşluklar, çok büyük farklılıklar gösterdiğinden öğrenilmiş modellerin kullanılması daha fazla çakışmaya neden olabiliyor.
Daha Az Çakışma, Daha Hızlı Sonuçlar
Veriler, tahmin edilebilir şekilde dağıtıldığında öğrenilen modeller, geleneksel hash fonksiyonlarına kıyasla bir veri kümesindeki çakışan anahtarların oranını %30’dan %15’e düşürebildi. Ayrıca mükemmel hash fonksiyonlarından daha iyi verim elde edebildiler. En iyi durumlarda öğrenilmiş modeller, çalışma süresini yaklaşık %30 oranında azalttı.
Araştırmacılar, hashing için öğrenilmiş modellerin kullanımını araştırırken en çok alt modellerin sayısının etkilendiğini de keşfettiler. Öğrenilen her model, veri dağılımına yaklaşan daha küçük doğrusal modellerden oluşuyor. Daha fazla alt modelle öğrenilen model, daha doğru bir yaklaşım üretiyor ancak daha fazla zaman alıyor.
Araştırmacılar, bu analizden yola çıkarak öğrenilmiş modelleri diğer veri türleri için hash fonksiyonları tasarlamak üzere kullanmak istiyorlar. Ayrıca verilerin eklenebildiği veya silinebildiği veri tabanları için öğrenilmiş hashlemeyi keşfetmeyi planlıyorlar. Veriler, bu şekilde güncellendiğinde modelin de buna uygun olarak değişmesi gerekiyor ancak doğruluğu koruyarak modeli değiştirmek zor bir süreç.
Sabek, “Topluluğu, makine öğrenimini daha temel veri yapıları ve işlemleri içinde kullanmaya teşvik etmek istiyoruz. Her türlü temel veri yapısı, bize veri özelliklerini yakalamak ve daha iyi performans elde etmek için makine öğrenimini kullanma fırsatı sunuyor. Hâlâ keşfedebileceğimiz çok şey var.” şeklinde konuştu.
Derleyen: Nazlı Koyuncu


