Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

TensorFlow Kafes (TFL)

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

Bu bölüm, Monotonik Kalibre Edilmiş İnterpolasyonlu Arama Tabloları , JMLR 2016'daki açıklamanın basitleştirilmiş bir sürümüdür.

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

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.