projects

March 17, 2013

E-Commerce (sometimes) doing it wrong

useimmat verkkokauppasivustot tarjoavat sinulle hakutulosten lajittelua asiakasarvioiden mukaan… ja aika moni tekee sen väärin. Oletetaan tässä etsin kirjaa CSS. Haluan saada paras kirja rahalla voi ostaa, joten aion ehdottomasti lyödä Lajittele by rating-painiketta. Sivusto tarjoaa kahta vaihtoehtoa

  • kirja A : 1 Arvosana 5. Keskimääräinen luokitus 5.
  • kirja B: 50 arviota. Keskimääräinen luokitus 4.5

mieti sitä, haluaisitko mieluummin book a come first of book Bcome first. Luultavasti B-kirja, eikö niin? Se tarkoittaa, että tarvitsemme muutakin kuin keskivertoarvosanojen lajittelua.

ensimmäinen yksinkertainen vastaus, joka olisi ehdottomasti parempi verrattuna lajitteluun keskiarvon perusteella, voisi olla laittaa alimmaiseksi tuote, jonka arvosana on alle k. Mutta sitten, miten valita k? Entä jos etsimme markkinarakoa ja kaikki tuotteet ovat alle k luokitukset paitsi yksi, joka on K+1 kauhea luokitukset. Pitäisikö sen mennä päälle ?

toinen vastaus, johon saatat päätyä, olisi valita empiirinen pisteytyskaava, joka näyttää vastaavan rajoitteitamme.

suurin osa siellä olevista kaavoista perustuu Bayesilaiseen estimointiin. Yleisesti ottaen Bayesilainen estimointi todella valaisee tällaista tilannetta: haluat mitata jotain, mutta tiedät, ettei sinulla ole tarpeeksi dataa täydellisen estimoinnin saavuttamiseksi.

Jos m on katsojalukujen keskiarvo ja n on katsojalukujen luku, voidaan harkita jotain tällaista:

$$rating(m, n) = {mn \over {n+K}}$$

Tämä todennäköisesti toimii ihan hyvin. Luultavasti … silti sinun täytyy valita oikea K tietämättä, mitä fysikaalisia arvoja se liittyy. Vielä tärkeämpää sinun täytyy vakuuttaa työkaveri, että tämä on mukava ratkaisu, joka kattaa edge tapauksissa täydellisesti.

Bayesilaisen estimoinnin pikakurssi

suuri ajatus on, että sen sijaan että yrittäisimme suoraan laskea estimaattiamme, laskemme ensin todennäköisyysjakauman, joka kuvaa “mitä tiedämme” arvosta, jonka haluamme arvioida, ja sitten (ja vasta sitten) voimme poimia tästä arvosta tarkoitukseemme sopivan estimaatin.

huolen erottaminen siinä viimeisessä kohdassa on itse asiassa aika tärkeää. Näkökannastasi riippuen voit pitää hyvin erilaisia arvoja fyysisen arvon estimaatteina.

esimerkiksi, jos minun täytyy arvioida, kuinka monta seerumia hallituksen on ostettava selviytyäkseen epidemiasta, haluan esittää luvun, johon voin sanoa : Olen varma, että 90 prosenttia riittää. Se luku voi joskus olla hyvin kaukana odotuksista. Jos työskentelen oikeasti kirjanpitäjänä niitä seerumeita myyvässä yrityksessä, ja haluan saada käsityksen ensi kuun tulojeni alarajasta, otan todennäköisesti täysin erilaisen kvantilin.

yksinkertainen esimerkki

oletetaan, että olet juuri löytänyt toksoplasmoosi-nimisen loisen ja haluat arvioida toksoplasmoosi-nimisen loisen tartuttamien ihmisten suhdeluvun $X$.

loisen infektoimilla ihmispotilailla ei ole minkäänlaisia oireita, joten nätti niin pitkälle kuin tiedät, se voi olla mitä vain. Voisimme kuvata näkemyksesi tämän arvon todennäköisyysjakaumasta yhdenmukaiseksi jakaumaksi. .

todennäköisyydestä puhuminen tässä saattaa tuntua hieman oudolta.Ensinnäkin, onko oikeutettua puhua todennäköisyydestä, kun arvioimme jotakin hyvin konkreettista, ei-satunnaista arvoa? Bayesilaisen todennäköisyyden termeissä muuttuja on satunnainen, jos sen arvoa ei tiedä tarkasti. Se on tieto, joka kiteyttää tietomme jostakin asiasta.

mutta palataan ongelmaamme. Toksoplasmoosia tutkittaessa tehdään havaintoja.Jokainen henkilö on todennäköisyys X on toksoplasmoosi, ja haluat arvioida tämän hyvin X. oletetaan, että kun seing $n$ henkilöt, olet havaittu k ihmiset toksoplasmoosi.

aloitit yhtenäisellä ennakkotodennäköisyydellä, ja jokainen havainto taivuttaa näkökykysi X: lle tehden siitä yhä tarkemman.Tätä x: n päivitettyä näkyä kutsutaan sen posterioriseksi jakaumaksi.Kutsumme O (kuten havainnoinnissa) N-testiemme tulosten sarjaa.

Bayes antaa pienen kaavan sen laskemiseksi

 $$P(X | O) = { P( O | X) P(X) \over { P(O)} }$$

$p(O)$ on todennäköisyys havainnoida mitä me havaitsimme. Se on vakio X: n kanssa, ja siksi sillä ei ole juurikaan merkitystä. Samoin valitsimme aikaisemman todennäköisyytemme $P(X)$ yhdenmukaiseksi, eikä se siksi vaihtele X: n kanssa.olemme kiinnostuneita vain suhteellisuussuhteesta:

 $$ P(X | O) \propto P( O | X) $$
$$P( O X)$$ kutsutaan todennäköisyydeksi. Sille annetaan X (etsimämme arvo) todennäköisyys havainnoida, mitä havaitsimme. Se on yleensä melko yksinkertaista laskea.

meidän tapauksessamme todennäköisyys havainnoida riippumattomien havaintojen sarjaa

 $$ O = ({o_1}, ..., {o_N}) $$

saadaan kertomalla kunkin havainnon todennäköisyys :

 $$ P(O | X) = P({o_1}| X) \times ... \times P({o_N} | X) $$

yhden yksittäisen havainnon todennäköisyys havaita oi positiivinen (vastaavasti negatiivinen) on määritelmän mukaan X (vastaavasti 1-x). Lopulta, jos havaitaan k positiivinen ja N-K negatiivinen, posteriorinen todennäköisyys on

 $$ P(X | O) \propto X^{K}(1-X)^{N-K} $$

tätä jakaumaa kutsutaan myös binomijakaumaksi.

on mielenkiintoista nähdä, miten jälkitodennäköisyys kehittyy havaintojen määrällä. Alla oleva graafi näyttää, miten posteriori tarkentuu havaintojen määrän myötä.

nyt kun meillä on tarkka todennäköisyys, voisimme harkita kaikenlaisten arvioiden laskemista tästä jakaumasta. Todennäköisesti yleisin ulostulo olisi laskea luottamusväli: aikaväli, jolle voimme väittää 90%: n luottamuksella arvomme olevan jossain A: n ja b: n välillä.

nykyään kaikilla on tietokone ja luultavasti yksinkertaisin tapa tuottaa tällainen luottamusväli on luultavasti laskea tämän jakauman kumulatiivinen jakaumafunktio.

monet tilastotieteilijät työskentelivät myös löytääkseen hyvin tarkat luottamusvälit binomijakaumille, kun normaali likiarvo ei pidä. Kannattaa tarkistaa tämä wikipedia-sivu, Jos haluat käyttää jotain näistä kaavoista.

Back to the stars

Let ‘ s go back to star ratings! Tässä osiossa tarkastellaan yksinkertaistamista varten 1, 2 tai 3 tähden aluetta. Yritämme arvioida, ottaen huomioon people ‘ s vastaus, posterior jakauma osuus ihmisistä, jotka antaisivat sille vastaavasti 1,2 tai 3 tähteä , jos meillä olisi mahdollisuus kysyä ääretön määrä ihmisiä.

havaitsemamme satunnaismuuttuja noudattaa niin sanottua kategorista jakaumaa. Se on periaatteessa muuttuja, joka ottaa arvonsa sisällä {1,2,3} joidenkin todennäköisyyksien p1, P2, p3 kanssa

$$ {p_1} + {p_2} + {p_3} = 1 $$

mikä tekee vaikeammaksi on se, että emme tarkastele skalaariarvon jakaumaa, vaan kolmen skalaariarvon yhteisjakaumaa (tai pikemminkin kaksi ottaen huomioon lineaarisen rajoitteen).

edelleen voidaan soveltaa samaa päättelyä kuin yhden todennäköisyyden estimoinnilla:

 $$ P({p_1}, {p_2}, {p_3} | O) \propto P( O | {p_1}, {p_2}, {p_3}) P({p_1}, {p_2}, {p_3}) $$

tällä kertaa otetaan kuitenkin mukaan priori. Jotta yksinkertaistaa laskelmia, se on aina hyvä idea valita ennen, joka on sama muoto kuin todennäköisyys. Lasketaan ensin todennäköisyys.

aivan kuten edellisessä esimerkissämme parametrin estimoinnissa, Voimme käyttää havaintomme riippumattomuutta.

 $$ P(O | {p_1}, {p_2}, {p_3}) = P({o_1}| {p_1}, {p_2}, {p_3}) \times \cdots \times P({o_N} | {p_1}, {p_2}, {p_3}) $$

ja jokaisen yksittäisen havainnon todennäköisyys on annettu siihen liittyvällä todennäköisyydellä

 $$\forall j \in \{1,2,3\}, ~~ \forall 1\leq i \leq N, ~~P( {o_i = j} | {p_1}, {p_2}, {p_3}) = {p_j} $$

näin ollen jos saamiemme N-arvioiden sisällä oli vastaavasti K1, K2, K3 arvostelua, jossa oli vastaavasti 1,2 ja 3 tähteä, meillä on todennäköisyys

 $$ P(O | {p_1}, {p_2}, {p_3}) = {p_1}^{K_1} {p_2}^{K_2} {p_3}^{K_3} $$

, jota kutsutaan Dirichlet ‘ n jakaumaksi parametrilla

 $$ \alpha = \left( \begin{array}{c} {K_1} + 1 \\ {K_2} + 1 \\ {K_3} + 1 \end{array} \right) $$

, jotta matematiikka olisi paljon yksinkertaisempaa, tarkastellaan edeltäjää, jolla on aivan sama muoto, ja parametria alpha0.

posteriori, on verrannollinen

 $$ P({p_1}, {p_2}, {p_3} | O) \propto { {p_1}^{K_1} } { {p_2}^{K_2} } { {p_3}^{K_3} } { {p_1}^{ {\alpha_1^0} - 1 } } { {p_2}^{ {\alpha_2^0} - 1 } } { {p_3}^{ {\alpha_3^0} - 1 } } $$

, jonka voimme factorisoida

 $$ P({p_1}, {p_2}, {p_3} | O) \propto { {p_1}^{ {K_1} + {\alpha_1^0} - 1 } } { {p_2}^{ {K_2} + {\alpha_2^0} - 1 } } { {p_3}^{ {K_3} + {\alpha_3^0} - 1 } }. $$

, jossa näemme dirichlet ‘ n jakauman parametrilla

 $$ {\alpha^1} = \left( \begin{array}{c} {K_1} + \alpha_1^0 \\ {K_2} + \alpha_2^0 \\ {K_3} + \alpha_3^0 \end{array} \right) $$

nyt mitä todella haluamme on arvio tähden keskimääräisestä määrästä. Mietitäänpä tämän keskiarvon käyttöä, ottaen huomioon takapuolemme.

 $$ E( {p_1} + 2{p_2} + 3{p_3} | O ) = E( {p_1} | O ) + 2 E({p_2} | O ) + 3E({p_3} | O ) $$

dirichlet ‘ n jakaumalla

 $$ E(p_i | O) = { {\alpha_i^1} \over { {\alpha_1^1} + {\alpha_2^1} + {\alpha_3^1} } } $$

näin ollen meillä on bayesilainen keskiarvomme :

 $$ rating({K_1}, {K_2}, {K_3}) = \frac{ {K_1} + \alpha_1^0}{ N + A} + 2 \frac{ {K_2} + \alpha_2^0}{ N + A} + 3 \frac{ {K_3} + \alpha_3^0}{ N + A}, $$

missä määrittelemme

 $$ N = {K_1} + {K_2} + {K_3}~~and~~A = {\alpha_1^0} + {\alpha_2^0} + {\alpha_3^0} $$

voimme ryhmittyä uudelleen siten, että

 $$ rating({K_1}, {K_2}, {K_3}) = \frac{ \left(\alpha_1^0 + 2 \alpha_2^0 + 3 \alpha_3^0 \right) + \left({K_1} + 2{K_2} + 3{K_3}\right) }{A + N} $$

voilà ! Sulattakaamme tämä kaava, jotta se olisi käyttökelpoinen oikeassa elämässä. Bayesilainen keskiarvo tähtiluokitukselle koostuisi siitä, että valitaan jokin parametri C ja m, jossa

  • m edustaa prioria tähtien keskiarvolle
  • C kuvaa sitä, kuinka luottavaisia olemme prioriimme. Se vastaa useita havaintoja.

silloin bayesilainen keskiarvo on

 $$ rating({K_1}, {K_2}, {K_3}) = \frac{ C \times m + total~number~of~stars }{C + number~of~reviews } $$

Jos sinulla on asiaankuuluva tieto ja ääretön aika, voit asettaa nämä kaksi arvoa sovittamalla Dirichlet ‘ n jakauman kaikkien tietokonekirjojesi luokitusten aineistoon. On kuitenkin hyvin yleistä vain valita pari parametria, joka jäljittelee etsimäämme käyttäytymistä. m on arvo, jota kohti säädämme tuotteiden keskimääräistä tarkastelua hyvin vähillä arvioinneilla. Mitä suurempi C on, sitä suurempi määrä arvosteluja tarvitaan “päästä pois m: stä”.

Katsotaanpa nyt ensimmäistä esimerkkiämme. Kaksi mahdollista arvoa voi olla esimerkiksi, m=3 ja C=5.

kahden kirjan bayesilaisista keskiarvoista tulee

 $$ {rating_{book~A}} = \frac{5 \times 3 + 5 \times 1}{ 5 + 1 } = 3.3 $$ $$ {rating_{book~B}} = \frac{5 \times 3 + 4.5 \times 50 }{ 5 + 50 } = 4.36 $$

odotetusti kirja 2 on parempi bayesilainen keskiarvo kuin kirja 1.

Vastaa

Sähköpostiosoitettasi ei julkaista.