Jurisprudentieonderzoek makkelijker maken doe je zó!

Bij Bluetick zijn we erg geïnteresseerd in de nieuwste data science methodes. Daarom neem ik je mee in de wondere wereld van wat er mogelijk is en waarom dit volgens ons belangrijk is voor een juridische zoekmachine. Voor een mens is het namelijk relatief eenvoudig om nuances uit tekst te halen, voor een computer is dit echter een stuk moeilijker. Het onderwerp van deze blog is het ontleden en classificeren van de hoofdstukken van een uitspraak.
Waar hebben we het over?
Bij Bluetick zijn we van mening dat huidige jurisprudentie zoekmachines verre van optimaal werken. Eén van de manieren waardoor de zoekmachine van Bluetick jurisprudentieonderzoek eenvoudiger maakt, is het tonen van uitspraken met vergelijkbare overwegingen. Dit maakt het mogelijk om resultaten te vinden die aansluiten bij de situatie in de casus van een advocaat, en niet alleen maar passen bij de exact ingetypte keywords. Daarnaast kan er een relevante passage van een uitspraak worden geselecteerd, om vervolgens passages met een vergelijkbare context te vinden. Dit is iets wat andere juridische zoekmachines niet kunnen.

Voordat we dit kunnen doen, moeten we echter begrijpen welke informatie waar in elke uitspraak staat en welke informatie het meest relevant is. Aan de hand van interviews hebben wij bepaald dat ‘Het geding’, ‘Feiten en omstandigheden’, ‘Rechterlijke overwegingen’ en de ‘Beoordeling van de rechter’ de belangrijkste hoofdstukken zijn. Het eerste doel is dus het vinden en segmenteren van deze hoofdstukken.
Hoe pakken we het aan?
In een ideale wereld zou jurisprudentie altijd dezelfde opbouw hebben, dezelfde hoofdstuktitels bevatten en goed gesegmenteerd zijn. Dit zou het makkelijk voor gebruikers maken om snel door uitspraken te zoeken en voor een computer om ze te ontleden. Echter leven we (gelukkig) niet in deze ideale wereld, dat zou het namelijk ook erg saai maken. In de echte wereld bestaan er enkele duizenden hoofdstuktitels in alleen al de Nederlandse jurisprudentie. Bijvoorbeeld:
‘Feiten’, ‘Feiten en omstandigheden’, ‘Vaststaande feiten’, ‘Feiten en procesverloop’, ‘De feiten’, ‘Feiten: overleg en correspondentie’, ‘Feiten 1,2 & 3’, ‘Nadere feiten ten aanzien van X’, ‘Overige feiten’, ‘FEITEN’, ‘Feiten en de procedure’, ‘Feiten en aanvraag van eiser’, ‘Feiten en de procesgang tot de verwijzing door de Hoge Raad’, ‘Feiten en de rechtsgang’, ‘Feiten en het procesverloop’, ‘Feiten en het verloop’, ‘Feiten in beide zaken’, ‘Feiten in conventie en in reconventie’, ‘Feiten, beschrijving van het letsel’, ‘feiten, het geschil en de beslissing in eerste aanleg’, ‘feiten, het procesverloop en de standpunten van partijen’, ’De procedure en de feiten’.
Een deel van deze hoofdstukken kunnen gemakkelijk genormaliseerd worden (een voorbeeld is dat ‘FEITEN’ en ‘De Feiten’ beiden herleid kunnen worden naar ‘Feiten’), echter lijken sommige hoofdstukken samengevoegd te zijn (bijvoorbeeld ‘Feiten en de procedure’). Dus we kunnen niet simpelweg alle hoofdstukken die ‘Feiten’ bevatten als een feiten hoofdstuk classificeren.
Om het probleem simpeler te maken is een logische andere stap de minder interessante hoofdstukken eruit te filteren. Deze zijn gelukkig wel vaak gescheiden van de rest van de tekst: ‘Introductie’ (zaaknummer, partijen etc.), ‘Beslissing’ (wél interessant om te classificeren), ‘Voetnoten’ en ‘Bijlagen’. Voor deze hoofdstukken hebben wij een trainings dataset gemaakt. Dat houdt in dat wij labels hebben gegeven aan de hoofdstukken waarvan we relatief zeker weten dat ze onder één van de minder interessante klasses vallen. Vervolgens hebben we deze informatie gebruikt om ook het overige deel van de data te classificeren. Dit extrapoleren van ‘geleerde’ informatie is iets wat computers heel goed en efficiënt kunnen.
Hoe goed werkt het momenteel
Het filteren van de minder interessante hoofdstukken gaat vrij eenvoudig en met een hoge nauwkeurigheid. Het is nu dus mogelijk om de inhoud van de zaak te scheiden van de minder belangrijke hoofdstukken. Dit zorgt al voor aanzienlijk minder ruis in de modellen (en dus betere zoekresultaten). Daarnaast kunnen we kernoverwegingen uit een uitspraak halen. Echter vinden we dat we er nog niet zijn. We zullen in de komende periode de uitspraken nog verder uit elkaar gaan splitsen, totdat we op feit- en argument niveau kunnen bepalen in hoeverre uitspraken overeenkomen en zich in dezelfde context bevinden. Op het moment dat we dit goed kunnen, dan gaan we met een significante volgende stap gaan beginnen: modelleren welke overwegingen doorslaggevend waren voor de uiteindelijke beslissing van de rechter.
Ik hoop dat deze blog een interessant kijkje achter de schermen van (juridische) zoekmachines biedt. Dit is een korte en eenvoudige uitleg over een behoorlijk complex onderwerp en ik ben dus genoodzaakt om (belangrijke) nuances weg te abstraheren. Mocht je meer willen weten over dit onderwerp, verder willen discussiëren of meer informatie willen hebben dan ben ik bereikbaar op thijs.kranenburg@bluetick.nl.
Wil je verder lezen? Lees dan de eerdere blogs: het groeperen van zoektermen, waarom data scientists domeinkennis nodig hebben, of het vinden van referenties.