Entrades amb l'etiqueta ‘codificació’

La paradoxa de la informació

divendres, 8/09/2017

La informació no té una definició única. La gran enciclopèdia catalana diu que informació és una “notícia o notícies que hom tracta de saber, que hom rep”, però que també és el “contingut d’una o més dades, tot fent abstracció de la representació concreta que adopta”. Coses que volem saber o que acabem sabent, i que podem extreure de les dades que rebem. La Wikipèdia, d’altra banda, la defineix com “tot allò que un ser humà és capaç de percebre, incloent-hi les comunicacions escrites i orals, les imatges, l’art o la música”, i com “el fet de processar, manipular i organitzar dades d’una forma que produeixin coneixement i esvaeixin el desordre”.

La informació és multifacètica. És el que percebem, el que incrementa el nostre coneixement. També, en paraules de Claude Shannon, informació és allò que redueix la incertesa. La frase “avui a la nit serà fosc” no és informativa perquè és quelcom que tots sabem. Però si dic “aquesta nit no vindré a sopar” estic concretant, disminueixo la incertesa, i per tant informo (vegeu la nota al final). Ara bé, a més d’aquest aspecte cultural i comunicatiu, la informació s’ha de transmetre, i aquí és on apareixen les dades, l’ordre i el substrat que la suporta. Les plantes informen amb les seves olors, les formigues amb els rastres i els ocells amb els seus cants. Els sons dels dofins o dels rossinyols, perfectament codificats, ordenats i seqüenciats, són útils als seus companys encara que nosaltres no els entenguem. Per això, podem dir que la informació requereix un determinat ordre en un cert substrat, a més d’un codi que li doni sentit i ens permeti llegir-ne el significat. Podem llegir un article a la pantalla de l’ordinador només quan el seu conjunt de més d’un milió de píxels s’ordena i ens mostra les lletres del text en negre sobre blanc, i tot seguit el podem recordar gràcies a l’ordre químic de les neurones del nostre cervell. Quan una persona parla en una llengua que desconeixem o escriu signes que no entenem, observem l’ordre sonor o gràfic del que fa, però no podem captar la semàntica dels seus missatges.

Què ens diu, la imatge de dalt? A primera vista, són 15 ametlles disposades en un ordre estrany damunt una pedra, formant set columnes amb 4, 3, 2, 1, 1, 2 i 2 fruits secs. Imagineu ara que tenim una quadrícula imaginària amb 4 files i 8 columnes, de manera que la primera columna és a l’esquerra i no té cap ametlla. L’ordre es fa més explícit, i ens presenta quatre files de 8 caselles, algunes plenes i altres buides. Ara ja veiem, en aquest substrat d’ametlles, una taula ordenada; però encara ens falta el descodificador. Però només cal que ens diguin que les hem disposat en files seguint el codi ASCII dels ordinadors, i ja podrem llegir el missatge: les quatre files codifiquen les quatre lletres de la paraula “Bits”.

En informàtica, tota la informació es codifica i representa amb seqüències de bits. Cada lletra dels texts que escrivim als missatges i correus electrònics i cada lletra dels articles i llibres que llegim i que trobem a la web, es guarda en un “byte“, que són 8 bits. Els sons, els missatges de veu, les fotos, la nostra agenda, els vídeos i tot el que tenim als ordinadors tenen el mateix aspecte: una llarga tirallonga de bits “1” i “0”. Els ordinadors funcionen gràcies a que apliquen el descodificador adequat a cada tipus d’informació, perquè si per exemple utilitzessin el codi ASCII per interpretar vídeos, no veuríem res. D’altra banda, els bits són també una eina de mesura: si codifiquem la informació de manera òptima i eliminant totes les possibles redundàncies, la quantitat d’informació es pot mesurar pel nombre de bits que ocupa. Però aquesta mesura acaba sent diferent pels humans i pels ordinadors, cosa que té conseqüències pràctiques molt concretes, per exemple quan l’ordinador o el mòbil ens demana que escollim i entrem una nova paraula clau (un nou “password“): tenim una falsa percepció d’allò que és indesxifrable (vegeu un cop més la nota al final).

Per bé o per mal, som al segle de la informació. En Gérard Berry comenta que el segle XIX va ser el segle de la matèria, de la química i de la síntesi dels metalls i altres elements. El segle XX, en canvi, va ser el segle de l’energia, a més de la matèria: l’electricitat, el petroli, l’energia nuclear i fins i tot l’inici de les renovables. El segle passat va veure el naixement de la informàtica, però no ha estat fins el segle XXI que hem vist un creixement quasi explosiu de la quantitat informació que corre pel món. Recordo que, l’any 1992, el disc dur del meu ordinador era de 20 MB (un “MegaByte” és un milió de bytes, equivalent a 8 milions de bits). Ara, qualsevol targeta “MicroSD” de mòbil té 16 o 32 GB, més de mil vegades més que el que jo podia guardar fa tan sols 25 anys. No parem de generar, guardar i “compartir” informació.

La paradoxa del moment actual, però, ens l’explica molt bé en Renee Morad. Internet fa que la informació sigui més accessible que mai. Però molts dubten (dubtem) de la veracitat del que hi troben. Aquesta desconfiança (sobretot en fonts “llunyanes”, tal vegada esbiaixades i poc contrastades) alimenta una demanda de nova informació que és cada vegada més gran. En altres paraules: hi ha massa informació; però, en no saber quina és certa i quina és falsa i del tot il·lusòria, nosaltres en generem més. Com que moltes persones fan el mateix, es manté el creixement continu de la quantitat d’informació. Cada cop hi ha més informació que és menys fiable en mitjana i cada cop es farà més difícil filtrar-la. Incrementem la quantitat mentre reduïm la qualitat. Llegir és fàcil, entendre i comprendre serà cada vegada més difícil.

Per cert, en David Foster Wallace deia que ensenyar a pensar és ensenyar a ser una mica menys arrogant i a contemplar-nos nosaltres mateixos i les nostres certeses amb consciència crítica, perquè un gran percentatge del que tendim a donar per segur s’acaba demostrant que és fals i del tot il·lusòri.

———

NOTA: L’entropia de Shannon és una mesura del desordre que conté un missatge. És clau per a quantificar la informació que conté. En concret, la informació que conté un missatge es pot mesurar com la inversa de seva probabilitat (aquí, per exemple, en podeu veure una explicació senzilla i basada en exemples de predicció meteorològica). Quan ens parlen d’un fenomen rar, la seva probabilitat és baixa i per tant, la mesura de la informació que aporta és alta. En canvi, quan ens diuen una obvietat d’absoluta certesa (com que “la sang és vermella”), la probabilitat és màxima i la informació, nul·la. En tot cas, la novetat d’una certa informació depèn del receptor: la frase “la capital de Finlàndia és Hèlsinki” segurament no aporta cap nova informació a moltes persones mentre que, per algunes altres, pot ser quelcom nou i informatiu.

Com podeu veure en aquesta auca, la dificultat de les paraules clau que utilitzem (i la informació que contenen) és molt diferent pels humans i per les màquines. L’auca compara les paraules clau “Tr0ub4dor&3” i “correcthorsebatterystaple“. La primera es basa en escollir una paraula poc usada (en aquest cas podria ser “troubador” en anglès), posar o no la primera lletra en majúscules, fer un parell de substitucions, i afegir al final un signe de puntuació (“&” en aquest cas) i un dígit numèric. La segona consisteix simplement en concatenar quatre paraules més o menys corrents, “correct horse battery staple“.

L’entropia de la primera opció és de l’ordre de 28 bits, si pensem que el diccionari de paraules poc usades que utilitzem té unes 65 mil paraules (2 a la 16); la resta de bits són deguts a decisions sobre com hem de modificar aquesta paraula i quins són els darrers dos caràcters de la paraula clau. Una màquina que faci mil tests per segon pot provar totes les possibilitats (2 a la 28) en uns tres dies i per tant acabarà descobrint el nostre password. Però als humans se’ns fa molt difícil recordar la paraula inicial i tots els canvis i substitucions. Segur que al cap d’un temps no recordem el que havíem posat.

En canvi, l’entropia de la segona opció és de l’ordre de 44 bits, si pensem que el diccionari de paraules que utilitzem té dues mil paraules (2 a la 11), perquè 11 per 4 és 44. A raó de 1000 tests per segon, una màquina necessitaria 550 anys per provar totes les possibilitats (2 a la 41 segons). En aquest cas tenim una paraula clau que ens és fàcil de recordar si pensem en alguna regla mnemotècnica o en alguna idea que ho lligui tot, però que en canvi les màquines i sistemes automàtics no la podran desxifrar.

Com diu l’auca, després de vint anys d’esforços, hem après a usar paraules clau que els humans no som capaços de recordar, però que les màquines poden desxifrar fàcilment. Un consell: si volem tenir paraules clau que siguin realment privades, millor que pensem en trucs que siguin complicats per les màquines i sistemes automàtics, encara que a nosaltres ens semblin fàcils…

Pitàgores i l’espai de les músiques

dimecres, 15/07/2015

Els telèfons mòbils cada cop fan més coses. Els anomenem mòbils enlloc de telèfons perquè ningú dubta de la seva mobilitat, tots nosaltres els portem arreu del món quasi com un apèndix del nostre cos. Entre les seves funcions extra-telefòniques, els darrers anys n’ha sorgit una de nova: La identificació i reconeixement de melodies. Hi ha aplicacions que ens donen tota la informació que desitgem de qualsevol música que estem escoltant. És com màgic, perquè ens ajuden en el que fins ara era impossible. Som al carrer o amb uns amics i escoltem una música que ens atrapa. Voldríem poder tornar-la a escoltar, però moltes vegades no recordem ni el nom, ni l’autor, ni l’artista. Amb aquestes noves apps, només hem de deixar que el micròfon del mòbil capti la melodia i en uns instants, el telèfon ens mostra tot el que volíem saber. En algunes aplicacions, fins i tot podem cantar o xiular la cançó que volem reconèixer. Ens ha arribat el Google de les músiques.

Com funciona, el reconeixement de melodies? De fet, la idea bàsica no és massa complicada. El mòbil envia la melodia que hem registrat a un ordinador central anomenat servidor, aquest servidor l’analitza, la converteix en un conjunt de valors que la identifiquen i la situa en un punt de l’espai de les músiques, espai on cada música és representada per un punt en una posició específica i determinada i on abans ja hem marcat molts punts, els de totes les cançons que prèviament hem identificat. Ara només cal trobar el punt més proper al que acabem de calcular amb l’objectiu de saber, de totes les músiques que ja tenim codificades, quina és la més semblant a la que hem escoltat. El servidor envia aquest resultat al nostre mòbil, i finalment acaba identificant la melodia que havíem escoltat. Hi ha comunicació telefònica entre mòbil i servidor encara que no és de veu sinó de música codificada com a dades.

Tot plegat té dos passos essencials. La conversió de la melodia en un conjunt de valors que la identifiquen, i la cerca de melodies semblants dins l’espai de les músiques. El primer és un pas de transcripció, codificació o representació. Vindria a ser com passar-li una enquesta a la melodia que estem escoltant, per obtenir un conjunt de respostes o valors que la identifiquin. Es podria fer amb lletres o paraules, però habitualment és fa amb valors numèrics. En el projecte Pandora, per exemple, cada melodia es representa amb un conjunt d’uns 450 valors, tots ells entre 1 i 5. Aquesta tira de 450 valors, que els de Pandora anomenen gens perquè codifiquen l’essència de la melodia, és com una immensa paraula identificativa que permet analitzar, comparar i cercar; és el seu nom. Perquè el primer pas per trobar, associar i estudiar és saber el nom de les coses i això és el que necessitem, per exemple, si volem cercar un concepte al diccionari o a internet. La conversió de les melodies en aquest conjunt de valors que les identifiquen és el pas previ imprescindible per poder trobar similituds. En el cas de les melodies musicals, a la majoria d’aplicacions per mòbils el càlcul del conjunt de gens o valors que les codifiquen es fa amb algorismes automàtics que calculen tot tipus de descriptors, encara que en d’altres casos com el del projecte Pandora la codificació és manual, a càrrec d’un grup d’experts en composició musical i amb validacions redundants per al control de qualitat.

Imaginem per un moment que podem caracteritzar una melodia només amb dos valors. Podem agafar un paper, i representar cada música per un punt tal com es fa a les representacions gràfiques: el seu primer valor l’assignem a la coordenada horitzontal o abscissa, i el segon, a la coordenada vertical. Tindrem tants punts al paper com músiques diferents haguem codificat, i si mesurem el grau de semblança o proximitat entre qualsevol parella de punts com el quadrat de la seva distància, el podrem calcular ben fàcilment amb el teorema de Pitàgores. Ara, si en lloc de dos valors les codifiquem amb tres valors o gens, podrem fer el mateix si representem els punts de les músiques a l’espai tridimensional amb tres coordenades x, y, z, i podrem calcular la proximitat o distància al quadrat de la mateixa manera perquè el teorema de Pitàgores es pot estendre a 3D, vegeu la Nota al final. Doncs bé, costa una mica d’imaginar però el que es fa en el cas de les melodies és exactament el mateix però a l’espai de les músiques, l’espai que representa la imatge de dalt i que podeu trobar a aquesta pàgina web. Si pensem que les representem amb 450 valors, cada una d’elles acaba sent un punt en aquest l’espai que no és pla ni tridimensional sinó de dimensió 450. Sembla complicat. Però, encara que Pitàgores mai ho hagués pensat, el seu teorema també es pot aplicar en aquests espais de tantes i tantes dimensions (vegeu un cop més la Nota al final) i ens calcula quina és la música més propera a la que acabem d’escoltar.

Qui li havia de dir a Pitàgores de Samos que, 2500 anys més tard, el seu teorema serviria per identificar músiques amb un petit i estrany giny que tots portem amb nosaltres com una peça més de vestir?. No sabem massa de la seva vida, però sí que sabem el que feien i pensaven els seus seguidors, l’escola dels Pitagòrics. Eren vegetarians, pensaven que l’estructura de l’Univers era aritmètica i geomètrica i deien que “tot són nombres” perquè van quedar marcats per la bellesa numèrica dels intervals musicals. Segons explica Xenòcrates, Pitàgores va descobrir la misteriosa connexió entre les matemàtiques i la música, tot adonant-se que les notes harmòniques, les que agraden al nostre cervell, es creen en dividir una corda vibrant en proporcions 1:2, 2:3, 3:4. I va veure que també surten dels cops de martell dels ferrers quan treballen amb martells amb pesos que segueixen aquestes mateixes proporcions. Imagineu quina seria la seva sorpresa si veiés que les melodies que componem amb les notes que ell va quantificar, les podem reconèixer i identificar amb ajut del seu famós teorema…

Per cert, en Wolfgang Münchau diu que aquest cap de setmana els creditors de Grècia han destruït l’eurozona tal com la coneixem i han ensorrat la idea de la unió monetària com a pas cap a la unió política democràtica. Es pregunta si un programa de reforma econòmica per al qual el govern no té cap mandat, que ha sigut explícitament rebutjat en un referèndum i que ha estat imposat purament per xantatge polític, té alguna possibilitat de funcionar.

—–

NOTA: El teorema de Pitàgores diu, com sabem, que el quadrat de la hipotenusa d’un triangle rectangle és igual a la suma de quadrats dels catets. Això, clar, és en el pla, en dues dimensions. Però una de les coses interessants d’aquest teorema és que serveix per a qualsevol dimensió. Si tenim dos punts P i Q en un mapa i volem calcular la distància que els separa per saber si són propers o llunyans, podem pintar un triangle rectangle i començar calculant la diferència b entre les seves latituds (que correspon a la longitud del catet nord-sud) i la separació c entre les seves longituds (que correspon a la longitud del catet est-oest). Si b i c els expressem en quilòmetres i si no són massa grans, podrem menysprear la curvatura de la Terra, suposar que el triangle és pla, i calcular el quadrat de la distància entre P i Q amb el teorema de Pitàgores, fent b*b+c*c. Ara bé, aquest càlcul només serà cert si som en una comarca plana. Si P és a la vora del mar i Q és dalt d’una muntanya a 1000 metres, el teorema de Pitàgores en tres dimensions ens diu que el quadrat de la distància entre P i Q és b*b+c*c+h*h, on h és la diferència d’alçades entre els dos punts. En tres dimensions, el teorema de Pitàgores té tres termes. I no és difícil veure que això es compleix en qualsevol dimensió. El quadrat de la distància (anomenada Euclidiana) entre els punts que representen dues melodies en l’espai de les músiques (espai que podem suposar, per exemple, de dimensió 450) és el resultat de restar els valors de cada una de les parelles homòlogues de gens a una i altra melodia, elevar totes aquestes diferències al quadrat, i sumar-les. Només amb un petit detall: no totes les diferències “valen igual”, hem de donar més importància a unes que a les altres. És el mateix que passa amb els punts dels mapes. Si veiem que la distància en horitzontal (arrel quadrada de b*b+c*c) entre els nostres punts P i Q és de 10 quilòmetres, és fàcil veure que amb una diferència d’alçades de 1000 metres, la nova distància Euclidiana, arrel de b*b+c*c+h*h és de 10 quilòmetres i 50 metres. La línia recta entre P i Q només s’allarga 50 metres quan el punt Q puja 1000 metres. És el que ens diu la geometria, que no coincideix pas amb el que ens diu el nostre cos perquè la nostra percepció subjectiva de distància és bastant més petita quan P i Q són a una mateixa plana que quan Q és dalt d’una muntanya. Com podem calcular aquestes distàncies subjectives? És fàcil, només cal donar més importància a les alçades. És el que en geometria es diu “canviar la mètrica”. És com si canviéssim l’escala vertical. Podem calcular distàncies subjectives en els mapes si canviem una mica la formula i escrivim b*b+c*c+w*h*h, on w és el pes o importància que volem donar a les alçades. Quan fem el càlcul amb w=1 obtenim la distància Euclidiana mentre que si el fem, per exemple, amb w=100, obtenim un valor molt més proper a la nostra percepció subjectiva. I ara, tornant al cas de les distàncies entre melodies, el que fan els programes de reconeixement va en aquesta línia de donar pesos diferents als diferents “gens” i treballar amb una mètrica no Euclidiana: cal restar els valors de cada una de les parelles homòlogues de gens a una i altra melodia, elevar totes aquestes diferències al quadrat, multiplicar cada un d’aquests quadrats pel seu pes, i sumar-los. Els pesos, positius,  es calculen habitualment amb algorismes d’aprenentatge automàtic, però d’això, si us sembla, en parlarem un altre dia.