Amuzamente cu liste de cuvinte

M-a pocnit o curiozitate: cum am face să evaluăm complexitatea unui text în limba română(i)?

Un răspuns pedestru ne poate veni chiar pe loc, dacă ne gîndim la listele de frecvență pentru limba română. Să explic – listele de frecvență sunt niște tabele care ordonă cuvintele limbii bazat pe criteriul „cît de des sunt folosite”. Treaba asta, cel puțin la nivel teoretic, este ușor de făcut, dacă ai o sursă de materiale românești în format digital(ii).

Spre norocul meu, un domn de treabă (Hermit Dave) a avut ideea de a prelucrate datele din subtritrările disponibile pe saitul OpenSubtitles, iar româna este și ea acolo. Lista este disponibilă pe GitHub. Despre posibilele obiecții vom discuta altă dată(iii). Drept urmare, fără prea multe alte discuții, observații în devălmășie.

*

  • Nu” este pe locul 2, „Da” este pe locul 24. Moment de sociologie făcută pe bordură: poate că asta denotă cum că suntem negativiști, ca neam. Sau poate denotă că tindem să ne exprimăm tacit acordul, însă dezacordul trebuie arătat lămurit. Sau poate nu înseamnă nimic anume(iv).
  • Primul verb din top: „este” (urmat de flexiunea sa, „sunt”). Zero surprize la faza asta. O mică surpriză că „pot” vine deasupra lui „face”. Putința este foarte importantă.
  • Primul substantiv din top … este greu de spus care ar fi. Pe locul 24 avem „bine”, doar că .. putem face o ghiceală informată cum că dînsul de fapt joacă rol de adverb cînd apare. Aceeași problemă cu „tot”, îl putem suspecta că joacă rol de adjectiv sau adverb pe unde apare. Abia pe locul 95 avem „nevoie”, iar dînsa este un substantiv curat. Așa este, nevoi avem.
  • Culoarea menționată cel mai frecvent pare a fi „negru”, pe 1166, urmată de „alb” pe 1335.
  • Corpul și trupul apar mai sus în top decît sufletul, dar toate sunt între primele 2000. Deci nu facem mare haz pe temă.
  • Pe locurile 1-100 sunt o groază, o grămadă, o puzderie de pronume, conjuncții, prepoziții, adverbe … pe scurt, cuvintele pe care le-am considera că-s cam de legătură. Dar iată că fix ele sunt folosite amplu pentru a regla sensul fin al frazelor.
  • Pula este abia pe 5644 (iar varianta cu diacritice, pulă, este neglijabil de jos). Pizda este mult mai jos, pe 20000, neglijabilă. Aici se observă, zic eu, neajunsurile de a folosi text bazat pe subtitrări. Poate-s traducătorii pudici. Poate e de vină materialul-sursă. Cine știe?
  • Nici „fut” nu se simte prea bine, stînd pe locul 8126. Variantele lui (futut, futu-i, fute etc) sunt și mai îndepărtate. Ne încălzește cu ceva că „sex”ul este pe 743? O fi însemnînd că devenim mai rafinați în exprimare, sau pudibonzi, sau ceva?
  • Mama e pe 159, tata pe 259 (tatăl, flexionat, dar hai să fim îngăduitori). Just.
  • Dar dacă am dori să studiem lungimea medie a cuvintelor? O statistică pe genunchi arată cam așa: cuvintele de pe pozițiile 1-500 se păstrează în medie sub 5 litere per cuvînt, apoi media crește ușor. Însă din cauza flexionărilor și a altor factori, media NU crește complet liniar, ci are mici suișuri și coborîșuri. Totuși, putem observa că pînă la terminarea primelor 10000 de cuvinte, media nu crește peste 7 litere/cuvînt. Cum era teoria, că dacă știi 10k de cuvinte, ești vorbitor de-ăla avansat? Poftim, nici nu-i așa de dificil.
  • Sortînd cuvintele după lungime, rezultă că cel mai lung cuvînt este … camy-subtitrari-noi. Trecînd peste glume, întîlnim „paleoastronauticii”, pe aceeași treaptă de lungime cu „supraviețuitorilor”.  Dar oare dacă am căuta cel mai lung cuvînt care NU este compus din alte cuvinte mai scurte, ci este doar o alungire a unei rădăcini? Avem „vulnerabilitatea” alături de „responsabilități”, iar dacă ne gîndim că prima a primit o literă prin flexionare… responsabilitatea cîștigă.
  • Dar dacă am vrea să găsim cele mai greu de pronunțat cuvinte? Am putea, spre exemplu, să căutăm cuvintele cu cele mai multe consoane. Trecînd din nou peste glumițe gen filmeserialeonline.org (12 consoane)rumplestiltskin are 11, schwarzenegger are 10.  Hai să zicem că ambele sunt nume proprii, nu se pun. Drept urmare, cîștigătorul este cel mai lung cuvînt ne-flexionat, „condescendent” (!) (v).

*

Se pare că m-am îndepărtat de ideea inițială, și anume aceea de a analiza lista pe baza frecvenței. Dar ăsta-i avantajul, lista nu pleacă niciunde, poate voi reveni cîndva la ea.

Cititorilor le rămîne temă de casă să se gîndească ce alte statistici sau observații de interes s-ar putea face pe acest calup de date 🙂

------
  1. De fapt curiozitatea asta e de import, întrebarea s-a pus acum vreo 11 ani prima dată, pe direcția unui test a la Flesch-Kincaid.[]
  2. De fapt problema este mai complexă, dar să nu ne împiedicăm în amănunte. Ca o primă serie de obiecții la ideea c-ar fi simplu: trebuie verificat să fie puse diacriticele corect, sau rezolvate ambiguitățile. Trebuie notate corect flexionările, ca să nu numeri de 3 ori băiat/băiatul/băiatului. Trebuie verificate diversele cratime și alte posibile greșeli de redactare din textul primar.[]
  3. Da, evident, există și obiecții. Spre exemplu, s-ar putea face observația că textul primar, subtitrările, nu reflectă limba română populară, medie, de pe stradă. În primul rînd, titrările sunt niște traduceri după un text original în engleză, ceea ce deja poluează statistica într-un mod greu de estimat. În al doilea rînd, titrările sunt create de amatori, nici măcar de traducători profesioniști, ceea ce iarăși poluează statistica în moduri greu de estimat. Dar hey, e mai bine decît nimic![]
  4. Este oare ironic că am folosit un „nu” la rîndul meu?[]
  5. Ocazie cu care aflu că de fapt nu se scrie „condescent”. Futu-i.[]

5 thoughts on “Amuzamente cu liste de cuvinte”

  1. Adaug(ă) la obiecții faptul că multe titrări sunt făcute de către o aceeași persoană (exemplu: veverița_bc), neexistând poate o suficientă varietate a stilurilor de exprimare.

    Nu deasupra lui da: să nu uităm de domeniul din care au fost culese aceste cuvinte. Cinematograful. Îmi dai banii înapoi? Nu! Și de acolo pornește cafteala. Dacă zicea da, probabil n-ar mai fi avut succes de casă. „Nu” este mai percutant, mai generator de opoziție și dramatism. Ca să-mi verific intuiția, m-am uitat și la lista pentru limba engleză, unde „no” apare la poziția 27 iar „yes” la poziția 77. Așa că fie și englezii sunt la fel de negativiști, fie raportul ăsta reflectă mai degrabă o particularitate a scenariilor decât a vreunei limbi. Mai ales că la astfel de cuvinte scurte (ca „da” și „nu”) nu prea ai multe variante de tradus.

    Este: și în engleză primul verb este tot „is”, la poziția 12. Apoi „have”, la poziția 22. Englezii sunt spirituali: e mai bine să fii decât să ai. Dar tot nu ne bat la capitolul ființare (trilema.com/2011/mergeti-la-scoala)

    Nevoie (loc 95): „need” apare, în engleză, la poziția 107. Deci tot cam pe-acolo. De fapt, chiar surprinzător de aproape, ceea ce ar putea indica că într-adevăr rezultatele sunt tributare limbii sursă, după cum ai și presupus.

    Corp și trup deasupra lui suflet: „body” pe poziția 423, „soul” la 934.

    Pula (loc 5644): „penisul” la poziția 6071, „penis” la 6480. Dacă le-adunăm pe toate 3, urcă pe poziția 2356, deasupra lui „viață”. 🙂 În engleză, „dick” pe 1406, dar poate avea sens figurat, „cock” pe 3373 iar „penis” pe 3726. Dacă le-adunăm pe toate 3, urcă pe poziția 948, deasupra lui „mm”. 🙂

    Nu cred că lungimea medie a cuvintelor e un criteriu bun de evidențiere a vocabularului. Probabil că și un vorbitor cult va folosi în medie cuvinte scurte (presărând fraza cu unele cuvinte mai lungi, pe ici pe colo). Cred că un text cu cuvinte în medie lungi ar fi mai degrabă semnul cuiva care vrea să epateze. De pildă, textul ăsta al lui Pleșu (dilemaveche.ro/sectiune/editoriale-si-opinii/situatiunea/semnele-timpului-603313.html) conține 774 cuvinte, dintre care 483 sunt unice, iar lungimea medie a unui cuvânt este de numai 5,13 litere. Și nu-i un text cu dialoguri de film ticsite cu da și nu, care să tragă media în jos.

    Cel mai lung cuvânt din textul lui Pleșu are 17 litere: cvasi-ireversibil (tot compus). Mai puțin cu o literă decât maximul tău, dar aici vorbim de o statistică pe 774 de cuvinte, în timp ce datele tale sunt culese din… sute sau mii de subtitrări?

    Cred că Rumpelstiltskin e din serialul „Once Upon a Time”:

    https://www.youtube.com/watch?v=U2uYIvtEeu0

  2. Foarte pertinentă obiecția cu autorul textelor și cu stilul personal. Hey, asta e, muncim cu ce avem. Eu am menționat că datele avute sunt cel mai probabil viciate în N moduri.

    Apropo de sursa datelor: clar că cel mai bun rezultat ar fi obținut dintr-un mix de surse. Cărți, articole de ziar, bloguri, forumuri etc șamd. Niciodată nu poți avea o statistică perfectă, pentru că în fond există sub-grupuri de vorbitori, fiecare cu specificul său; dar măcar te poți rezema pe o selecție mai diversă, care să te asigure că ai eliminat din bias cînd vorbești la modul general despre întreg corpusul limbii. Rămîne desigur întrebarea validă cum ponderezi volumul surselor, procente fixe gen 20% text literar, 20% text de ziar etc etc? Sau altfel?

    Mă rog, cert este că pînă și un scrapping pe un material mai complex, gen Wikipedia de limba română, ar produce imediat efecte vizibile. Sunt cîteva surse lesnicioase, dar trebuie timpul și răbdarea de a peria datele. Ceea ce eu, din păcate, nu prea am.

    Pe scurt, articolul de față este o mică incursiune în ceea ce am putea face / studia, dacă am avea date corecte. Și, desigur, o provocare să ne gîndim ce studii ar avea sens sau n-ar avea sens. Observațiile din articol nu le-am făcut pentru că ar putea avea vreo valoare intrinsecă, ci pentru a .. deschide gustul, ca să spun așa.

    În rest, pe sub-observații:

    – Să adunăm numeric poziții nu cred că poate să ne dea vreo valoare utilă la ceva. În general, să comparăm poziții nu ne relevă mare lucru, eu am făcut-o mai mult de amuzament.

    – Discuția cu lungimea cuvintelor sau numărul consoanelor era pe direcția Flesch-Kincaid, slabe încercări de a mă gîndi dacă se pot identifica metode numerice prin care să calculezi (măcar cu aproximație) dificultatea unui text. Încerc să mă leg de ideea că un vorbitor de nivel C1-C2 are nevoie de aproximativ 10000 de cuvinte în vocabular, nu obligatoriu fix primele 10k din top, dar nici departe de acest adevăr.

    Pe scurt … mulțumesc pentru comentariu. Tot ce concluzionez este că ar fi o pită de mîncat pe tema acestor cercetări.

  3. Probabil înainte de a alege sursele e necesar să ne formulăm niște obiective cât mai clare. Ce dorim să aflăm din studiul nostru? Dacă vrem să ne apropiem de limba vorbită, de limba comună, de limba de pe stradă, atunci probabil un blog sau un comentariu pe social media va fi mai relevant decât un text literar. Dacă vrem să vedem complexitatea unei limbi, atunci probabil un text de Pleșu va fi mai relevant decât un text de pe un forum. Chiar dacă nu toți oamenii sunt culți! Pentru că acolo se văd potențialul, structura, rafinamentul și limitele unei limbi: în exemplele ei de vârf, oricât de rare ar fi. La fel cum un pilot de formula 1 va fi mai adecvat decât un șofer de autobuz pentru a testa limitele și viteza maximă a unei mașini noi. Chiar dacă în general piloții de formula 1 (sau șoferii care să împingă motorul la turația lui maximă) vor fi puțini. Pe de altă parte, dacă vrei să studiezi limba uzuală, așa cum o vorbește de regulă românul majoritar, atunci limbajul oral este un punct de plecare mai bun decât textul scris. Pentru că ultimul a fost dintotdeauna apanajul unei elite. O altă bază de plecare o constituie dicționarul, pentru că acolo ai fondul lexical al limbii respective, cu toate sensurile, nuanțele și particularitățile fiecărui cuvânt, și chiar dacă limba teoretică de dicționar nu se va suprapune decât parțial peste limba vie, poți argumenta că existența anumitor cuvinte în dicționar, fie ele și rar folosite, nu este întâmplătoare.

    Deci, ce vrem să aflăm cu acest studiu? Tu ai spus „complexitatea unui text în limba română”, dar demersul ăsta nu este unul lingvistic, ci mai degrabă tehnic sau ingineresc. Un fotograf are în mână o cameră foto și zice: hai să facem niște poze! El nu știe ce vrea cu pozele respective, dar știe că are un aparat care poate trage multe cadre pe secundă și aia-i cel mai ușor pentru el. Vede el ce iese după. La fel, un programator are un calculator și știe că poate foarte simplu să facă niște „analize pe text” și să scoată niște date statistice de acolo, așa că vine cu propunerea: hai să numărăm cuvintele dintr-o frază! E simplu, luăm fraza și o băgăm într-un malaxor de cuvinte. Știm cum se face algoritmul, așa că hai să facem și apoi vedem noi ce ne dă! O abordare inginerească.

    În plus, ceea ce putem analiza algoritmic e doar trupul unui mesaj. Sufletul lui este dat de sensul cuvintelor respective.

    Iată o frază interesantă din limba engleză:

    „Time flies like an arrow; fruit flies like a banana.”

    Cineva poate spune că o limbă în care cuvintele sunt scurte și pot avea sensuri multiple este mai simpluță, dar tot ea ne va permite construcția unor fraze ca cea de mai sus. Bine, avem și noi un banc de tipul ăsta, în care profesoare îi dă lui Garcea propoziția „Venea o moară pe Siret” și îl întreabă care-i subiectul, iar Garcea răspunde: „Venea”! Pentru că subiectul e cel care realizează acțiunea, și deci… cine omoară pe Siret? 🙂

    În sfârșit, ideea e că lucrurile sunt mai fine decât am putea crede la prima vedere, dat fiind că în ultimă instanță limba este anticamera modului de gândire al unui om sau al unui popor, expresia vizibilă a structurii lui mentale și intelectuale. Așa că simpla analiză fugitivă a unor metrici poate fi înșelătoare și la rigoare nocivă. Dar, sigur, putem să facem și așa ceva dacă chiar vrem, de ce nu. Cu riscul să cădem în tentația ca apoi să credem că prin asta ne-am apropiat foarte mult de natura intimă a limbii respective și am înțeles cu ce se mănâncă sau că am obținut o statistică prin care putem sorta oarecum niște limbi într-o anumită ordine. 🙂

    Alternativ, îl putem studia pe Eminescu (gen).

  4. Mei, statistica este la fel de folositoare precît observațiile pe care le îngăduie ea. Ca multe alte intreprinderi umane, o facem pentru a încerca să distingem modele (patterns), tendințe, chestii care mai apoi ne îngăduie să facem distincții mai fine decît eram capabili înainte. Asta dacă este într-adevăr ceva de observat în datele statistice respective.

    De ce facem statistici pe oameni? Cu siguranță nu doar ca să rîdem de rezultatele gen „omul mediu are 1,7 picioare” sau „bărbatul mediu are 1,5 testicule”. Ci ca să aflăm ceva despre populațiile studiate. Ba chiar ca să faci studii comparative despre populații diferite.

    Cu certitudine nu mă gîndesc la abordări simpliste. Cînd mă gîndesc la complexitatea unui text în română, îmi este clar că nu ne putem limita doar o anumită dimensiune a textului (e.g. lungimea cuvintelor), ar fi și culmea. Cel mai probabil este un mix de mai mulți parametri.

    Tu ai dreptate că nu poți rezolva pur inginerește problemele de lingvistică, dar pe de altă parte, tu ai o abordare prea .. pufoasă, vezi-Doamne ar fi limbile chestia asta intangibilă și mereu fluidă, pe care nu le poți prinde și încorseta în reguli. Ete fîs, poți, cît timp îți stabilești clar limitele așteptărilor pe care le ai.

    Scorul Flesch-Kincaid nu-ți promite că un text în engleză va putea fi citit de *orice* persoană de nivelul respectiv, ci doar de o persoană medie. Dacă scorul spune că un text este adecvat unei persoane cu studii de clasa a cincea, asta nu înseamnă că orice elev de 11 ani va înțelege la fel; și la ei vor fi diferențe între elevii din Utah și California, sau dintre cei de pe sate și cei din orașe. Rezultele sunt adecvate doar atîta timp cît suntem dispuși să contextualizăm și să luăm în calcul factorii locali.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *