Birkaç sürekli değişkenin log dönüşümünü almanın arkasındaki sebep nedir?


16

Bir sınıflandırma problemi yapıyorum ve birçok insanın kodunu ve eğiticilerini okudum. Dikkatimizi çeken tek şey birçok kişi almasıdır np.logveya logsürekli benzeri değişken loan_amountveya applicant_incomevs.

Sadece arkasındaki sebebi anlamak istiyorum. Model tahmin doğruluğunu artırmamıza yardımcı olur mu? Zorunlu mu? veya Arkasında mantık var mı?

Lütfen mümkünse bazı açıklamalar sağlayın. Teşekkür ederim.

Yanıtlar:


27

Bu, değişkenler birkaç büyüklük sırasına yayıldığında yapılır. Gelir tipik bir örnektir: dağılımı "güç yasası" dır, yani gelirlerin büyük çoğunluğu küçük ve çok azı büyüktür.

Bu tür "yağlı kuyruklu" dağılım, logaritmanın matematiksel özellikleri nedeniyle logaritmik ölçekte incelenir:

log(xn)=nlog(x)

Hangi ima

log(104)=4log(10)

ve

log(103)=3log(10)

bu büyük bir fark dönüştüren

104103
daha küçük bir biri
43
Değerleri karşılaştırılabilir kılar.


2
Güzel cevap özellikle üstel dağılımlar hakkında konuşuyor.
Kasra Manshaei

1
@KasraManshaei Özellikle güç yasaları hakkında konuşuyordum (gelir tipik bir örnektir): üstel dağılımdaki uç değerler tanım gereği çok nadirdir. Bu nedenle, birçok büyüklük sırasını kapsayan veriler genellikle güç yasasıdır.
Duccio Piovani

1
ama tabii ki böyle durumlarda log ---> ln, kesinlikle cevap noktasını değiştirmez.
Duccio Piovani

Evet anladım. Dediğin gibi çok fazla değişiklik yok.
Kasra Manshaei

7

Çoğunlukla çarpık dağılım nedeniyle. Logaritma doğal olarak bir değişkenin dinamik aralığını azaltır, böylece ölçek önemli ölçüde çarpık olmasa da farklılıklar korunur. Bazı insanların 100.000.000 kredi aldığını ve bazılarının 10000 ve bazılarının 0 olduğunu düşünün. Logaritma sorunu çözer.


Manshael, MinMaxScaler veya StandardScaler'ı kullanabilir miyim? veya Günlük almak gerekli mi?
Sai Kumar

Gerekli. Ölçekleyici kullanırsanız, küçük değerleri çarpıcı bir şekilde sıkıştırırlar. Söylemek istediğim buydu.
Kasra Manshaei

2
Evet. 1000.000.000 ve 10000 ve 0 değerlerini dikkate alırsanız. Çoğu durumda, birincisi, başkalarının modeliniz tarafından düzgün bir şekilde görülmesine izin vermeyecek kadar büyüktür. Ancak logaritma alırsanız, sırasıyla 9, 4 ve 0'a sahip olursunuz. Gördüğünüz gibi farklar neredeyse korunurken dinamik aralık azalır. Özelliğinizdeki herhangi bir üstel doğadan gelir. Bu durumlarda, diğer cevap tasvir edildiği gibi logaritma gerekir. Umarım yardımcı oldu :)
Kasra Manshaei

2
Peki, ölçekleme! Normal dağılımlı iki değişken düşünün (bu nedenle logaritmaya gerek yoktur), ancak bunlardan biri 10ish ölçeğinde ve diğeri milyonlarca ölçeğinde. Yine onları modele beslemek küçük olanı görünmez yapar. Bu durumda ölçeklerini makul hale getirmek için ölçekleyicileri kullanırsınız.
Kasra Manshaei

1
@KasraManshaei log (0) = -inf olsa.
JAD

5

logx0<x<<logx< .

x


3

Logaritmik dönüşümlerin faydalı olmasının bir başka nedeni de oran verileri için devreye girer log(A/B) = -log(B/A). Ham ölçekte bir oran dağılımını çizerseniz, puanlarınız aralığa düşer (0, Inf). 1'den küçük oranlar grafiğin küçük bir alanına sıkıştırılacak ve ayrıca oranı (B/A)yerine çevirirseniz grafik tamamen farklı görünecektir (A/B). Bunu logaritmik bir ölçekte yaparsanız, aralık şimdi (-Inf, +Inf), yani 1'den küçük ve 1'den büyük oranlar daha eşit olarak yayılmıştır. Oranı çevirmeye karar verirseniz, çizimi 0 civarında çevirirsiniz, aksi takdirde tamamen aynı görünür. Bir günlük ölçeğinde, bir oran göstermeniz gerçekten önemli 1/10 or 10/1değildir; bu, hangisinin olması gerektiği konusunda açık bir seçim olmadığında yararlıdır.


3

Lognormal dağılıma bakmalısınız .

İnsanlar, ölçeği veya başka bir şeyi sıkıştırdığını düşündükleri için günlükleri kullanabilirler, ancak günlüklerin ilkeli kullanımı, lognormal dağılımı olan verilerle çalışmanızdır. Bu, tüm değerlerin olumlu olduğu ve çoğunun nispeten mütevazı olduğu, ancak bazıları çok büyük olduğu maaşlar, konut fiyatları vb.

Verilerin günlüğünü alabilir ve normalleşirse, iyi tanımlanmış ortalama, standart sapma (ve dolayısıyla z-puanları), simetri vb.Gibi normal bir dağılımın birçok özelliğinden yararlanabilirsiniz.

Benzer şekilde, günlüklerin eklenmesi, günlüğe kaydedilmemiş değerlerin çarpımı ile aynıdır. Bu, hataların toplanır olduğu bir dağıtımı çarpımsal oldukları bir noktaya (yani yüzde tabanlı) dönüştürdüğünüz anlamına gelir. OLS regresyonu gibi teknikler normal bir hata dağılımı gerektirdiğinden, kütüklerle çalışmak uygulanabilirliklerini katkı maddesinden çarpımsal süreçlere genişletir.


1
Öğeleri dağıtımdan bağımsız bir şekilde karşılaştırmak isterseniz, yüzdelik dilimler veya ondalıklar almak ve orijinal değer yerine bunları kullanmak daha iyi olmaz mı?
William Payne

1
Ayrıca ... dağılımına sahip olan güç bazı vazgeçiyorsun olsa @WilliamPayne Tabii, bir dağıtım içermeyen yöntemi kullanabilirsiniz eğer senin dağılım varsayımlar doğrudur. Daha büyük (doğru) varsayımlar ile daha büyük güç gelir. Yüzdelikler esasen derecelerdir, bu nedenle sahip olduğunuz mesafe bilgisini atarsınız ve belirli bir numunenin yüzdelik değeri bir nokta tahminidir. Genellikle noktalara dağılımları tercih ederiz.
Wayne

0

Ana nedenin dağıtım değil, doğrusal olmayan ilişki nedeniyle olduğunu söyleyebilirim. Günlükler genellikle doyurucu ilişkileri yakalar ...

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.