Softcatala / catalan-dict-tools

Tools for managing Catalan dictionaries
Other
53 stars 5 forks source link

Diccionari AOSP en català (.dict) per Android #19

Open somhi opened 2 months ago

somhi commented 2 months ago

Permeteu-me fer la consulta ja que no trobo enlloc informació sobre com poder afegir un bon diccionari català als teclats d'android de codi obert i que respecten la privacitat. Els que he provat son:

Prefereixo no utilitzar Gboard ni swiftkey ni cal altre de codi privatiu.

Teniu forma de generar un diccionari .DICT pel FUTO keyboard? Seria afegir-lo en aquest repositori https://codeberg.org/Helium314/aosp-dictionaries (This repository contains dictionaries for AOSP keyboard and compatible apps, as well as word lists used to create the dictionaries. )

Aquest teclat FUTO és molt prometedor ja que permet baixar els models de llengua multilingual-244 que tenen el català implementat per a transcripció de veu a text https://keyboard.futo.org/whisper-training-data-breakdown. L'he provat i no funciona pas malament.

somhi commented 2 months ago

@jaumeortola alguna idea del que comento, o pots citar a qui em pugui ajudar? merci

jaumeortola commented 2 months ago

He preguntat a alguns companys, però no m'han respost. Potser @pereorga té alguna idea.

pereorga commented 2 months ago

No en tinc ni idea. Sembla que un diccionari com els que hi ha https://codeberg.org/Helium314/aosp-dictionaries ha de ser fàcil de generar, si només cal una llista de paraules. Trobo que al meu Android, el teclat predictiu va força malament, però no sé si això es pot arreglar amb un diccionari d'aquests, estaria bé. Pel que fa a la correcció, entenc que idealment s'hauria de poder fer servir LanguageTool, però això potser no és possible.

jaumeortola commented 2 months ago

Vejam. Això és un exemple del format de fitxer. Els diccionaris d'anglès són una mica més complexos perquè tenen n-grames.

dictionary=main:fr,locale=fr,description=Français,date=1414726264,version=54
 word=de,f=221,flags=,originalFreq=221
 word=la,f=213,flags=,originalFreq=213
 word=et,f=210,flags=,originalFreq=210
 word=le,f=209,flags=,originalFreq=209
 word=à,f=208,flags=,originalFreq=208
 word=des,f=205,flags=,originalFreq=205

Tenim les dades per a generar un fitxer així en català, sense gaire complicació. Es podria usar això: https://github.com/Softcatala/catalan-dict-tools/blob/master/frequencies/frequencies-dict-forms.txt

O bé això: https://github.com/Softcatala/catalan-dict-tools/blob/master/morfologik-lt/ca_wordlist.xml Però aquest segon fitxers pot contenir errades ortogràfiques. S'hauria de filtrar.

¿T'ho pots generar tu mateix, @somhi, o necessites ajuda?

Potser hi ha diverses qüestions que caldria pensar bé:

@jmontane Per si vols dir-hi la teva.

somhi commented 2 months ago

Merci pels comentaris. Jo ara mateix no sabria ni com posar-m'hi a fer-ho.

Penso que tenir un teclat per Android que no es quedi amb el que teclegem i compti amb un diccionari propi de la comunitat de softcatalà seria un gran què.

jmontane commented 2 months ago

El problema que tenim en català és la tokenització i l'estimació de freqüències.

Pel que sembla, mirant el diccionari francès, l'apòstrof no segmenta paraules i, mirant el diccionari anglès EUA, el guionet tampoc. En resum, sembla que d'anar-se'n seria un únic token. Això vol dir que per a cada forma flexionada, caldria considerar també les formes afegint-hi pronoms o articles (arbre, l'arbre, deixa, deixa-ho, deixa'l, deixa-li, deixa-l'hi,...). Sospito que el punt volat sí que segmenta les paraules, però.

La dificultat de tot plegat és establir la freqüència (ni que sigui aproximada) de cada forma. P.ex. cantar és freqüent, però cantéssiu no ho és tant.

Sobre el nombre d'entrades, sembla que ~200.000 és habitual. Algunes llengües en tenen menys, i una llengua (el belarús) té vora 4.000.000 d'entrades.

De fet... ja hi ha un diccionari experimental pel català: https://codeberg.org/Helium314/aosp-dictionaries/src/branch/main/dictionaries_experimental/main_ca.dict

Caldria avaluar-ne la qualitat.

somhi commented 2 months ago

També hi ha aquest altre que és el que utilitzo però no va gaire fi Catalan main: Catalan wordlist from OpenSubtitles by Guillem Solà i Boeck, v18, 2023-08-26, 65649 entries, source: #3