TensorFlow Lattice, esnek, kontrollü ve yorumlanabilir kafes tabanlı modeller uygulayan bir kütüphanedir. Kütüphane, alan bilgisini sağduyu veya politika odaklı şekil kısıtlamaları aracılığıyla öğrenme sürecine enjekte etmenize olanak tanır. Bu, monotonluk, dışbükeylik ve ikili güven gibi kısıtlamaları karşılayabilen bir Keras katmanları koleksiyonu kullanılarak yapılır. Kitaplık ayrıca kurulumu kolay hazır tahmin ediciler sağlar .
Kavramlar
kafesler
Kafes , verilerinizdeki rastgele girdi-çıktı ilişkilerini yaklaşık olarak tahmin edebilen, enterpolasyonlu bir taramalı tablodur. Normal bir ızgarayı girdi alanınızla örtüştürür ve ızgaranın köşelerindeki çıktı için değerleri öğrenir. $ X $ test noktası için, $ f (x) $, $ x $ değerini çevreleyen kafes değerlerinden doğrusal olarak enterpole edilir.
Yukarıdaki basit örnek, 2 giriş özelliğine ve 4 parametreye sahip bir işlevdir: $ \ theta = [0, 0.2, 0.4, 1] $, işlevin giriş alanının köşelerindeki değerleri; fonksiyonun geri kalanı bu parametrelerden enterpole edilir.
$ F (x) $ işlevi, özellikler arasındaki doğrusal olmayan etkileşimleri yakalayabilir. Kafes parametrelerini, normal bir ızgara üzerinde zemine yerleştirilmiş direklerin yüksekliği olarak düşünebilirsiniz ve sonuçta ortaya çıkan işlev, dört kutuba sıkıca çekilmiş bir kumaş gibidir.
$ D $ özellikleri ve her boyut boyunca 2 köşe ile normal bir kafeste $ 2 ^ D $ parametreleri bulunur. Daha esnek bir işleve sığdırmak için, her boyut boyunca daha fazla köşeye sahip özellik alanı üzerinde daha ince taneli bir kafes belirtebilirsiniz. Kafes regresyon fonksiyonları süreklidir ve parçalı sonsuz türevlenebilir.
ayarlama
Önceki örnek kafesin, özellikler kullanılarak hesaplanan önerilen bir yerel kahve dükkanıyla öğrenilmiş bir kullanıcı mutluluğunu temsil ettiğini varsayalım:
- 0 ila 20 dolar aralığında kahve fiyatı
- kullanıcıya olan mesafe, 0-30 kilometre aralığında
Modelimizin yerel bir kahve dükkanı önerisiyle kullanıcı mutluluğunu öğrenmesini istiyoruz. TensorFlow Lattice modelleri, giriş özelliklerini kafes tarafından kabul edilen aralıkta kalibre etmek ve normalleştirmek için parçalı doğrusal fonksiyonları (
tfl.layers.PWLCalibration ) kullanabilir: yukarıdaki örnek kafeste 0,0 ila 1,0. Aşağıda, bu tür kalibrasyonların 10 anahtar noktası olan işlevleri gösterilmektedir:
Özelliklerin niceliklerini girdi anahtar noktaları olarak kullanmak genellikle iyi bir fikirdir. TensorFlow Kafes hazır tahmin ediciler , giriş tuş noktalarını otomatik olarak özellik miktarlarına ayarlayabilir.
Kategorik özellikler için, TensorFlow Kafes, bir kafese beslenmek üzere benzer çıktıya sahip kategorik kalibrasyon (
tfl.layers.CategoricalCalibration ) sağlar.
toplulukları
Bir kafes katmanının parametre sayısı, giriş özelliklerinin sayısı ile katlanarak artar, bu nedenle çok yüksek boyutlara iyi ölçeklenmez. Bu sınırlamanın üstesinden gelmek için TensorFlow Lattice, modelin özelliklerin sayısında doğrusal olarak büyümesini sağlayan birkaç küçük kafesi birleştiren (ortalama) kafes toplulukları sunar.
Kütüphane bu toplulukların iki çeşidini sunar:
Rastgele Minik Kafesler (RTL): Her alt model rastgele bir özellik alt kümesi kullanır (yedekli).
Kristaller : Kristaller algoritması, önce ikili özellik etkileşimlerini tahmin eden uygun bir model eğitir. Daha sonra, son topluluğu, daha doğrusal olmayan etkileşimleri olan özellikler aynı kafeslerde olacak şekilde düzenler.
Neden TensorFlow Lattice?
Bu TF Blog gönderisinde TensorFlow Lattice'e kısa bir giriş bulabilirsiniz.
yorumlanabilir
Her katmanın parametreleri o katmanın çıktısı olduğundan, modelin her bir parçasını analiz etmek, anlamak ve hata ayıklamak kolaydır.
Doğru ve Esnek Modeller
İnce taneli kafesleri kullanarak, tek bir kafes katmanıyla keyfi olarak karmaşık işlevler elde edebilirsiniz. Birden fazla kalibratör ve kafes katmanı kullanmak genellikle pratikte iyi çalışır ve benzer boyutlardaki DNN modelleriyle eşleşebilir veya daha iyi performans gösterebilir.
Yaygın Anlamda Şekil Kısıtlamaları
Gerçek dünyadaki eğitim verileri, çalışma zamanı verilerini yeterince temsil etmeyebilir. DNN'ler veya ormanlar gibi esnek ML çözümleri, giriş alanının eğitim verileri tarafından kapsanmayan kısımlarında genellikle beklenmedik ve hatta çılgınca hareket eder. Bu davranış, özellikle ilke veya adalet kısıtlamaları ihlal edildiğinde sorunludur.
Yaygın düzenlileştirme biçimleri daha mantıklı bir ekstrapolasyona neden olabilse de, standart düzenleyiciler, özellikle yüksek boyutlu girdilerle, tüm girdi alanı boyunca makul model davranışını garanti edemez. Daha kontrollü ve öngörülebilir davranışa sahip daha basit modellere geçiş, model doğruluğuna ciddi bir maliyet getirebilir.
TF Lattice, esnek modelleri kullanmaya devam etmeyi mümkün kılar, ancak anlamsal olarak anlamlı sağduyu veya politika odaklı şekil kısıtlamaları aracılığıyla alan bilgisini öğrenme sürecine enjekte etmek için çeşitli seçenekler sunar:
- Tekdüzelik : Çıktının yalnızca girdiye göre artması / azalması gerektiğini belirtebilirsiniz. Örneğimizde, bir kafeye olan mesafenin artmasının yalnızca tahmini kullanıcı tercihini azaltması gerektiğini belirtmek isteyebilirsiniz.
Konvekslik / Konkavlık : Fonksiyon şeklinin konveks veya konkav olabileceğini belirtebilirsiniz. Monotoniklik ile karıştırıldığında, bu işlev belirli bir özelliğe göre azalan getirileri temsil etmeye zorlayabilir.
Unimodality : Fonksiyonun benzersiz bir tepe veya benzersiz bir vadiye sahip olması gerektiğini belirtebilirsiniz. Bu, bir özellikle ilgili tatlı bir noktaya sahip işlevleri temsil etmenize olanak tanır.
Çift güven : Bu kısıtlama bir çift özellik üzerinde çalışır ve bir giriş özelliğinin semantik olarak başka bir özelliğe güveni yansıttığını gösterir. Örneğin, daha yüksek sayıda yorum, bir restoranın ortalama yıldız puanı konusunda kendinize daha fazla güvenmenizi sağlar. İnceleme sayısı daha yüksek olduğunda model yıldız derecelendirmesine göre daha hassas olacaktır (yani derecelendirmeye göre daha büyük bir eğime sahip olacaktır).
Düzenleyicilerle Kontrollü Esneklik
Şekil kısıtlamalarına ek olarak, TensorFlow kafesi, her katman için işlevin esnekliğini ve düzgünlüğünü kontrol etmek için bir dizi düzenleyici sağlar.
Laplacian Düzenleyici : Kafes / kalibrasyon köşelerinin / anahtar noktalarının çıktıları, ilgili komşularının değerlerine göre düzenlenir. Bu, daha düz bir işlevle sonuçlanır.
Hessian Regularizer : Bu, işlevi daha doğrusal hale getirmek için PWL kalibrasyon katmanının ilk türevini cezalandırır.
Kırışıklık Düzenleyici : Bu, eğrilikteki ani değişiklikleri önlemek için PWL kalibrasyon katmanının ikinci türevini cezalandırır. İşlevi daha pürüzsüz hale getirir.
Burulma Düzenleyici : Kafesin çıktıları, özellikler arasında burulmayı önleyecek şekilde düzenlenir. Diğer bir deyişle model, özelliklerin katkıları arasında bağımsızlığa doğru düzenlenecektir.
Diğer Keras katmanlarıyla karıştırın ve eşleştirin
TF Kafes katmanlarını, kısmen kısıtlanmış veya düzenli modeller oluşturmak için diğer Keras katmanlarıyla birlikte kullanabilirsiniz. Örneğin, kafes veya PWL kalibrasyon katmanları, düğünleri veya diğer Keras katmanlarını içeren daha derin ağların son katmanında kullanılabilir.
kâğıtlar
- Monotonluk Şekil Kısıtlamalarına Göre Deontolojik Etik , Serena Wang, Maya Gupta, Uluslararası Yapay Zeka ve İstatistik Konferansı (AISTATS), 2020
- Küme İşlevleri için Şekil Kısıtlamaları , Andrew Cotter, Maya Gupta, H. Jiang, Erez Louidor, Jim Muller, Taman Narayan, Serena Wang, Tao Zhu. Uluslararası Makine Öğrenimi Konferansı (ICML), 2019
- Yorumlanabilirlik ve Düzenleme için Azalan Şekil Kısıtlamaları , Maya Gupta, Dara Bahri, Andrew Cotter, Kevin Canini, Nöral Bilgi İşleme Sistemlerindeki Gelişmeler (NeurIPS), 2018
- Derin Kafes Ağları ve Kısmi Monotonik Fonksiyonlar , Seungil You, Kevin Canini, David Ding, Jan Pfeifer, Maya R. Gupta, Nöral Bilgi İşleme Sistemlerinde Gelişmeler (NeurIPS), 2017
- Kafes Toplulukları ile Hızlı ve Esnek Monotonik Fonksiyonlar , Mehdi Milani Farz, Kevin Canini, Andrew Cotter, Jan Pfeifer, Maya Gupta, Sinir Bilgi İşlem Sistemlerindeki Gelişmeler (NeurIPS), 2016
- Monotonik Kalibre Edilmiş İnterpolasyonlu Arama Tabloları , Maya Gupta, Andrew Cotter, Jan Pfeifer, Konstantin Voevodski, Kevin Canini, Alexander Mangylov, Wojciech Moczydlowski, Alexander van Esbroeck, Makine Öğrenimi Araştırmaları Dergisi (JMLR), 2016
- Etkili Fonksiyon Değerlendirmesi için Optimize Edilmiş Regresyon , Eric Garcia, Raman Arora, Maya R. Gupta, Görüntü İşlemede IEEE İşlemleri, 2012
- Kafes Regresyon , Eric Garcia, Maya Gupta, Nöral Bilgi İşleme Sistemlerinde Gelişmeler (NeurIPS), 2009
Eğiticiler ve API belgeleri
Yaygın model mimarileri için, Keras'ın önceden hazırlanmış modellerini veya hazır Tahmincileri kullanabilirsiniz . Ayrıca TF Lattice Keras katmanlarını kullanarak özel modeller oluşturabilir veya diğer Keras katmanlarıyla karıştırıp eşleştirebilirsiniz. Ayrıntılar için API belgelerinin tamamını inceleyin.