Súlyozott átlag

A Wikipédiából, a szabad enciklopédiából.

Tartalomjegyzék

[szerkesztés] A súlyozott átlag fogalma


[szerkesztés] Opcióra súlyozott átlag

Lényege, hogy a rendes átlaggal ellentétben az egyes opciók súlyt kapnak, azaz más-más mértékben járulnak hozzá az átlaghoz. Egy egyszerű példán szemléltetve, ahol egy osztály évvégi jegyeit vesszük alapul: volt 2 darab 5-ös, 3 darab 4-es, 1 darab 3-as, 3 darab 2-es, és 5 darab 1-es. Ez összesen 14 darab jegy, az átlaguk (2·5+3·4+1·3+3·2+5·1)/14.

Képletben ez úgy néz ki, hogy ha van n darab elemünk (ekkor az s(i) jelenti az i-edik (1≤i≤n) súlyt, o(i) pedig az adott opciót):

átlag=\frac{\sum[i](s(i)*o(i))}{\sum[i](s(i))}.

[szerkesztés] Időre súlyozott átlag

Ezt a súlyozást Baldaszti Zoltán találta ki, eredetileg internetes szavazógépek számára, de hasznosnak bizonyult mesterséges intelligencia kutatásban a "felejtő memória" modellezésére is.

Megalkotására azért került sor, mert a speciálisan időre súlyozott átlaggal még senki nem foglalkozott, holott kézenfekvő az ötlet. A lényege, hogy ne az opciókat súlyozzuk, hanem minél régebbi egy szavazat, annál kevesebbet számítson a végeredményben, nagyobb súlyt adva így az újabb értékeléseknek, hiszen a vélemények változhatnak, átalakulhatnak (pontosan ennek a tulajdonságnak a modellezése tette alkalmassá a memória matematikai reprezentálására). Az eredeti, szavazógépekre írt megoldás a következő:

A képlet paraméterei:
x – ez egy olyan érték, ami időbeli egységeket fejez ki, értéke attól függ, hogy mennyire "sűrű" a szavazás. Fordítottan arányos a végeredménnyel, azaz minél nagyobb az értéke, a végeredmény annál közelebb lesz a sima átlaghoz, speciális esetben (ha értéke nagyobb, mint a legnagyobb időkülönbség), meg is egyezik azzal.
st – a számoláskor megadott időpillanat (skaláris értékkel kifejezve, számítógépek esetében javasolt a UNIX timestamp (epoch óta eltelt másodpercek) használata)
n – a szavazatok száma
t(i) – a szavazatok ideje ugyanabban a léptékben kifejezve, mint az st (timestamp). Az i értéke 1 és n közötti (zárt intervallum).
m – a lehetséges szavazatértékek maximuma (értéke jellemzően 5, de lehet százalék is. Az algoritmus szempontjából inszignifikáns az érték skálája).
o(i) – a szavazat maga, értéke 1 és m közötti.
s(i) – a szavazat súlya az idő differenciával fordítottan arányos.
s(i)=\frac{1}{|\frac{st}{x}|-|\frac{t(i)}{x}|+1}

Az átlag számítása a következő:

átlag=\frac{\sum[i](\frac{o(i)}{|\frac{st}{x}|-|\frac{t(i)}{x}|+1})}{\sum[i](\frac{1}{|\frac{st}{x}|-|\frac{t(i)}{x}|+1})}.

Azt hiszem, egy kis magyarázat elkel azért:

A s(i) sor az eredmény lekérésének és a szavazás idejének differenciáját tartalmazza, az időegységekre lebontva, a plusz 1 pedig gondoskodik arról, hogy a legfrissebb szavazás is legalább egy időegységet kapjon (a nullával való osztás elkerülése végett). Fontos megjegyezni, hogy az x-el való osztás nem összevonható, példa: vegyük st-t timestampnek, x-et pedig 60·60·24-nek (egy nap másodpercekben). Ekkor az összevont esetben (|\frac{st-t(i)}{x}|) a differencia az aktuális időponthoz képesti (tehát 15:11 perckor az előző nap 15:11-kor kezdődne), míg a fent megadott esetben az |st/x| az adott nap éjfél 00:00 percét jelenti, és ahhoz képest véve az előző nap kezdete szintén 00:00-ra esik).

A szavazat súlya nem az adott opciók számától függ (mint a fenti esetben, ahol minden 5-ös szavazatnak ugyanaz a súlya), hanem a szavazat leadásának időpontjától (így előfordulhat, hogy az egyik 5-ös szavazatnak más a súlya, mint egy másik 5-ös szavazatnak).

[szerkesztés] Példák

Tekintsünk a következő szavazást (az idődifferenciát fogom megadni a szemléletesség kedvéért (x-et 60*60*24-nek választva), ez d(i)=\frac{1}{s(i)}, azaz hogy hány napja adták le a szavazatot. A második szám a szavazat értéke):

átlag{(1,5)}=5 (tegnap volt egy 5-ös értékelés)
átlag{(2,5)}=5 (tegnapelőtt volt egy 5-ös értékelés)
átlag{(3,5)}=5 (három napja volt egy 5-ös értékelés)
átlag{(1,5),(2,1)}=3.666666* (tegnap volt egy 5-ös, tegnapelőtt egy 1-es)
átlag{(1,5),(3,1)}=4 (tegnap volt egy 5-ös, három napja egy 1-es)

Jól látszik, hogy a két nappal korábbi 1-es értékelés többet rontott az 5-ös átlagon, mint a három nappal korábbi. Természetesen amennyiben ez a napi lépték túl sok lenne, x-nek választható hét nap is, ekkor csak hetente fog a szavazat veszíteni súlyából.