SlideShare a Scribd company logo
1 of 48
Grote hoeveelheden tekst
analyseren als data
Max Kemman
VOGIN-IP-lezing 11 mei 2022
Achtergrond
• Promotieonderzoek digitale methoden voor historisch onderzoek
– Hoofdstuk met analyse van 10k blog posts van 73 historici over 10 jaar
– Docent inleiding digitale geschiedenis
• Onderzoeker Dialogic
– O.a. projecten waarin grote collecties wetenschappelijke abstracts
worden geclassificeerd
Van op naar in bronmateriaal zoeken
• Meestal wordt vooral gewerkt met metadata: de beschrijvende
gegevens over bronmateriaal
– Titels, auteurs, publicatie jaren, etc.
• Maar dat heeft beperkingen:
– De variatie van woorden in een bron is veel groter dan in de metadata
– Soms wil je niet een document vinden maar een antwoord
Van metadata naar data
• Zoeken in documenten
• Overzichten maken van teksten
– Hands-on
• Concepten identificeren in teksten
– Hands-on
• Natural language processing
• Collecties van teksten maken
Zoeken in grote collecties van documenten
• Wanneer je zoekt op Google of Google Scholar dan doorzoek je heel
grote collecties van documenten
• Hiervoor gebruikt Google een index en een ranking
Index
Index: alfabetische lijst van termen en op welke pagina’s deze dan
staan
– Net als achterin een boek
Rechts: index van On the Origin of Species
Ranking naar relevantie
Ranking: bij duizend resultaten bepalen van volgorde van relevantie
– Overlap met ingevoerde zoektermen
– Term frequency * inverse document frequency
Ranking naar relevantie
Ranking: bij duizend resultaten bepalen van volgorde van relevantie
– Overlap met ingevoerde zoektermen
– Term frequency * inverse document frequency
Document
A A A A
B B C B
A C D A
Ranking naar relevantie
Ranking: bij duizend resultaten bepalen van volgorde van relevantie
– Overlap met ingevoerde zoektermen
– Term frequency * inverse document frequency
Document
A A A A
B B C B
A C D A
Collectie van documenten
A A A A
A A A A
A A A A
B A A A
C A A A
Ranking naar relevantie
Ranking: bij duizend resultaten bepalen van volgorde van relevantie
– Overlap met ingevoerde zoektermen
– Term frequency * inverse document frequency
– Autoriteit van pagina (bijv. PageRank)
– Contextuele informatie
Zoeken in grote collecties van documenten
• Voorbeelden waarin dit kan
– Google
– Google Books
– Delpher
Zoeken met voorbeelden
• Hoeft niet te zoeken met enkele woorden maar met meerdere
woorden
• Of zoeken met voorbeeldtekst
https://app.dimensions.ai/discover/publication
Klik op zoekbalk > Abstract search (inmiddels betaalde feature)
Overzichten maken van teksten
• Bij vervormen van teksten naar index kan je ook de index zelf als
bron gebruiken
• Overzichten van hoe woorden gebruikt worden:
– Keywords in context (KWIC)
– Word clouds
– Trends
Keywords in Context
voorgaande termen - zoekterm - opvolgende termen
• Geeft inzicht in hoe woorden
gebruikt worden
https://voyant-tools.org/?view=Contexts
Word clouds
Visuele weergave van frequentie van
woorden
• Frequentie → grootte
• Locatie van woord heeft geen betekenis
• Moeilijkheid is bepalen welke woorden
interessant zijn
https://voyant-tools.org/?view=Cirrus
Trends
Visuele weergave van frequentie van een of meer woorden over de
tijd
• sad*
https://voyant-tools.org/?view=Trends
Trends: n-grams
Google Ngram Viewer
• n-gram (n=aantal woorden, bijv. 2)
• Y-as: bij opgegeven 2-gram, hoeveel procent vormt dit van alle 2-
grams
https://books.google.com/ngrams/
Trends: n-grams
Google Ngram Viewer
Trends: n-grams
Google Ngram Viewer geavanceerd zoeken:
• Wildcards: * (in plaats van een woord)
• Inflection :book/booked/booking → book_INF
• Case insensitive: book of BOOK als 1 of 2 woorden)
• Part-of-speech tags: tackle_VERB of tackle_NOUN
• Combining n-grams: + - / *
https://books.google.com/ngrams/info
Trends: n-grams
Opletten met veranderend taalgebruik
• Woord ≠ concept
Hands-on
Hands-on: aan de slag met Voyant Tools
https://voyant-tools.org/
Alternatief: https://voyant.lincsproject.ca/
Documentatie: https://voyant.lincsproject.ca/docs/#!/guide/tools
Hands-on
Hands-on: aan de slag met Voyant Tools
Lokaal installeren van Voyant Tools
Github: https://github.com/voyanttools/VoyantServer
ZIP uitpakken en JAR file opstarten
Java: https://www.java.com/nl/download/
Van zoeken naar ‘mining’
Keyword search heeft twee belangrijke nadelen:
1. Te veel resultaten (en vertrouw je de ranking?)
2. Mismatch tussen zoekterm en document (boeken over WW1 van
voor 1940)
Van zoeken naar ‘mining’
We willen twee typen oplossingen:
1. Te veel resultaten (en vertrouw je de ranking?)
Analyse van teksten als data, ook wel distant reading
1. Mismatch tussen zoekterm en document (boeken over WW1 van
voor 1940)
Zoeken op concepten i.p.v. woorden
Distant reading
Term bedacht door literatuurwetenschapper Franco Moretti
“[Y]ou invest so much in individual texts only if you think that very few of them
really matter”
“At bottom, it’s a theological exercise—very solemn treatment of very few texts
taken very seriously—whereas what we really need is a little pact with the devil:
we know how to read texts, now let’s learn how not to read them. Distant
reading: where distance, let me repeat it, is a condition of knowledge: it allows
you to focus on units that are much smaller or much larger than the text”
Distant reading
• Geen eenduidige methode maar een fundamentele aanpassing:
niet zoeken naar individuele documenten, maar het geheel van
documenten analyseren op trends en patronen
• Daarbij mogelijkheid om te verdiepen van tekst naar concepten
Concepten identificeren in teksten
• Kunnen we van woorden naar concepten?
• Hoe identificeer je nieuwsartikelen over voetbal waar het woord
“voetbal” niet in voorkomt?
– stadion ronaldo goal keeper fc utrecht
– fiets tour de france pogacar
Concepten identificeren in teksten
Topic modelling
• Aanname: twee documenten met dezelfde topics hebben overlap
in woorden
• Welke woorden komen vaker samen voor?
– Woorden hoeven niet altijd samen voor te komen
– Woorden kunnen in meerdere topics voorkomen
Concepten identificeren in teksten
Topic modelling = bepalen van latente topics aan de hand van de
woorden in documenten:
• Een document bevat een combinatie van topics
• Een topic bestaat uit een combinatie van woorden
Concepten identificeren in teksten
Blei, D. M. (2012). Probabilistic topic models. Communications of the ACM, 55(4), 77-84.
Concepten identificeren in teksten
Topic modelling = bepalen van latente topics aan de hand van de
woorden in documenten:
• Een document bevat een combinatie van topics
• Een topic bestaat uit een combinatie van woorden
Statistische bepaling van welke combinatie goede weergave geeft
• Iteraties: aantal keer dat het algoritme over de gehele collectie gaat
Concepten identificeren in teksten
Topic modelling aannames
• Volgorde van woorden maakt niet uit (bag of words)
• Volgorde van documenten maakt niet uit (maar kan je achteraf wel
gebruiken voor trends)
• Je moet zelf aangeven hoeveel topics je wil hebben
• Werkt beste als documenten bestaan uit maximaal paar honderd
woorden (blog posts, nieuwsberichten, abstracts, paragrafen)
Concepten identificeren in teksten
Topic model output
• Uit welke woorden bestaat elk topic
• Per document hoeveel % beslaat elk topic
Concepten identificeren in teksten
Topic modelling heeft een wat hoger leercurve
• https://mimno.infosci.cornell.edu/jsLDA/index.html
• https://programminghistorian.org/en/lessons/topic-modeling-and-
mallet
• https://senderle.github.io/topic-modeling-
tool/documentation/2017/01/06/quickstart.html
Hands-on
Hands-on: draai zelf een topic model van je eigen casus of van de
corpora aangeboden door Voyant
https://voyant-tools.org/?view=Topics
https://voyant.lincsproject.ca/?view=Topics
Entiteiten identificeren in teksten
Sommige concepten worden wél genoemd, maar bestaan uit
meerdere woorden
• Named Entity Recognition (NER)
Het herkennen van objecten met een naam
• Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties
• Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
Entiteiten identificeren in teksten
Sommige concepten worden wél genoemd, maar bestaan uit
meerdere woorden
• Named Entity Recognition (NER)
Het herkennen van objecten met een naam
• Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties
• Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
Entiteiten identificeren in teksten
Toepassingen:
– Kaart van alle genoemde locaties
Entiteiten identificeren in teksten
Toepassingen:
– Kaart van alle genoemde locaties
– Netwerk van personen die samen
genoemd worden
– Tellen van personen die genoemd
worden
https://histograph.cvce.eu/
Entiteiten identificeren in teksten
Sommige concepten worden wél genoemd, maar bestaan uit
meerdere woorden
• Named Entity Recognition (NER)
Het herkennen van objecten met een naam
• Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties
• Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
Natural language processing
• NLP is een interdisciplinair onderzoeksveld op het snijvlak van
taalkunde en informatica met sterke links naar kunstmatige
intelligentie
• Doel is om computers om te leren gaan met natuurlijke taal
• Chatbots, Google Translate, Apple Siri, Google BERT
(tekstclassificatie), Spamfilter
• Soms lastig: primair gericht op Engels
Natural language processing
• Teksten automatisch samenvatten
– Resoomer https://resoomer.com/nl/
– SciTLDR https://scitldr.apps.allenai.org/
• Maar je kan ook teksten genereren
– GPT-2 demo https://bellard.org/textsynth/
Normaliseren van tekst
Hoe moeten woorden geteld worden? Daarvoor wil je soms
normaliseren (ook wel pre-processing)
• Lowercase: “digitaliseren” en “Digitaliseren” zijn hetzelfde
• Tokenize: “digitaliseren” en “digitaliseren!!” zijn hetzelfde
• Stopwoorden: in “de digitalisering” is “de” niet interessant
Normaliseren van tekst
Hoe moeten woorden geteld worden? Daarvoor wil je soms
normaliseren (ook wel pre-processing)
• Lemmatiseren vs stemming
Woord Stam Lemma
gelopen gelop lopen
digitalisering digitaliser digitaliseren
gewezen gewez zijn
Normaliseren van tekst
Hoe moeten woorden geteld worden? Daarvoor wil je soms
normaliseren (ook wel pre-processing)
• Lemmatiseren vs stemming
Analyseren van tekst
Part-of-speech (POS) tags
• Identificeren zelfstandig naamwoorden, werkwoorden etc.
NLP tools
• Stanza http://stanza.run/
• LeTs Demo https://www.lt3.ugent.be/lets-demo/
• CLARIN tools https://www.clarin.eu/resource-families
• TAPoR directory tools voor text analyse http://tapor.ca/
Opdracht: plak een tekst (wikipedia of uit je eigen casus) in Stanza
Collectie van teksten aanmaken
• Websites scrapen https://webscraper.io/
• Nexis Uni (krantenartikelen, toegang vereist)
• Gale Digital Scholar Lab (veel gedigitaliseerde content en analyse
tools, toegang vereist)
• Delpher https://delpher.nl/data
Copyright zit vaak in de weg
• Wikipedia daarom ook een dankbare bron

More Related Content

Similar to Grote hoeveelheden tekst analyseren als data

Named entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenNamed entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenSmals
 
Pres idbb hoofdstuk9
Pres idbb hoofdstuk9Pres idbb hoofdstuk9
Pres idbb hoofdstuk9CVO_De_Nobel
 
Hoe maak ik een goede bibliografie - Inleiding
Hoe maak ik een goede bibliografie - InleidingHoe maak ik een goede bibliografie - Inleiding
Hoe maak ik een goede bibliografie - Inleidingagoralc
 
Hoe maak ik een bibliografie met EndNote Basic of Mendeley
Hoe maak ik een bibliografie met EndNote Basic of MendeleyHoe maak ik een bibliografie met EndNote Basic of Mendeley
Hoe maak ik een bibliografie met EndNote Basic of MendeleyJens De Groot
 
Workshop Informatie vindbaar met metadata en taxonomieën
Workshop Informatie vindbaar met metadata en taxonomieënWorkshop Informatie vindbaar met metadata en taxonomieën
Workshop Informatie vindbaar met metadata en taxonomieënJoyce van Aalten
 
Zoekmachinemarketing
Zoekmachinemarketing Zoekmachinemarketing
Zoekmachinemarketing voginip
 
Linked Open Netwerken
Linked Open NetwerkenLinked Open Netwerken
Linked Open NetwerkenEnno Meijers
 
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.be
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.beInhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.be
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.beRosemie Callewaert
 
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)GO opleidingen
 
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.Eric Sieverts
 
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...Eric Sieverts
 
20120829 Presentatie over Semantic Search
20120829 Presentatie over Semantic Search20120829 Presentatie over Semantic Search
20120829 Presentatie over Semantic Searchhannah_ff
 
01 literatuuronderzoek
01 literatuuronderzoek01 literatuuronderzoek
01 literatuuronderzoekeeminor
 
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...Joyce van Aalten
 
Escape presentatie 450 sab
Escape presentatie 450 sabEscape presentatie 450 sab
Escape presentatie 450 sabSABSB
 

Similar to Grote hoeveelheden tekst analyseren als data (20)

Named entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doenNamed entity recognition hoe werkt het wat kunnen we er mee doen
Named entity recognition hoe werkt het wat kunnen we er mee doen
 
Pres idbb hoofdstuk9
Pres idbb hoofdstuk9Pres idbb hoofdstuk9
Pres idbb hoofdstuk9
 
Hoe maak ik een goede bibliografie - Inleiding
Hoe maak ik een goede bibliografie - InleidingHoe maak ik een goede bibliografie - Inleiding
Hoe maak ik een goede bibliografie - Inleiding
 
VOSviewer
VOSviewerVOSviewer
VOSviewer
 
Segbroek2014
Segbroek2014Segbroek2014
Segbroek2014
 
Hoe maak ik een bibliografie met EndNote Basic of Mendeley
Hoe maak ik een bibliografie met EndNote Basic of MendeleyHoe maak ik een bibliografie met EndNote Basic of Mendeley
Hoe maak ik een bibliografie met EndNote Basic of Mendeley
 
Workshop Informatie vindbaar met metadata en taxonomieën
Workshop Informatie vindbaar met metadata en taxonomieënWorkshop Informatie vindbaar met metadata en taxonomieën
Workshop Informatie vindbaar met metadata en taxonomieën
 
Zoekmachinemarketing
Zoekmachinemarketing Zoekmachinemarketing
Zoekmachinemarketing
 
Linked Open Netwerken
Linked Open NetwerkenLinked Open Netwerken
Linked Open Netwerken
 
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.be
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.beInhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.be
Inhoudelijke ontsluiting in het perspectie van zoeken.bibiotheek.be
 
Introductie Modelleren
Introductie ModellerenIntroductie Modelleren
Introductie Modelleren
 
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)
Presentatie Inleiding en ontwerpen voor het semantische web (Leo Meerman)
 
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.
Semantisch zoeken - over knowledge graph, semantisch web, rdf enz.
 
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...
Semantisch Zoeken - knowledge graph, semantisch web, linked data, rdf, ontolo...
 
MKB Masterclass Searching
MKB Masterclass SearchingMKB Masterclass Searching
MKB Masterclass Searching
 
20120829 Presentatie over Semantic Search
20120829 Presentatie over Semantic Search20120829 Presentatie over Semantic Search
20120829 Presentatie over Semantic Search
 
Literatuuronderzoek
LiteratuuronderzoekLiteratuuronderzoek
Literatuuronderzoek
 
01 literatuuronderzoek
01 literatuuronderzoek01 literatuuronderzoek
01 literatuuronderzoek
 
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...
Informatie vindbaar met metadata en taxonomieën vogin ip workshop 2017 joyce...
 
Escape presentatie 450 sab
Escape presentatie 450 sabEscape presentatie 450 sab
Escape presentatie 450 sab
 

More from voginip

Zo wordt je factchecker - Aafko Boonstra
Zo wordt je factchecker - Aafko BoonstraZo wordt je factchecker - Aafko Boonstra
Zo wordt je factchecker - Aafko Boonstravoginip
 
Automatisch metadateren - de kansen en de uitdagingen
Automatisch metadateren - de kansen en de uitdagingenAutomatisch metadateren - de kansen en de uitdagingen
Automatisch metadateren - de kansen en de uitdagingenvoginip
 
Hybride Intelligentie: de rol van Large Language Models in informatieverwerking
Hybride Intelligentie: de rol van Large Language Models in informatieverwerkingHybride Intelligentie: de rol van Large Language Models in informatieverwerking
Hybride Intelligentie: de rol van Large Language Models in informatieverwerkingvoginip
 
Solving World War II Photo Mysteries with Open Source Techniques
Solving World War II Photo Mysteries with Open Source TechniquesSolving World War II Photo Mysteries with Open Source Techniques
Solving World War II Photo Mysteries with Open Source Techniquesvoginip
 
PiCo: Historische personen beter vindbaar maken
PiCo: Historische personen beter vindbaar makenPiCo: Historische personen beter vindbaar maken
PiCo: Historische personen beter vindbaar makenvoginip
 
Red het internet! Op weg naar de online publieke ruimte
Red het internet! Op weg naar de online publieke ruimteRed het internet! Op weg naar de online publieke ruimte
Red het internet! Op weg naar de online publieke ruimtevoginip
 
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)voginip
 
ASML's Taxonomy Adventure by Daniel Canter
ASML's Taxonomy Adventure by Daniel CanterASML's Taxonomy Adventure by Daniel Canter
ASML's Taxonomy Adventure by Daniel Cantervoginip
 
The Dark Side of Science: Misconduct in Biomedical Research
The Dark Side of Science: Misconduct in Biomedical ResearchThe Dark Side of Science: Misconduct in Biomedical Research
The Dark Side of Science: Misconduct in Biomedical Researchvoginip
 
Oude boeken, nieuwe vaardigheden en Wikipedia
Oude boeken, nieuwe vaardigheden en WikipediaOude boeken, nieuwe vaardigheden en Wikipedia
Oude boeken, nieuwe vaardigheden en Wikipediavoginip
 
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...voginip
 
Open yet everywhere in chains: Where next for open knowledge?
Open yet everywhere in chains: Where next for open knowledge?Open yet everywhere in chains: Where next for open knowledge?
Open yet everywhere in chains: Where next for open knowledge?voginip
 
The three layers of a knowledge graph and what it means for authoring, storag...
The three layers of a knowledge graph and what it means for authoring, storag...The three layers of a knowledge graph and what it means for authoring, storag...
The three layers of a knowledge graph and what it means for authoring, storag...voginip
 
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...voginip
 
Why one-size-fits all does not work in Explainable Artificial Intelligence!
Why one-size-fits all does not work in Explainable Artificial Intelligence!Why one-size-fits all does not work in Explainable Artificial Intelligence!
Why one-size-fits all does not work in Explainable Artificial Intelligence!voginip
 
Systematisch zoeken op het web
Systematisch zoeken op het webSystematisch zoeken op het web
Systematisch zoeken op het webvoginip
 
Werken met Wikidata
Werken met WikidataWerken met Wikidata
Werken met Wikidatavoginip
 
Een gereedschapskist voor digitale vaardigheden
Een gereedschapskist voor digitale vaardighedenEen gereedschapskist voor digitale vaardigheden
Een gereedschapskist voor digitale vaardighedenvoginip
 
Een startende éénpitter in informatieland: wat goed ging en wat niet
Een startende éénpitter in informatieland: wat goed ging en wat nietEen startende éénpitter in informatieland: wat goed ging en wat niet
Een startende éénpitter in informatieland: wat goed ging en wat nietvoginip
 
Van de droom van het Semantic Web naar de realiteit van Linked Open
Van de droom van het Semantic Web naar de realiteit van Linked Open Van de droom van het Semantic Web naar de realiteit van Linked Open
Van de droom van het Semantic Web naar de realiteit van Linked Open voginip
 

More from voginip (20)

Zo wordt je factchecker - Aafko Boonstra
Zo wordt je factchecker - Aafko BoonstraZo wordt je factchecker - Aafko Boonstra
Zo wordt je factchecker - Aafko Boonstra
 
Automatisch metadateren - de kansen en de uitdagingen
Automatisch metadateren - de kansen en de uitdagingenAutomatisch metadateren - de kansen en de uitdagingen
Automatisch metadateren - de kansen en de uitdagingen
 
Hybride Intelligentie: de rol van Large Language Models in informatieverwerking
Hybride Intelligentie: de rol van Large Language Models in informatieverwerkingHybride Intelligentie: de rol van Large Language Models in informatieverwerking
Hybride Intelligentie: de rol van Large Language Models in informatieverwerking
 
Solving World War II Photo Mysteries with Open Source Techniques
Solving World War II Photo Mysteries with Open Source TechniquesSolving World War II Photo Mysteries with Open Source Techniques
Solving World War II Photo Mysteries with Open Source Techniques
 
PiCo: Historische personen beter vindbaar maken
PiCo: Historische personen beter vindbaar makenPiCo: Historische personen beter vindbaar maken
PiCo: Historische personen beter vindbaar maken
 
Red het internet! Op weg naar de online publieke ruimte
Red het internet! Op weg naar de online publieke ruimteRed het internet! Op weg naar de online publieke ruimte
Red het internet! Op weg naar de online publieke ruimte
 
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)
AI en IP (Artificieele Intelligentie en Intellectueel Eigendom)
 
ASML's Taxonomy Adventure by Daniel Canter
ASML's Taxonomy Adventure by Daniel CanterASML's Taxonomy Adventure by Daniel Canter
ASML's Taxonomy Adventure by Daniel Canter
 
The Dark Side of Science: Misconduct in Biomedical Research
The Dark Side of Science: Misconduct in Biomedical ResearchThe Dark Side of Science: Misconduct in Biomedical Research
The Dark Side of Science: Misconduct in Biomedical Research
 
Oude boeken, nieuwe vaardigheden en Wikipedia
Oude boeken, nieuwe vaardigheden en WikipediaOude boeken, nieuwe vaardigheden en Wikipedia
Oude boeken, nieuwe vaardigheden en Wikipedia
 
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...
De kracht van samenwerking: hoe de Universiteitsbibliotheek Gent open kennisc...
 
Open yet everywhere in chains: Where next for open knowledge?
Open yet everywhere in chains: Where next for open knowledge?Open yet everywhere in chains: Where next for open knowledge?
Open yet everywhere in chains: Where next for open knowledge?
 
The three layers of a knowledge graph and what it means for authoring, storag...
The three layers of a knowledge graph and what it means for authoring, storag...The three layers of a knowledge graph and what it means for authoring, storag...
The three layers of a knowledge graph and what it means for authoring, storag...
 
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...
Vijf vindbaarheidsproblemen waar een taxonomie de schuld van krijgt (maar nik...
 
Why one-size-fits all does not work in Explainable Artificial Intelligence!
Why one-size-fits all does not work in Explainable Artificial Intelligence!Why one-size-fits all does not work in Explainable Artificial Intelligence!
Why one-size-fits all does not work in Explainable Artificial Intelligence!
 
Systematisch zoeken op het web
Systematisch zoeken op het webSystematisch zoeken op het web
Systematisch zoeken op het web
 
Werken met Wikidata
Werken met WikidataWerken met Wikidata
Werken met Wikidata
 
Een gereedschapskist voor digitale vaardigheden
Een gereedschapskist voor digitale vaardighedenEen gereedschapskist voor digitale vaardigheden
Een gereedschapskist voor digitale vaardigheden
 
Een startende éénpitter in informatieland: wat goed ging en wat niet
Een startende éénpitter in informatieland: wat goed ging en wat nietEen startende éénpitter in informatieland: wat goed ging en wat niet
Een startende éénpitter in informatieland: wat goed ging en wat niet
 
Van de droom van het Semantic Web naar de realiteit van Linked Open
Van de droom van het Semantic Web naar de realiteit van Linked Open Van de droom van het Semantic Web naar de realiteit van Linked Open
Van de droom van het Semantic Web naar de realiteit van Linked Open
 

Grote hoeveelheden tekst analyseren als data

  • 1. Grote hoeveelheden tekst analyseren als data Max Kemman VOGIN-IP-lezing 11 mei 2022
  • 2. Achtergrond • Promotieonderzoek digitale methoden voor historisch onderzoek – Hoofdstuk met analyse van 10k blog posts van 73 historici over 10 jaar – Docent inleiding digitale geschiedenis • Onderzoeker Dialogic – O.a. projecten waarin grote collecties wetenschappelijke abstracts worden geclassificeerd
  • 3. Van op naar in bronmateriaal zoeken • Meestal wordt vooral gewerkt met metadata: de beschrijvende gegevens over bronmateriaal – Titels, auteurs, publicatie jaren, etc. • Maar dat heeft beperkingen: – De variatie van woorden in een bron is veel groter dan in de metadata – Soms wil je niet een document vinden maar een antwoord
  • 4. Van metadata naar data • Zoeken in documenten • Overzichten maken van teksten – Hands-on • Concepten identificeren in teksten – Hands-on • Natural language processing • Collecties van teksten maken
  • 5. Zoeken in grote collecties van documenten • Wanneer je zoekt op Google of Google Scholar dan doorzoek je heel grote collecties van documenten • Hiervoor gebruikt Google een index en een ranking
  • 6. Index Index: alfabetische lijst van termen en op welke pagina’s deze dan staan – Net als achterin een boek Rechts: index van On the Origin of Species
  • 7. Ranking naar relevantie Ranking: bij duizend resultaten bepalen van volgorde van relevantie – Overlap met ingevoerde zoektermen – Term frequency * inverse document frequency
  • 8. Ranking naar relevantie Ranking: bij duizend resultaten bepalen van volgorde van relevantie – Overlap met ingevoerde zoektermen – Term frequency * inverse document frequency Document A A A A B B C B A C D A
  • 9. Ranking naar relevantie Ranking: bij duizend resultaten bepalen van volgorde van relevantie – Overlap met ingevoerde zoektermen – Term frequency * inverse document frequency Document A A A A B B C B A C D A Collectie van documenten A A A A A A A A A A A A B A A A C A A A
  • 10. Ranking naar relevantie Ranking: bij duizend resultaten bepalen van volgorde van relevantie – Overlap met ingevoerde zoektermen – Term frequency * inverse document frequency – Autoriteit van pagina (bijv. PageRank) – Contextuele informatie
  • 11. Zoeken in grote collecties van documenten • Voorbeelden waarin dit kan – Google – Google Books – Delpher
  • 12. Zoeken met voorbeelden • Hoeft niet te zoeken met enkele woorden maar met meerdere woorden • Of zoeken met voorbeeldtekst https://app.dimensions.ai/discover/publication Klik op zoekbalk > Abstract search (inmiddels betaalde feature)
  • 13. Overzichten maken van teksten • Bij vervormen van teksten naar index kan je ook de index zelf als bron gebruiken • Overzichten van hoe woorden gebruikt worden: – Keywords in context (KWIC) – Word clouds – Trends
  • 14. Keywords in Context voorgaande termen - zoekterm - opvolgende termen • Geeft inzicht in hoe woorden gebruikt worden https://voyant-tools.org/?view=Contexts
  • 15. Word clouds Visuele weergave van frequentie van woorden • Frequentie → grootte • Locatie van woord heeft geen betekenis • Moeilijkheid is bepalen welke woorden interessant zijn https://voyant-tools.org/?view=Cirrus
  • 16. Trends Visuele weergave van frequentie van een of meer woorden over de tijd • sad* https://voyant-tools.org/?view=Trends
  • 17. Trends: n-grams Google Ngram Viewer • n-gram (n=aantal woorden, bijv. 2) • Y-as: bij opgegeven 2-gram, hoeveel procent vormt dit van alle 2- grams https://books.google.com/ngrams/
  • 19. Trends: n-grams Google Ngram Viewer geavanceerd zoeken: • Wildcards: * (in plaats van een woord) • Inflection :book/booked/booking → book_INF • Case insensitive: book of BOOK als 1 of 2 woorden) • Part-of-speech tags: tackle_VERB of tackle_NOUN • Combining n-grams: + - / * https://books.google.com/ngrams/info
  • 20. Trends: n-grams Opletten met veranderend taalgebruik • Woord ≠ concept
  • 21. Hands-on Hands-on: aan de slag met Voyant Tools https://voyant-tools.org/ Alternatief: https://voyant.lincsproject.ca/ Documentatie: https://voyant.lincsproject.ca/docs/#!/guide/tools
  • 22. Hands-on Hands-on: aan de slag met Voyant Tools Lokaal installeren van Voyant Tools Github: https://github.com/voyanttools/VoyantServer ZIP uitpakken en JAR file opstarten Java: https://www.java.com/nl/download/
  • 23. Van zoeken naar ‘mining’ Keyword search heeft twee belangrijke nadelen: 1. Te veel resultaten (en vertrouw je de ranking?) 2. Mismatch tussen zoekterm en document (boeken over WW1 van voor 1940)
  • 24. Van zoeken naar ‘mining’ We willen twee typen oplossingen: 1. Te veel resultaten (en vertrouw je de ranking?) Analyse van teksten als data, ook wel distant reading 1. Mismatch tussen zoekterm en document (boeken over WW1 van voor 1940) Zoeken op concepten i.p.v. woorden
  • 25. Distant reading Term bedacht door literatuurwetenschapper Franco Moretti “[Y]ou invest so much in individual texts only if you think that very few of them really matter” “At bottom, it’s a theological exercise—very solemn treatment of very few texts taken very seriously—whereas what we really need is a little pact with the devil: we know how to read texts, now let’s learn how not to read them. Distant reading: where distance, let me repeat it, is a condition of knowledge: it allows you to focus on units that are much smaller or much larger than the text”
  • 26. Distant reading • Geen eenduidige methode maar een fundamentele aanpassing: niet zoeken naar individuele documenten, maar het geheel van documenten analyseren op trends en patronen • Daarbij mogelijkheid om te verdiepen van tekst naar concepten
  • 27. Concepten identificeren in teksten • Kunnen we van woorden naar concepten? • Hoe identificeer je nieuwsartikelen over voetbal waar het woord “voetbal” niet in voorkomt? – stadion ronaldo goal keeper fc utrecht – fiets tour de france pogacar
  • 28. Concepten identificeren in teksten Topic modelling • Aanname: twee documenten met dezelfde topics hebben overlap in woorden • Welke woorden komen vaker samen voor? – Woorden hoeven niet altijd samen voor te komen – Woorden kunnen in meerdere topics voorkomen
  • 29. Concepten identificeren in teksten Topic modelling = bepalen van latente topics aan de hand van de woorden in documenten: • Een document bevat een combinatie van topics • Een topic bestaat uit een combinatie van woorden
  • 30. Concepten identificeren in teksten Blei, D. M. (2012). Probabilistic topic models. Communications of the ACM, 55(4), 77-84.
  • 31. Concepten identificeren in teksten Topic modelling = bepalen van latente topics aan de hand van de woorden in documenten: • Een document bevat een combinatie van topics • Een topic bestaat uit een combinatie van woorden Statistische bepaling van welke combinatie goede weergave geeft • Iteraties: aantal keer dat het algoritme over de gehele collectie gaat
  • 32. Concepten identificeren in teksten Topic modelling aannames • Volgorde van woorden maakt niet uit (bag of words) • Volgorde van documenten maakt niet uit (maar kan je achteraf wel gebruiken voor trends) • Je moet zelf aangeven hoeveel topics je wil hebben • Werkt beste als documenten bestaan uit maximaal paar honderd woorden (blog posts, nieuwsberichten, abstracts, paragrafen)
  • 33. Concepten identificeren in teksten Topic model output • Uit welke woorden bestaat elk topic • Per document hoeveel % beslaat elk topic
  • 34. Concepten identificeren in teksten Topic modelling heeft een wat hoger leercurve • https://mimno.infosci.cornell.edu/jsLDA/index.html • https://programminghistorian.org/en/lessons/topic-modeling-and- mallet • https://senderle.github.io/topic-modeling- tool/documentation/2017/01/06/quickstart.html
  • 35. Hands-on Hands-on: draai zelf een topic model van je eigen casus of van de corpora aangeboden door Voyant https://voyant-tools.org/?view=Topics https://voyant.lincsproject.ca/?view=Topics
  • 36. Entiteiten identificeren in teksten Sommige concepten worden wél genoemd, maar bestaan uit meerdere woorden • Named Entity Recognition (NER) Het herkennen van objecten met een naam • Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties • Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
  • 37. Entiteiten identificeren in teksten Sommige concepten worden wél genoemd, maar bestaan uit meerdere woorden • Named Entity Recognition (NER) Het herkennen van objecten met een naam • Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties • Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
  • 38. Entiteiten identificeren in teksten Toepassingen: – Kaart van alle genoemde locaties
  • 39. Entiteiten identificeren in teksten Toepassingen: – Kaart van alle genoemde locaties – Netwerk van personen die samen genoemd worden – Tellen van personen die genoemd worden https://histograph.cvce.eu/
  • 40. Entiteiten identificeren in teksten Sommige concepten worden wél genoemd, maar bestaan uit meerdere woorden • Named Entity Recognition (NER) Het herkennen van objecten met een naam • Bijvoorbeeld: overzicht van genoemde personen, steden, organisaties • Mark Rutte studeerde geschiedenis aan de Universiteit Leiden
  • 41. Natural language processing • NLP is een interdisciplinair onderzoeksveld op het snijvlak van taalkunde en informatica met sterke links naar kunstmatige intelligentie • Doel is om computers om te leren gaan met natuurlijke taal • Chatbots, Google Translate, Apple Siri, Google BERT (tekstclassificatie), Spamfilter • Soms lastig: primair gericht op Engels
  • 42. Natural language processing • Teksten automatisch samenvatten – Resoomer https://resoomer.com/nl/ – SciTLDR https://scitldr.apps.allenai.org/ • Maar je kan ook teksten genereren – GPT-2 demo https://bellard.org/textsynth/
  • 43. Normaliseren van tekst Hoe moeten woorden geteld worden? Daarvoor wil je soms normaliseren (ook wel pre-processing) • Lowercase: “digitaliseren” en “Digitaliseren” zijn hetzelfde • Tokenize: “digitaliseren” en “digitaliseren!!” zijn hetzelfde • Stopwoorden: in “de digitalisering” is “de” niet interessant
  • 44. Normaliseren van tekst Hoe moeten woorden geteld worden? Daarvoor wil je soms normaliseren (ook wel pre-processing) • Lemmatiseren vs stemming Woord Stam Lemma gelopen gelop lopen digitalisering digitaliser digitaliseren gewezen gewez zijn
  • 45. Normaliseren van tekst Hoe moeten woorden geteld worden? Daarvoor wil je soms normaliseren (ook wel pre-processing) • Lemmatiseren vs stemming
  • 46. Analyseren van tekst Part-of-speech (POS) tags • Identificeren zelfstandig naamwoorden, werkwoorden etc.
  • 47. NLP tools • Stanza http://stanza.run/ • LeTs Demo https://www.lt3.ugent.be/lets-demo/ • CLARIN tools https://www.clarin.eu/resource-families • TAPoR directory tools voor text analyse http://tapor.ca/ Opdracht: plak een tekst (wikipedia of uit je eigen casus) in Stanza
  • 48. Collectie van teksten aanmaken • Websites scrapen https://webscraper.io/ • Nexis Uni (krantenartikelen, toegang vereist) • Gale Digital Scholar Lab (veel gedigitaliseerde content en analyse tools, toegang vereist) • Delpher https://delpher.nl/data Copyright zit vaak in de weg • Wikipedia daarom ook een dankbare bron