SORU
24 NİSAN 2009, Cuma


Konu gidişli veya etiketleri hesaplamak için en iyi yolu nedir?

Birçok site gibi bazı istatistikler sunuyor "Son 24 saat içinde En sıcak konusu". Örneğin, Topix.com kendi bölümünde bu gösterileri "Haberleri Eğilimler". Orada, söz en hızlı büyüyen numarası hangi konuları görebilirsiniz.

"" Bir konu için de. buzz böyle bir hesaplama yapmak istiyorum Bunu nasıl yapabilirim? Algoritma her zaman sıcak olan konulara daha az ağırlık. Normalde (neredeyse) kimse zikrettiği konulara en acı olanlarından olmalı.

Google fazla "Sıcak Eğilimleri", topix.com gösterir "Sıcak Konular", fav.ya."tüm bu hizmetleri ortak bir yönü var: Onlar sadece hangi anormal anda sıcak yaklaşan trendleri. Haritayı "anahtar Kelime Eğilimleri gösterir

"Britney Spears", "hava" ya da "Paris Hilton" her zaman sıcak ve sık oldukları için bu listelerde görünmez. şartlar gibi This article calls this "The Britney Spears Problem".

Benim soru: Nasıl bir algoritma kodu veya mevcut bu sorunu çözmek için kullanabilir misin? Anahtar kelimeler Son 24 saat, algoritma aranan bir liste olan 10 (örneğin) en acı olanlarından göstermelidir.

Ben, yukarıdaki maddede, algoritma bahsedilen bir tür var. I've tried to code it in PHP ama ben işe yarayacağını sanmıyorum. Sadece çoğunluğu bulur, değil mi?

Bana (kodlama örnekler harika olurdu) umarım yardımcı olabilirim.

CEVAP
5 Mayıs 2009, Salı


Bir konuya hız ölçen bir algoritma gerekir - ya da grafik eğer başka bir deyişle, inanılmaz bir hızla gidecek olanları göstermek istiyorum.

Bu trendin ilk türev ve zor genel hesaplama ağırlıklı bir faktör olarak dahil değildir.

Normalize

Yapmanız gereken bir teknik tüm verileri normalize etmek. Her konu için aşağıdaki, bu konuda temel tanımlar çok alçak geçiren bir filtre kalsın. Bu konu hakkında gelen her veri noktası normalize edilmelidir - t-çıkarma ve çizgisinin altında sivri 0, yakınında konuların HEPSİ senin olacak. Olabilir yerine istediğiniz bölme sinyali, t-büyüklük, hangi getirecek sinyali yaklaşık 1.0 - bu sadece getiriyor ve tüm sinyallerin hattı ile birbirine (normalleştirir taban), ama aynı zamanda normalleştirir sivri. Britney spike başkasının spike büyüklükleri daha büyük olacak, ama o buna dikkat etmelisiniz - başak çok küçük onun temel göreli olabilir anlamına gelmez.

Türetmek

Her şeyi normalize sonra, her konu eğimi anlamaya. Üst üste iki puan almak ve aradaki farkı ölçün. Olumlu bir eğilim fark, negatif bir fark aşağı Trend. Sonra karşılaştırın normalleştirilmiş farklılıklar ve bulmak ne konular var çekim Yukarı popülerlik göre diğer konular - her konuda ölçekli uygun kendi 'normal' olabilecek büyüklükleri sırası farklı diğer konular.

Bu gerçekten sorunu ilk-pass. Kullanmak için ihtiyacınız olacak olan daha gelişmiş teknikleri vardır (çoğunlukla diğer algoritmalar, ihtiyaçlarınıza uygun ağırlıklı yukarıdaki bir arada) var ama başlamak için yeterli olmalıdır.

Yazı ile ilgili

Bu makale ile ilgili konu gidişli, ama değil hakkında nasıl hesaplamak ne sıcak ve ne değil, bunun hakkında nasıl bir işlem büyük miktarda bilgi böyle bir algoritma gerekir sürecine yerleri gibi Lycos ve Google. Uzay ve zaman üzerine bir ara geçer zaman her konuda bir sayaç ver, ve her konunun sayaç bulmak için gereken çok büyük. Bu makalede, böyle bir görev çalışırken karşılaştığı zorluklar hakkında. Brittney etkisi söz yoktur, ama bunu aşmak için ne hakkında konuşmak yok.

Nixuz points out Bu da bir Z veya Standard Score olarak adlandırılır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hanksranger

    hanksranger

    6 EKİM 2009
  • Jay Will

    Jay Will

    19 NİSAN 2006
  • Joshua Kywn

    Joshua Kywn

    17 Mayıs 2010