anonymeiddiwr-beta

Anonymeiddiwr Beta ar gyfer testunau dwyieithog Saesneg-Cymraeg a thestunau Cymraeg uniaith.

https://github.com/techiaith/anonymeiddiwr-beta

Science Score: 52.0%

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

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
    Organization techiaith has institutional domain (techiaith.bangor.ac.uk)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (1.3%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Anonymeiddiwr Beta ar gyfer testunau dwyieithog Saesneg-Cymraeg a thestunau Cymraeg uniaith.

Basic Info
  • Host: GitHub
  • Owner: techiaith
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 11.3 MB
Statistics
  • Stars: 0
  • Watchers: 6
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 4 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Citation

README.md

English below

Anonymeiddiwr Beta

Pwrpas yr anonymeiddiwr hwn yw tynnu gwybodaeth bersonol allan o ddata Cymraeg, yn ogystal ag allan o ddata cyfochrog Saesneg-Cymraeg megis cofion cyfieithu. Y nod yw hwyluso rhannu a dosbarthu data hwnnw at ddibenion hyfforddi modelau iaith (gan gynnwys modelau cyfieithu peirianyddol) drwy leddfu pryderon yngln rhannu data cyffredinol sy'n cynnwys enwau pobl, enwau lleoedd ac yn y blaen. Sylwer nad yw'r Anonymeiddiwr eto'n addas ar gyfer dogfennau sensitif sy'n cynnwys data gwirioneddol bersonol fel cofnodion meddygol ac ati.

Ceir dau Anonymeiddiwr yn y pecyn hwn:

  1. Anonymeiddiwr Data Cyfochrog
  2. Anonymeiddiwr Data Cymraeg

Anonymeiddiwr Data Cyfochrog

Defnyddir tri dull i anonymeiddio gan yr Anonymeiddiwr Data Cyfochrog:

  1. Defnyddir technegau Adnabod Endidau Enwol (NER) i adnabod yr endidau sydd wediu henwi yn y data (e.e. "John Davies") au cyfnewid am label yr endid (e.e. "PERSON"). Canlyniad hynny yw newid:

"John Davies agreed with the decision. Cytunodd John Davies r penderfyniad."

i

PERSON agreed with the decision. Cytunodd PERSON r penderfyniad."

Y labeli endidau a ddefnyddir ar hyn o bryd yw: PERSON, GPE, LOC a DATE.

  1. Defnyddir tagiwr rhannau ymadrodd Cymraeg i adnabod unrhyw enwau priod a fethwyd gan y cam blaenorol. Mae'r dull hwn yn cuddio'r enw priod gan roi XPROPNX yn ei le, ond nid yw'n dethol label endid priodol ar ei gyfer.

  2. Yn olaf, gwaredir unrhyw segment sy'n parhau i fod yn broblemus.

Golygar trydydd dull hwn o waredu segmentau fod maint y data allbwn yn a gynhyrchir gan yr Anonymeiddiwr yn llai o ran maint nar data gwreiddiol. Maer union wahaniaeth maint rhwng y data mewnbwn ar data allbwn yn amrywio yn l cynnwys y data, ond gydan ffeil prawf o 719,997 segment sensitif, cafwyd allbwn o 291,130 segment, syn cynrychioli 40% or data gwreiddiol. Mae anonymeiddio yn gyfaddawd rhwng goranonymeiddio ar un llaw a pheidio ag anonymeiddio endidau a ddylid fod wedi cael eu hanonymeiddio ar y llaw arall. Gobeithiwn fod ein gosodiadau gweddol geidwadol ni yn galluogi rhannu a defnyddio llawer o ddata na fyddai wedi bod modd ei ddosbarthu fel arall.

Dyma enghraifft o segmentau cyfochrog sydd wedi cael eu hanonymeiddio gan yr Anonymeiddiwr:

PERSON believes it may be more common than the literature indicates
Mae PERSON yn credu y gall fod yn fwy cyffredin na mae'r llenyddiaeth yn ei awgrymu.

Who does it affect?
Ar bwy mae'n effeithio?

This virus causes fever, swollen spleen, sore throat, and inflamed lymph nodes.
Mae'r firws hwn yn achosi twymyn, dueg chwyddedig, dolur gwddf, a nodau lymff llidus.

The signal receptors can be affected by things like intoxication with hallucinogens, migraine headaches, and tumors in the brain, headaches, and PERSON viral infection (glandular fever).
Gall pethau fel meddwdod gyda rhithbeiriau, cur pen meigryn a thiwmorau yn yr ymennydd, cur pen, a haint firaol PERSON (twymyn y chwarennau) effeithio ar y derbynyddion signalau.

Other receivables - taxation recoverable
Symiau derbyniadwy eraill - treth adferadwy

ORG and PERSON
ORG a PERSON

Have you experienced something similar?
A ydych wedi profi rhywbeth tebyg?

Lets experiment!
Dewch i ni arbrofi!

Want to feel and out of body experience?
Ydych eisiau teimlo sut beth yw profiad tu allan i'r corff?

Im going to give you several demonstrations, then in groups, I would like you to try them out for yourselves!
Rwy'n mynd i arddangos nifer o bethau i chi, yna mewn grwpiau, hoffwn i chi roi cynnig arnynt eich hunain!

PERSON a British psychiatrist first published the name in DATE
PERSON, seiciatrydd Prydeinig, a gyhoeddodd yr enw am y tro cyntaf ym DATE.

Anonymeiddiwr Data Cymraeg

Ar hyn o bryd mae'r Anonymeiddiwr Data Cymraeg yn gweithredu ar sail tagiau rhannau ymadrodd yn unig tra'n bod ni'n paratoi gwell cydran Adnabod Endidau ar gyfer y Gymraeg. Defnyddir y tagiwr rhannau ymadrodd Cymraeg i adnabod unrhyw enwau priod a'u cuddio drwy roi XPROPNX yn eu lle. Ni ddetholir label endid priodol ar eu cyfer ar hyn o bryd.

Dyma enghraifft o destun a anonymeiddiwyd gan yr Anonymeiddiwr Data Cymraeg:

  • Nofel ar gyfer plant a'r arddegau gan XPROPNX XPROPNX XPROPNX yw O Na!
  • Roedd on unig felly mi ddoth o nl ata i.
  • Mae en giciwr da iawn.
  • A fydd hi'n gallu dod o hyd iddo?
  • Drama ysgafn gan XPROPNX XPROPNX yw XPROPNX o XPROPNX.
  • Gwaeddodd XPROPNX yn druenus, a chiliodd tuag ataf fi.
  • Pecyn o ddeg llyfr Cyfres XPROPNX am Byth!
  • dywedwch chi pryd fyddwch chi'n barod
  • poenodd
  • Fin canu fe nawr pob tro fi'n dreifio lawr i weld XPROPNX.
  • Rwan, cymer dy gyllell a rhwyma hi wrth flaen yr ede.
  • Mae copi o'r hunangofiant wedi ei gadw fel llawysgrif yn Llyfrgell Prifysgol XPROPNX.

Ceir ffeil enghreifftiol o allbwn anonymeiddio ein Corpws CC0 yn anonymized_cc0_cy_conc_covost.txt . Penderfynwyd cynnwys y corpws CC-0 o fewn project yr anonymeiddiwr gan nad oes rheswm ir corpws hwn fod wedii anonymeiddio ar wahn i fel arddangosiad o allur anonymeiddiwr. Mae hynny oherwydd bod y corpws heb ei anonymeiddio eisoes ar gael yn agored o dan drwydded CC-0 o'n GitHub cyhoeddus (gw. https://github.com/techiaith/corpws-CC0).

Rhybudd

Nid ywr Anonymeiddiwr hwn yn addas ar gyfer data personol sensitif. Ni fwriadwyd yr Anonymeiddiwr hwn ar gyfer ei ddefnyddio gyda dogfennau syn cynnwys data sensitif personol a phreifat megis cofnodion iechyd unigolion. Fei bwriadwyd yn bennaf fel haen ychwanegol o ddiogelwch i alluogi cyrff cyhoeddus i fod yn fwy hyderus i rannu cynnwys dogfennau cyffredinol sydd o natur ansensitif, ond sydd efallai yn cynnwys enwau aelodau o staff ac ati y byddain well peidio eu rhannu. Y ffordd orau o sicrhau na chaiff cynnwys dogfennau sensitif eu rhannu yw i adnabod a nodi sensitifrwydd dogfennau cyn eu cyfieithu ac i beidio a chynnwys unrhyw ddogfennau sensitif o fewn cof cyfieithu cyffredinol. Nid ywr Anonymeiddiwr yn disodlir angen am bolisi diogeledd data cadarn.

Cyfarwyddiadau Gosod a Defnyddio'r Anonymeiddiwr

Maer Anonymeiddiwr Beta yn raglen Python sydd angen Python 3.8 neu'n ddiweddarach i redeg. Mae'n rhaid rhedeg yr Anonymeiddiwr ar y llinell orchymyn. Rhaid i chi hefyd fod wedi gosod pecyn llyfrgell spaCy o flaen llaw (gweler https://spacy.io/usage), ac argymhellwn lwythor model mawr (enwebcore_lg) i lawr er mwyn pwerur Adnabod Endidau. Ar gyfer galluogi'r ochr Gymraeg, rhaid gosod y ffeil cy sy'n gynwysiedig o fewn ffolder lang eich gosodiad chi o spaCy. Mae'r tagio rhannau ymadrodd Cymraeg yn defnyddio'r model Cymraeg sy'n gynwysiedig gyda'r pecyn hwn.

Anonymeiddiwr Data Cyfochrog

Maer anonymeiddiwr hwn yn disgwyl ffeil .csv fel ffeil fewnbwn, gydar testun Saesneg wedi ei labeli fel y golofn source ar testun Cymraeg fel y golofn target, a chyda thab yn eu gwahanu.

Iw defnyddio, ewch i leoliad y ffeil a theipio:

anonymize_ency.py input_file.csv output_file.csv

gan ddefnyddio enw eich ffeil yn hytrach nag input_file.csv, ar enw y dymunwch ei roi ar y ffeil allbwn yn lle output_file.csv.

Anonymeiddiwr Data Cymraeg

Maer anonymeiddiwr hwn yn disgwyl ffeil testun plaen .txt fel ffeil fewnbwn, gydag un frawddeg Gymraeg i bob llinell.

Iw defnyddio, ewch i'r lleoliad lle y gosodwyd y ffeil anonymize_cy.py a theipio:

anonymize_cy.py input_file.txt output_file.txt

gan ddefnyddio enw eich ffeil yn hytrach nag input_file.txt, ar enw y dymunwch ei roi ar y ffeil allbwn yn lle output_file.txt.

Datblygiadau sydd i ddod

Fersiwn beta gychwynnol or Anonymeiddiwr yw hwn. Gobeithiwn ei ddatblygu ymhellach dros y misoedd nesaf er mwyn codi hyder yr algorithm anonymeiddio fel bod modd anonymeiddio rhagor o endidau segmentau yn hytrach na gwaredur segment gyfan. I wneud hynny, byddwn yn gwellar Adnabod Endidau Saesneg ymhellach trwy ei hyfforddi ar ddata syn cynnwys endidau unigryw Cymreig. Bwriadwn hefyd gyhoeddi ffrwyth ein harbrofion gyda chyfnewid enwau endidau (e.e. cyfnewid John Davies am enw arall ar hap (e.e Keith Williams), yn hytrach nau cyfnewid am labeli endidau fel PERSON. Y gobaith yw y bydd hyn yn galluogi'r brawddegau a anonymeiddiwyd i fod yn well data hyfforddi ar gyfe modelau iaith yn y dyfodol.

Diolch i Lywodraeth Cymru am ariannu'r gwaith hwn fel rhan o broject Technoleg Cymraeg 2021-22.

Beta Anonymizer

The purpose of this anonymizer is to remove personal information from Welsh-language data, and from parallel English-Welsh data such as translation memories. The aim is to facilitate the sharing and distribution of such data for the purpose of training language models (including in particular machine translation models) by assuaging fears about sharing general data which may include person names, place names etc. Note that this Anonymizer is not suitable for use on sensitive documents which include truly personal data such as medical records and so on.

There are two anonymizer in this collection:

  1. Parallel Data Anonymizer
  2. Welsh-Language Data Anonymizer

Parallel Data Anonymizer

Three different methods are used by the Parallel Data Anonymizer:

  1. Named Entity Recognition (NER) is used to identify entities occuring in the data (e.g. "John Davies") which can then be substituted by their entity type (e.g. "PERSON"). This results in changing:

"John Davies agreed with the decision. Cytunodd John Davies r penderfyniad."

to

PERSON agreed with the decision. Cytunodd PERSON r penderfyniad."

Currently, the following entities are used: PERSON, GPE, LOC a DATE.

  1. Additionally, a Welsh-language part of speech tagger is used to identify any proper nouns that may have benn missed by the previous step. These are replaced by the text 'XPROPNX', but no entity type is assigned.

  2. Lastly, any remaining problematic segments are simply discarded.

This last step does result in the size of the output data produced by the anonymizer being smaller than the original data. The exact difference in size varies depending on the content of the data, but with our test file of 719,997 sensitive segments we received 291,130 segments of output data, representing 40% of the original data. Anonymization is somewhat of a compromise between overanonymization on teh one hand and underanonymization on the other. We hope that our current conservative settings will enable the sharing and use of data that would otherwise not be distributed.

The following are examples of parallel segments that were anonymized by the Anonymizer:

PERSON believes it may be more common than the literature indicates
Mae PERSON yn credu y gall fod yn fwy cyffredin na mae'r llenyddiaeth yn ei awgrymu.

Who does it affect?
Ar bwy mae'n effeithio?

This virus causes fever, swollen spleen, sore throat, and inflamed lymph nodes.
Mae'r firws hwn yn achosi twymyn, dueg chwyddedig, dolur gwddf, a nodau lymff llidus.

The signal receptors can be affected by things like intoxication with hallucinogens, migraine headaches, and tumors in the brain, headaches, and PERSON viral infection (glandular fever).
Gall pethau fel meddwdod gyda rhithbeiriau, cur pen meigryn a thiwmorau yn yr ymennydd, cur pen, a haint firaol PERSON (twymyn y chwarennau) effeithio ar y derbynyddion signalau.

Other receivables - taxation recoverable
Symiau derbyniadwy eraill - treth adferadwy

ORG and PERSON
ORG a PERSON

Have you experienced something similar?
A ydych wedi profi rhywbeth tebyg?

Lets experiment!
Dewch i ni arbrofi!

Want to feel and out of body experience?
Ydych eisiau teimlo sut beth yw profiad tu allan i'r corff?

Im going to give you several demonstrations, then in groups, I would like you to try them out for yourselves!
Rwy'n mynd i arddangos nifer o bethau i chi, yna mewn grwpiau, hoffwn i chi roi cynnig arnynt eich hunain!

PERSON a British psychiatrist first published the name in DATE
PERSON, seiciatrydd Prydeinig, a gyhoeddodd yr enw am y tro cyntaf ym DATE.

Welsh Data Anonymyzer

At present the Welsh Data Anonymyzer operates on the basis of parts of speech only, whilst we prepare an improved NER component for Welsh. The Welsh parts of speech are used to identify proper nouns and replace them with the text 'XPROPNX'. No entity label is currently assigned.

Dyma enghraifft o destun a anonymeiddiwyd gan yr Anonymeiddiwr Data Cymraeg:

  • Nofel ar gyfer plant a'r arddegau gan XPROPNX XPROPNX XPROPNX yw O Na!
  • Roedd on unig felly mi ddoth o nl ata i.
  • Mae en giciwr da iawn.
  • A fydd hi'n gallu dod o hyd iddo?
  • Drama ysgafn gan XPROPNX XPROPNX yw XPROPNX o XPROPNX.
  • Gwaeddodd XPROPNX yn druenus, a chiliodd tuag ataf fi.
  • Pecyn o ddeg llyfr Cyfres XPROPNX am Byth!
  • dywedwch chi pryd fyddwch chi'n barod
  • poenodd
  • Fin canu fe nawr pob tro fi'n dreifio lawr i weld XPROPNX.
  • Rwan, cymer dy gyllell a rhwyma hi wrth flaen yr ede.
  • Mae copi o'r hunangofiant wedi ei gadw fel llawysgrif yn Llyfrgell Prifysgol XPROPNX.

An example file featuring an anonymized version of our CC0 Corpus can be found in the file anonymized_cc0_cy_conc_covost.txt . It was decided to include the CC-0 corpus within the anonymizer project as there is no reason for this corpus to have been anonymized apart from as a demonstration of the anonymizer's ability. That's because the unanonymized corpus is already openly available under a CC-0 license from our public GitHub (see https://github.com/techiaith/corpws-CC0).

Warning

This anonymizer is not suitable for sensitive personal data. The anonymizer is not intended for use on documents that include sensitive personal data such as personal medical records. It is primarily intended as an extra layer of security to enable public bodies to be more confident in sharing general non-sensitive documents which none the less may include the personal names of some staff members etc. which it may be preferable not to share. The most effective way of securing that sensitive documents are not shared is to label documents as such prior to translation and to not include such texts within general translation memories. This Anonymizerdoes not replace the need for a robust data security policy.

Instructions for Installation and Use

The Beta Anonymizer is a Python program requiring Python 3.8 or later. It must be run on the command line. The spaCy software package must also be installed before hand (see https://spacy.io/usage), and we recommend using the large model (enwebcore_lg) to power the NER. To enable processing Welsh texts, the included cy folder must be placed within the lang folder of your spaCy installation. The Welsh part of speech tagging uses the model included within this package.

Parallel Data Anonymizer

This anonymizer expects a .csv input file, with the English text labelled as source and the Welsh column labelled as target, and with a tab to separate both columns.

To use, navigate to the anonymizer file's location and type:

anonymize_ency.py input_file.csv output_file.csv

using the name of your input file rather than input_file.csv, and the name of your output file rather than output_file.csv.

Welsh Data Anonymyzer

This anonymizer expects a plain .txt input file, with a single Welsh sentence on each line.

To use, navigate to the anonymizer file's location and type:

anonymize_cy.py input_file.txt output_file.txt

using the name of your input file rather than input_file.csv, and the name of your output file rather than output_file.csv.

Upcoming Developments

This is a Beta version of the Anonymizer. We hope to develop it further over the coming months to improve the NER and increase the number of segments that can be retained rather than be discarded. We will be training the English NER model on Welsh entities, improving on our experimental Welsh NER and developing a method for substituting entities with realistic but artificial replacements so that the data appears more natural and better suited for training machine translation engines.

We thank the Welsh Government for funding this work as part of the Technoleg Cymraeg 2021-22 project.

Owner

  • Name: Uned Technolegau Iaith / Language Technologies Unit
  • Login: techiaith
  • Kind: organization
  • Location: Prifysgol Bangor University

Uned ymchwil hunan-gynhaliol sy’n datblygu technolegau ar gyfer y Gymraeg / A self-funded research unit that develops technologies for the Welsh language

Citation (citation.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Anonymeiddiwr Beta a Chorpws CC0 wedi ei Anonymeiddio/Beta Anonymizer and Anonymized CC0 Corpus
message: >-
  Er ein bod yn rhyddhau'r data hwn o dan drwydded
  MIT, gofynwn yn garedig i chi ystyried rhoi
  cydnabyddiaeth i'r gwaith hwn. | While we are
  releasing this data under the MIT licence, should
  you use this resource, we kindly ask you to
  consider acknowledging our work.
type: software
authors:
  - given-names: Gruffudd
    family-names: Prys
    email: g.prys@bangor.ac.uk
    affiliation: Bangor University Language Technologies Unit
    orcid: 'https://orcid.org/0000-0002-2910-2460'
  - given-names: Gareth Llewellyn
    family-names: Watkins
    email: g.watkins@bangor.ac.uk
    affiliation: Bangor University Language Technologies Unit
    orcid: 'https://orcid.org/0000-0001-8929-0718'
notes: "Gareth Watkins - Cyfraniad ieithyddol/Linguistic contribution, Gruffudd Prys - Cyfraniad ieithyddol a thechnegol/Linguistic and technical contribution"
url: https://github.com/techiaith/anonymeiddiwr-beta
abstract: >-
  Pwrpas yr anonymeiddiwr hwn yw tynnu gwybodaeth
  bersonol allan o ddata Cymraeg, yn ogystal ag allan
  o ddata cyfochrog Saesneg-Cymraeg megis cofion
  cyfieithu. Y nod yw hwyluso rhannu a dosbarthu data
  hwnnw at ddibenion hyfforddi modelau iaith (gan
  gynnwys modelau cyfieithu peirianyddol) drwy leddfu
  pryderon ynglŷn â rhannu data cyffredinol sy'n
  cynnwys enwau pobl, enwau lleoedd ac yn y blaen.
  Sylwer nad yw'r Anonymeiddiwr eto'n addas ar gyfer
  dogfennau sensitif sy'n cynnwys data gwirioneddol
  bersonol fel cofnodion meddygol ac ati.


  The purpose of this anonymizer is to remove
  personal information from Welsh-language data, and
  from parallel English-Welsh data such as
  translation memories. The aim is to facilitate the
  sharing and distribution of such data for the
  purpose of training language models (including in
  particular machine translation models) by assuaging
  fears about sharing general data which may include
  person names, place names etc. Note that this
  Anonymizer is not suitable for use on sensitive
  documents which include truly personal data such as
  medical records and so on.
keywords:
  - Welsh Language
  - Anonymizer
license: MIT
version: '22.03'
date-released: '2022-03-11'

GitHub Events

Total
Last Year

Dependencies

model_tagio_lemateiddio_spacy/meta.json cpan