2.6 Tikimybės ir statistika
Vienaip ar kitaip, mašininis mokymasis yra visas apie neapibrėžtumą. Prižiūrimame mokyme norime prognozuoti kažką nežinomo (tikslinį dydį), kai žinoma kažkas kita (požymiai). Priklausomai nuo tikslo, galime bandyti prognozuoti labiausiai tikėtiną tikslinio dydžio reikšmę. Arba galime prognozuoti reikšmę su mažiausiu tikėtinu atstumu nuo tikslinio dydžio. O kartais norime ne tik prognozuoti konkrečią reikšmę, bet ir kiekybiškai įvertinti savo neapibrėžtumą. Pavyzdžiui, kai duoti kai kurie požymiai, apibūdinantys pacientą, galime norėti žinoti, kiek tikėtina, kad jis patirs infarktą per ateinančius metus. Neprižiūrimame mokyme neapibrėžtumas dažnai mums rūpi. Norint nustatyti, ar matavimų rinkinys yra anomalus, naudinga žinoti, kiek tikėtina stebėti reikšmes dominančioje populiacijoje. Be to, skatinamajame mokyme norime sukurti agentus, kurie veiktų išmaniai įvairiose aplinkose. Tam reikia samprotauti apie tai, kaip gali keistis aplinka ir kokių atlygių galima tikėtis reaguojant į kiekvieną iš turimų veiksmų.
Tikimybių teorija yra matematikos šaka, susijusi su samprotavimu esant neapibrėžtumui. Turėdami tikimybinį kokio nors proceso modelį, galime samprotauti apie įvairių įvykių tikėtinumą. Tikimybių naudojimas pasikartojančių įvykių (pvz., monetos metimų) dažniams aprašyti yra gana nekontroversiškas. Tiesą sakant, dažninės (frekventistinės) mokyklos mokslininkai laikosi tokios tikimybės interpretacijos, kuri taikoma tik tokiems pasikartojantiems įvykiams. Priešingai, Bajeso mokyklos mokslininkai tikimybių kalbą vartoja plačiau, kad formalizuotų samprotavimą esant neapibrėžtumui. Bajeso tikimybę apibūdina dvi unikalios savybės: (i) įsitikinimo laipsnių priskyrimas nepasikartojantiems įvykiams, pvz., kokia yra tikimybė, kad užtvanka sugrius?; ir (ii) subjektyvumas. Nors Bajeso tikimybė pateikia nedviprasmiškas taisykles, kaip reikėtų atnaujinti savo įsitikinimus atsižvelgiant į naujus įrodymus, ji leidžia skirtingiems asmenims pradėti nuo skirtingų apriorinių įsitikinimų. Statistika padeda mums samprotauti atgaline kryptimi, pradedant duomenų rinkimu ir organizavimu ir einant atgal prie išvadų, kurias galime padaryti apie procesą, sukūrusį duomenis. Kai tik analizuojame duomenų rinkinį, ieškodami dėsningumų, kurie, tikimės, galėtų apibūdinti platesnę populiaciją, taikome statistinį mąstymą. Daugybė kursų, specialybių, disertacijų, karjerų, katedrų, bendrovių ir institucijų buvo skirta tikimybių teorijos ir statistikos studijoms. Nors šis skyrelis tik paliečia paviršių, suteiksime pagrindą, kurio jums reikia pradėti kurti modelius.
%matplotlib inline
from d2l import mxnet as d2l
from mxnet import np, npx
from mxnet.numpy.random import multinomial
import random
npx.set_np()
%matplotlib inline
from d2l import torch as d2l
import random
import torch
from torch.distributions.multinomial import Multinomial
%matplotlib inline
from d2l import tensorflow as d2l
import random
import tensorflow as tf
from tensorflow_probability import distributions as tfd
%matplotlib inline
from d2l import jax as d2l
import random
import jax
from jax import numpy as jnp
import numpy as np
2.6.1 Paprastas pavyzdys: monetos metimas
Įsivaizduokite, kad planuojame mesti monetą ir norime kiekybiškai įvertinti, kiek tikėtina, kad iškris herbas (o ne skaičius). Jei moneta yra teisinga, abi baigtys (herbas ir skaičius) yra vienodai tikėtinos. Be to, jei planuojame mesti monetą kartų, herbo iškritimų dalis, kurios tikimės, turėtų tiksliai sutapti su tikėtina skaičiaus iškritimų dalimi. Vienas intuityvus būdas tai pamatyti yra simetrija: kiekvienai galimai baigčiai su herbų ir skaičių yra vienodai tikėtina baigtis su herbų ir skaičių. Atkreipkite dėmesį, kad tai įmanoma tik tada, jei vidutiniškai tikimės, kad metimų baigsis herbu, o – skaičiumi. Žinoma, jei atliksite šį eksperimentą daug kartų po metimų, galbūt niekada nepamatysite bandymo, kuriame tiksliai.
Formaliai dydis vadinamas tikimybe, ir čia jis atspindi tikrumą, su kuriuo bet kuris metimas baigsis herbu. Tikimybės priskiria įvertį tarp ir dominančioms baigtims, vadinamoms įvykiais. Čia dominantis įvykis yra , ir atitinkamą tikimybę žymime . Tikimybė rodo absoliutų tikrumą (įsivaizduokite triukšmingą monetą, kurios abi pusės yra herbai), o tikimybė rodo negalimumą (pvz., jei abi pusės būtų skaičiai). Dažniai ir nėra tikimybės, o veikiau statistikos. Tikimybės yra teoriniai dydžiai, slypintys duomenis generuojančio proceso pagrinde. Čia tikimybė yra pačios monetos savybė. Priešingai, statistikos yra empiriniai dydžiai, apskaičiuojami kaip stebimų duomenų funkcijos. Mūsų susidomėjimas tikimybiniais ir statistiniais dydžiais yra neatskiriamai susipynęs. Dažnai kuriame specialias statistikas, vadinamas įvertiniais, kurie, turint duomenų rinkinį, pateikia modelio parametrų, pvz., tikimybių, įverčius. Be to, kai tie įvertiniai tenkina gerą savybę, vadinamą pagrįstumu (angl. consistency), mūsų įverčiai konverguos prie atitinkamos tikimybės. Savo ruožtu šios išvestos tikimybės nusako tikėtinas statistines tos pačios populiacijos duomenų savybes, su kuriais galime susidurti ateityje.
Tarkime, kad užtikome tikrą monetą, kurios tikros nežinome. Kad ištirtume šį dydį statistiniais metodais, turime (i) surinkti kiek duomenų; ir (ii) sukurti įvertinį. Duomenų gavimas čia lengvas: galime mesti monetą daug kartų ir užrašyti visas baigtis. Formaliai realizacijų paėmimas iš kokio nors pagrindinio atsitiktinio proceso vadinamas atranka. Kaip galbūt nuspėjote, vienas natūralus įvertinys yra stebėtų herbų skaičiaus ir bendro metimų skaičiaus santykis.
Dabar tarkime, kad moneta iš tiesų buvo teisinga,
t. y. .
Teisingos monetos metimams imituoti
galime iškviesti bet kurį atsitiktinių skaičių generatorių.
Yra keletas paprastų būdų atrinkti
įvykio su tikimybe imtis.
Pavyzdžiui, Python random.random
pateikia skaičius intervale ,
kur tikimybė patekti
į bet kurį subintervalą
lygi .
Taigi galime gauti 0 ir 1, kiekvieną su tikimybe 0.5,
tikrindami, ar grąžintas slankiojo kablelio skaičius didesnis nei 0.5:
num_tosses = 100
heads = sum([random.random() > 0.5 for _ in range(num_tosses)])
tails = num_tosses - heads
print("heads, tails: ", [heads, tails])
Bendriau, galime imituoti kelis ėmimus
iš bet kurio kintamojo su baigtiniu skaičiumi
galimų baigčių
(pvz., monetos metimas ar kauliuko metimas)
iškviesdami daugianarę funkciją (angl. multinomial),
nustatydami pirmąjį argumentą
kaip ėmimų skaičių,
o antrąjį – kaip tikimybių sąrašą,
susietą su kiekviena galima baigtimi.
Kad imituotume dešimt teisingos monetos metimų,
priskiriame tikimybių vektorių [0.5, 0.5],
interpretuodami indeksą 0 kaip herbą,
o indeksą 1 – kaip skaičių.
Funkcija grąžina vektorių,
kurio ilgis lygus galimų baigčių
skaičiui (čia 2),
kur pirmoji komponentė nurodo
herbų pasirodymų skaičių,
o antroji komponentė – skaičių pasirodymų skaičių.
fair_probs = [0.5, 0.5]
multinomial(100, fair_probs)
fair_probs = torch.tensor([0.5, 0.5])
Multinomial(100, fair_probs).sample()
fair_probs = tf.ones(2) / 2
tfd.Multinomial(100, fair_probs).sample()
fair_probs = [0.5, 0.5]
# jax.random does not have multinomial distribution implemented
np.random.multinomial(100, fair_probs)
Kiekvieną kartą paleidus šį atrankos procesą, gausite naują atsitiktinę reikšmę, kuri gali skirtis nuo ankstesnės baigties. Padalijus iš metimų skaičiaus, gauname kiekvienos baigties dažnį mūsų duomenyse. Atkreipkite dėmesį, kad šie dažniai, kaip ir tikimybės, kurias jie turi įvertinti, sudaro sumą .
multinomial(100, fair_probs) / 100
Multinomial(100, fair_probs).sample() / 100
tfd.Multinomial(100, fair_probs).sample() / 100
np.random.multinomial(100, fair_probs) / 100
Čia, nors mūsų imituojama moneta yra teisinga
(patys nustatėme tikimybes [0.5, 0.5]),
herbų ir skaičių skaičiai gali nesutapti.
Taip yra todėl, kad atrinkome tik gana nedidelį imčių skaičių.
Jei patys nebūtume įgyvendinę simuliacijos
ir matytume tik rezultatą,
kaip žinotume, ar moneta šiek tiek neteisinga,
ar galimas nuokrypis nuo buvo
tik mažos imties dydžio artefaktas?
Pažiūrėkime, kas nutinka, kai imituojame 10 000 metimų.
counts = multinomial(10000, fair_probs).astype(np.float32)
counts / 10000
counts = Multinomial(10000, fair_probs).sample()
counts / 10000
counts = tfd.Multinomial(10000, fair_probs).sample()
counts / 10000
counts = np.random.multinomial(10000, fair_probs).astype(np.float32)
counts / 10000
Paprastai pasikartojančių įvykių (pvz., monetos metimų) vidurkiams, didėjant kartojimų skaičiui, mūsų įverčiai garantuotai konverguoja prie tikrųjų pagrindinių tikimybių. Matematinė šio reiškinio formuluotė vadinama didžiųjų skaičių dėsniu, o centrinė ribinė teorema sako, kad daugeliu atvejų, didėjant imties dydžiui , šios paklaidos turėtų mažėti sparta . Sudarykime daugiau intuicijos tyrinėdami, kaip kinta mūsų įvertis, didinant metimų skaičių nuo 1 iki 10 000.
counts = Multinomial(1, fair_probs).sample((10000,))
cum_counts = counts.cumsum(dim=0)
estimates = cum_counts / cum_counts.sum(dim=1, keepdims=True)
estimates = estimates.numpy()
d2l.set_figsize((4.5, 3.5))
d2l.plt.plot(estimates[:, 0], label=("P(coin=heads)"))
d2l.plt.plot(estimates[:, 1], label=("P(coin=tails)"))
d2l.plt.axhline(y=0.5, color='black', linestyle='dashed')
d2l.plt.gca().set_xlabel('Samples')
d2l.plt.gca().set_ylabel('Estimated probability')
d2l.plt.legend();
counts = multinomial(1, fair_probs, size=10000)
cum_counts = counts.astype(np.float32).cumsum(axis=0)
estimates = cum_counts / cum_counts.sum(axis=1, keepdims=True)
counts = tfd.Multinomial(1, fair_probs).sample(10000)
cum_counts = tf.cumsum(counts, axis=0)
estimates = cum_counts / tf.reduce_sum(cum_counts, axis=1, keepdims=True)
estimates = estimates.numpy()
counts = np.random.multinomial(1, fair_probs, size=10000).astype(np.float32)
cum_counts = counts.cumsum(axis=0)
estimates = cum_counts / cum_counts.sum(axis=1, keepdims=True)
d2l.set_figsize((4.5, 3.5))
d2l.plt.plot(estimates[:, 0], label=("P(coin=heads)"))
d2l.plt.plot(estimates[:, 1], label=("P(coin=tails)"))
d2l.plt.axhline(y=0.5, color='black', linestyle='dashed')
d2l.plt.gca().set_xlabel('Samples')
d2l.plt.gca().set_ylabel('Estimated probability')
d2l.plt.legend();
Kiekviena ištisinė kreivė atitinka vieną iš dviejų monetos reikšmių ir rodo mūsų įvertintą tikimybę, kad moneta iškris ta reikšme po kiekvienos eksperimentų grupės. Punktyrinė juoda linija rodo tikrąją pagrindinę tikimybę. Gaunant daugiau duomenų atliekant daugiau eksperimentų, kreivės konverguoja link tikrosios tikimybės. Galbūt jau pradedate matyti kai kurių sudėtingesnių klausimų, kurie užima statistikus, kontūrus: kaip greitai vyksta ši konvergencija? Jei jau išbandėme daug monetų, pagamintų toje pačioje gamykloje, kaip galėtume įtraukti šią informaciją?
2.6.2 Formalesnis nagrinėjimas
Jau nuėjome gana toli: suformulavome tikimybinį modelį, sugeneravome sintetinius duomenis, paleidome statistinį įvertinį, empiriškai įvertinome konvergenciją ir pateikėme paklaidos metrikas (patikrinome nuokrypį). Tačiau norint nueiti daug toliau, turėsime būti tikslesni.
Kai kalbame apie atsitiktinumą, galimų baigčių aibę žymime ir vadiname ją baigčių erdve. Čia kiekvienas elementas yra skirtinga galima baigtis. Vienos monetos metimo atveju . Vienam kauliukui . Metant dvi monetas, galimos baigtys yra . Įvykiai yra baigčių erdvės poaibiai. Pavyzdžiui, įvykis „pirmasis monetos metimas baigiasi herbu" atitinka aibę . Kai atsitiktinio eksperimento baigtis tenkina , įvykis įvyko. Vienam kauliuko metimui galime apibrėžti įvykius „iškrito " () ir „iškrito nelyginis skaičius" (). Šiuo atveju, jei kauliukas parodė , sakytume, kad įvyko ir , ir . Kita vertus, jei , tai neįvyko, bet įvyko.
Tikimybės funkcija atvaizduoja įvykius į realiąsias reikšmes . Įvykio tikimybė, žymima , duotoje baigčių erdvėje turi šias savybes:
- Bet kurio įvykio tikimybė yra neneigiamas realusis skaičius, t. y. ;
- Visos baigčių erdvės tikimybė yra , t. y. ;
- Bet kuriai suskaičiuojamai sekai įvykių , kurie yra nesutaikomi (t. y. visiems ), tikimybė, kad įvyks bet kuris iš jų, lygi jų individualių tikimybių sumai, t. y. .
Šias tikimybių teorijos aksiomas, pasiūlytas (Kolmogorov, 1933), galima taikyti greitai išvedant daugelį svarbių pasekmių. Pavyzdžiui, iš karto išplaukia, kad bet kurio įvykio arba jo priešingo įvykio tikimybė yra 1 (nes ). Taip pat galime įrodyti, kad , nes . Vadinasi, bet kurio įvykio ir jo priešingo įvykio vienu metu įvykimo tikimybė yra . Neformaliai tai reiškia, kad negalimi įvykiai įvyksta su nuline tikimybe.
2.6.3 Atsitiktiniai dydžiai
Kai kalbėjome apie tokius įvykius kaip kauliuko metimas, kuriame iškrenta nelyginis skaičius, arba pirmasis monetos metimas, baigęsis herbu, rėmėmės atsitiktinio dydžio idėja. Formaliai atsitiktiniai dydžiai yra atvaizdžiai iš pagrindinės baigčių erdvės į (galbūt daugelio) reikšmių aibę. Galite susimąstyti, kuo atsitiktinis dydis skiriasi nuo baigčių erdvės, nes abu yra baigčių rinkiniai. Svarbu, kad atsitiktiniai dydžiai gali būti daug grubesni nei pradinė baigčių erdvė. Galime apibrėžti dvejetainį atsitiktinį dydį, pvz., „didesnis nei 0,5", net kai pagrindinė baigčių erdvė yra begalinė, pavyzdžiui, atkarpos tarp ir taškai. Be to, keli atsitiktiniai dydžiai gali dalytis ta pačia pagrindine baigčių erdve. Pavyzdžiui, „ar suveikia namų signalizacija" ir „ar mano namuose buvo apiplėšimas" yra dvejetainiai atsitiktiniai dydžiai, turintys bendrą pagrindinę baigčių erdvę. Todėl žinodami vieno atsitiktinio dydžio reikšmę, galime sužinoti ką nors apie tikėtiną kito atsitiktinio dydžio reikšmę. Žinodami, kad signalizacija suveikė, galime įtarti, kad namai greičiausiai buvo apiplėšti.
Kiekviena atsitiktinio dydžio įgyjama reikšmė atitinka pagrindinės baigčių erdvės poaibį. Taigi atvejis, kai atsitiktinis dydis įgyja reikšmę , žymimas , yra įvykis, o žymi jo tikimybę. Kartais šis žymėjimas tampa nepatogus, ir kai kontekstas aiškus, galime žymėjimą vartoti laisviau. Pavyzdžiui, galime vartoti kalbėdami apskritai apie skirstinį, t. y. funkciją, nusakančią tikimybę, kad įgyja bet kurią duotą reikšmę. Kitais atvejais rašome tokias išraiškas kaip kaip sutrumpinimą teiginiui, kuris teisingas visoms reikšmėms, kurias gali įgyti atsitiktiniai dydžiai ir , t. y. visiems teisinga, kad . Dar kitais atvejais žymėjimą vartojame laisvai rašydami , kai atsitiktinis dydis aiškus iš konteksto. Kadangi tikimybių teorijoje įvykis yra baigčių aibė iš baigčių erdvės, galime nurodyti reikšmių intervalą, kurį įgyja atsitiktinis dydis. Pavyzdžiui, žymi įvykio tikimybę.
Atkreipkite dėmesį, kad yra subtilus skirtumas tarp diskrečiųjų atsitiktinių dydžių, pvz., monetos metimų ar kauliuko metimų, ir tolydžiųjų, pvz., atsitiktinai iš populiacijos atrinkto žmogaus svorio ir ūgio. Šiuo atveju retai iš tikrųjų rūpi kieno nors tikslus ūgis. Be to, jei matuotume pakankamai tiksliai, rastume, kad nėra dviejų planetos žmonių, turinčių visiškai tą patį ūgį. Tiesą sakant, pakankamai tiksliai matuodami niekada neturėtumėte to paties ūgio atsikėlę ir eidami miegoti. Beveik nėra prasmės klausti apie tikslią tikimybę, kad kažkas yra 1,801392782910287192 metro ūgio. Vietoj to dažniausiai svarbiau galėti pasakyti, ar kieno nors ūgis patenka į tam tikrą intervalą, tarkime, tarp 1,79 ir 1,81 metro. Šiais atvejais dirbame su tikimybių tankiais. Ūgis lygiai 1,80 metro neturi tikimybės, bet turi nenulinį tankį. Kad apskaičiuotume intervalui priskirtą tikimybę, turime paimti tankio integralą per tą intervalą.
2.6.4 Keli atsitiktiniai dydžiai
Galbūt pastebėjote, kad net ankstesnio skyrelio neįveikėme nepateikę teiginių apie sąveikas tarp kelių atsitiktinių dydžių (prisiminkite, kad ). Didžioji dalis mašininio mokymosi susijusi su tokiais ryšiais. Čia baigčių erdvė būtų dominanti populiacija, tarkime, klientai, atliekantys sandorius su įmone, internete esančios nuotraukos arba biologams žinomi baltymai. Kiekvienas atsitiktinis dydis atspindėtų (nežinomą) skirtingo atributo reikšmę. Kai tik iš populiacijos atrenkame individą, stebime kiekvieno atsitiktinio dydžio realizaciją. Kadangi atsitiktinių dydžių įgyjamos reikšmės atitinka baigčių erdvės poaibius, kurie gali dalinai ar visiškai persikloti arba būti visiškai nesikertantys, žinodami vieno atsitiktinio dydžio reikšmę galime atnaujinti savo įsitikinimus apie tai, kurios kito atsitiktinio dydžio reikšmės yra tikėtinos. Jei pacientas ateina į ligoninę ir pastebime, kad jam sunku kvėpuoti ir jis prarado uoslę, manome, kad jam tikėtiniau yra COVID-19, nei manytume, jei jis neturėtų kvėpavimo sunkumų ir jo uoslė būtų visiškai normali.
Dirbdami su keliais atsitiktiniais dydžiais, galime sudaryti įvykius, atitinkančius kiekvieną reikšmių derinį, kurį kintamieji gali įgyti kartu. Tikimybės funkcija, priskirianti tikimybes kiekvienam iš šių derinių (pvz., ir ), vadinama jungtinės tikimybės funkcija ir tiesiog grąžina tikimybę, priskirtą atitinkamų baigčių erdvės poaibių sankirtai. Jungtinė tikimybė, priskirta įvykiui, kai atsitiktiniai dydžiai ir įgyja reikšmes atitinkamai ir , žymima , kur kablelis reiškia „ir". Atkreipkite dėmesį, kad bet kurioms reikšmėms ir teisinga, kad
nes kad įvyktų ir , turi įvykti ir turi įvykti . Įdomu tai, kad jungtinė tikimybė pasako viską, ką galime žinoti apie šiuos atsitiktinius dydžius tikimybine prasme, ir gali būti naudojama daugeliui kitų naudingų dydžių išvesti, įskaitant individualių skirstinių ir atkūrimą. Kad atkurtume , tiesiog susumuojame per visas reikšmes , kurias gali įgyti atsitiktinis dydis : .
Santykis pasirodo esąs be galo svarbus. Jis vadinamas sąlygine tikimybe ir žymimas simboliu „":
Jis nusako naują tikimybę, susijusią su įvykiu , kai sąlygojame faktu, kad įvyko . Šią sąlyginę tikimybę galime laikyti dėmesio apribojimu tik tuo baigčių erdvės poaibiu, kuris susijęs su , ir tada pernormavimu, kad visų tikimybių suma būtų 1. Sąlyginės tikimybės iš tikrųjų yra tiesiog įprastos tikimybės, todėl jos tenkina visas aksiomas, jei visus narius sąlygojame tuo pačiu įvykiu ir taip apribojame dėmesį ta pačia baigčių erdve. Pavyzdžiui, nesikertantiems įvykiams ir turime, kad .
Naudodami sąlyginių tikimybių apibrėžimą, galime išvesti garsųjį rezultatą, vadinamą Bajeso teorema. Pagal konstrukciją turime ir . Sujungę abi lygtis gauname , taigi
Ši paprasta lygtis turi gilių pasekmių, nes ji leidžia apversti sąlygojimo tvarką. Jei mokame įvertinti , ir , tada galime įvertinti . Dažnai lengviau tiesiogiai įvertinti vieną narį, bet ne kitą, ir čia į pagalbą gali ateiti Bajeso teorema. Pavyzdžiui, jei žinome simptomų paplitimą sergant tam tikra liga ir atitinkamai bendrą ligos bei simptomų paplitimą, galime nustatyti, kiek tikėtina, kad žmogus serga ta liga pagal jo simptomus. Kai kuriais atvejais galime neturėti tiesioginės prieigos prie , pavyzdžiui, simptomų paplitimo. Tokiu atveju praverčia supaprastinta Bajeso teoremos versija:
Kadangi žinome, kad turi būti normuota iki , t. y. , galime ją naudoti apskaičiuoti
Bajeso statistikoje stebėtoją įsivaizduojame kaip turintį tam tikrus (subjektyvius) apriorinius įsitikinimus apie turimų hipotezių tikėtinumą, užkoduotus apriorinėje tikimybėje , ir tikėtinumo funkciją, nusakančią, kiek tikėtina stebėti bet kurią surinktų įrodymų reikšmę kiekvienai klasės hipotezei . Bajeso teorema tuomet interpretuojama kaip nurodanti, kaip atnaujinti pradinę apriorinę tikimybę atsižvelgiant į turimus įrodymus , kad gautume aposteriorinius įsitikinimus . Neformaliai tai galima išreikšti taip: „aposteriorinė lygi apriorinei, padaugintai iš tikėtinumo ir padalytai iš įrodymų". Kadangi įrodymų tikimybė vienoda visoms hipotezėms, pakanka tiesiog normuoti per hipotezes.
Atkreipkite dėmesį, kad taip pat leidžia mums marginalizuoti atsitiktinius dydžius. Tai yra, galime išmesti kintamuosius iš jungtinio skirstinio, pvz., . Juk turime, kad
Nepriklausomumas yra dar viena iš esmės svarbi sąvoka, sudaranti daugelio svarbių statistikos idėjų pagrindą. Trumpai tariant, du kintamieji yra nepriklausomi, jei sąlygojimas reikšme nepakeičia su susieto tikimybių skirstinio ir atvirkščiai. Formaliau, nepriklausomumas, žymimas , reikalauja, kad , ir todėl . Nepriklausomumas dažnai yra tinkama prielaida. Pavyzdžiui, jei atsitiktinis dydis atspindi vienos teisingos monetos metimo baigtį, o atsitiktinis dydis atspindi kitos monetos metimo baigtį, tai žinojimas, ar baigėsi herbu, neturėtų daryti įtakos tikimybei, kad baigsis herbu.
Nepriklausomumas ypač naudingas, kai jis galioja tarp iš eilės imamų duomenų imčių iš kokio nors pagrindinio skirstinio (leidžiantis daryti tvirtas statistines išvadas) arba kai galioja tarp įvairių mūsų duomenų kintamųjų, leisdamas dirbti su paprastesniais modeliais, užkoduojančiais šią nepriklausomumo struktūrą. Kita vertus, priklausomybių tarp atsitiktinių dydžių įvertinimas dažnai yra pats mokymosi tikslas. Mums rūpi įvertinti ligos tikimybę pagal simptomus būtent todėl, kad manome, jog ligos ir simptomai nėra nepriklausomi.
Atkreipkite dėmesį, kad kadangi sąlyginės tikimybės yra tikros tikimybės, nepriklausomumo ir priklausomumo sąvokos taikomos ir joms. Du atsitiktiniai dydžiai ir yra sąlygiškai nepriklausomi duotam trečiam kintamajam tada ir tik tada, kai . Įdomu tai, kad du kintamieji gali būti nepriklausomi apskritai, bet tapti priklausomi sąlygojant trečiuoju. Taip dažnai nutinka, kai du atsitiktiniai dydžiai ir yra tam tikro trečiojo kintamojo priežastys. Pavyzdžiui, kaulų lūžiai ir plaučių vėžys gali būti nepriklausomi bendroje populiacijoje, bet jei sąlygosime buvimu ligoninėje, galime rasti, kad kaulų lūžiai neigiamai koreliuoja su plaučių vėžiu. Taip yra todėl, kad kaulo lūžis paaiškina, kodėl žmogus yra ligoninėje, ir taip sumažina tikimybę, kad jis hospitalizuotas dėl plaučių vėžio.
Ir atvirkščiai, du priklausomi atsitiktiniai dydžiai gali tapti nepriklausomi sąlygojant trečiuoju. Tai dažnai nutinka, kai du kitaip nesusiję įvykiai turi bendrą priežastį. Batų dydis ir skaitymo lygis yra stipriai koreliuoti tarp pradinių klasių mokinių, bet ši koreliacija išnyksta, jei sąlygojame amžiumi.
2.6.5 Pavyzdys
Išbandykime savo įgūdžius. Tarkime, kad gydytojas pacientui atlieka ŽIV testą. Šis testas yra gana tikslus ir suklysta tik su 1 % tikimybe, kai pacientas sveikas, bet nustatomas kaip sergantis, t. y. sveikų pacientų testas yra teigiamas 1 % atvejų. Be to, testas niekada nepraleidžia ŽIV, jei pacientas iš tikrųjų juo serga. Naudojame diagnozei žymėti (, jei neigiama, ir , jei teigiama), o – ŽIV statusui žymėti.
| Sąlyginė tikimybė | ||
|---|---|---|
| 1 | 0.01 | |
| 0 | 0.99 |
Atkreipkite dėmesį, kad stulpelių sumos visos lygios 1 (bet eilučių sumos ne), nes tai sąlyginės tikimybės. Apskaičiuokime tikimybę, kad pacientas serga ŽIV, jei testas pasirodo teigiamas, t. y. . Intuityviai tai priklausys nuo to, kaip dažna yra liga, nes tai veikia klaidingų aliarmų skaičių. Tarkime, kad populiacijoje liga gana reta, pvz., . Kad pritaikytume Bajeso teoremą, turime taikyti marginalizavimą nustatydami
Tai veda prie
Kitaip tariant, tikimybė, kad pacientas iš tikrųjų serga ŽIV, yra tik 13,06 %, nepaisant to, kad testas gana tikslus. Kaip matome, tikimybė gali prieštarauti intuicijai. Ką turėtų daryti pacientas, gavęs tokią bauginančią žinią? Greičiausiai pacientas paprašytų gydytojo atlikti kitą testą, kad gautų aiškumo. Antrasis testas turi kitas charakteristikas ir nėra toks geras kaip pirmasis.
| Sąlyginė tikimybė | ||
|---|---|---|
| 0.98 | 0.03 | |
| 0.02 | 0.97 |
Deja, antrasis testas taip pat pasirodo teigiamas. Apskaičiuokime reikalingas tikimybes, kad galėtume pasitelkti Bajeso teoremą, darydami sąlyginio nepriklausomumo prielaidą:
Dabar galime taikyti marginalizavimą, kad gautume tikimybę, jog abu testai pasirodo teigiami:
Galiausiai tikimybė, kad pacientas serga ŽIV, kai abu testai teigiami, yra
Tai yra, antrasis testas leido įgyti daug didesnį pasitikėjimą, kad ne viskas gerai. Nepaisant to, kad antrasis testas yra gerokai mažiau tikslus nei pirmasis, jis vis tiek žymiai pagerino mūsų įvertį. Prielaida, kad abu testai yra sąlygiškai nepriklausomi vienas nuo kito, buvo esminė mūsų gebėjimui gauti tikslesnį įvertį. Panagrinėkime kraštutinį atvejį, kai tą patį testą atliekame du kartus. Tokioje situacijoje abu kartus tikėtumės to paties rezultato, todėl pakartojus tą patį testą papildomos informacijos negauname. Atidus skaitytojas galėjo pastebėti, kad diagnozė elgėsi kaip klasifikatorius, slepiantis akyse, kai mūsų gebėjimas nuspręsti, ar pacientas sveikas, didėja gaunant daugiau požymių (testų rezultatų).
2.6.6 Vidurkiai
Priimant sprendimus dažnai reikia ne tik atsižvelgti į atskiriems įvykiams priskirtas tikimybes, bet ir sujungti jas į naudingus agregatus, galinčius mums nurodyti kryptį. Pavyzdžiui, kai atsitiktiniai dydžiai įgyja tolydžias skaliarines reikšmes, dažnai norime žinoti, kokios reikšmės vidutiniškai tikėtis. Šis dydis formaliai vadinamas vidurkiu (matematine viltimi). Jei investuojame, pirmasis dominantis dydis gali būti grąža, kurios galime tikėtis, suvidurkinus per visas galimas baigtis (ir svertinus atitinkamomis tikimybėmis). Pavyzdžiui, tarkime, kad su 50 % tikimybe investicija gali visiškai žlugti, su 40 % tikimybe ji gali duoti 2 grąžą, o su 10 % tikimybe – 10 grąžą. Kad apskaičiuotume tikėtiną grąžą, susumuojame visas grąžas, kiekvieną padaugindami iš tikimybės, kad ji pasitaikys. Tai duoda vidurkį . Taigi tikėtina grąža yra 1,8.
Apskritai atsitiktinio dydžio vidurkis (arba matematinė viltis) apibrėžiamas taip:
Panašiai tankių atveju gauname . Kartais mus domina tam tikros funkcijos vidurkis. Šiuos vidurkius galime apskaičiuoti taip:
atitinkamai diskrečiosioms tikimybėms ir tankiams. Grįždami prie aukščiau pateikto investavimo pavyzdžio, gali būti su grąža susijusi naudingumo funkcija (laimė). Elgesio ekonomistai jau seniai pastebėjo, kad žmonės pinigų praradimui priskiria didesnį nenaudingumą, nei naudingumas, gaunamas uždirbus vieną dolerį palyginti su jų pradiniu lygiu. Be to, pinigų vertė paprastai yra mažiau nei tiesinė. Turėti 100 tūkst. dolerių, o ne nulį dolerių, gali nulemti, ar sumokėsite nuomą, gerai maitinsitės ir gausite kokybišką sveikatos priežiūrą, ar kentėsite benamystę. Kita vertus, nauda iš 200 tūkst., palyginti su 100 tūkst., yra mažiau dramatiška. Tokie samprotavimai paskatino klišę, kad „pinigų naudingumas yra logaritminis".
Jei naudingumas, susijęs su visišku praradimu, būtų , o naudingumai, susiję su grąžomis , ir , būtų atitinkamai , ir , tada tikėtina investavimo laimė būtų (tikėtinas 30 % naudingumo praradimas). Jei tai tikrai būtų jūsų naudingumo funkcija, gal geriausia būtų laikyti pinigus banke.
Priimant finansinius sprendimus taip pat galime norėti įvertinti, kiek investicija yra rizikinga. Čia mums rūpi ne tik tikėtina reikšmė, bet ir tai, kiek faktinės reikšmės linkusios svyruoti aplink šią reikšmę. Atkreipkite dėmesį, kad negalime tiesiog paimti skirtumo tarp faktinės ir tikėtinos reikšmių vidurkio. Taip yra todėl, kad skirtumo vidurkis yra vidurkių skirtumas, t. y. . Tačiau galime nagrinėti bet kurios neneigiamos šio skirtumo funkcijos vidurkį. Atsitiktinio dydžio dispersija apskaičiuojama nagrinėjant kvadratinių skirtumų vidurkį:
Čia lygybė išplaukia išskleidus ir paėmus kiekvieno nario vidurkį. Dispersijos kvadratinė šaknis yra kitas naudingas dydis, vadinamas standartiniu nuokrypiu. Nors jis ir dispersija perteikia tą pačią informaciją (bet kurį galima apskaičiuoti iš kito), standartinis nuokrypis turi gerą savybę: jis išreiškiamas tais pačiais vienetais kaip ir pradinis dydis, kurį atvaizduoja atsitiktinis dydis.
Galiausiai atsitiktinio dydžio funkcijos dispersija apibrėžiama analogiškai:
Grįždami prie savo investavimo pavyzdžio, dabar galime apskaičiuoti investicijos dispersiją. Ji lygi . Visais atžvilgiais tai rizikinga investicija. Atkreipkite dėmesį, kad pagal matematinę konvenciją vidurkis ir dispersija dažnai žymimi ir . Ypač taip yra tada, kai juos naudojame Gauso skirstinio parametrams nusakyti.
Taip pat, kaip pristatėme vidurkius ir dispersiją skaliariniams atsitiktiniams dydžiams, galime tai padaryti ir vektorinėms reikšmėms. Vidurkiai paprasti, nes galime juos taikyti elementas po elemento. Pavyzdžiui, turi koordinates . Kovariacijos sudėtingesnės. Jas apibrėžiame imdami atsitiktinių dydžių ir jų vidurkio skirtumo išorinės sandaugos vidurkį:
Ši matrica vadinama kovariacijų matrica. Lengvas būdas pamatyti jos poveikį yra panagrinėti kokį nors vektorių , kurio dydis toks pat kaip . Gauname, kad
Taigi leidžia mums apskaičiuoti dispersiją bet kuriai tiesinei funkcijai atliekant paprastą matricų daugybą. Nediagonaliniai elementai nusako, kiek koordinatės yra koreliuotos: reikšmė 0 reiškia, kad koreliacijos nėra, o didesnė teigiama reikšmė reiškia, kad jos stipriau koreliuotos.
2.6.7 Diskusija
Mašininiame mokyme yra daug dalykų, dėl kurių galime būti neapibrėžti! Galime nebūti tikri dėl žymens reikšmės, kai duota įvestis. Galime nebūti tikri dėl įvertintos parametro reikšmės. Galime net nebūti tikri, ar naudojimo metu gaunami duomenys apskritai yra iš to paties skirstinio kaip apmokymo duomenys.
Aleatoriniu neapibrėžtumu vadiname neapibrėžtumą, kuris yra būdingas pačiam uždaviniui ir atsiranda dėl tikro atsitiktinumo, kurio nepaaiškina stebimi kintamieji. Epistemiu neapibrėžtumu vadiname neapibrėžtumą dėl modelio parametrų, t. y. tokį neapibrėžtumą, kurį galime tikėtis sumažinti surinkdami daugiau duomenų. Galime turėti epistemį neapibrėžtumą dėl tikimybės, kad moneta iškris herbu, bet net kai žinome šią tikimybę, lieka aleatorinis neapibrėžtumas dėl bet kurio būsimo metimo baigties. Nesvarbu, kiek ilgai stebėtume, kaip kas nors meta teisingą monetą, niekada nebūsime daugiau ar mažiau nei 50 % tikri, kad kitas metimas baigsis herbu. Šie terminai kilę iš mechaninio modeliavimo (apžvalgą apie šį neapibrėžtumo kiekybinio įvertinimo aspektą žr. (Der Kiureghian ir Ditlevsen, 2009)). Tačiau verta pažymėti, kad šie terminai yra šiek tiek netiksliai vartojami. Žodis epistemis nurodo viską, kas susiję su žiniomis, todėl filosofine prasme visas neapibrėžtumas yra epistemis.
Matėme, kad duomenų atranka iš kokio nors nežinomo tikimybių skirstinio gali suteikti informacijos, kurią galima panaudoti duomenis generuojančio skirstinio parametrams įvertinti. Vis dėlto sparta, kuria tai įmanoma, gali būti gana lėta. Monetos metimo pavyzdyje (ir daugelyje kitų) geriau nei kurti įvertinius, konverguojančius sparta , negalime, kur yra imties dydis (pvz., metimų skaičius). Tai reiškia, kad pereidami nuo 10 iki 1000 stebinių (dažniausiai lengvai pasiekiamas uždavinys) matome dešimteriopą neapibrėžtumo sumažėjimą, o kiti 1000 stebinių padeda palyginti mažai, suteikdami tik 1,41 karto sumažėjimą. Tai nuolatinė mašininio mokymosi savybė: nors dažnai lengvai pasiekiama pažanga, tolesnei pažangai reikia labai daug duomenų ir dažnai su jais – milžiniško skaičiavimų kiekio. Empirinę šio fakto apžvalgą didelio masto kalbos modeliams žr. (Revels ir kt., 2016).
Taip pat patobulinome savo kalbą ir įrankius statistiniam modeliavimui. Šio proceso metu susipažinome su sąlyginėmis tikimybėmis ir viena svarbiausių statistikos lygčių – Bajeso teorema. Tai efektyvi priemonė atskirti duomenų perteikiamą informaciją per tikėtinumo narį , nusakantį, kaip gerai stebiniai atitinka parametrų pasirinkimą , ir apriorinę tikimybę , valdančią, kiek tikėtinas buvo konkretus pasirinkimas iš pat pradžių. Visų pirma matėme, kaip šią taisyklę galima taikyti diagnozių tikimybėms priskirti, atsižvelgiant į testo efektyvumą ir pačios ligos paplitimą (t. y. mūsų apriorinę tikimybę).
Galiausiai pristatėme pirmąjį netrivialių klausimų rinkinį apie konkretaus tikimybių skirstinio poveikį, būtent vidurkius ir dispersijas. Nors tikimybių skirstiniui yra daug daugiau nei tik tiesinių ir kvadratinių vidurkių, šie du jau suteikia nemažai žinių apie galimą skirstinio elgesį. Pavyzdžiui, Čebyšovo nelygybė teigia, kad , kur yra vidurkis, – skirstinio dispersija, o – mūsų pasirinktas pasikliovimo parametras. Ji sako, kad skirstinio imtys su bent 50 % tikimybe patenka į intervalą , kurio centras yra vidurkis.
2.6.8 Pratimai
- Pateikite pavyzdį, kai daugiau duomenų stebėjimas gali sumažinti baigties neapibrėžtumą iki savavališkai mažo lygio.
- Pateikite pavyzdį, kai daugiau duomenų stebėjimas sumažina neapibrėžtumą tik iki tam tikro taško, o toliau nebe. Paaiškinkite, kodėl taip yra ir kur tikitės šio taško.
- Empiriškai parodėme konvergavimą prie vidurkio monetos metimo atveju. Apskaičiuokite tikimybės, kad pamatysime herbą, įverčio dispersiją, kai paimta imčių.
- Kaip dispersija kinta priklausomai nuo stebinių skaičiaus?
- Naudodami Čebyšovo nelygybę apribokite nuokrypį nuo vidurkio.
- Kaip tai susiję su centrine ribine teorema?
- Tarkime, kad paimame imčių iš tikimybių skirstinio, kurio vidurkis nulis, o dispersija vienetas. Apskaičiuokite vidurkius . Ar galime taikyti Čebyšovo nelygybę kiekvienam nepriklausomai? Kodėl ne?
- Turint du įvykius su tikimybėmis ir , apskaičiuokite viršutinę ir apatinę ir ribas. Užuomina: pavaizduokite situaciją Veno diagrama.
- Tarkime, turime atsitiktinių dydžių seką, tarkime, , ir , kur priklauso tik nuo , o – tik nuo . Ar galite supaprastinti jungtinę tikimybę ? Užuomina: tai Markovo grandinė.
- 2.6.5 skyrelis pavyzdyje tarkite, kad dviejų testų rezultatai nėra nepriklausomi. Visų pirma tarkite, kad kiekvieno testo atskirai klaidingai teigiamų rezultatų dažnis yra 10 %, o klaidingai neigiamų – 1 %. Tai yra, tarkite, kad ir . Be to, tarkite, kad esant (užsikrėtęs) testų rezultatai yra sąlygiškai nepriklausomi, t. y. , bet sveikų pacientų rezultatai susieti per .
- Remdamiesi iki šiol turima informacija, išveskite ir jungtinių tikimybių lentelę, kai .
- Išveskite tikimybę, kad pacientas serga (), kai vienas testas pasirodo teigiamas. Galite laikyti, kad pradinė tikimybė tokia pati kaip anksčiau.
- Išveskite tikimybę, kad pacientas serga (), kai abu testai pasirodo teigiami.
- Tarkime, kad esate investicinio banko turto valdytojas ir galite rinktis akcijas , į kurias investuoti. Jūsų portfelio svorių suma turi būti , o kiekvienos akcijos svoris yra . Akcijų vidutinė grąža yra , o kovariacija – .
- Apskaičiuokite tikėtiną duoto portfelio grąžą.
- Jei norėtumėte maksimizuoti portfelio grąžą, kaip turėtumėte pasirinkti investicijas?
- Apskaičiuokite portfelio dispersiją.
- Suformuluokite optimizavimo uždavinį maksimizuoti grąžą, išlaikant dispersiją apribotą viršutine riba. Tai Nobelio premija apdovanotas Markowitzo portfelis (Mangram, 2013). Jam išspręsti reikės kvadratinio programavimo sprendiklio – tai gerokai už šios knygos ribų.
