MCMC szimuláció indítása

Hasonló dokumentumok
KÖZELÍTŐ INFERENCIA II.

KÖZELÍTŐ INFERENCIA II.

Exact inference in general Bayesian networks

Készítette: Trosztel Mátyás Konzulens: Hajós Gergely

Erőforrások hozzárendelése tevékenységekhez

y ij = µ + α i + e ij

Megerősítéses tanulás 7. előadás

STATISZTIKA. A maradék független a kezelés és blokk hatástól. Maradékok leíró statisztikája. 4. A modell érvényességének ellenőrzése

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

6. Előadás. Vereb György, DE OEC BSI, október 12.

Megyei tervezést támogató alkalmazás

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

TERC V.I.P. hardverkulcs regisztráció

Mesterséges Intelligencia MI

Táblázatok. Táblázatok beszúrása. Cellák kijelölése

Segítség az outputok értelmezéséhez

Közönséges differenciál egyenletek megoldása numerikus módszerekkel: egylépéses numerikus eljárások

Egészségterv és edzésprogram használati utasítás

Véletlenszám generátorok és tesztelésük HORVÁTH BÁLINT

KÖVETKEZTETŐ STATISZTIKA

Biomatematika 13. Varianciaanaĺızis (ANOVA)

Teljesítményprognosztizáló program FELHASZNÁLÓI KÉZIKÖNYV

Diagram készítése. Diagramok formázása

Bevezető. Mi is az a GeoGebra? Tények

A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.

Szimuláció RICHARD M. KARP és AVI WIGDERSON. (Készítette: Domoszlai László)

Matematikai statisztika c. tárgy oktatásának célja és tematikája

Monte Carlo módszerek a statisztikus fizikában. Az Ising modell. 8. előadás

y ij = µ + α i + e ij STATISZTIKA Sir Ronald Aylmer Fisher Példa Elmélet A variancia-analízis alkalmazásának feltételei Lineáris modell

ClicXoft programtálca Leírás

A TERC VIP költségvetés-készítő program telepítése, Interneten keresztül, manuálisan

GráfRajz fejlesztői dokumentáció

Statisztika - bevezetés Méréselmélet PE MIK MI_BSc VI_BSc 1

Adaptív dinamikus szegmentálás idősorok indexeléséhez

Adatok statisztikai értékelésének főbb lehetőségei

Hipotézis STATISZTIKA. Kétmintás hipotézisek. Munkahipotézis (H a ) Tematika. Tudományos hipotézis. 1. Előadás. Hipotézisvizsgálatok

Algoritmus terv 3. Fejezet: Folyamatok meghatározása

Útmutató az OKM 2007 FIT-jelentés telepítéséhez

Kettőnél több csoport vizsgálata. Makara B. Gábor

A Markovi forgalomanalízis legújabb eredményei és ezek alkalmazása a távközlő hálózatok teljesítményvizsgálatában

Dr. habil. Maróti György

Opensuse automatikus telepítése

STATISZTIKA ELŐADÁS ÁTTEKINTÉSE. Matematikai statisztika. Mi a modell? Binomiális eloszlás sűrűségfüggvény. Binomiális eloszlás

LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR

biometria II. foglalkozás előadó: Prof. Dr. Rajkó Róbert Matematikai-statisztikai adatfeldolgozás

Területi elemzések. Budapest, április

Felhasználói segédlet a Web of Knowledge / Web of Science adatbázis használatához

A RoadOn+ Flottamenedzser használata

Mérési adatok illesztése, korreláció, regresszió

Thermo1 Graph. Felhasználói segédlet

Függvények ábrázolása

Gauss-Seidel iteráció

Projektmenedzsment tréning

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

ÁRAMKÖRÖK SZIMULÁCIÓJA

Hipotézis, sejtés STATISZTIKA. Kétmintás hipotézisek. Tudományos hipotézis. Munkahipotézis (H a ) Nullhipotézis (H 0 ) 11. Előadás

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

c adatpontok és az ismeretlen pont közötti kovariancia vektora

CIB Internet Bank asztali alkalmazás Hasznos tippek a telepítéshez és a használathoz Windows operációs rendszer esetén

Android Commander Felhasználói kézikönyv

Matematikai alapok és valószínőségszámítás. Középértékek és szóródási mutatók

HVK Adminisztrátori használati útmutató

Sú gó az ASIR/PA IR Públikús felú lethez

RIEL Elektronikai Kft v1.0

TABULÁTOROK TÁBLÁZATOK KÉSZÍTÉSE. A táblázatok készítésének lehetőségei:

Mobil Partner telepítési és használati útmutató

Magyar Nemzeti Bank - Elektronikus Rendszer Hitelesített Adatok Fogadásához ERA. Elektronikus aláírás - felhasználói dokumentáció

Útmutató EDC kézivezérlőhöz

BetBulls Chartrajzoló

Mintavétel fogalmai STATISZTIKA, BIOMETRIA. Mintavételi hiba. Statisztikai adatgyűjtés. Nem véletlenen alapuló kiválasztás

Az MS Excel táblázatkezelés modul részletes tematika listája

alkalmazásfejlesztő környezete

Első egyéni feladat (Minta)

Statisztika I. 4. előadás Mintavétel. Kóczy Á. László KGK-VMI. Minta Mintavétel Feladatok.

Használati utasítás a Betafence.lib GDL könyvtár használatához

GoodBill számlázó és kintlévőség menedzselő rendszer

ÁNYK53. Az Általános nyomtatványkitöltő (ÁNYK), a személyi jövedelemadó (SZJA) bevallás és kitöltési útmutató együttes telepítése

Egészségügyi Stratégiai Kutató Intézet Informatikai és Tájékoztatási Iroda

[Biomatematika 2] Orvosi biometria

Android Commander Felhasználói kézikönyv

Táblázatkezelés 2. - Adatbevitel, szerkesztés, formázás ADATBEVITEL. a., Begépelés

Biometria az orvosi gyakorlatban. Korrelációszámítás, regresszió

Függvények növekedési korlátainak jellemzése

Statisztika I. 4. előadás Mintavétel. Kóczy Á. László KGK-VMI. Minta Mintavétel Feladatok.

Órarendkészítő szoftver

BaBér bérügyviteli rendszer telepítési segédlete év

A PowerMill egy hatékony alámarásmentes CAM rendszer, amellyel 3D-s szerszámpályákat tudunk generálni, importált CAD modellek alapján.

MŰSZAKKIOSZTÁSI PROBLÉMÁK A KÖZÖSSÉGI KÖZLEKEDÉSBEN

IP Thermo for Windows

Sztochasztikus folyamatok alapfogalmak

Mesh generálás. IványiPéter

Navigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel

Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január

( 1) i 2 i. megbízhatóságú a levont következtetése? A matematikai statisztika eszközeivel értékelje a kapott eredményeket!

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

OKOS ÁRAM FOGYASZTÓI ADATOK MONITOROZÁSA

Ügyfélforgalom számlálás modul

1 Rendszerkövetelmények

Kontrollcsoport-generálási lehetőségek retrospektív egészségügyi vizsgálatokhoz

Grafikonok automatikus elemzése

Átírás:

Monte Carlo következtetési módszerek beállítása, monitorozása, eredményeinek megjelenítése Nagy méretű Bayes-hálók esetén az egzakt következtető eljárások - még ha az eredeti hálót a hatékonyság növelése érdekében át is alakítjuk egy másodlagos struktúrába és abban következtetünk, mint a PPTC algoritmus esetében - exponenciális számítási igényük miatt nem alkalmazhatóak. Ehelyett közelítő módszereket vethetünk be a prediktív következtetés elvégzésére. Ilyen közelítő következetési módszereket kínál a Monte Carlo Markov Chain eljárások családja, amelybe tartozó algoritmusoknak közös jellemzője, hogy egy Markov-láncot generálnak, amely a többdimenziós-eloszlás mintavételezése során konvergál az egyensúlyi eloszláshoz. A Markov-folyamat minden egyes állapotában minden változóra meghatároz egy értéket. A következő állapot generálása egy Xi nem bizonyítékváltozóhoz tartozó érték véletlenszerű mintavételezésével történik, az Xi Markov-takarójába tartozó változók jelenlegi értékeinek feltétele mellett. Az MCMC így véletlen bolyongást végez az állapottérben - a lehetséges teljes érték hozzárendelések terében -, egyszerre egy változót billentve át, de rögzítetten tartva a bizonyítékváltozókat. A módszer elmélete szerint a céleloszláshoz való konvergencia megtörténik, ha a lépésszám tart a végtelenhez. Praktikusan a pontosság a generált minták számától függ. Evidenciák bevitele A felhasználói felület lehetőséget ad a következtetés egyik alapfeladatának, célváltozó-értékek valószínűségének a kiszámítására, a bizonyíték-ismeretek mint feltétel mellett. A felhasználó az "Inference Specification" nézet használatával a betöltött Bayes-háló változócsomópontjaira biztos evidenciákat (hard evidence) állíthat be. Lehetőség van a beállított evidencia törlésére is. Az evidenciával rendelkező csomópontok nevei a szerkesztővásznon félkövérrel szedve láthatók, a név alatt a felvett értékkel. Változóértékek, többváltozós értékkonfigurációk monitorozása Az MCMC szimuláció során egyidejűen monitorozható több változóérték valószínűségének vagy akár többváltozós értékkonfiguráció együttes valószínűségének alakulása is. A vizsgált változókra a program tárolja a mintavételezés során kapott értékeket, így számolható egy konkrét változóérték

valószínűsége. A figyelendő változóértékek vagy értékkonfigurációk megadhatók az "Inference Specification" nézet kontextus menüjén keresztül vagy az erre a célra kifejlesztett dialógusablak segítségével. MCMC szimuláció indítása Az MCMC szimuláció a menüsor megfelelő menüpontjának kiválasztásával indítható. A megjelenő dialógus ablakban beállíthatók a szimuláció paraméterei. Az MCMC szimuláció paraméterei Num. of iterations: Teljes iterációszám beleértve a burn-in lépéseket is. Length of burn-in: Mekkora iterációszámtól tárolódjanak a figyelt változókhoz generált minták. Ennek beállításával válnak a "burn-in" minták eldobhatókká. Thinning rate: Mekkora iterációszámonként kerüljenek felhasználásra a figyelt változókhoz generált minták. Az egymást követő minták közötti autokorreláció nagy lehet és ha emiatt

úgyis nagy iterációszámot kell alkalmaznunk, ezzel csökkenthetjük a tárolt adatok mennyiségét, így a program memóriaigényét. Refresh rate: Mekkora iterációszámonként történjen meg a diagramok frissítése. A konvergencia-diagnosztikára, vagyis annak megállapítására hogy a futtatott szimuláció esetén a konvergencia megtörtént e, hány kezdeti lépés (ún. burn-in szakasz) után közelíti a lánc állapotainak eloszlása a céleloszlást megfelelően, a "MCMC inference" nézeten megjelenített vonaldiagramok szolgálnak. Egyetlen lánc futtatása esetén a konvergencia ellenőrzése a legegyszerűbben informális módon, a diagram vizsgálatával történhet, nevezetesen: ha a burn-in utáni különböző diagramszakaszok megkülönböztethetetlenek, a lánc konvergensnek tekinthető. Ezen kívül a konvergencia ténye formális módon is megállapítható lehetne különböző mutatószámok segítségével, mint pl. Geweke. Gibbs mintavételi eljárás megvalósítása A szoftver következtetési motorjában a közelítő következtetésre alkalmazható Gibbs mintavételező eljárás C++ nyelven került implementálásra a Java nyelv memóriakezelési és teljesítménybeli korlátain való túllépés érdekében. A Java és az alacsonyabb szintű, rendszerközelibb C++ nyelv közti együttműködés a Java Native Interface (JNI) technológia segítségével valósult meg. A JNI keretrendszer

használatával lehetőségünk van Java-ban létrehozott natív metódusokat C++ nyelven implementálni és meghívni. A natív metódusok implementációját tartalmazó C kódból és a legenerált header fájlokból összeállított könyvtár lefordítása után (linking) egy.dll kiterjesztésű fájl keletkezik. Az így létrehozott ún. osztott programkönyvtár (shared library) függvényeinek Java programban való használatához a könyvtárat futási időben kell betöltenünk. A Gibbs mintavételező egy vagy több Markov-láncot futtat a valószínűségi változók halmazán és a következő lépéseket követi: 1. Rögzítjük az evidenciaváltozók értékét. 2. Kisorsolunk egy kezdeti valószínűségi változóérték konfigurációt, amely kompatibilis az evidenciákkal. 3. Minden iterációban az összes szabad változóra (amelyekre nincsen evidencia beálltva) kisorsolunk egy aktuális értéket a háló által leírt feltételes valószínűségi eloszlásból a változó Markov-takarója mint feltétel szerint. A változó egy felvehető értékének valószínűsége a Markov-takarója, mint feltétel mellett a következő képlettel számolható ki: A változókon való végiglépdelés és értékadás után kapott változóérték konfiguráció jelent egy mintát. Legyen N az MCMC frissítések száma, T mintavételi ráta (pl. 10 esetén minden 10-edik mintát kapjuk vissza), B a burn-in minták száma, S a visszakapott minták száma. A minták teljes száma az MCMC frissítések száma megszorozva mintavételi rátával, vagyis N*T. Ez az az ismétlésszám, ahányszor a Gibbs mintavételező fő lépését, a bizonyítékokkal kompatibilis érték-konfigurációk újrasorsolását végrehajtjuk. A visszakapott minták számának meghatározásához ebből ki kell vonnunk a burn-in minták számát, hiszen azokra nem tartunk igényt, majd az eredményt el kell osztanunk a mintavételi rátával: S = (N*T-B)/T. Forward sampling A kezdeti értékek generálásához a Forward Sampling algoritmus használt az egyenletes eloszlás szerinti mintavétel helyett, mivel ez a megoldás a Gibbs algoritmus gyorsabb konvergenciáját eredményezi. A Forward Sampling algoritmus minden változóhoz egy felvehető értéket rendel a következő lépések végrehajtása után: 1. Rendezzük a Bayes-háló csomópontjait topologikus sorrendbe. 2. Rögzítjük az evidenciaváltozók értékét. 3. Minden egyes szabad változóra: Mintavételezzük a xi változót a változó szülőinek beállított értékek, mint feltételek által kijelölt CPD-beli eloszlásból. Gibbs mintavételezés indítása A grafikus felhasználói felületen a Bayes-háló modell betöltése után a szerkesztő módról a Gibbs mintavételező módra az Operations menü "Gibbs sampling mode" menüpontjára kattintva válthatunk át. Ebben a módban a kialakított háló szerkesztése nem engedélyezett, kivéve a csomópontok áthelyezése és a változócsoportok kezelése. Miután a megnyitott Bayes-háló módellben az "Inference Specifications" nézet segítségével felvettük az evidenciáinkat és beállítottuk azokat a változóértékek, többváltozós értékkonfigurációkat, amiket figyelni szeretnénk, a Gibbs mintavételezés a menüsor "Gibbs sampling" menüjének "Start simulation"

menüpontjának kiválasztásával indítható. A kattintásra megjelenő ablakban beállíthatók a szimuláció paraméterei. A Gibbs mintavételezés paraméterei Num. of chains: Egyszerre különböző végrehajtási szálakon (thread) futtatott Markov-láncok száma Num. of updates: MCMC frissítések száma Length of burn-in: A burn-in szakasz hossza, vagyis mekkora iterációszámtól szeretnénk visszakapni a figyelt változókhoz generált mintákat. Thinning rate: Mekkora iterációszámonként kerüljenek felhasználásra a figyelt változókhoz generált minták. Az egymást követő minták közötti autokorreláció nagy lehet és ha emiatt úgyis nagy iterációszámot kell alkalmaznunk, ezzel csökkenthetjük a tárolt adatok mennyiségét, így a program memóriaigényét. Refresh rate: Mennyi visszakapott mintánként történjen a diagramok frissítése.

A szimuláció addig fut, amíg az MCMC frissítések száma el nem éri a fenti dialógusablakban megválasztott "Num. of updates" értéket. Ekkor a futtatás szünetelt (paused) állapotba kerül. Amíg az algoritmust nem állítjuk le véglegesen ("Stop sampling"), lehetőségünk van újabb minták generálására ("Resume sampling").

Konvergencia-diagnosztika A konvergencia-diagnosztikára, vagyis annak megállapítására hogy a futtatott szimuláció esetén a konvergencia megtörtént e, hány kezdeti lépés (ún. burn-in szakasz) után közelíti a lánc állapotainak eloszlása a céleloszlást megfelelően, a "MCMC Inference" nézeten megjelenített vonaldiagramok szolgálnak.

A nézeten minden egyes monitorozott változóértékhez vagy többváltozós értékkonfigurációhoz egy vonaldiagram jelenik meg vízszintes elrendezésben. A diagram vízszintes tengelyén az iterációszám, függőleges tengelyén a valószínűség szerepel. A grafikonon az utolsó 1000 beérkezett mintához láthatjuk a vizsgált változóérték vagy többváltozós értékkonfiguráció előfordulásának addig a pontig kalkulált valószínűségét. Amennyiben kiváncsiak vagyunk a valószínűségek alakulásának teljes történetére, a diagramon való jobbkanttintás után megjelenő kontextus menüből válasszuk a "Show full chart" opciót. A megjelenő dialógusablak bal oldalán egy grafikon található, amely az összes beérkezett minta alapján számolt pontot tartalmazza. Az ablak jobb oldalán elhelyezkedő táblázatban a lánconkénti valószínűségek olvashatók, a táblázat alján pedig ezen érték átlaga.

A konvergencia ellenőrzésére léteznek informális/empirikus és formális/statisztikai módszerek is. A legtöbb egyszerű modell esetében a konvergencia gyorsan megtörténik, sokszor az első néhány ezer iteráción belül. Komplexebb modelleknél, a konvergencia jelentősen hosszabb burn-in periódust igényel és gyakori, hogy nagyságrendekkel több mintavételre van szükségünk. Egyetlen lánc futtatása esetén a konvergencia ellenőrzése a legegyszerűbben informális módon, a diagram vizsgálatával történhet, nevezetesen: ha a burn-in utáni különböző diagramszakaszok megkülönböztethetetlenek, a lánc konvergensnek tekinthető. Ha több, egymástól független láncot futtatunk és az egyes futásokhoz tartozó diagramok "ránézésre" nem különböztethetők meg egymástól, elfogadhatjuk a konvergencia tényét. Az ad hoc, informális technikákon kívül a konvergencia ténye formális módon is megállapítható különböző statisztikai módszereken alapuló mutatószámok segítségével. Ilyen mutatószámok a következőkben bemutatott Geweke és a Gelman-Rubin statisztikák. Geweke diagnosztika A Geweke diagnosztika egy idősor analízisen alapuló formális konvergencia diagnosztikai módszer, amely a lánc elejéről és végéről vett szegmensek átlagának és varianciájának összehasonlításával operál. Legyen "a" a lánc elejéről, "b" a lánc végéről vett intervallumok. Ha az ezekre a szegmensekre számolt ún. Z-score hasonló, az bizonyíthatja a konvergencia elértét. Legyen és az a és b "ablakból" vett minták átlaga. A megvalósított algoritmus a lánc változó kezdőpontú 10% nagyságú szegmenseinek és a maradék lánc utolsó 50%-ának Z-score-jából számol. Ha a diagramon ábrázolt pontok nagy része a nulla vonal körüli [-1.96, 1.96] intervallumon belül szóródik, az valószínűsíti a konvergenciát, míg a kilógó pontok azt

jelzik, hogy esetleg több mintára lesz szükségünk a konvergencia eléréséhez (az 1.96-os választás indoka, hogy ez az N(0,1) normális eloszlás 95%-os konfidencia-intervalluma. A Z-score-t a grafikonon a szegmensen belüli első mintához tartozó iteráció számának függvényében szeretnénk ábrázolni meghatározott pontokban. Legyen LENGTH a lánc teljes hossza, BINWIDTH a grafikonon megjelenített egymást követő pontok közti távolság, NUMOFBINS pedig a pontok száma. Legyen MINBINWIDTH a legkisebb távolság, amit a szóban forgó pontok között megengedünk, MAXNUMOFBINS pedig a pontok maximális száma. A teljes láncot úgy szeretnénk szegmensekre osztani, hogy az utolsó szegmens legalább 50 mintát tartalmazzon. Ennek megfelelően a BINWIDTH-t határozzuk meg úgy hogy az utolsó két pont között legyen legalább 50, a többi egymást követő pont között pedig az 500 iterációjú vagy rövidebb láncok esetén legyen a MINBINWIDTH értéke hosszabb láncokra úgy kapjuk, hogy a láncot az utolsó 50 minta számításba vétele nélkül egyenletesen MAXNUMOFBINS szakaszra osztjuk Az így meghatározott szakaszok kezdőpontjai a szegmensek kezdőpontjait jelölik majd ki. A MINBINWIDTH értéke alapértelmezésben 10, a MAXNUMOFBINS értéke alapértelmezésben 50, de ezek a beállítások testreszabhatók a Window/Preferences menüpontja alatt elérhető "MCMC" oldalon.

Az algoritmus a következőképpen működik: 1. Felosztjuk a teljes LENGTH hosszú láncot szegmensekre: minden i=0-tól i<numofbins-ig vegyük a lánc i*binwidth-edik iterációtól induló az utolsó eleméig tartó LENGTH-i*BINWIDTH hosszú szegmensét és számoljuk ki rajta a Z-score-t. 2. Ábrázoljuk a kapott Z-score-t a grafikonon, ahol a vízszintes tengelyen a szegmensen belüli első mintához tartozó iteráció száma, a függőleges tengelyen maga a Z-score van feltüntetve. Gelman-Rubin diagnosztika A Gelman-Rubin diagnosztika több párhuzamosan futó lánc által szolgáltatott értékek alapján próbálja vizsgálni a konvergenciát. Alapja az az elgondolás, hogy ha a láncok konvergálnak, akkor egymáshoz nagyon hasonlóan kell hogy kinézzenek. Ha nem hasonlítanak, egy vagy több lánc esetén a konvergencia kudarcba fulladt. Az algoritmus a láncok közti variancia (B) és a láncon belüli variancia (W) vizsgálatán alapul. Legyen m darab n hosszú láncunk. Ekkor az említett mennyiségek a következőképpen számolhatók: A Gelman-Rubin statisztika a konvergencia értékelésére az ún. "Shrink factor" (hívják még "Scale reduction factornak" is) arányt használja, amely a következőképpen határozható meg:

A Shrink factort a grafikonon az szegmensen belüli utolsó mintához tartozó iteráció számának függvényében szeretnénk ábrázolni meghatározott pontokban. Legyen LENGTH a lánc teljes hossza, BINWIDTH az egymást követő grafikonon megjelenített pontok közti távolság, NUMOFBINS pedig a pontok száma. Legyen MINBINWIDTH a legkisebb távolság, amit a szóban forgó pontok között megengedünk, MAXNUMOFBINS pedig a pontok maximális száma. A teljes láncot úgy szeretnénk szegmensekre osztani, az első szegmens pontosan 50 mintát tartalmazzon. Ennek megfelelően a BINWIDTH-t határozzuk meg úgy hogy a 0 és az első pont között legyen pontosan 50, a többi egymást követő pont között pedig az 500 iterációjú vagy rövidebb láncok esetén legyen a MINBINWIDTH értéke hosszabb láncokra úgy kapjuk, hogy a láncot az első 50 minta számításba vétele nélkül egyenletesen MAXNUMOFBINS szakaszra osztjuk Az így meghatározott szakaszok végpontjai a szegmensek végpontját jelölik majd ki. Az implementált algoritmus lépései: 1. Felosztjuk a teljes LENGTH hosszú láncot szegmensekre: minden i=0-tól i<numofbins-ig vegyük a lánc elejétől induló az 50+i*BINWIDTH-dik eleméig tartó szegmensét és számoljuk ki rajta a Shrink factor-t. 2. Ábrázoljuk a kapott Shrink factort a grafikonon, ahol a vízszintes tengelyen a szegmensen belüli utolsó mintához tartozó iteráció száma, a függőleges tengelyen maga a Shrink factor van feltüntetve. Amennyiben a kapott értékek közel esnek az 1.0-ához és kb. 1.1 alatt vannak, biztonsággal állíthatjuk, hogy a láncaink konvergálnak, a mintáink az egyensúlyi eloszlásból származnak.