Eventdetectie in vroegmoderne kronieken

Hoe beleven kroniekschrijvers de tijd waarin ze leven? Komt hun vorm van lokale geschiedschrijving overeen met de wijze waarop wij ons nationale gebeurtenissen herinneren? En kunnen kroniekschrijvers ons op vergeten momenten in de geschiedenis wijzen? Alie Lassche, PhD-kandidaat in het project Chronicling Novelty legt uit hoe ze tijdens haar onderzoeksverblijf aan het Center for Humanities Computing in Aarhus deze vragen probeert te beantwoorden, en welke rol de door vrijwilligers aangebrachte labels in het corpus daarin spelen.

Iedereen die wel eens een kroniek heeft gelezen, weet dat het een bron is waarin een breed palet aan informatie bij elkaar komt. Het ene moment praat een kroniekschrijver je bij over de prijzen van het graan op de markt, het volgende moment wordt de verschijning van een komeet beschreven, dan weer volgt er een wat droge samenvatting van de vergadering van de schepenen. Anderen vertrouwen hun zorgen omtrent een besmettelijke koeienziekte aan het papier toe, en weer een ander zorgt ervoor dat alle nieuwtjes en roddels aangaande het reilen, zeilen, rouwen en trouwen in diens stad of dorp vastgelegd worden. En dan zijn er nog de nationale ontwikkelingen: een oorlog met Spanje in de zestiende en zeventiende eeuw, het beleg van diverse steden door de Fransen eind achttiende eeuw – er gebeurt veel in de Nederlandse Republiek in een periode van 350 jaar.

Veel van die gebeurtenissen kennen we natuurlijk uit de nationale geschiedschrijving. Bovendien worden veel van die gebeurtenissen tegenwoordig nog herdacht. Zo is er momenteel volop aandacht voor 1572, dat als het geboortejaar van Nederland wordt gezien, en als een keerpunt in de Tachtigjarige Oorlog. We herinneren ons 1572 als een jaar waarin de strijd tussen Spanje en de Nederlandse Republiek in alle hevigheid woedt, maar, zo laten Judith Pollmann en Ramon Fagel al weten in de ondertitel van hun recent verschenen boek: er woedde vooral een burgeroorlog in de Nederlanden. In bijna elke stad heerst er spanning en onenigheid over welke partij er gekozen moest worden. Kortom: onze herinnering aan gebeurtenissen in het verleden komt lang niet altijd overeen met de daadwerkelijke ervaringen van de mensen die destijds leefden.

Een kroniek is daarom een unieke bron: het geeft een lokaal inkijkje in een periode die lang achter ons ligt. Een grote verzameling kronieken, zoals bij elkaar gebracht in het project Chronicling Novelty, is daarom een kostbare schat. We kunnen er tal van vragen mee beantwoorden, waaronder: in hoeverre komt de manier waarop we ons historische gebeurtenissen anno nu herinneren overeen met de manier waarop ze worden beschreven door kroniekschrijvers? En is het misschien mogelijk dat het lokale en persoonlijke perspectief van een kroniekschrijver ons op gebeurtenissen wijst die ietwat zijn ondergesneeuwd of misschien zelfs nooit opgenomen in de geschiedschrijving?

In mijn onderzoek gebruik ik computationele methoden om deze (en andere) vragen te beantwoorden. Momenteel doe ik dat niet aan de Universiteit Leiden, maar aan het Center for Humanities Computing in Aarhus, een charmante havenstad in Midden-Jutland, Denemarken. Samen met Jan Kostkan en Kristoffer Nielbo werk ik aan het detecteren van events in het kroniekencorpus. Van alle labels die door veel vrijwilligers in de laatste twee jaren zijn toegevoegd aan het corpus, is in dit onderzoek het datumlabel in het bijzonder relevant. Wanneer een kroniekschrijver een datum vermeldt – ‘de eerste der Hooijmaand’, ’16 Xbris’ of gewoon ’17 Februari’, is daar een label aan toegevoegd, waarin de genormaliseerde datum is opgenomen. Dat ziet er zo uit in de XMLs, de files waarmee wij werken:

Met behulp van computercode splitsen we kronieken op in kleinere fragmenten: elke keer als we een datumlabel tegenkomen, wordt er geknipt. Zo ontstaan er tal van kroniekfragmenten, die allemaal beginnen met een datum. Een event is in deze context een fragment dat gekoppeld kan worden aan een datum. Vervolgens groeperen we fragmenten van dezelfde datum bij elkaar. Voor elke datum krijgen we zo een verzameling events, geschreven op dezelfde dag, door verschillende kroniekschrijvers. In onderstaande grafiek zijn de events voor de leesbaarheid per decennium gegroepeerd en geteld. De lichte kleur zijn het aantal unieke events in dat decennium (één fragment voor een datum), de donkere kleur zijn het aantal niet-unieke events (meerdere fragmenten van dezelfde datum):

We kunnen nu bijvoorbeeld zien dat het corpus veel events bevat uit de beginjaren van de Tachtigjarige Oorlog, en dat daarnaast de jaren 1660 goed vertegenwoordigd zijn. Let op: voor het maken van deze grafiek is een gedeelte van het totale corpus gebruikt (ongeveer 80 kronieken), en zijn alleen de volledige datumlabels gebruikt (en dus niet een label waarin enkel het jaar en de maand is gespecificeerd, zoals in 1572-04-xx of 1743-xx-xx).

Natuurlijk zijn er tal van beperkingen die de vroegmoderne kronieken en deze methode met zich meebrengen. Zo zijn er bijvoorbeeld kroniekschrijvers die hun kroniek beginnen met de schepping van Adam in wat zij als jaar 0 beschouwen. Als je op die manier doorrekent, gebeurt er iets heel anders in het jaar 1572 dan verwacht. Daarnaast verwijst een kroniekschrijver soms terug naar een moment eerder in de geschiedenis, wat er voor kan zorgen dat het datumlabel 1572-04-01 wordt opgevolgd door 1566-03-05. We zijn voortdurend bezig met het definiëren van oplossingen voor zulke uitdagingen.

In een volgende stap kijken we naar de inhoud van de events, dus naar dat wat er beschreven wordt. Gaan alle fragmenten uit het jaar 1577 over de oorlog met Spanje, of zijn er auteurs die in deze periode over heel andere gebeurtenissen schrijven? Wordt de piek aan events in 1668 veroorzaakt door één belangrijke gebeurtenis, of is het in feite een opstapeling van totaal verschillende events, omdat de één een belegering door de Fransen beschrijft, een volgende de mislukte oogst, en een derde over de schepenvergaderingen rapporteert?

Om daar achter te komen, moeten we de fragmenten op zo’n manier representeren, dat we ze eenvoudig met elkaar kunnen vergelijken. Daarvoor gebruiken we een embedding model. In zo’n model wordt een woord of tekst uitgedrukt als een vector (dat is: een reeks getallen) in een multidimensionale ruimte. Woorden of teksten die semantisch gerelateerd zijn, worden dichtbij elkaar geplaatst. De Python-package Top2Vec is een manier om dit te doen, en het is een van de modellen waarmee we momenteel experimenteren. Top2Vec plot zowel de documentvectoren als de woordvectoren in dezelfde ruimte, en detecteert vervolgens gebieden waar veel documenten gegroepeerd zijn. Zo’n ‘dichtbevolkt’ gebied bestaat uit documenten die vergelijkbaar met elkaar zijn, evenals de woorden die het meest onderscheidend zijn voor die documenten. Die meest onderscheidende woorden worden beschouwd als een topic.

Het meest prominente topic in een van de eerste getrainde Top2Vec-modellen bestaat uit de volgende woorden:

Dit topic gaat duidelijk over het weer. Events die over het weer gaan, zullen zich in de multidimensionale ruimte dicht bij dit topic bevinden. We drukken dit uit in cosine similarity, een getal tussen de -1 en de +1. Een cosine similarity tussen een document en een topic nabij +1 betekent dat het document heel erg vergelijkbaar is met het topic, terwijl een waarde nabij -1 het omgekeerde betekent. Wanneer we vervolgens de gemiddelde cosine similarity (na scaling) van alle documenten ten opzichte van dit topic plotten, ziet dat er als volgt uit:

De lijn blijft de eerste tweehonderd jaar rond een y-waarde van 0 schommelen, wat betekent dat het weer een constant onderwerp is in de kronieken uit die tijd. Daarna zien we een opvallende stijging, die zou betekenen dat er vanaf 1650 aanzienlijk meer over het weer wordt geschreven. Het is zaak om geen overhaaste conclusies te trekken uit zo’n grafiek, maar ook te kijken naar de ontwikkeling van andere (vergelijkbare) topics, en naar de karakteristieken van het gebruikte corpus: zijn de kronieken van de laatste 150 jaar niet toevallig voornamelijk geschreven door boeren, voor wie het weer een belangrijke rol speelt in hun dagelijks leven en inkomen? Ook dat is iets waar we in de komende tijd verdere aandacht aan zullen besteden.

Wat ik hierboven heb beschreven, is natuurlijk nog lang geen afgerond onderzoek. Deze eerste onderzoeksresultaten zijn slechts heel kleine stukjes van een puzzel die nog grotendeels gelegd moet worden. De gestelde onderzoeksvragen zijn nog niet beantwoord – in plaats daarvan zijn er misschien juist nog meer vragen bij gekomen. Het wil echter wel laten zien dat de systematische manier waarop we hier in Aarhus deze bronnen van informatie bestuderen heel spannende resultaten kan opleveren. Daarnaast laat het zien hoe belangrijk het werk van vrijwilligers is, die nog steeds dagelijks aan het transcriberen, annoteren en corrigeren zijn. Samen krijgen we zo steeds meer inzicht in de gebeurtenissen en onderwerpen die van belang waren voor de vroegmoderne middenklasse in de Nederlandse Republiek.

Alie Lassche (@AWLassche)

Ruim 34.000 scans: ons kroniekencorpus is compleet! (Maar we hebben nog steeds hulp nodig)

Terwijl iedereen zich steeds meer terugtrekt in zijn of haar thuiskantoor en de uren aan elkaar Zoomt, timmeren wij als team ‘Chronicling Novelty’ een flinke metaforische mijlpaal de bodem in. Sinds we in september 2018 begonnen met het verzamelen en scannen van allerlei kronieken uit diverse archieven in Nederland en België, is er een heleboel gebeurd. Zoveel, dat we nu kunnen zeggen: ons corpus is compleet! Graag vertellen we daar wat meer over. Daarnaast geven we een update over de volgende stappen die we gaan zetten, en hoe we uw en jouw hulp daarbij goed kunnen gebruiken.

Over het corpus

Ons corpus bevat 308 kronieken, en dat is inclusief de afzonderlijke delen die sommige auteurs hebben geproduceerd. De totale kroniekenlijst is hier te vinden, geordend per provincie. In totaal zijn 239 verschillende auteurs verantwoordelijk voor deze manuscripten, en daarvan zijn 52 auteurs anoniem. Dat betekent dat we van 256 kronieken weten door wie ze geschreven zijn. In sommige gevallen is dat enkel een naam, maar in veel gevallen weten we ook het geboorte- en sterfjaar van de auteur, en wat zijn of haar professie en religie was. Op onderstaande afbeelding is de geografische spreiding van het corpus in kaart gebracht.

Geografische spreiding van het corpus.

Niet al die 308 kronieken hoeven overigens getranscribeerd te worden op VeleHanden. Van 87 kronieken hebben we de transcriptie via een andere weg verkregen, en heeft de DBNL digitale bestanden gemaakt van die bestaande transcripties en eerdere edities. Wat betreft de kronieken die wel getranscribeerd moeten worden: meer dan 200 vrijwilligers werken daar gestaag aan door. Daarbij helpt de computer hen overigens wel: als we zo’n 30 getranscribeerde pagina’s van een kroniek hebben, trainen we daarmee in de software Transkribus een model. Transkribus is een computerprogramma dat werkt met Handwritten Text Recognition (HTR). Met andere woorden: het programma is in staat om te leren hoe het handschrift van een kroniekschrijver eruit ziet, en kan vervolgens zelf de rest van de pagina’s transcriberen.

Op deze manier neemt Transkribus veel werk van de vrijwilligers uit handen: als het programma al een pagina heeft getranscribeerd, hoeft een vrijwilliger niet zelf meer te puzzelen op een handschrift, maar enkel te controleren of de transcriptie die de computer gemaakt heeft, ook klopt. Inmiddels zijn er bijna 10.000 scans door de vrijwilligers getranscribeerd (of door de computer getranscribeerd en door de vrijwilligers gecontroleerd). Dat is een indrukwekkend aantal, maar we zijn er voorlopig nog niet: in totaal moeten er meer dan 34.000 scans getranscribeerd en gecontroleerd worden. Een dezer dagen komt de allerlaatste batch met kronieken, die zo’n 17.000 nieuwe scans bevat, online in het project.

Om die nieuwe hoeveelheid scans getranscribeerd te krijgen, is elke extra paar helpende handen enorm welkom. We willen proberen om elke dag 100 scans te transcriberen. Helpt u mee om die target te halen? Meld u hier aan voor ons project!

En ook als alles getranscribeerd is, dan hebben we nog steeds de hulp van enthousiaste vrijwilligers nodig, namelijk in deel twee van het project ‘Nieuws! Lokale kronieken, 1500-1850’.

Nieuws 2.0! Lokale kronieken, 1500-1850

In dit tweede VeleHanden-project gaan we de eerder getranscribeerde kronieken annoteren. Dat houdt in dat we belangrijke informatie in de tekst van een label voorzien, zodat we die informatie later systematisch kunnen ordenen en onderzoeken. Informatie die wij van een label willen voorzien zijn bijvoorbeeld vermeldingen van een datum, een persoonsnaam of een locatie. Ook willen we graag dat een afbeelding of tabel als zodanig gelabeld wordt, zodat we deze uiteindelijk eenvoudig terug kunnen vinden. Dit alles maakt het mogelijk om de teksten nog beter doorzoekbaar te maken, voor ons, en later ook voor anderen, want het is de bedoeling dat alle teksten en annotaties op termijn voor het publiek beschikbaar komen.

Bent u nieuwsgierig geworden? Over enkele weken, als er gaandeweg meer kronieken beschikbaar zullen komen in dit project, kunnen we uw hulp ook hier erg goed gebruiken! Hier vindt u de projectpagina. Daar kunt u ook de instructies inzien voor ons project. Weet u misschien andere mensen die het ook leuk zouden vinden om ons hiermee te helpen? Verwijs hen vooral door naar onze twee projecten!

Geen mondkapjes maar een processie met ‘reliquien’: virusbestrijding in 1057

Ook al kregen in vroegere eeuwen virussen nog geen klinkende namen zoals COVID-19 en waren er geen instituten die de officiële berichtgeving rondom de ontwikkelingen verzorgden: besmettelijke ziekten waren de mensen niet vreemd. Met enige regelmaat stak een virus de kop op en maakte een groot aantal slachtoffers onder de bevolking van een stad of dorp. Zo ook in het Gent van 1057, ontdekte Cor Kooter, een van onze hardwerkende vrijwilligers op Vele Handen. Justus Billet, schrijver van twee kronieken met in totaal maar liefst 17 delen, blikt in zijn zeventiende-eeuwse kroniek terug op een pest die in 1057 zijn stad trof:

“Inden selven Jaere 1057 soo was tot Ghendt een soo groote peste, alsmen oeijt van te voren in Vlaenderen hadde ghesien, want daer stierven daghelicx ontrent de 600 menschen.”

Justus Billet, Den polytye boeck,  beginnende den 22sten augusto in tjaer ons heeren 1658 (1658-1668), deel 7.

In de bestrijding van het virus ging men in sommige opzichten net zo te werk als nu: aan mondkapjes deed men niet, maar zieken werden wel geïsoleerd en de kleren van de doden verbrand. Maar ook en vooral zond men ‘vierighe ghebeden tot Godt ende sijn lieve moeder Maria’. En terwijl momenteel vanwege het coronavirus allerlei optochten en parades worden afgeschaft, werd in 1057 juist de processie gebruikt als middel tegen de pest, en volgens Billet ook niet zonder resultaat:

“door d’intercessie van den Heiligen Machaires, wiens h. lichaem ofte Reliquien wierden alsdan in processie omme ghedreghen, waermede dese vehemente sieckte cesseerde, ende corts daernaer nam t’eenemael af soo dat dese vehemente peste veel volck wechsleepte in den corten tijt dat de selve deurde.”

Justus Billet, Den polytye boeck,  beginnende den 22sten augusto in tjaer ons heeren 1658 (1658-1668), deel 7.

De botten die tijdens deze processie door de stad werden rondgedragen en waardoor de ziekte blijkbaar op z’n retour raakte, waren van de heilige Macharius. Het verhaal gaat dat hij afkomstig was uit Armenië, en in het jaar 1012 in Gent overleed. Sint Macharius werd als patroonheilige aangeroepen tegen besmettelijke ziektes bij de mens. Mocht u binnenkort toch het gerestaureerde Lam Gods gaan bekijken, dan doet u er misschien goed aan om ook meteen een kaarsje te ontsteken bij het altaar van deze ‘huisheilige’ van de Sint-Baafskathedraal, waar nog steeds een kapel aan hem gewijd is.

Gaspar De Crayer, Heilige Macharius, patroon van de pestlijders; inv: 466.

Ons corpus is bijna compleet!

Voortgang op Vele Handen

Twee maanden geleden lieten we weten dat er toen zo’n 1500 scans waren getranscribeerd in ons project op Vele Handen door ruim 100 vrijwilligers. Er is flink wat gebeurd in de tussentijd. Inmiddels werken er zo’n 180 vrijwilligers mee aan het Vele Handen project, waarvan enkelen in hun eentje al de magische grens van 1000 getranscribeerde of gecontroleerde scans hebben gepasseerd. In totaal zijn er momenteel zo’n 5200 scans getranscribeerd. Om 4 uur ’s middags zijn de vrijwilligers het meest actief, maar eigenlijk wordt op bijna elk uur van de dag wel iets getranscribeerd: zelfs in het holst van de nacht wordt er ijverig doorgetikt. Wij zijn enorm blij met deze enthousiaste groep mensen die belangrijk en goed werk verrichten!

In de tussentijd hebben we de lijst te transcriberen kronieken nog uitgebreid: Vlaanderen is inmiddels goed vertegenwoordigd, en de afgelopen weken hebben we in Tilburg nog diverse Brabantse kronieken gescand die aan ons corpus zullen worden toegevoegd. In januari komen weer 40 kronieken op Vele Handen beschikbaar om te worden getranscribeerd. We hopen dus dat iedereen ook in 2020 zal blijven helpen om deze klus te klaren!

Alie en Theo deze week in de UB in Tilburg

Kroniekenlijst online

Hoewel er ongetwijfeld nog talloze onontdekte handschriften in de archieven sluimeren, moeten wij nu onze zoektocht zo langzamerhand beëindigen. Momenteel staat de teller op 262 kronieken, afkomstig uit alle Nederlandse en Nederlandstalige Belgische provincies. Enkele provincies zijn nog wat schamel vertegenwoordigd, maar bezoekjes aan Hasselt en Brussel liggen nog in het verschiet. Op deze pagina is de lijst te vinden, waarin we de kronieken hebben gerangschikt per provincie.

onderzoeksupdate

Het onderzoek zelf staat ook niet stil. Promovendi Theo de Jong en Alie Lassche zijn druk bezig met het uitvoeren van een eerste onderzoek naar een aantal kronieken. Taalkundige Roser Morante is samen met Alie bezig met het vinden van een goede methode voor het normaliseren van de spelling van de kroniekteksten. Dit is nodig als we ook computationele methoden willen toepassen in het analyseren van de teksten. Over de onderzoeksprojecten van Roser, Theo en Alie is hier meer informatie beschikbaar. Ook hebben diverse leden van ons projectteam her en der presentaties gegeven over ons onderzoek of staat dit te gebeuren. Een overzicht van alle output is hier te vinden.

In het nieuwe jaar krijgen wij versterking van student-assistenten en stagiairs van zowel de VU als de Universiteit Leiden. Connie Jürgens en Kirsten Ouwejan, twee tweedejaars studenten, doen op de VU onderzoek naar de sociale achtergrond van de kroniekschrijvers. Zij werken ook aan een kaart waarop we het corpus in beeld kunnen brengen. Een drietal andere studenten gaan een paar uur in de week helpen met het klaarmaken van de scans voor transcriptie. Twee Leidse studenten geschiedenis en taalkunde zullen in het kader van het Humanities Research Traineeship Programme 2020 een interdisciplinair onderzoek uitvoeren naar de bronnen van informatie van kroniekschrijvers. Waar haalden ze hun kennis vandaan? En welke autoriteit werd aan die bronnen toegekend? We zien uit naar deze samenwerking en zijn benieuwd naar de resultaten van zowel ons als hun onderzoek. We houden jullie graag op de hoogte!

Fake News in 1714

Ook onze kroniekschrijvers hadden het druk met nepnieuws. Kroniekschrijver Lambert Lustigh uit Huizen noteerde dat er ‘botte leugens’ rondgingen over de veepest: 

‘In de Amsterdamse Courant van den 11 Sebtemb: 1714, en daarin uijt Basel van den 2 Sebtemb: 1714 daar in wort een Leugenagtigh zaak van de oirspronck der besmettinge van het runt vee beschreven, namentlijck, dat in het Hertoegdom van Milaan, door booswigten eenige vergiftige pilletjes in ’t weijvelt souden wesen gestroijt, en als een koebeest daar maar een van in ’t Lijf krijgt het selve vergift soo kragtigh is, dat alle de beesten daar door vergiftigt worden ende souden die pilletje Ligt groen met swart vermengt sijn dogh Ik soude dit wel breder schrijven, maar de onwaarheijt van dese botte Luegen die is soo groot dat hij ’t mij niet waart is, daar meer van te schrijven.’

Wie wil weten hoe het wel zat kan terecht in zijn kroniek, die sinds kort te vinden is op DBNL

https://www.dbnl.org/tekst/lust016lamb01_01/index.php

Wat is er veel gebeurd sinds we eind juli live gingen met het project op Vele Handen! Meer dan 100 mensen hebben zich aangemeld, en er zijn al meer dan 1500 scans getranscribeerd, vooral door een geweldige ‘harde kern’ van mensen die met heel veel enthousiasme en energie aan de gang zijn gegaan. Wij waren niet alleen verrast door de hoge gemiddelde kwaliteit van de transcripties, maar ook door de enorme behulpzaamheid, ook onderling. Jullie hebben ons enorm geholpen bij het oplossen van de eerste ronde kinderziektes. We hopen binnenkort 7000 nieuws scans te uploaden; daar zitten voor het eerst ook scans uit Vlaanderen bij. Eind oktober zullen we in Gent een workshop houden voor Vlaamse belangstellenden en vrijwilligers die zin hebben om mee te gaan doen.

Wat gebeurde er verder de afgelopen maand? In Leeuwarden, Groningen en Mechelen selecteerden we nog een aantal heel mooie teksten. In Leiden hadden we onze eerste bijeenkomst voor zo’n 20 vrijwilligers en belangstellenden, met demonstratie van de scantent, en de mogelijkheid om even zelf de historische sensatie te ondergaan van contact met een echte kroniek. Veel dank aan de UB Leiden, die dit allemaal mogelijk maakte.

And last but not least. Sinds 1 september werken Theo de Jong en Alie Lassche als promovendi in ons project. Vorige week hadden we voor het eerst teamoverleg met postdoc en computerlinguïst dr. Roser Morante aan de VU.  Alie en Theo zijn meteen aan de slag gegaan, met scannen, segmenteren, controleren, en natuurlijk met nadenken over de inhoud van al die prachtige teksten. We zijn enorm blij met hun aanwezigheid.