Çapraz entropi maliyeti regresyon bağlamında anlamlı mı?


14

Çapraz entropi maliyeti regresyon bağlamında anlamlı mıdır (sınıflamanın aksine)? Eğer öyleyse, TensorFlow aracılığıyla bir oyuncak örneği verebilir misiniz? Değilse, neden olmasın?

Michael Nielsen tarafından Yapay Sinir Ağları ve Derin Öğrenme'de çapraz entropi hakkında okuyordum ve doğal olarak regresyon ve sınıflandırma için kullanılabilecek bir şey gibi görünüyor, ancak TensorFlow'da bunu nasıl verimli bir şekilde uygulayacağınızı anlamıyorum. Kayıp fonksiyonları (gerçekten de anlamıyorum) logları alır ve burada sınıflandırma altında listelenir


2
Burada , bu sorunun cevabı olarak kabul edilenden farklı olan devletler üzerinde buldum
Siddharth Shakya

Tüm yanıtı okuduysanız, çapraz entropinin "sürekli bir versiyonunu" verdiğini görürsünüz, bu oldukça iyidir, ancak sadece Ortalama Kare Hatası (MSE) olduğu ortaya çıkar.
JacKeown

Yanıtlar:


11

Hayır, tf.nn.sigmoid_cross_entropy_with_logitsregresyon görevi gibi TensorFlow işlevlerini kullanmak mantıklı değildir . TensorFlow'da “çapraz entropi”, “kategorik çapraz entropi” için kısayol (veya jargon) şeklindedir. Kategorik çapraz entropi olasılıklar üzerine yapılan bir işlemdir. Bir regresyon problemi, sınıflandırmalardan ziyade sürekli sonuçları tahmin etmeye çalışır.

Jargon "çapraz entropi" biraz yanıltıcıdır, çünkü herhangi bir sayıda çapraz entropi kaybı fonksiyonu vardır; bununla birlikte, bu özel kayba "çapraz entropi" kaybı olarak atıfta bulunmak makine öğreniminde bir kuraldır.

Bağlandığınız TensorFlow işlevlerinin ötesine bakarsak, elbette herhangi bir sayıda olası çapraz entropi işlevi vardır. Bunun nedeni, genel çapraz entropi kavramının iki olasılık dağılımının karşılaştırılmasıdır. Hangi iki olasılık dağılımını karşılaştırmak istediğinize bağlı olarak, tipik kategorik çapraz entropi kaybından farklı bir kayıp elde edebilirsiniz. Örneğin, bir Gauss hedefinin değişken ortalama ama sabit diyagonal kovaryansa sahip çapraz entropisi ortalama kare hatasına düşer. Genel çapraz entropi kavramı bu sorularda daha ayrıntılı olarak açıklanmaktadır:


6
Bununla birlikte, çıkış değerlerinin [0,1] aralığında gerçek değerler olduğu bir regresyon görevinde kayıp fonksiyonu olarak ikili çapraz-entropinin kullanılmasının oldukça makul ve geçerli bir şey olduğu belirtilmelidir.
bugün

@today Bence bu, bazı insanların pratik nedenlerle benimsediği bir uygulamadır (örneğin sinir ağı daha hızlı birleşir), ancak bu modelin iki olasılık dağılımının karşılaştırılmasıyla herhangi bir ilişkisi olduğundan emin değilim. Belki sürekli değerli bir hedef ile ikili çapraz entropi arasında bir ilişki olduğunu gösterebilirsiniz ? [0,1]
Sycorax, Monica

6

@Sycorax tarafından verilen cevap doğrudur. Bununla birlikte, çıkış değerlerinin [0,1] aralığında olduğu bir regresyon görevinde (ikili) çapraz entropi kullanmanın geçerli ve makul bir şey olduğunu belirtmek gerekir. Aslında, görüntü otomatik kodlayıcılarında kullanılır (örneğin burada ve bu kağıtta ). Bu cevapta bu durumda neden işe yaradığına dair basit bir matematiksel kanıt görmek isteyebilirsiniz .


Kayıp fonksiyonları, olasılıklar / posteriorlar veya bunların bazı monotonik dönüşümü olarak görülebilir. Bu nedenle, bazı regresyon modellerinde çapraz entropiye benzer bir kaybın mantıklı olabileceği doğru olsa da, çıktıların aralığında olduğu herhangi bir regresyonla başa çıkmak mantıklı bir yaklaşım olmayabilir . [0,1]
InfProbSciX

@InfProbSciX " çıktıların [0,1] aralığında olduğu herhangi bir gerileme ile başa çıkmak mantıklı bir yaklaşım olmayabilir ." Peki "mantıklı" ne anlamda? Veya belirli bir görev için kayıp işlevinin makul olup olmadığını nasıl tanımlarsınız? Bu ifadenin herhangi bir kayıp işlevi için doğru olabileceğinden şüpheleniyorum. "Makul" terimini tanımladıktan sonra, her türlü regresyon görevi için makul olabilecek herhangi bir kayıp fonksiyonu var mı ?
bugün

Makul tanımlamamın yolu, bir model yasa oluşturmaktır. Örneğin, bu gibi bir regresyon çerçevesinde burada IID hatalardır - normal dağılıma demek, negatif log olasılık tam olarak kare kaybı. Gibi model kanun görünüyor bir ortamda , negatif log-olabilirlik olduğunu tam olarak ikili çapraz entropi. Yasanın, refakatlerden önce normal olan doğrusal bir gerileme olduğu durumlarda, kayıp L2 cezasına ve benzerlerine karşılık gelir. Mümkünse, bir yasa inşa eder ve sonra bir kayıp elde ederim . ϵY=fθ(X)+ϵϵYBernoulli(pθ)
InfProbSciX

@InfProbSciX Yanıtınız için teşekkürler. Bahsettiğiniz gibi, regresyon görevine (ve verilerin dağıtımı, hatalar, vb.) Bağlı olarak bir kayıp işlevinin kullanılması makul olmayabilir. Ve, daha önce de belirttiğim gibi, bu, crossentropy dahil tüm kayıp fonksiyonları için geçerlidir. Tabii ki, sadece çıkış değerlerinin [0,1] aralığında olması, kasıtlı paranın en iyi seçim kaybı fonksiyonu olduğunu garanti etmediğini ve aksi takdirde cevabımı başkalarına aktarmaya çalışmamaya dikkatinizi çekti.
bugün

5

Derin öğrenme çerçeveleri genellikle modelleri ve kayıpları karıştırır ve çok yönlü bir modelin softmax doğrusal olmayanlığı cross_entropyile yanıltıcı olan çapraz entropisine işaret eder . Genel olarak, keyfi modeller için çapraz entropi tanımlayabilirsiniz .

Değişken ortalama ancak sabit diyagonal kovaryansa sahip bir Gauss modeli için MSE'ye eşdeğerdir. Genel bir kovaryans için, çapraz entropi kare bir Mahalanobis mesafesine karşılık gelir . Üstel dağılım için, çapraz entropi kaybı gibi burada sürekli fakat negatif değildir. Yani evet , çapraz entropi regresyon için kullanılabilir.

fθ(x)ylogfθ(x),
y


2

Ne yazık ki, @Sycorax tarafından şu anda kabul edilen cevap, ayrıntılı olsa da yanlıştır.

Aslında, kategorik çapraz entropi yoluyla regresyon bir örnektir - Wavenet - olmuştur uygulanan TensorFlow içinde .

İlke, çıktı alanınızı ayrıştırmanız ve ardından modelinizin yalnızca ilgili bölmeyi tahmin etmesidir; Kısmına 2.2'ye bakınız kağıt ses modelleme alanında bir örnek. Bu nedenle, teknik olarak model sınıflandırma yaparken, çözülen nihai görev gerilemedir.

Açık bir dezavantajı, çıkış çözünürlüğünü kaybetmenizdir. Ancak, bu bir sorun olmayabilir (en azından Google'ın yapay asistanının çok insani bir sesle konuştuğunu düşünüyorum ) veya bazı post-processing ile oynayabilirsiniz, örneğin en olası çöp kutusu ve iki komşu arasında enterpolasyon.

Öte yandan, bu yaklaşım modeli olağan tek doğrusal birim çıktıya göre çok daha güçlü kılar, yani çok modlu tahminleri ifade etmeyi veya güvenini değerlendirmeyi sağlar. İkincisinin doğal olarak başka yollarla, örneğin Varyasyonel Otomatik Enkoderlerde olduğu gibi açık (log) bir varyans çıkışına sahip olarak elde edilebileceğini unutmayın.

Her neyse, bu yaklaşım daha boyutlu çıktıya iyi ölçeklenmez, çünkü o zaman çıktı katmanının boyutu katlanarak büyür ve hem hesaplama hem de modelleme sorunu haline gelir.


1
Ne dediğini görüyorum, ama kişisel olarak çıkış alanınızı, sınıflandırma kullanarak bir regresyon sorununa yaklaştığı kadar "regresyon" yapmak olarak düşünmüyorum ... ama sanırım bu sadece bir terminoloji / konvansiyon meselesi.
JacKeown

1
Kabul. 32-bit kayan alan yine de ayrık :-)
dedObed

-1

Şimdi daha önce kabul ettiğim yanıta katılmıyorum diye bu soruyu tekrar gözden geçirdim. Çapraz entropi kaybı regresyonda kullanılabilir (yaygın olmasa da).

Çapraz entropinin sadece iki olasılık dağılımını karşılaştırırken mantıklı olan bir kavram olduğu gerçeği ortaya çıkmaktadır. Normal bir dağılım için ortalama ve standart sapma çıkaran bir sinir ağını tahmini olarak düşünebilirsiniz. O zaman kötü tahminlere daha fazla güven duyduğu için daha sert cezalandırılacaktı. Yani evet, mantıklı, ama sadece bir anlamda bir dağıtım çıkarıyorsanız. Orijinal sorumla ilgili bir yorumda @SiddharthShakya'dan gelen bağlantı bunu gösteriyor.


1
Bu cevap soruyu sorulmasından farklı bir şekilde cevaplıyor gibi görünüyor. Soruda bağlandığınız işlevler belirli bir tür çapraz entropi kaybı ile ilgilidir ve sorunuz bu fonksiyonların regresyonda kullanılıp kullanılamayacağını soruyor gibi görünüyor ve cevabım bu fonksiyonları nasıl kullanacağınızı soruyor gibi yazılıyor bağlantı veriyorsunuz. Bu sorunun cevabı "Çapraz entropi sınıflandırmanın ötesinde genelleştirilebilir mi?" Q'nun düzenlenmesi, Tensorflow işlevlerinin nasıl kullanılacağına odaklanmak yerine, matematiksel kavramların nasıl tanımlandığına odaklanılmasını netleştirecektir.
Sycorax,

İtirazınızı anlıyorum, ancak soruyu olduğu gibi bırakmayı planlıyorum çünkü asıl sorgumu temsil ediyor, çünkü aynı soruya sahip olan insanlara yardımcı olabilirim. Her halükarda, gönderinin tamamı genel olarak yeterli bilgi içermelidir.
JacKeown
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.