Strukturní rozpisy na tomto webu nevznikají náhodným skládáním čísel, ale z hypergrafové analýzy reálných tahů. Program nejprve hledá, zda v historii existuje skutečná nenáhodná struktura, a teprve potom z ní odvozuje Jádrová čísla, dvojice a trojice.
Obyčejný graf spojuje vždy jen dva uzly. Hypergraf umí jednou hyperhranou spojit více čísel najednou. To je pro loterie přirozenější, protože jeden tah není dvojice, ale celá k-tice čísel.
U hry 6 z 49 je jeden tah přirozeně šestice. V grafu by se musel rozpadnout na dvojice, v hypergrafu zůstane zachován jako jeden celek.
vztahy se rozpadnou na dvojice
vidíme 3 dvojice, ale ne jeden celek
celý tah zůstane jednou hyperhranou
zachována je přímo trojice / k-tice jako celek
V programu jsou jako hlavní vědecké metody použity HySC, Hypergraph-MT a Hy-MMSBM. Každá se dívá na strukturu trochu jinak, ale všechny vracejí membership matici, tedy matici příslušností čísel ke skupinám.
Rychlá tvrdší metoda, která dává první přehled, zda se v datech rýsuje hrubé členění. Hodí se jako výchozí orientace a kontrolní baseline.
Hlavní probabilistický model pro překryvné latentní komunity. Umožňuje, aby jedno číslo patřilo částečně do více skupin současně.
Statistický model latentních bloků, který dovoluje smíšenou příslušnost. Je vhodný tam, kde čísla nejsou čistě jednoskupinová, ale nesou více rolí zároveň.
V programu jsou navíc ještě kontrolní/reference vrstvy: Motifs jako mikro-strukturní kontrola proti null modelu, a explicitní referenční metody A a B.
Výstupem hlavních metod není rovnou sázenkový sloupec, ale membership matice. Každý řádek odpovídá jednomu číslu a každý sloupec jedné latentní skupině G1, G2, G3, … Hodnota v buňce říká, jak silně dané číslo do příslušné skupiny patří.
| Číslo | G1 | G2 | G3 |
|---|---|---|---|
| 7 | 0,82 | 0,11 | 0,07 |
| 18 | 0,44 | 0,41 | 0,15 |
| 29 | 0,10 | 0,79 | 0,11 |
| 33 | 0,19 | 0,24 | 0,57 |
Přesně proto jsou hypergrafové modely cenné: nevrátí jen „ano/ne", ale i míru příslušnosti a míru překryvu.
V aktuální vědecké verzi programu se Jádrová čísla počítají přímo ze soft membership matice. Tvrdá partition už není povinný mezikrok. Každé číslo dostává score, které kombinuje čtyři složky:
lift
jak moc je číslo nad očekáváním
membership
jak silně patří do nejlepší skupiny
contrast
jak jednoznačně patří právě tam
gap
rozdíl top1 − top2 mezi skupinami
number-lift
frekvenční nadbytek
membership
síla příslušnosti
contrast + gap
jednoznačnost čísla
Jádrové číslo
výstup rankingů
Jádrové číslo tedy není „náhodný favorit", ale číslo, které je současně silné v membership, odlišené od jiných skupin a pokud je použit validační vzorek, také podpořené skutečným chováním v datech.
Číslo 14
jeden řádek membership matice
membership v latentních skupinách
[0.08, 0.71, 0.12, 0.09]
top1 = 0.71 · top2 = 0.12
gap = 0.59
výsledné
jádrové číslo
Číslo je „jádrové", pokud má vysoké membership, vysoký kontrast vůči ostatním skupinám a současně jeho chování není v rozporu s validačním vzorkem.
U dvojic a trojic se nepoužívá jednoduché „sečtení bodů" jejich členů. Program jde přímo přes membership matici a pro každou kandidátní kombinaci zjišťuje, jak silně tato kombinace drží pohromadě v jednotlivých skupinách.
Myšlenka je přirozená: pokud dvě nebo tři čísla opravdu náleží ke stejné latentní struktuře, měly by mít vysoké membershipy ve stejném sloupci. Proto se pro každou skupinu počítá součin membershipů všech členů kombinace.
Dvojice je silná tam, kde obě čísla současně patří do stejné skupiny.
Trojice je silná tehdy, když všechny tři prvky sdílejí stejnou latentní stopu.
Z těchto příspěvků se určí nejlepší skupina kombinace, její kontrast vůči ostatním skupinám a případně i podpora ve validačním vzorku. Program tak rozlišuje kombinace, které jsou opravdu strukturní, od kombinací, které vypadají dobře jen náhodou.
kde membership_geom vychází z přímé kombinace membershipů všech prvků v dané skupině.
Dvojice 7 + 14
membership obou čísel
se násobí po skupinách
příspěvky dvojice
[0.01, 0.29, 0.03, 0.02]
nejlepší skupina = G2
contrast
vysoký
G2 dominuje
finální
silná dvojice
v rankingu
Stejný princip se použije i pro trojice. Rozdíl je pouze v tom, že se násobí tři membershipy místo dvou.
Tak vznikají kombinace, které nejsou jen „časté", ale hlavně vnitřně soudržné v latentní struktuře.
Hypergrafová analýza sama o sobě ještě netvoří sázenkové sloupce. Nejprve vrátí strukturu: skupiny, membership, Jádrová čísla, dvojice a trojice. Teprve v dalším kroku lze tyto prvky převést do praktických řádků nebo do covering designu.
Jinak řečeno: hypergraf najde, která čísla a vazby jsou strukturně silná, zatímco covering design řeší, jak tyto silné prvky rozumně rozložit do konečného počtu sloupců.
Hypergraf
celé tahy jako k-tice
Membership
skupiny + překryvy
Jádro, dvojice, trojice
výběr nejsilnějších prvků
Rozpis
praktické sloupce
V programu je důležité i to, že nalezené struktury nejsou brány „na víru". Výstupy se porovnávají proti null modelu a samostatná vrstva motifs sleduje lokální mikro-vzory v hypergrafu.
configuration model
náhodný hypergraf se stejnou kostrou omezení
random shuffle
alternativní náhodná kontrola
motifs
lokální mikro-strukturní důkazy
stabilita
shoda napříč restarty metod
Smyslem není jen „něco najít", ale ověřit, zda je nalezená struktura silnější než náhoda a zda se rozumně opakuje napříč běhy metody.
Program umí pracovat ve dvou režimech:
Stejné číslo se může objevit ve více silných dvojicích či trojicích.
Program hledá globálně nejlepší navzájem disjunktní množinu kombinací, aby se čísla neopakovala.
Režim bez překryvů není jen jednoduché „vezmi první shora". Je to přesnější optimalizační krok, který vybírá nejlepší celou sadu kombinací jako celek.