valkuil-gecco

Nederlandse Spellingscontrole / Dutch spelling correction system - powered by Gecco

https://github.com/proycon/valkuil-gecco

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (5.2%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Nederlandse Spellingscontrole / Dutch spelling correction system - powered by Gecco

Basic Info
  • Host: GitHub
  • Owner: proycon
  • License: agpl-3.0
  • Language: Python
  • Default Branch: master
  • Size: 828 KB
Statistics
  • Stars: 7
  • Watchers: 3
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created almost 11 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Codemeta

README.md

Language Machines Badge GitHub release Project Status: Unsupported – The project has reached a stable, usable state but the author(s) have ceased all work on it. A new maintainer may be desired.

Valkuil.net powered by GECCO

by Maarten van Gompel, Antal van den Bosch Centre for Language Studies Radboud University Nijmegen

Gelicenseerd onder de Affero GNU Public License v3

Valkuil.net is een automatische spellingcorrector voor het Nederlands die zowel gewone typefouten als grammaticale fouten en verwarringen tussen bestaande woorden opspoort. Valkuil is in eerste instantie online als web-applicatie beschikbaar voor eindgebruikers op http://valkuil.net .

Valkuil.net is gebaseerd op grote hoeveelheden Nederlandse tekst, en niet op taalkundige kennis of een vaste woordenlijst. De meeste modules in valkuil.net zijn contextgebaseerd en statistisch: ze slaan alarm wanneer ze een woord tegenkomen dat ze niet verwachten op basis van de omgeving waarin dat woord staat. Het enthousiasme waarmee ze alarm slaan is instelbaar (klik op 'Toon geavanceerde opties' in het invoerscherm).

Valkuil.net bevat modules voor hele specifieke verwarringen, zoals zei-zij, maar ook voor fouten met vervoegingen zoals de bekende d-t-fout. Valkuil.net doet ook zijn best om vergeten spaties of teveel gezette spaties op te sporen.

Hoe goed is valkuil.net? In het algemeen kan een spellingchecker twee soorten fouten maken: het systeem kan fouten missen en kan vals alarm slaan. Valkuil.net is, in tegenstelling tot de meeste andere spellingcorrectors, ingesteld om niet te veel valse alarmen te genereren. De keerzijde van deze voorzichtigheid is dat valkuil.net bij te grote onzekerheid ervoor kiest om geen alarm te slaan, en zo mist het systeem wel eens fouten. Het streven is om minder dan de helft van alle fouten te missen (en liefst veel minder). We komen in de buurt.

Wat leren we daarvan?i Spellingcorrectie is moeilijk, en is daarom zo'n boeiend onderzoeksonderwerp. Valkuil.net mist meer dan de helft van de fouten en slaat in tweederde van de gevallen vals alarm. De vraag is wat erger is, en of we niet wat meer valse alarmen moeten toelaten zodat we wat meer echte fouten vinden. Wordt vervolgd...

Wat gaat er fout? Van alles, en in deze fouten zitten interessante patronen. Het woord 'word' wordt bijvoorbeeld vaak onterecht verbeterd tot 'wordt'; de andere kant op gaat veel beter, zoals psycholinguïst Dominiek Sandra ook bij mensen ziet gebeuren. Hij verklaart dat als een frequentie-effect: 'wordt' komt veel vaker voor dan 'word', en als we even niet goed opletten dan kiezen we vaak onbewust voor de frequentere vorm. Valkuil.net valt in dezelfde valkuil als mensen. Op basis van dit soort analyses kunnen we valkuil.net verbeteren, niet door taalregels in te voeren, maar door valkuil.net te hertrainen op meer of anders geselecteerde voorbeelden.

Wat zit er onder de motorkap? Data-gedreven, geheugengebaseerde taaltechnologie aangredeven door Gecco. Ondanks dat de modules zich baseren op honderden miljoenen woorden Nederlandse tekst zijn ze lichtgewicht en snel; ze maken veelal gebruik van Timbl, een open source softwarepakket voor geoptimaliseerde geheugengebaseerde classificatie, dat we sinds de jaren '90 in Tilburg ontwikkelen. Andere modules zijn gebaseerd op Colibri Core.

Gecco wordt voornamelijk gebruikt als een webservice (middels CLAM, waarboven een webapplicatie is ontwikkeld. Intern werkt valkuil.net met het XML-formaat FoLiA, dat geschikt is voor de representatie van gedetecteerde fouten, correctiesuggesties, en gekozen correcties.

Hoe kan ik Valkuil zelf draaien? De makkelijkste optie is door vanuit je programma verbinding te maken met onze Valkuil webservice, zie https://webservices-lst.science.ru.nl .

Wil je Gecco met Valkuil lokaal draaien dan zul je zeer goede hardware moeten hebben, met name veel geheugen (minimaal 32GB). We verwijzen naar de Gecco pagina voor installatieinstructies.

Is Gecco eenmaal geinstalleerd, dan kan je de valkuil modellen uit deze git repository gebruiken. De corpus bronnen waaruit deze modellen zijn samengesteld kunnen we door restrictieve auteursrechten helaas niet openbaar beschikbaar maken.

Slechts een klein aantal modellen zit daadwerkelijk in deze git repository, de rest moet gedownload worden door het download-models.sh script aan te roepen. Dit is een download van 500MB, maar neemt na decompressie rond de 1GB in beslag.

Owner

  • Name: Maarten van Gompel
  • Login: proycon
  • Kind: user
  • Location: Eindhoven, the Netherlands
  • Company: KNAW Humanities Cluster & CLST, Radboud University

Research software engineer - NLP - AI - 🐧 Linux & open-source enthusiast - 🐍 Python/ 🌊C/C++ / 🦀 Rust / 🐚 Shell - 🔐 InfoSec - https://git.sr.ht/~proycon

CodeMeta (codemeta.json)

{
  "@context": [
    "https://doi.org/10.5063/schema/codemeta-2.0",
    "http://schema.org",
    "https://github.com/CLARIAH/tool-metadata",
    {
      "entryPoints": {
        "@reverse": "schema:actionApplication"
      },
      "interfaceType": {
        "@id": "codemeta:interfaceType"
      },
      "inputLanguage": {
        "@id": "codemeta:inputLanguage"
      },
      "inputFormat": {
        "@id": "codemeta:inputFormat"
      }
    }
  ],
  "@type": "SoftwareSourceCode",
  "identifier": "valkuil-gecco",
  "name": "Valkuil.net",
  "version": "1.0",
  "description": "A Dutch context-sensitive spelling recognition system",
  "license": "AGPLv3",
  "url": "http://valkuil.net",
  "producer": {
    "@id": "https://www.ru.nl/clst",
    "@type": "Organization",
    "name": "Centre for Language and Speech Technology",
    "url": "https://www.ru.nl/clst",
    "parentOrganization": {
      "@id": "https://www.ru.nl/cls",
      "@type": "Organization",
      "name": "Centre for Language Studies",
      "url": "https://www.ru.nl/cls",
      "parentOrganization": {
        "@id": "https://www.ru.nl",
        "name": "Radboud University",
        "@type": "Organization",
        "url": "https://www.ru.nl",
        "location": {
          "@type": "Place",
          "name": "Nijmegen"
        }
      }
    }
  },
  "author": [
    {
      "@type": "Person",
      "givenName": "Maarten",
      "familyName": "van Gompel",
      "email": "proycon@anaproy.nl",
      "affiliation": {
        "@id": "https://www.ru.nl/clst"
      }
    },
    {
      "@type": "Person",
      "givenName": "Antal",
      "familyName": "van den Bosch",
      "email": "antal.vandenbosch@let.ru.nl",
      "affiliation": {
        "@id": "https://www.ru.nl/cls"
      }
    }
  ],
  "sourceOrganization": {
    "@id": "https://www.ru.nl/clst"
  },
  "operatingSystem": "POSIX",
  "codeRepository": "https://github.com/proycon/valkuil-gecco",
  "softwareRequirements": [
    {
      "@type": "SoftwareApplication",
      "identifier": "gecco",
      "name": "gecco"
    }
  ],
  "funder": {
    "@type": "Organization",
    "name": "NWO Vici"
  },
  "readme": "https://github.com/proycon/valkuil-gecco/blob/master/README.md",
  "issueTracker": "https://github.com/proycon/valkuil-gecco/issues",
  "developmentStatus": "inactive",
  "keywords": [
    "nlp",
    "speech recognition",
    "dutch"
  ],
  "dateCreated": "2010-01-01",
  "inputFormat": [
    "text/plain",
    "application/folia+xml"
  ],
  "outputFormat": [
    "application/folia+xml"
  ],
  "inputLanguage": {
    "@type": "Language",
    "name": "Dutch",
    "alternateName": "nld",
    "sameAs": "http://www.lexvo.org/data/iso639-3/nld"
  },
  "outputLanguage": {
    "@type": "Language",
    "name": "Dutch",
    "alternateName": "nld",
    "sameAs": "http://www.lexvo.org/data/iso639-3/nld"
  },
  "entryPoints": [
    {
      "@type": "EntryPoint",
      "urlTemplate": "http://valkuil.net",
      "interfaceType": "WUI"
    }
  ]
}

GitHub Events

Total
  • Push event: 2
Last Year
  • Push event: 2

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 59
  • Total Committers: 1
  • Avg Commits per committer: 59.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 2
  • Committers: 1
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Maarten van Gompel p****n@a****l 59
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 3
  • Total pull requests: 0
  • Average time to close issues: 2 months
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 0
  • Average comments per issue: 0.67
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • proycon (2)
  • Irishx (1)
Pull Request Authors
Top Labels
Issue Labels
question (1)
Pull Request Labels