Termenul „algoritm” este tot mai des întâlnit. Dar, când discutăm despre algoritmii folosiți de platforme precum YouTube sau Facebook, la ce ne referim de fapt? Ce sunt acești algoritmi și de ce sunt subiectul a atâtea plângeri?
Algoritmii: Instrucțiuni pentru Rezolvarea Problemelor
Deși calculatoarele ne înconjoară, înțelegerea lor rămâne adesea superficială. Totuși, există un domeniu al informaticii unde principiile de bază sunt accesibile: programarea.
Programarea, deși nu este o activitate glamuroasă, constituie temelia tuturor programelor, de la cele de birou la sistemele de apeluri automate. Chiar dacă percepția noastră despre programare vine din filme vechi sau știri, înțelegem rolul programatorului: acela de a scrie cod pe care computerul îl urmează pentru a rezolva probleme sau a îndeplini sarcini.
În esență, un algoritm este un termen echivalent cu „cod”, un set de instrucțiuni care ghidează computerul în rezolvarea unei probleme, indiferent cât de simplă ar fi aceasta. De la procesul de pornire a computerului până la redarea unei imagini din spațiul cosmic folosind unde radio, totul implică algoritmi.
Termenul „algoritm” poate descrie orice set de instrucțiuni, nu doar în informatică. De exemplu, modul în care îți organizezi tacâmurile sau cum te speli pe mâini sunt, în sine, algoritmi.
Totuși, în prezent, cuvântul „algoritm” tinde să fie asociat cu discuții tehnice specifice. Nu auzim referiri la algoritmi pentru operații matematice simple sau la instrumente de desen. În schimb, utilizatorii de Instagram se plâng de algoritmii de recomandări, iar grupurile de activiști critică algoritmii de colectare a datelor de pe Facebook.
Dacă „algoritm” este un termen general pentru instrucțiunile de calcul, de ce îl folosim mai ales pentru a descrie aspecte obscure, complexe și problematice ale mediului digital?
Confuzia dintre „Algoritmi” și „Învățare Automată”
În trecut, atât programatorii, cât și cultura pop se refereau la majoritatea instrucțiunilor de calcul ca fiind „cod”. Așa este în continuare, în mare parte. Domeniul „învățării automate” este locul unde folosim din ce în ce mai mult cuvântul „algoritm” în locul celui de „cod”, ceea ce a amplificat confuzia și anxietatea legată de acest termen.
Deși învățarea automată există de mult timp, aceasta a devenit o componentă majoră a lumii digitale abia în ultimii 15 ani. Conceptul de învățare automată, deși pare complicat, este destul de ușor de înțeles: programatorii nu mai scriu cod pentru fiecare situație, ci creează cod care se poate scrie singur.
Imaginați-vă că este o formă mai practică de inteligență artificială. Dacă marchezi constant e-mailurile șefului ca spam, clientul tău de e-mail va începe să le filtreze automat în folderul de spam. Similar, Google utilizează învățarea automată pentru a menține relevanța rezultatelor căutărilor pe YouTube, iar Amazon o folosește pentru a-ți sugera ce produse ai putea cumpăra.
Bineînțeles, învățarea automată nu este lipsită de probleme. Numele în sine, „învățare automată”, sună neliniștitor pentru unii, iar anumite aplicații sunt discutabile din punct de vedere etic. Algoritmii folosiți de Facebook pentru a colecta date sau pentru a profila utilizatorii sunt exemple negative de învățare automată.
În mass-media, auzim adesea despre „algoritmul Google” pentru clasarea rezultatelor căutării, „algoritmul YouTube” pentru recomandarea videoclipurilor și „algoritmul Facebook” pentru a selecta postările din feed-ul nostru. Toate acestea sunt subiecte de dezbatere și controverse.
Controversele Generate de Algoritmi
Împărțirea lungă este un algoritm cunoscut, folosit pentru a împărți numerele. Este aplicat de elevi, dar și de computere. Procesoarele Intel folosesc un algoritm complet diferit, dar rezultatele sunt similare.
Tehnologia de recunoaștere vocală se bazează adesea pe învățare automată, dar nimeni nu vorbește despre „algoritmul” de conversie vorbire-text, deoarece există un rezultat corect obiectiv, ușor de verificat de oricine. Nu ne pasă de cum reușește computerul să interpreteze ce spunem, ne interesează doar dacă a înțeles corect.
Însă, alte aplicații ale învățării automate nu au un răspuns „corect” unic. De aici rezultă și controversele.
Un algoritm de sortare alfabetică a unei liste este doar o modalitate de a finaliza o sarcină definită. Dar un algoritm precum cel folosit de Google pentru a clasifica cele mai relevante site-uri web sau cel folosit de YouTube pentru a recomanda videoclipuri este mai vag și nu se concentrează pe îndeplinirea unei sarcini definită. Oamenii pot contesta dacă aceste rezultate sunt cele mai bune, iar opiniile pot varia. În cazul sortării alfabetice, toată lumea este de acord că lista va fi sortată corect. Nu există loc de dezbatere.
Cum Ar Trebui Să Folosim Termenul „Algoritm”?
Algoritmii sunt fundamentul tuturor programelor. Fără ei, nu am avea computere sau telefoane, iar acest text ar fi, probabil, pe hârtie (de fapt, nu l-ai putea citi deloc).
Totuși, publicul larg nu folosește termenul „algoritm” ca un sinonim pentru codul computerului. Mulți cred că există o diferență între cod și algoritm, dar nu este cazul. Asocierea dintre „algoritm” și învățarea automată a dus la o percepție mai neclară a termenului, dar și la o utilizare mai specifică.
Ar trebui să începem să folosim cuvântul „algoritm” pentru a descrie orice fel de cod, chiar și cel mai simplu? Probabil că nu, deoarece nu toată lumea ar înțelege ce vrem să spunem. Limbajul evoluează mereu, din motive întemeiate. Avem nevoie de un termen pentru a descrie lumea complexă și uneori dubioasă a învățării automate, iar „algoritm” a ajuns să îndeplinească acest rol, cel puțin deocamdată.
Important este să reținem că un algoritm (și învățarea automată) este, de fapt, un set de instrucțiuni codificate care rezolvă sarcini. Nu există magie, ci doar o versiune mai complicată a programelor cu care suntem deja familiari.
Surse: Ardezie, Wikipedia, GeeksforGeeks