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 Aralıklı 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 belirleyebilen, enterpolasyonlu bir taramalı tablodur. Giriş alanınıza normal bir ızgarayla örtüşür ve ızgaranın köşelerindeki çıktı için değerleri öğrenir. $ X $ test noktası için, $ f (x) $, $ x $ 'ı çevreleyen kafes değerlerinden doğrusal olarak enterpolasyonludur.

Yukarıdaki basit örnek, 2 giriş özelliği ve 4 parametresi olan bir fonksiyondur: $ \ theta = [0, 0.2, 0.4, 1] $, fonksiyonun girdi uzayının köşelerindeki değerleri; işlevin geri kalanı bu parametrelerden hesaplanır.

$ F (x) $ işlevi, özellikler arasındaki doğrusal olmayan etkileşimleri yakalayabilir. Kafes parametrelerini, normal bir ızgarada zemine yerleştirilmiş direklerin yüksekliği olarak düşünebilirsiniz ve sonuçta ortaya çıkan işlev, dört direğe sıkıca çekilmiş bir kumaş gibidir.

$ D $ özellikleri ve her boyut boyunca 2 köşe ile, normal bir kafes $ 2 ^ D $ parametrelerine sahip olacaktır. Daha esnek bir işlevi sığdırmak için, her boyut boyunca daha fazla köşeye sahip unsur alanı üzerinde daha ince bir kafes belirtebilirsiniz. Kafes regresyon fonksiyonları süreklidir ve parçalı sonsuz türevlenebilir.

Kalibrasyon

Diyelim ki önceki örnek kafes, özellikler kullanılarak hesaplanan önerilen bir yerel kahve dükkanıyla öğrenilmiş bir kullanıcı mutluluğunu temsil ediyor:

  • 0 ila 20 dolar aralığında kahve fiyatı
  • 0 ile 30 kilometre aralığında kullanıcıya olan uzaklık

Modelimizin yerel bir kahve dükkanı önerisi ile 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 kalibrasyon işlevlerinin 10 temel noktaya sahip örnekleri gösterilmektedir:

Özelliklerin niceliklerini girdi anahtar noktaları olarak kullanmak genellikle iyi bir fikirdir. TensorFlow Lattice hazır tahmin ediciler , girdi anahtar noktalarını otomatik olarak özellik niceliklerine ayarlayabilir.

Kategorik özellikler için TensorFlow Lattice, bir kafesi beslemek için benzer çıktı sınırlamasıyla kategorik kalibrasyon ( tfl.layers.CategoricalCalibration ) sağlar.

Topluluklar

Bir kafes katmanının parametre sayısı, girdi özelliklerinin sayısı ile üssel olarak artar, bu nedenle çok yüksek boyutlara iyi bir şekilde ö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 Küçük Kafesler (RTL): Her alt model, rastgele bir özellik alt kümesi kullanır (değiştirilerek).

  • Kristaller : Kristaller algoritması ilk ö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.

Yorumlanabilirlik

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 kafesler kullanarak, tek bir kafes katmanıyla rastgele karmaşık işlevler elde edebilirsiniz. Birden fazla kalibratör ve kafes katmanının kullanılması pratikte genellikle iyi çalışır ve benzer boyutlardaki DNN modelleriyle eşleşebilir veya daha iyi performans gösterebilir.

Sağduyu Biçim Kısıtlamaları

Gerçek dünya eğitim verileri, çalışma zamanı verilerini yeterince temsil etmeyebilir. DNN'ler veya ormanlar gibi esnek makine öğrenimi çözümleri, giriş alanının eğitim verileriyle kapsanmayan kısımlarında genellikle beklenmedik ve hatta çılgınca hareket eder. Bu davranış, özellikle politika veya adalet kısıtlamaları ihlal edilebildiğ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ı yoluyla alan bilgisini öğrenme sürecine enjekte etmek için çeşitli seçenekler sunar:

  • Monotonluk : Çıkışın yalnızca bir girdiye göre artması / azalması gerektiğini belirtebilirsiniz. Örneğimizde, bir kahve dükkanına olan mesafenin artmasının yalnızca tahmin edilen kullanıcı tercihini azaltması gerektiğini belirtmek isteyebilirsiniz.

  • Dışbükeylik / İçbükeylik : İşlev şeklinin dışbükey veya içbükey olabileceğini belirtebilirsiniz. Monotonluk ile karıştırıldığında bu, işlevi belirli bir özelliğe göre azalan getirileri temsil etmeye zorlayabilir.

  • Unimodality : Fonksiyonun benzersiz bir zirveye veya benzersiz bir vadiye sahip olması gerektiğini belirtebilirsiniz. Bu, bir özellikle ilgili tatlı bir noktaya sahip işlevleri temsil etmenize olanak tanır.

  • İkili güven : Bu kısıtlama bir çift özellik üzerinde çalışır ve bir giriş özelliğinin anlamsal olarak başka bir özelliğe olan güveni yansıttığını önerir. Örneğin, daha fazla 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 düzgün hale getirir.

  • Torsion Regularizer : Kafesin çıktıları, özellikler arasında burulmayı önlemeye yönelik olarak düzenlenecektir. 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

Kısmen kısıtlanmış veya düzenlenmiş modeller oluşturmak için TF Kafes katmanlarını diğer Keras katmanlarıyla birlikte kullanabilirsiniz. Örneğin, kafes veya PWL kalibrasyon katmanları, gömme veya diğer Keras katmanlarını içeren daha derin ağların son katmanında kullanılabilir.

Bildiriler

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 Kafes 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 tam API belgelerine göz atın.