úterý 21. prosince 2010

Bayesův vzorec a ostrostřelcův klam


Dnešní téma přirozeně navazuje na předchozí diskusi bayesovské (jinými slovy též subjektivistické nebo epistemické) pravděpodobnosti. Pokusím se o poněkud netradiční pohled na logickou chybu, která se nazývá "ostrostřelcův klam". Před vlastní diskusí o klamu provedu nutnou "dělostřeleckou přípravu".

Už jsem psal o tom, že apriorní pravděpodobnost by měla být volena tak, aby zvýhodňovala jednoduché hypotézy před složitými. Teď ještě říct, jak přesně to provést. Je očividně potřeba nějak kvantifikovat složitost. Můžeme to udělat tak, že zapíšeme hypotézu na papír a spočítáme, kolik nám na to stačilo znaků. Jelikož výsledek závisí na formulaci, vybereme tu nejkratší, a její délku označíme za hledanou složitost hypotézy.

Takto určená složitost závisí na jazyku, ve kterém hypotézu formulujeme, a to dvěma způsoby. První, ten triviálnější, je, že slova mají v různých jazycích různou délku. Bezmyšlenkovité počítání znaků by mohlo vést k tomu, že Angličan by a priori považoval možnost "the apple is green" (18 znaků) za o něco pravděpodobnější než "the apple is yellow" (19 znaků), zatímco Čech by spíše věřil, že "jablko je žluté" (15 znaků), než že "jablko je zelené" (16 znaků). To nevypadá příliš racionálně.

Druhý, zapeklitější, problém se skrývá ve skryté složitosti pojmů. Zdůvodnění typu "protože platí gravitační zákon" není příliš dlouhé v textové podobě, ale jen díky tomu, že skutečná složitost se skrývá pod nálepkou "gravitační zákon". Fráze "protože platí gravitační zákon" je srozumitelná tomu, kdo ví, co je gravitační zákon. Pokud bychom ale komunikovali s nevzdělancem, který o gravitačním zákonu nikdy neslyšel, museli bychom použít mnohem delší vysvětlení [1].

Pro vyhnutí se uvedeným obtížím se můžeme shodnout na nějakém formálním jazyku, jako je například sada instrukcí pro Turingův stroj [2] nebo libovolný zvolený programovací jazyk (ale viz též pozn. [3]). Pochopitelně potřebujeme, aby uvažované hypotézy, nebo aspoň ta jejich část, ve které se liší, byly v tomto formálním jazyce formulovatelné. To může v praxi být problém, ale nastíním příklad, kdy to jde.

Uvažujme generátor, který chrlí číslice. O vnitřním uspořádání generátoru není nic známo. Lze ale přijímat hypotézy o jeho výstupu a posléze je testovat. Jedna z možných hypotéz například je, že generátor vrací samé nuly. Jiná hypotéza může být, že generátor vrací postupně čísla 2, 4, 5, 3, 8, 2, 9 a pak zase dokola od začátku. Ještě jiná možná hypotéza je ta, že výstup generátoru je náhodný. Nyní můžeme složitost hypotéz formálně porovnat tak, že ve zvoleném programovacím jazyku napíšeme co nejkratší program, který bude generátor simulovat [3], a jehož výstup bude s výstupem generátoru kompatibilní. Délka tohoto programu bude udávat složitost jemu odpovídající hypotézy.

Je jasné, že i tady závisí na výběru jazyka. Náplastí na tuto bolest je skutečnost, že různé programovací jazyky se pro dlouhé hypotézy asymptoticky chovají stejně. Konkrétně tím myslím následující: Složitost hypotézy H v jazyce J označím jako s(H,J). Pro každé dva jazyky J1 a J2 existují čísla d12 a d21 taková, že pro libovolnou hypotézu H je

s(H,J1) < s(H,J2) + d12
s(H,J2) < s(H,J1) + d21

Vtip je v tom, že d12 a d21 nezávisí na hypotéze, takže pro dostatečně složité hypotézy bude rozdíl relativně zanedbatelný [4]. Dostat se blíže k ideálu objektivní, jazykově nezávislé kvantifikace složitosti hypotéz dost dobře možná nelze.

Ponechme tedy konečně otázku nejednoznačnosti pojmu "složitosti" stranou, a podívejme se, jak popsaný přístup pomáhá vyřešit jeden zdánlivý paradox pravděpodobnosti.

Když náš pomyslný generátor vygeneruje dvacet číslic, a všechny z nich budou nuly, rozumně uvažující člověk usoudí, že generátor vrací systematicky nulu; bude tedy mimo jiné očekávat, že dvacátá první číslice bude také nula. Kdyby ale generátor vrátil posloupnost 11576596326956881032, není nerozumné připustit, že generátor je náhodný, a očekávat na dvacítém prvním místě každou z číslic 0 až 9 se stejnou pravděpodobností. "Paradox" je, že u skutečně náhodného generátoru je výstup x = 00000000000000000000 naprosto přesně stejně pravděpodobný jako výstup y = 11576596326956881032. Jak je tedy možné, že první výstup svědčí o tom, že výstup není náhodný, zatímco druhý nikoliv?

Jedním možným řešením by bylo zkousnout nepříjemné zjištění, že běžná intuice je špatně, a akceptovat, že oba výstupy x i y stejným způsobem svědčí o nenáhodnosti generátoru. To by znamenalo, že žádný výstup nemůže v principu svědčit o tom, že výstup není náhodný, a v důsledku je tedy rozumné si myslet, že všechna zákonitost je pouze zdánlivá. Nebo, což je druhá možnost, jakýkoli konkrétní výsledek svědčí o nenáhodné povaze výstupu. Není mi známo, že by lidé běžně akceptovali první z těchto možností, ale čas od času někdo akceptuje tu druhou - a tady se právě dostáváme k tématu ostrostřelcova klamu.

Ostrostřelcův klam získal své jméno z této paraboly: Ostrostřelec (ideálně z Texasu [5]) přijde do stáje a začne střílet na protější zeď. Po vystřílení několika desítek ran najde místo s největší koncentrací děr ve zdi, a namaluje na zeď terč se středem právě v tomto místě. Potom může ostatním dokazovat, že to s puškou umí: důkazem je terč s mnoha zásahy ve středu.

Ze strany ostrostřelce se pochopitelně jedná o vědomý podvod, ale podobného jednání se lze snadno dopustit nevědomě. Stačí vzít jakýkoli výsledek jakéhokoli procesu a zpětně argumentovat, že pravděpodobnost zrovna tohoto výsledku je extrémně malá za předpokladu, že proces je náhodný. Tudíž, proces nemůže být náhodný. Pravděpodobnost, že náhodný generátor vrátí zrovna posloupnost y je 10-20, tudíž generátor, který vrátil posloupnost y téměř jistě nemůže být náhodný.

Tradiční reakce na ostrostřelcův klam je požadavek, že abychom mohli na základě výsledku usuzovat na nenáhodnost procesu, musí onen konkrétní výsledek být nějakým způsobem privilegován ještě předtím, než jsou výsledky známy. Ostrostřelec je tedy povinnen namalovat terč a teprve potom střílet, jinak nemůže výsledek použít jako důkaz svého střeleckého umění [6]. Stejně tak by musel obsluhovatel generátoru předem uhádnout, že výstup bude posloupnost y, aby tento výstup stál za pozornost. V této formulaci je ale požadavek stále poněkud neuspokojivý, protože neřeší rozdílný přístup k sekvencím x a y: výstup sestávající z dvaceti nul evidentně ukazuje na to, že generátor není náhodný, ať už si onen výsledek někdo předem tipne nebo nikoli.

Podívejme se tedy konečně, co nám říká formální analýza problému. Označím Dz hypotézu, že generátor je deterministický a produkuje postupně číslice z posloupnosti z (a po jejím skončení začne znovu od začátku; je-li z tvořeno několikrát se opakující podposloupností r, jsou samozřejmě Dz a Dr jedna a tatéž hypotéza). Jako N označím hypotézu, že generátor je náhodný, to jest každá jeho číslice se určuje nezávisle na ostatních náhodně s rovnoměrným rozdělením. Připadají v úvahu i možnosti, že funkce generátoru je někde mezi úplnou náhodností a úplným determinismem, ale jejich zanedbáním neztratíme nic podstatného. Jako obvykle označím znakem P0 apriorní pravděpodobnosti.

Nechť tedy pozorujeme posloupnost x = 00000000000000000000. Toto pozorování vyloučí všechny hypotézy Dz kromě těch, kde z začíná dvaceti nulami, a pochopitelně kromě D0. Ve hře zůstane i N. Přitom máme



Pro "náhodnou" hypotézu je podobně



Přesné vyčíslení by vyžadovalo stanovit apriorní pravděpodobnosti některých dalších hypotéz, ale je možné říct, že pokud na začátku byly hypotézy N a D0 srovnatelně pravděpodobné, pak na konci je deterministická hypotéza 1020krát pravděpodobnější.

Naprosto stejný postup proběhne i v případě pozorování y = 11576596326956881032, pouze ve všech vzorcích se nahradí index 0 indexem 11576596326956881032 [8]. Protože se nechceme stát texaskými ostrostřelci, musíme nějak zabránit tomu, aby aposteriorní pravděpodobnost P(Dy) byla srovnatelná s P(N), natož 1020krát větší. K tomu ale vede jediná cesta: příslušným způsobem zmenšit apriorní pravděpodobnost. Tedy, P0(Dy) < 10-20.

Věc lze zobecnit: hypotéza, která obsahuje jako svůj definiční parametr číslo sestávající z n (desítkových) číslic, by měla mít apriorní pravděpodobnost řádu 10-n. V úvodu jsem napsal, že by apriorní pravděpodobnosti měly záviset na složitosti hypotézy, a ta je definována jako délka nejkratšího programu, který je schopen hypotézu reprodukovat. Apriorní pravděpodobnosti pak budou úměrné exponenciále z této složitosti. Aby to dobře fungovalo pro posloupnosti 20 číslic, musel by se použít nějaký výrazně abstraktní programovací jazyk; v Pascalu by se asi nejkratší programy vypisující x a y moc nelišily (něco jako write('00000000000000000000'), versus write('11576596326956881032')). Pokud ale budeme zacházet s posloupnostmi výrazně delšími, bude funkčnost modelu vidět i při užití vysokoúrovňového jazyka. Nejkratší pascalovský program, který vypíše miliardu nul, zcela jistě nezačíná na write('000000.....


Poznámky:
1. Do této kategorie spadají problémy s náboženskými vysvětleními. Vysvětlení typu "Bůh to udělal" je zdánlivě velmi jednoduché (13 znaků), ale aby se pod ním skrývala konkrétní informace, musíme rozbalit pojem "Bůh": vysvětlit, co Bůh je a jakým způsobem "funguje". Autor výroku zpravidla má docela konkrétní představu o Bohu a možná pro něho výrok má konkrétní smysl (tato představa ale nikdy nemůže být tak detailní a konkrétní, aby vysvětlila existenci celého vesmíru), zpravidla ale zapomíná, že jeho představa Boha je složitá a jeho teorie není jednodušší než naturalistické vysvětlení (viz též diskuse pod minulým článkem v sérii).
2. Turingův stroj je jednoduchý počítač, který pohybuje čtecí hlavou po pásce čte a přepisuje znaky na této pásce. Pro plnou specifikaci jeho funkce je třeba zadat tzv. přechodovou funkci, která určuje, jak se chová hlava v závislosti na přečteném znaku a tzv. vnitřím stavu stroje. Turingův stroj je možno považovat za idealizaci skutečných počítačů.
3. Pro hypotézy obsahující náhodu budeme potřebovat, aby programovací jazyk obsahoval funkci vracející náhodné číslo; Turingův stroj je v takovém případě nepoužitelný.
4. Tvrzení se opírá o vcelku triviální pozorování, že když už je jazyk J2 o moc výhodnější pro zápis vybrané hypotézy než J1, vyplatí se prostě v jazyce J1 naprogramovat překladač jazyka J2; minimální délka tohoto překladače je de facto číslo d12.
5. V angličtině se klam jmenuje "Texas sharpshooter fallacy", ačkoli je záhada, co celá věc má společného zrovna s Texasem.
6. Tradiční diskuse ostrostřeleckého klamu je třeba tady s různými příklady reálného výskytu klamné argumentace.
7. Pro jednoduchost předpokládám, že generátor je na začátku resetovaný, a tudíž Dz implikuje, že prvním získanou číslicí bude taktéž první číslice z posloupnosti z.
8. Pouze u D0, ne u P0; čtenář omluví dvojí význam nuly v předchozí sekci

pondělí 20. prosince 2010

Pondělní šifra XXVI.

Následující obrázek v sobě skrývá zašifrovanou tajenku, kterou může být slovo, výraz nebo věta dávající v češtině dobrý význam (může to být i vlastní jméno nebo cizí slovo, pokud je v češtině dostatečně často používáno). Způsob šifrování není předem specifikován, ale měl by být odhalitelný na základě relativně jednoduchých pozorování. V některých případech může být k rozluštění potřeba znalost Morseovy abecedy nebo Braillova písma.

úterý 14. prosince 2010

Jazyk a číselná soustava


Desítková soustava je natolik zakořeněná v naší kultuře, že ji považujeme za naprosto přirozenou. Její užití je navíc rozšířené po celém světě, a počítání v jiné soustavě je pro nás velmi těžko představitelné. Občas se sice setkáme s přežitky jiných číselných soustav, třeba při návštěvě anglosaských zemí, kde je stále dvanáct palců do stopy a osm pint do galonu, nebo obyčejněji při pohledu na hodinky nebo úhloměr; ve všech těchto případech se ale desítková soustava přebrala aspoň část práce: počet hodin, minut a sekund zapisujeme číslicemi desítkové soustavy, a hlavně, používáme názvy číslovek uzpůsobené pro desítkovou soustavu.

Univerzálnost desítkové soustavy se obvykle vysvětluje počítáním na prstech; jelikož všichni lidé mají deset prstů, je desítka přirozený základ pro číselné soustavy. Přesto existují jazyky, jejichž číselný systém má jiný základ. Jedná se výhradně o izolované jazyky ze zaostalejších částí světa. Tento fakt je snadno pochopitelný. S rozvojem přichází gramotnost, jejíž součástí je matematika a arabské číslice, a jejich užití vytváří tlak na jazyk: užití jazyka s dvanáctkovou bází číslovek zároveň s desítkovou soustavou číslic by vyžadovalo aktivně přepočítávat každé napsané číslo předtím, než jej vyslovíme, a nepraktičnost takového počínání je zjevná. Sice by bylo možné adaptovat arabská čísla potřebám domorodého jazyka (například zavedením speciálních symbolů pro desítku a jedenáctku, je-li domorodý jazyk duodecimální), ale výsledný stav by ztěžoval komunikaci mezi domorodci a zbytkem světa: při překladu číslic z jednoho jazyka do druhého by zase tlumočník musel aktivně počítat.

V dřívějších dobách, kdy běžný život nebyl tak úzce svázán s čísly jako dnes, byla situace pestřejší, a pozůstatky nedesítkových soustav z těch dob lze najít i v evropských jazycích.

Podívejme se detailněji, s jakými soustavami se lze setkat.

Jedna-dvě-moc
Přísně vzato se nejedná o číselnou soustavu, ale pro úplnost tento nejprimitivnější způsob počítání stojí za zmínku. V jazycích pralesních sběračů a lovců často neexistuje způsob tvoření složených číslovek. To znamená, že existují slova pro číslovky 1 až z a nejvyšší číslovku zpravidla lze použít i pro označení jakéhokoli vyššího množství než z. Hodnota z je typicky rovna čtyřem nebo šesti, ale v některých jazycích údajně z=2. Nejslavnější je dnes zřejmě amazonský jazyk Pirahã, který údajně postrádá přesné číslovky vůbec, jelikož význam jeho výrazů pro "jedna" a "moc" závisí na kontextu (zajímavost navíc je, že oba výrazy jsou prakticky stejné (hoi) - liší se pouze tónem).

Jednoduché vs. kombinované systémy
Je přirozené předpokládat, že všechny jazyky (pokud nejsou umělé) prošly fází popsanou o odstavec výše. S tím, jak se objevila potřeba počítání, přestala existující slova pro číslovky 1 až z stačit, a z se snadno mohlo stát základem složitější číselné soustavy. Systém počítání, kde existují nezávislá slova pro číslice 1 až z a pro několik nejnižších celočíselných mocnin z budu nazývat jednoduchými. V takových systémech je každá číslovka analyzovatelná jako součet členů tvaru x-krát zn. (Čeština má takový systém: každá číslovka ve standardním tvaru [1] je složena výhradně z kořenů "jedna" až "devět" a slov označujících mocniny desítky.)

Kombinované jsou ty soustavy, ve kterých existuje více základů. Například v babylónské soustavě číslovek se číslo 89 vyjádřilo jako šedesát a dvakrát deset a devět [2]. V této soustavě tedy existovaly dva základy: deset a šedesát.

Je vhodné mít na paměti, že v dřevních dobách bylo počítání s velkými čísly charakteristické pro určité kontexty (obchod, zeměměřičství) a potřeba mít jednu univerzální soustavu nebyla pociťována; mohlo tak docházet k užívání jedné soustavy pro počítání peněz a jiné pro měření polí.

3
Trojka je asi nejnižší reálně užívaný základ číselné soustavy. Hammarström [3] uvádí pět jazyků s trojkovým počítáním, z nich čtyři na Nové Guinei a jeden v Amazonii. Z uvedené tabulky pro novoguinejský jazyk Ambulas je ale vidět, že užitá soustava je spíše kombinovaná se základy 3 a 6 a dost nepravidelná (viz odkaz v pozn. [3]).

4, 5
Čtyřka je základem číselných soustav pro mnoho jazyků, z nichž je ovšem většina již mrtvých. Jednoduchý čtyřkový systém existoval v jazyce Čumašů (etnikum původně žijící v Kalifornii), mnoho dalších jazyků mělo kombinované systémy, se sekundárními základy 8, 10 nebo 20. Australský domorodý jazyk Gumatj [4] má údajně jednoduchý systém se základem 5, přičemž řada dalších jazyků v oblasti používá kombinované systémy se základy 5 a 20.

Možným pozůstatkem výrazné role pětky je počítání v jazycích slovanských: ve spojeních číslovka+jméno je jméno ve shodě s číslovkou v prvním pádě pouze tehdy, je-li číslovka menší než pět (a v češtině i u složených číslovek končících na "jedna" až "čtyři"); od pětky nahoru je pak jméno v genitivu plurálu (srovnej čtyři prasata vs. pět prasat). V prvním případě se tak číslovka chová jako shodný přívlastek, zatímco v druhém formálně hraje jméno roli přívlastku (tentokrát neshodného). Interpretace této skutečnosti ale není jistá, a pravděpodobně s číselnými soustavami užívanými u starých Slovanů přímo nesouvisí. (Zajímavost je, že v baltských jazycích je tato hranice až u desítky; tedy v lotyšském vepříně je rozdíl mezi deviņi cūkas (9) a desmit cūku (10)).

6, 8
Základ 6 se vyskytuje u některých jazyků na Nové Guineji. Osmičkovou soustavu údajně využívá mexický jazyk Otopame.

Podobně jako se v baltoslovanské skupině mění pádová koncovka počítaného jména pro čísla větší než 4 resp. 9, mění se počáteční mutace počítaného slova v irštině pro čísla větší než 6. Tudíž v irském vepříně je sé mhuc (6) vs. seacht muc (7). Zde se ale téměř jestě nejedná o pozůstatek staré šestkové či sedmičkové číselné soustavy, ale pouhý následek skutečnosti, že staroirské číslovky 7-10 končily na nosovou souhlásku, zatímco číslovky nižší na samohlásku. Koncové hlásky během vývoje splynuly s počátečními hláskami následujících slov, a různé koncovky vedly k různým druhům mutací.

12
Dvanáctková číselná soustava se dodnes vyskytuje v řadě jazyků (i navzájem nepříbuzných) ve střední Nigérii, z nichž největší je zřejmě jazyk Berom s třemi sty tisíci mluvčími.

Dvanáctka hrála výraznou roli v různých evropských soustavách měr, vah a peněz [5], a pozůstatkem toho je existence slova tucet v evropských jazycích (tucet, stejně tak jako jeho anglický ekvivalent dozen, ovšem pochází ze složeného latinského duodecim). Častý výskyt dvanáctky v anglicky mluvících zemích dokonce vedl k seriózně míněným návrhům na nahrazení desítkové soustavy dvanáctkovou.

15 a výše
Novoguinejský jazyk Huli užívá údajně patnáctkovou soustavu. Šedesátková soustava, jak již bylo řečeno, byla užívána ve starověkém Sumeru a Babylóně. Náznaky speciální role padesátky nebo šedesátky jsou patrné v turečtině, jejíž číselný systém je sice jinak pravidelně desítkový, ale slova pro číslovky 20 (yirmi), 30 (otuz), 40 (kırk) a 50 (elli) nemají nic společného s 2 (iki), 3 (üç), 4 (dört) a 5 (beş).

Dvacítka je relativně běžná jako druhotná báze, a dvacítkový systém byl přítomen v keltských jazycích. Tradiční počítání, které přežilo do dnešních dnů ve velštině, používá báze 10, 20 a 100, navíc s několika dalšími anomáliemi. Spolu s ním existuje standardní desítková soustava; oba systémy jsou dobře kompatibilní, protože "přepočet" je jednoduchý. Srovnejte sami:


číslotradiční formadoslovný významdesítková forma
10 deg deg
11 un ar ddeg jeden na deseti un deg un
12 deuddeg un deg dau
13 tri ar ddeg tři na deseti un deg tri
14 pedwar ar ddeg čtyři na deseti un deg pedwar
15 pymtheg un deg pump
16 un ar bymtheg jeden na patnácti un deg chwech
17 dau ar bymtheg dva na patnácti un deg saith
18 deunaw dvě devítky un deg wyth
19 pedwar ar bymtheg čtyři na patnácti un deg naw
20 ugain dau ddeg
21 un ar hugain jeden na dvaceti dau ddeg un
30 deg ar hugain deset na dvaceti tri deg
31 un ar deg ar hugain jeden na deseti na dvaceti tri deg un
40 deugain dvě dvacítky pedwar deg
41 deugain ac un dvě dvacítky a jeden pedwar deg un
50 hanner cant půl sta pum deg
51 hanner cant ac un půl sta a jeden pum deg un
60 trigain tři dvacítky chwe deg
70 deg a thrigain deset a tři dvacítky saith deg
71 un ar ddeg a thrigain jedna na deseti a tři dvacítky saith deg un
80 pedwar ugain čtyři dvacítky wyth deg
90 deg a phedwar ugain deset a čtyři dvacítky naw deg
100 cant cant


Pozůstatky dvacítkové soustavy a různé napravidelnosti jsou patrné i v dalších jazycích, nejtypičtěji ve francouzštině, kde stále (jako i v ostatních románských jazycích kromě rumunštiny) dvacet (vingt) je nezávislý kořen a čísla nad 60 jsou tvořena starým dvacítkovým způsobem (např. 97 = quatre-vingt-dix-sept) [6].

Z výše uvedeného, informace o číselných soustavách primitivních jazyků je nutno přijímat s rezervou. Primitivní početní systémy bývají nestálé, různí mluvčí mohou používat různé číslovky, číselné soustavy mohou být vytvářeny ad hoc. Při kontaktu s jinými jazyky snadno dochází k přejímání cizích číslovek. Navíc jsou informace získávány pouze sporadickým kontaktem, a řadu jazyků odlehlých oblastí nikdo z civilizovaného světa pořádně neovládá. I pokud informace existují, může být problém je najít a ověřit. Wikipedie například zmiňuje dva jazyky užívající jako základ číselné soustavy číslo 27; nezávislý zdroj jsem nenašel, a považuji toto tvrzení za krajně podezřelé.

Ideální soustava
Nehledě na to, jaké soustavy jsou nebo byly v historii používány, zajímavá je otázka, jaká soustava je pro člověka nejpřirozenější. To se sice těžko posuzuje bez experimentálních dat (a experimentální data by se v tomto případě dala získat asi jen tak, že donutíte subjekty dosáhnout zběhlosti v provádění početních operací ve vybrané soustavě a budete pak testovat jejich schopnosti), ale některé požadavky, které by měla taková soustava splňovat, se jeví být intuitivně jasné.

Prvním požadavkem je rozumná velikost základu. Dvojka je příliš málo. I nepříliš velká čísla by v dvojkové soustavě byla popisována nehezky dlouhými slovy, a číselný zápis by nebyl příliš přehledný (mimochodem, Jana Husa upálili v roce 101100001112). Šedesát je zase příliš mnoho. Nejen, že jednoduchá šedesátková soustava by vyžadovala šedesát různých slov pro číslice 0-59. Horší by bylo, že umět násobit by znamenalo pamatovat si výsledky 1830 různých součinů (desítková malá násobilka jich vyžaduje 55). Podobně pro sčítání.

Druhou rozumnou věcí je co nejvyšší počet dělitelů základu. Výhoda spočívá mimo jiné v tom, že čím více dělitelů, tím větší množství zlomků má konečný rozvoj. V desítkové soustavě mají konečný rozvoj ty zlomky, jejichž jmenovatel v základním tvaru obsahuje v prvočíselném rozkladu pouze dvojky a pětky. Násobení a dělení dvojkou a pětkou (a jejich součiny a mocninami) je v desítkové soustavě jednodušší, než násobení a dělení jinými čísly. Číselný základ soustavy by měl být sudý, pokud chceme, aby bylo snadno vidět, které číslo je sudé. Jak by situace vypadala, kdybychom tyto požadavky nesplnili, lze nahlédnout na příkladu sedmičkové soustavy. Zkuste si schválně tipnout, zda 1437 je sudé, nebo jak vypadá desetinný zápis jedné poloviny [7].

Desítka z tohoto posouzení nevychází špatně, i když dvanáctka, která je dělitelná dvěma, třemi a čtyřmi, a přibližně stejně velká, je téměř jistě lepší volba. Osmičková nebo šestnáctková soustava by připadaly v úvahu, i když jejich negativem je, že prvočíselném rozkladu základu je pouze dvojka.


Poznámky:
1. Přívlastek "ve standartním tvaru" znamená, že zanedbáváme běžně neužívané číslovky typu "tucet", "kopa", "mandel" atd.
2. Nejsem si jist, zda to tak probíhalo i v mluveném jazyku; z toho, co jsem našel o babylónských číslech vyplývá, že číslovky byly zapisovány číslicemi, nikoli slovy, takže je možné, že v mluveném jazyce byla, aspoň v některých kontextech, užívána pouze desítková soustava. (Babylónština byla semitský jazyk a semitské jazyky užívají desítkovou soustavu. V babylónštině exitovala slova pro "sto" a "tisíc", ačkoli pro šedesátkovou soustavu nebyla nutná. Že ale podobný způsob konstrukce číslovek je možný je patrné z příkladu francouzštiny, kde například 78 má tvar šedesát a deset a osm (soixante-dix-huit).)
3. H.Hammarström, Rarities in numeral systems, [PDF].
4. Nemám ponětí, jak se to čte, "Gumatj" je zřejmě přepis užívaný v angličtině.
5. Před rokem 1971 se britská libra dělila na 20 šilinků, každý po 12 pencích. Tento systém byl standardizován Karlem Velikým a byl (s různými jmény a obměnami) běžný i v jiných částech Evropy.
6. Belgická francouzština ale užívá septante, nonante pro 70, 90. Švýcarská francouzština má i huitante n. octante pro 80.
7. 1437 je sudé (je rovno 80 v desítkové soustavě). Pravidlo v soustavách s lichým základem je, že číslo je sudé tehdy, je-li jeho ciferný součet sudý. 1/2 má v sedmičkové soustavě zápis 0,33333...7.

pondělí 13. prosince 2010

Historie železnic: boje o rozchod

Vnitřní hrany kolejí jsou na většině světových železnic od sebe vzdáleny 1435 mm. Tato vzdálenost je tak běžná, že se nazývá normálním rozchodem. V Evropě dominuje jiný rozchod jen na Pyrenejském poloostrově, ve Finsku, Irsku a na území bývalého Sovětského svazu. Tyto rozchody označujeme jako široké (nejširší z nich je ten španělský, 1672 mm) [1]. Byly ale doby, kdy bylo možno v Evropě narazit na rozchody ještě daleko šiřší.

Standardní rozchod za svou popularitu vděčí Anglii, kde se stal nejrozšířenějším rozchodem velmi brzy. První úspěšné veřejné železnice, Stephensonovy trati Stockton - Darlington a Manchester - Liverpool, byly postaveny s normálním rozchodem - v imperiálních jednotkách je to 4 stopy a 8,5 palce - a protože Stephensonova lokomotivka patřila v dřevních dobách evropských a amerických železnic k nejaktivnějším exportérům, rozšířil se tento rozchod velmi rychle po světě. Výběr rozchodu ale nebyl výsledkem pečlivých úvah o ideální vzdálenosti kol vagónů. Stephenson pouze přejal rozchod, který byl užíván na místní důlní dráze [2].

Nejstarší lokomotivy byly stavěny pro tahání důlních vozíků, které se bez větších problémů vešly mezi necelých jeden a půl metru vzdálené kolejnice. Pro osobní kočár je ale půl druhého metru dost málo, a tím spíš je to málo pro vagón přepravující větší množství lidí. Osobní vagon na normálním rozchodu díky tomu musí mít podlahu nad úrovní kol, což vynucuje vysoká nástupiště, a klade vyšší nároky na stabilitu. Když tedy začalo být jasné, že potenciál železnice převyšuje dopravu uhlí a železné rudy, objevily se pochopitelně úvahy o zavedení šiřších rozchodů.

V roce 1838 zahájila provoz britská Velká západní dráha (GWR), která během následujících několika let propojila Londýn a Bristol. Jejím hlavním inženýr, Isambard Kingdom Brunel, rozhodl o použití rozchodu 7 stop, tedy 2140 mm. Tato šířka měla původně stačit k tomu, aby kola vozů byla na jejich vnější straně. To nakonec nebylo dodrženo, a vagóny GWR byly stejně vysoké jako na jiných železnicích. Mohly ale být šiřší, a stabilita širokého rozchodu umožňovala jízdu vysokou rychlostí.



Nejstarší lokomotivy GWR nevynikaly výkonem ani spolehlivostí. To se změnilo, když se za konstrukci lokomotiv stal zodpovědným Daniel Gooch. Jeho lokomotivy třídy Firefly dosahovaly počátkem čtyřicátých let devatenáctého století na některých úsecích průměrné rychlosti kolem 80 km/h. Nejvyšší rychlost podobných lokomotiv třídy Iron Duke (na obr.), uváděných do provozu od roku 1847, překračovala 130 km/h.



Všechny lokomotivy u GWR byly individuálně označeny jmény. U nákladních lokomotiv s uspořádáním pojezdu C (tj. tři spřažené hnací nápravy) byla často pro jména inspirace čerpána z antiky. Na druhém obrázku je lokomotiva třídy Ariadne.

Široký rozchod nebyl jedinou konstrukční zvláštností. Před běžným způsobem konstrukce trati, kdy se do štěrkového lože umístí příčné pražce, Brunel upřednostňoval tzv. baulk road. Tato metoda spočívala v připevnění kolejí na podélné dřevěné klády, které byly udržovány v odpovídající vzdálenosti od sebe dřevěnými rozporníky (viz obrázek, jedná se o krátký širokorozchodný úsek v železničním muzeu v Didcotu). V některých místech došlo i k využití nestandardní Barlowovy kolejnice, jejíž průřez je patrný na obrázku níže.



Již v průběhu čtyřicátých let devatenáctého století vyvstaly problémy při styku železnic s různými rozchody. To vedlo k ustavení parlamentní komise, která sice shledala Brunelův "broad gauge" lepším než Stephensonův normální rozchod, ale protože většina britských železnic používala právě rozchod Stephensonův, bylo rozhodnuto v jeho prospěch. V roce 1846 byl vydán Railway Regulation Act, který, s několika výjimkami, zakazoval stavbu nových železnic s jiným rozchodem než normálním. Širokorozchodné trati na GWR se ještě nějakou dobu rozrůstaly, a největšího rozsahu (kolem 1300 km) dosáhly v polovině šedesátých let. V té době byla už na některých tratích položena splítka širokého a normálního rozchodu, a počátkem devadesátých let zůstalo čistě širokorozchodných jen několik tratí v Cornwallu. GWR přešla plně na normální rozchod v roce 1892. (Vývoj sítě zde.)

Velmi podobný osud měly širokorozchodné železnice v Holandsku, a tak dnes nejširší používaný rozchod je 1676 mm, se kterým se lze setkat v Indii a Argentině.

<< Habsburská monarchie | připravuje se >>


Poznámky:
1. Španělský a portugalský rozchod se liší jen nepatrně, o osm milimetrů, což umožňuje vlakům přejíždět hranici bez výměny podvozků (na milimetr přesně udaná hodnota je stejně pouze oficiální standard, reálné trati mají rozchod v mezích předepsané tolerance, která bývá kolem deseti milimetrů). Podobná situace panuje na Východě: Sovětský svaz v šedesátých letech změnil svou normu z 1524 mm na 1520 mm (tratě se upravovaly postupně), čímž vznikl čtyřmilimetrový rozdíl oproti normě finské. Estonsko se vrátilo k původním 1524mm po získání samostatnosti, přesto mezi oběma řečenými zeměmi a Ruskem vlaky jezdí bez výměny podvozků.
2. Koluje legenda, že standardní rozchod byl určen výnosem římského senátu v dobách Caesarových pro vozy užívané na římských silnicích; jednotný rozchod byl údajně nutný, aby kola dobře zapadla do vyježděných kolejí, a zvyk se udržel prý až do počátku devatenáctého století. Ačkoli při stavbě vozů dává smysl brát na vyježděné koleje ohled, historka o římské normě je pouze nepodložená pověst.

středa 1. prosince 2010

Testování hypotéz II.


Toto je druhý díl mikrosérie o testování hypotéz (první zde). Nyní se podíváme na to, jak vypadá frekventistická rutina.

Pro ilustraci může posloužit testování účinnosti hypotetického léku. (V minulém díle jsem popisoval bayesovský přístup na příkladu testování vyváženosti mince. Jiný, byť v zásadě analogický, problém jsem zvolil z důvodu jeho větší realističnosti.) Každý lék musí takovým testováním projít má-li být uvolněn na trh [1].

Formálně máme rozhodnout mezi dvěma hypotézami. První z nich je, že lék nefunguje. Tato hypotéza se nazývá nulová. Alternativní hypotéza je pochopitelně ta, že lék funguje. Je dost obvyklé, že se v podobných případech netestuje, jak silně lék účinkuje, pouze je třeba stanovit, zda účinkuje vůbec nějak.

Jelikož není na počátku jasné, jaké výsledky očekávat za předpokladu platnosti nulové hypotézy, klinická studie obvykle zahrnuje dvě skupiny pacientů, z nichž jedna dostává testovaný lék a druhá (tzv. kontrolní) placebo [2]. Výsledky kontrolní skupiny nám říkají, kolik pacientů se uzdraví bez testovaného léku, a jsou tím, s čím porovnáváme výsledky testované skupiny [3]. Uvažujme zjednodušený případ, kdy se zjišťuje pouze to, zda se pacient uzdravil (nezajímá nás tedy rychlost uzdravení, vedlejší účinky léku atd.).

Pokud se uzdraví více pacientů v kontrolní skupině, lék testem samozřejmě neprojde. Složitější je případ, kdy si vedou lépe ti pacienti, kteří lék skutečně dostali. V takové situaci káží zásady frekventismu zjistit pravděpodobnost, že by ke stejnému nebo ještě výraznějšímu výsledku došlo vlivem náhody za předpokladu, že platí nulová hypotéza. Tato pravděpodobnost se nazývá hodnota p, nebo v lehce germanistní formě p-hodnota. Pokud je p-hodnota nižší, než určitá mez, která se obvykle značí α, frekventista řekne, že nulová hypotéza je vyvrácena. Hodnota α je ryze konvenční záležitost, a často se pokládá rovna 0,05; v některých případech (tuším, že testování léků sem spadá) je ale vyžadována výrazně nižší α. Aby hantýrky nebylo málo, tak je-li p < α, říká se, že výsledek testu je statisticky signifikantní (na úrovni α).

Chce to příklad. Nechť jsou výsledky shrnuty následující tabulkou:



-uzdravenýchneuzdravenýchcelkem
testovaná skupina8210
kontrolní skupina4610

Z kontrolní skupiny usoudíme, že spontánní míra uzdravení je 40%. V testované skupině se ale uzdravilo 80%. Naše p-hodnota je tedy pravděpodobnost, že ve skupině deseti lidí, z nichž každý má čtyřicetiprocentní šanci na uzdravení, se uzdraví osm nebo více (připomínám, ptáme se na pravděpodobnost stejného nebo výraznějšího výsledku). Tato pravděpodobnost je

p = 45 . 0,48 . 0,62 + 10 . 0,49 . 0,6 + 0,410 = 0.012

To znamená, že výsledky testu jsou statisticky signifikantní na úrovni 0,05, na této úrovni tudíž můžeme nulovou hypotézu zamítnout. Kdybychom ale požadovali úroveň 0,001, výsledky by signifikantní nebyly.

Povšimněte si skutečnosti, že na rozdíl od bayesovského přístupu je role dvou soupeřících hypotéz nesymetrická. Nulová hypotéza je základní a potřebujeme relativně silnou podporu dat pro její zamítnutí. Na druhou stranu, nesplnění kritérií statistické signifikance ještě neznamená, že můžeme zamítnout alternativní hypotézu. Hodnota p totiž nezávisí pouze na míře účinnosti léku, ale i na velikosti testované skupiny. I kdybychom měli lék se stoprocentní účinností, bude-li testovaná skupina dostatečně malá a míra spontánního uzdravení dostatečně velká, kritérium p < α nesplníme.

Situace je tedy podobná jako u soudu. Stejně jako tam platí presumpce neviny, a vina je uznána až po shromáždění předepsaného množství důkazů, tak ve frekventistickém testování platí presumpce platnosti nulové hypotézy, dokud není shromážděna předepsaně silná statistika v její neprospěch.

Zmatení
Uvádění p-hodnoty spolu s výsledky testů má poměrně velký potenciál mást čtenáře, a bývá proto dobrým zvykem zdůraznit, co p-hodnota nevyjadřuje. Takže,

1. p-hodnota není pravděpodobnost platnosti nulové hypotézy. V rámci frekvenční interpretace pojem pravděpodobnost hypotézy vůbec nemá smysl.
2. p-hodnota není pravděpodobnost, že při opakování testu dostaneme opačné výsledky.
3. Vysoká p-hodnota neznamená "nedostatek dat", a tedy nutnost odložit úsudek o hypotéze na dobu, kdy bude k dispozici větší statistika. Ačkoli malý statistický soubor implikuje vysokou p-hodnotu, opačně implikace nesměřuje.
4. Statistická signifikance není praktická signifikance. Užití slova "signifikance", tj. "významnost", by mohlo vést k závěru, že lék je tím účinnější, čím je p-hodnota nižší. Nízkou p-hodnotu ale můžeme získat i pro marginálně účinný lék, máme-li dostatečně velký statistický soubor.

Potíže
Navzdory jejich oblíbenosti může být těžké frekventistické metody obhájit proti mnohým námitkám. Zde jsou některé z nich:

1. Nulová hypotéza je vždy špatně. Předcházející věta je sice trochu nadsázka, ale poukazuje na reálný problém spojený s tím, že při konvenčním testování se zjišťuje pouze přítomnost efektu bez ohledu na jeho sílu.

Typicky je tato námitka relevantní třeba při zjišťování férovosti hrací kostky. Žádná kostka není perfektní, a tak je jasné, že když shromáždíme dost velkou statistiku hodů, na úrovni 0,05 - nebo na jakékoli jiné předepsané úrovni - nulovou hypotézu vyvrátíme. Co nám to ale říká? Prakticky nic - nulová hypotéza neplatí u podvodnické kostky, na které padá šestka každým druhým hodem, stejně tak jako u profesionální kostky v kasinu, kde je výchylka pravděpodobnosti šestky od předepsané 1/6 v řádu miliontin. Je jasné, v čem je zde problém: nulová hypotéza je "bodová", tj. zabírá množinu nulové míry v prostoru všech přípustných hypotéz. Její platnost by vyžadovala naprosto přesné naladění parametrů, a jakkoli malá odchylka ji neguje.

Při testování léků nejsme ve stejné situaci pouze proto, že testovaný lék může teoreticky škodit. Prakticky ale problém existuje i tak. Každý "lék" má nějakou účinnost. U libovolné substance máme slušnou šanci, že o trochu zlepší pacientovy vyhlídky, byť třeba v řádu tisícin procenta. Pak stačí udělat dostatečně velkou studii. I když možnost, že lék škodí, zahrneme do nulové hypotézy, její vyvrácení znamená právě a jenom to, že testovaný "lék" neškodí. Zda také léčí je ovšem jiná otázka.

2. Jak určit, co je nulová hypotéza? Protože nulová hypotéza hraje ve frekventistické analýze dat význačnou roli, je velmi postatná otázka, kterou hypotézu vybrat jako nulovou. V mnoha případech je to intuitivně jasné - lék neúčinkuje, kostka je férová, telepatie neexistuje. Není ale příliš těžké představit si situaci, kdy intuice nepomáhá. Co když třeba vidím, jak protihráč drží v ruce hrací kostku a dýchá na ni, aby vevnitř roztál vosk a pohnulo se olověné závažíčko? Vím, že potom bude kostka vychýlená, ale nevím, ve prospěch které strany. Jsem-li si skutečně jistý, že protihráč kostku cinknul, férovost kostky nemá smysl uvažovat. Mám tedy vzít cinknutost ve prospěch šestky jako nulovou hypotézu? Nebo ve prospěch trojky? V bayesovském přístupu mohu všem možnostem přiřadit stejnou apriorní pravděpodobnost. Frekventistická praxe mě nutí mezi nimi vybrat.

3. Co je "výraznější výsledek"? K určení p-hodnoty potřebuji spočítat pravděpodobnost, že stejného nebo výraznějšího výsledku dosáhnu čistě náhodou. Výraznějším výsledkem se míní výsledek, který více svědčí ve prospěch alternativní hypotézy. Zase, v mnoha případech je to jasné: výraznější výsledek je více uzdravených pacientů nebo více správných odpovědí telepata. A stejně tak to v jiných případech jasné není. Která z následujících sekvencí šesti hodů kostkou svědčí víc o tom, že kostka je cinknutá? 5 2 5 3 5 5, protože ve čtyřech případech padla stejná strana, a tak je kostka cinknutá ve prospěch pětky? Nebo 4 1 1 4 4 1, protože za celou dobu nepadlo nic kromě jedničky a čtyřky, a tak kostka zjevně zvýhodňuje tyto dvě hodnoty?

4. Stejná data, různé řeči, různé p-hodnoty. Rozhodneme se testovat férovost mince tím, že provedeme čtyři hody. Padne třikrát hlava a jednou orel. Pravděpodobnost, že orel padne jednou, je 1/4, a že nepadne vůbec, je 1/16. Tudíž máme potvrzeno, že mince je cinknutá ve prospěch hlavy s p = 5/16 = 0.3125. Nyní se rozhodneme výsledek ověřit trochu jiným postupem: budeme házet mincí tak dlouho, dokud nepadne orel. Orel padne ve čtvrtém hodu. Nyní je p-hodnota rovna pravděpodobnosti, že orel padne na férové minci ve čtvrtém hodu nebo později, tedy p = 0.125.

V obou případech jsme získali stejná data, ale odpovídající p-hodnota se liší, v závislosti na tom, jak byl experiment naplánován. To ale znamená, že když mám k dispozici data, ale nevím, jaký byl plán experimentátora, nemůžu jednoznačně určit p-hodnotu.

Jeden z hlavních důvodů odmítání bayesovského přístupu je jeho subjektivita. Námitky 2, 3 a 4 ale poukazují na značné množství subjektivity ve frekventistické analýze; zatímco bayesovská subjektivita je otevřeně přiznaná ve formě apriorních pravděpodobností, zde se jedná o subjektivitu skrytou. A její zneužití může tak snáze projít bez povšimnutí.

5. Odkud vezmeme požadovanou úroveň signifikance? Je jasné, že pokud chceme dělit hypotézy na ještě nevyvrácené a již vyvrácené (zcela v duchu Popperovy filosofie), musíme někde vytyčit hranici. I tak se ale stěží lze ubránit otázce "a proč zrovna 0,05?" (nebo "0,001", nebo jakákoli jiná tradičně uznávaná mez statistické signifikance). Při praktickém posuzování toho, jaký výsledek přijmout k publikování, nějakou hranici potřebujeme, a ta hranice je nutně umělá - ale vzít tento přístup za teoretický popis procesu poznávání? V hlavách skutečných lidí neexistuje tato ostrá hranice: některým věcem věříme, jiné považujeme za možné, o dalších v různé míře pochybujeme. Je absurdní tuto škálu redukovat na dva protipóly, kde hypotéza potvrzená na p = 0.049 patří do prvního, zatímco kdyby byl výsledek 0.051, spadla by do opačného.

6. Složitost, nenázornost a velké množství metod. Popsal jsem velmi primitivní variantu testování. Pro testování složitějších hypotéz existují příslušně složitější testy, jako například test test chí kvadrát. Používané testy závisí na pravděpodobnostním rozdělení které nulová hypotéza předpokládá a jsou často pouze přibližné; sdílejí obvykle jednu vlastnost, a to je obtížná pochopitelnost.

7. Publikační efekt. Poslední z námitek se sice dotýká frekventistické rutiny pouze nepřímo, zato je ovšem prakticky nejvážnější. Jde o zvyk publikovat pouze statisticky signifikantní výsledky. Není-li výsledek statisticky signifikantní, podle teorie nevede k ničemu novému (nulová hypotéza stále není vyvrácena), takže motivace takový výzkum publikovat je malá. Je na první pohled vidět, co je špatně. Na úrovni 0,05 je statisticky signifikantní efekt zjištěn náhodně v jednom z dvaceti případů. O devatenáct negativních se ale nikdo nedozví, zatímco jeden pozitivní je publikován. Tato praxe vede k tomu, že považujeme za statisticky prokázané mnoho jevů, které ve skutečnosti neexistují. Jistě je možné pokusit se poté pokus replikovat, problém ale je, že negativní výsledek má menší váhu: pouze nevyvrací nulovou hypotézu. Od toho se potom odvíjí počet citací a prestiž, která z článku vyplývá.

Poutavou kritiku frekventistických metod si lze přečíst v Yudkowského článku, ze kterého jsem čerpal inspiraci, i na Wikipedii.

Jak je asi z posledních dvou příspěvků jasné, nejsem příliš velkým příznivcem frekventistických metod. V příštím, posledním, díle se tak vrátím k některým otázkám bayesovské analýzy.


Poznámky:
1. S výjimkou homeopatik, o kterých se i bez testu ví, že nefungují.
2. Skupiny by měly být rozděleny tak, aby příslušnost k jedné ze skupin nebyla korelována s dalšími faktory, které by mohly ovlivňovat uzdravení, jako je věk, pohlaví, rasa a podobně. Mimo testovaného léku musí obě skupiny musí dostat přesně tutéž léčbu. Navíc je třeba dbát na to, aby sami lékaři před hodnocením výzkumu neznali, který z pacientů dostává testovaný lék a který placebo - zásada dvojitě slepých testů.
3. V některých případech kontrolní skupina není potřeba. Jsou to situace, kdy výsledky za předpokladu platnosti nulové hypotézy jsou jasné: zjišťování férovosti mince nebo kostky, zkoumání telepatie apod.