Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

padic-address-index

Tehnicka biljeska o hijerarhijskom suzavanju nad hrvatskim sudskim spisima. 332 retka, bez vanjskih ovisnosti, 47 testova.

1. Motivacija

Semanticki dohvat vraca dokumente koji zvuce slicno. Upit "sve revizije istog suda iz 2024." nije pitanje o znacenju nego o polozaju u hijerarhiji.

Gore od netocnosti je nestabilnost granice. Kad se skupina odredjuje pragom nad kontinuiranom mjerom, dokument na rubu jednom upadne a drugi put ne, ovisno o tome sto je jos u korpusu. Za pravnu pretragu, gdje odgovor mora biti isti svaki put, to nije prihvatljivo.

2. Definicija

Adresa dokumenta je uredjena petorka

a = (razina suda, oznaka suda, godina, upisnik, redni broj)

Poslovni broj St-3774/2021 pri trgovackom sudu daje (1, 13, 2021, 'St', 3774).

Za dvije adrese a, b neka je v(a, b) najveci indeks do kojeg se podudaraju po komponentama. Udaljenost je

d(a, b) = DEPTH - v(a, b),   DEPTH = 5

Nepostojeca komponenta prekida podudaranje i strogo je manja od svakog broja.

3. Svojstvo

Vrijedi jaca nejednakost od trokutne:

d(a, b) <= max(d(a, c), d(c, b))

Posljedica je da su sve kugle disjunktne ili ugnijezdene, nikad djelomicno preklopljene. Granica skupine je deterministicka: ne postoji dokument koji malo pripada dvjema granama.

Ekvivalentno i lakse za provjeru: od tri medjusobne udaljenosti, dvije najvece su jednake.

>>> a = PADICAddress(1, 13, 2021, 'St', 3774)
>>> b = PADICAddress(1, 13, 2021, 'St', 3775)   # susjedni spis
>>> c = PADICAddress(1, 13, 2020, 'St', 12)     # isti sud, druga godina
>>> vp_distance(a, b), vp_distance(a, c)
(4, 2)
>>> ultrametric_distance(a, b), ultrametric_distance(a, c), ultrametric_distance(b, c)
(1, 3, 3)

Svojstvo se ne provjerava primjerima nego kao invarijanta nad generiranim adresama; assert_ultrametric_triple pada ako adresna shema prestane biti ultrametricka.

4. Razgranicenje

Prema hijerarhijskom grupiranju. Ondje granica ovisi o izabranoj funkciji povezivanja; promjena s jedne na drugu daje druge skupine nad istim podacima. Ovdje nema izbora, jer je ultrametrika svojstvo podataka, a ne shema nametnuta poslije.

Prema navigacijskim grafovima nad vektorima. Ondje su slojevi aproksimacija brzog trazenja, a udaljenost ostaje Arhimedova, pa je djelomicno preklapanje normalno. Ovdje je razina prirodna kategorija.

5. Upotreba

Prvo kugla, pa semanticko rangiranje unutar nje. Adresni filtar radi bez modela i bez vektora:

addr = encode_doc(parsed_meta, case_number="St-3774/2021")
susjedi = query_ball(conn, addr, radius=2)      # isti sud, ista godina
grane  = cluster_hierarchy(conn, level=2)       # skupine po godini

6. Mjerenja

Provjereno 15. 8. 2026., Python 3.13.1:

git clone https://github.com/hm53-byte/padic-address-index && cd padic-address-index
pip install pytest && python -m pytest testovi -q     # 47 prolazi, 0,10 s

Pokrivenost je bila 29 posto, i uzrok nije bio ovdje. Naziv suda dolazio je iz izvlacenja i za 71 posto dokumenata bio je neupotrebljiv, pa adresa nije imala drugu komponentu. Popravak je bila normalizacija naziva na ulazu, sesnaest redaka izvan ove komponente. Pouka: pokrivenost se mjeri odvojeno od tocnosti, jer je komponenta cijelo vrijeme radila ispravno nad onim sto je dobivala.

Zbog istog uzroka modul nosi vlastito popravljanje pokvarenih dijakritickih znakova i podnosi naziv sa i bez prijedloga (Trgovacki sud Zagreb naspram Trgovacki sud u Zagrebu).

Nije izmjereno: dobitak na kvaliteti dohvata naspram cistog vektorskog pristupa. Cilj je bio postavljen prije izvedbe, usporedba s osnovicom nije napravljena, pa se ovdje ne navodi nikakav broj. Tvrdnja koja stoji je uza: adresni filtar je deterministican i jeftin.

7. Ogranicenje

Ne primjenjivati na korpus bez strukturne adresne sheme. Adresa mora doci iz metapodataka; izvucena iz slobodnog teksta, degenerira i daje laznu sigurnost.

Izvor popisa sudova namjerno je izvan modula: load_sudovi_cache trazi klijenta s metodom list_sudovi().


Apache-2.0, LICENSE.

About

Hijerarhijsko suzavanje nad hrvatskim sudskim spisima prije semantickog dohvata: ultrametricka adresa od pet clanova, deterministicka granica skupine. 332 retka bez ovisnosti, 47 testova.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages