Comunica experienta
MonitorulJuridic.ro
În conformitate cu prevederile art. 65 alin. (3) şi (4) din Legea educaţiei naţionale nr. 1/2011, cu modificările şi completările ulterioare, având în vedere prevederile art. 4 lit. a) din Hotărârea Guvernului nr. 277/2020 privind organizarea şi funcţionarea Centrului Naţional de Politici şi Evaluare în Educaţie, în baza Ordinului ministrului educaţiei naţionale nr. 3.593/2014 pentru aprobarea Metodologiei privind elaborarea şi aprobarea curriculumului şcolar - planuri-cadru de învăţământ şi programe şcolare, a Ordinului ministrului educaţiei nr. 3.239/2021 privind aprobarea documentului de politici educaţionale Repere pentru proiectarea, actualizarea şi evaluarea Curriculumului naţional. Cadrul de referinţă al Curriculumului naţional şi a Ordinului ministrului educaţiei nr. 3.238/2021 pentru aprobarea Metodologiei privind dezvoltarea curriculumului la decizia şcolii, în temeiul art. 13 alin. (3) din Hotărârea Guvernului nr. 369/2021 privind organizarea şi funcţionarea Ministerului Educaţiei, cu modificările şi completările ulterioare, ministrul educaţiei emite prezentul ordin. ART. 1 Se aprobă Programa şcolară pentru disciplina opţională „Introducere în învăţarea automată (machine learning)“ - curriculum la decizia şcolii pentru învăţământul liceal, clasa a XI-a/clasa a XII-a, prevăzută în anexa care face parte integrantă din prezentul ordin. ART. 2 Programa şcolară prevăzută la art. 1 se aplică începând cu anul şcolar 2022-2023. ART. 3 Direcţia generală învăţământ preuniversitar, Centrul Naţional de Politici şi Evaluare în Educaţie, inspectoratele şcolare şi unităţile de învăţământ duc la îndeplinire prevederile prezentului ordin. ART. 4 Prezentul ordin se publică în Monitorul Oficial al României, Partea I. p. Ministrul educaţiei, Gigel Paraschiv, secretar de stat Bucureşti 14 iunie 2022. Nr. 4.049. ANEXA 1 PROGRAMA ŞCOLARĂ pentru disciplina opţională „Introducere în învăţarea automată (machine learning)“ - curriculum la decizia şcolii pentru învăţământul liceal, clasa a XI-a/clasa a XII-a NOTĂ DE PREZENTARE Programa şcolară pentru disciplina opţională „Introducere în învăţarea automată (machine learning)“ reprezintă o ofertă curriculară de tip opţional ca disciplină nouă în oferta naţională pentru învăţământul liceal, proiectată pentru un buget de timp de 1 oră/săptămână, pe durata unui an şcolar. Disciplina se poate studia în clasa a XI-a sau în clasa a XIIa şi necesită competenţe minime de programare. Prin urmare, această disciplină opţională se adresează elevilor de la filiera teoretică, profil real. Studiul disciplinei „Introducere în învăţarea automată (machine learning)“ se va desfăşura cu întreg colectivul de elevi şi necesită acces la dispozitive de calcul. Învăţarea automată (machine learning) este, în prezent, principala abordare care are ca scop construirea de sisteme inteligente, adică sisteme ce pot rezolva sarcini complexe cum ar fi recunoaşterea unei persoane într-o imagine, traducerea unui text dintr-o limbă străină sau abilitatea de a juca şah la nivel profesionist şi exemplele pot continua. Crearea de astfel de sisteme inteligente reprezintă obiectul de studiu al inteligenţei artificiale, domeniu larg de cercetare aflat la intersecţia dintre informatică, matematică, inginerie, statistică, neuroştiinţe, ştiinţele educaţiei etc. Învăţarea automată se bazează pe algoritmi care permit sistemelor să înveţe din experienţă. În timp ce în sistemele clasice sunt programaţi explicit toţi paşii de rezolvare a problemei, sistemele bazate pe învăţare automată primesc multe exemple şi învaţă singure să obţină soluţia potrivită. Programa şcolară a disciplinei „Introducere în învăţarea automată (machine learning)“ răspunde nevoilor de alfabetizare digitală, din perspectiva noilor cerinţe socioprofesionale, printrun curriculum relevant, vizând formarea unui set de competenţe digitale, pe care absolvenţii învăţământului liceal să le poată valorifica în viaţa activă. În elaborarea acestei programe şcolare a fost luată în considerare Cartea albă privind inteligenţa artificială - O abordare europeană axată pe excelenţă şi încredere. Aceasta a fost publicată la 19 februarie 2020 de către Comisia Europeană şi prezintă principiile de bază ale unui viitor cadru de reglementare al UE pentru inteligenţa artificială în Europa: https://ec.europa.eu/info/strategy/priorities-2019-2024/europe- fit-digital-age/excellence-trust-artificial-intelligence_ro De asemenea, s-a ţinut cont de preocupările intense la nivel naţional, precum: - elaborarea cadrului strategic naţional în domeniul inteligenţei artificiale, parte a proiectului „Cadru strategic pentru adoptarea şi utilizarea de tehnologii inovative în administraţia publică 2021-2027 - soluţii pentru eficientizarea activităţii“: https://www.adr.gov.ro/cadru-strategic-pentru-adoptarea-si-utilizarea-de-tehnologii-inovative-in-administratia-publica-2021 2027-solutii-pentru-eficientizarea-activitatii-cod-sipoca-704/ – Strategia privind digitalizarea educaţiei din România (proiect): https://www.edu.ro/sites/default/files/SMART.Edu%20-%20 document%20consultare.pdf – Repere pentru proiectarea, realizarea şi evaluarea curriculumului naţional. Cadrul de referinţă al Curriculumului Naţional (anexa la Ordinul ministrului educaţiei nr. 3.239/2021 privind aprobarea documentului de politici educaţionale Repere pentru proiectarea, actualizarea şi evaluarea Curriculumului naţional. Cadrul de referinţă al Curriculumului naţional) – recomandarea ANIS (Asociaţia Patronală a Industriei de Software şi Servicii), care atrage atenţia asupra includerii în Strategia naţională pentru inteligenţă artificială a unor măsuri concrete prin care curriculumul şcolar să fie actualizat şi adaptat evoluţiei tehnologice: http://ina.gov.ro/tema-lunii-digitalizarea-si-inteligenta-artificiala-in-administratia-publica/ Pentru dezvoltarea unor soluţii informatice care au în vedere învăţarea automată (machine learning) se recomandă utilizarea limbajului de programare Python. Alegerea acestui limbaj a fost motivată de posibilitatea accesării gratuite a unor biblioteci care oferă mecanisme/facilităţi de utilizare a algoritmilor specifici învăţării automate. Mai mult, în momentul de faţă, atât în industria software, cât şi în mediul academic, implementarea algoritmilor de învăţare automată (machine learning) se face frecvent în limbajul Python. Din perspectiva modelului de proiectare curriculară, programa şcolară de faţă include următoarele elemente: • Notă de prezentare • Competenţe generale • Competenţe specifice şi exemple de activităţi de învăţare • Conţinuturi • Sugestii metodologice • Referinţe bibliografice Competenţele sunt ansambluri structurate de cunoştinţe, abilităţi şi atitudini formate prin învăţare, care permit rezolvarea unor probleme specifice unui domeniu sau a unor probleme generale, în contexte particulare diverse. Competenţele generale vizează achiziţiile de cunoaştere şi de comportament ale elevului din învăţământul preuniversitar. Competenţele specifice sunt derivate din competenţele generale, reprezintă etape în dobândirea acestora, formânduse pe durata unui an şcolar. Pentru realizarea competenţelor specifice, în programă sunt propuse exemple de activităţi de învăţare, cu un caracter orientativ, prin care se valorifică experienţa concretă a elevului şi care integrează strategii didactice adecvate unor contexte de învăţare variate. Conţinuturile învăţării reprezintă baza de operare pentru formarea competenţelor. Sugestiile metodologice includ strategii didactice şi au rolul de a orienta cadrul didactic în aplicarea programei. Pentru a facilita demersul cadrului didactic, sugestiile metodologice includ, de asemenea, exemple de activităţi de învăţare/evaluare, precum şi trimiteri la suporturi de curs/alte resurse educaţionale utile. Referinţele bibliografice includ o listă de lucrări relevante pentru domeniul de studiu respectiv, care sprijină cadrul didactic în aplicarea programei şcolare. COMPETENŢE GENERALE
┌──────────────────────────────────────┐
│1. Implementarea algoritmilor în │
│limbajul Python │
│2. Elaborarea creativă de soluţii │
│informatice care vizează aspecte │
│sociale, culturale şi personale, │
│utilizând algoritmi care au la bază │
│învăţarea automată │
└──────────────────────────────────────┘
COMPETENŢE SPECIFICE ŞI EXEMPLE DE ACTIVITĂŢI DE ÎNVĂŢARE 1. Implementarea algoritmilor în limbajul Python
┌──────────────────────────────────────┐
│Clasa a XI-a/Clasa a XII-a │
├──────────────────────────────────────┤
│1.1. Utilizarea unui mediu de │
│dezvoltare pentru limbajul Python │
├──────────────────────────────────────┤
│- folosirea interpretorului de comenzi│
│din mediul de dezvoltare utilizat │
│pentru executarea unor scripturi │
│Python model, modificarea lor conform │
│unor cerinţe şi crearea unor secvenţe │
│noi de cod │
├──────────────────────────────────────┤
│- familiarizarea cu funcţionalităţile │
│mediului de dezvoltare pentru editarea│
│codului, de exemplu indentarea │
│codului, sugestii de completare, │
│ajutor contextual │
├──────────────────────────────────────┤
│- familiarizarea cu funcţionalităţile │
│mediului de dezvoltare pentru │
│executarea codului, de exemplu │
│semnalarea erorilor sau depanarea │
│secvenţelor de cod │
├──────────────────────────────────────┤
│1.2. Elaborarea unor scripturi Python │
│care prelucrează tipuri de date de │
│bază │
├──────────────────────────────────────┤
│- recunoaşterea rolului unor elemente │
│prezente în sintaxa instrucţiunilor │
│limbajului Python prin analogia dintre│
│o secvenţă de instrucţiuni Python şi │
│secvenţa corespunzătoare scrisă │
│într-un limbaj de programare studiat │
│sau în pseudocod │
├──────────────────────────────────────┤
│- modificarea unor secvenţe de │
│instrucţiuni pentru a pune în evidenţă│
│rolul elementelor componente (de │
│exemplu, parcurgerea valorilor │
│naturale dintr-un interval în ordine │
│crescătoare/descrescătoare, cu un │
│anumit pas) │
├──────────────────────────────────────┤
│- exersarea operaţiilor de │
│intrare-ieşire prin apelul funcţiilor │
│specifice, pentru diferite tipuri de │
│date şi formate ale acestora │
├──────────────────────────────────────┤
│- rezolvarea unor probleme ce │
│utilizează tipurile de date de bază şi│
│operatorii specifici limbajului Python│
├──────────────────────────────────────┤
│1.3. Elaborarea unor scripturi Python │
│care prelucrează tipuri de date │
│structurate │
├──────────────────────────────────────┤
│- prezentarea datelor structurate │
│(tablouri, liste, dicţionare, tupluri)│
│prin analogie cu alte limbaje de │
│programare studiate şi prin exemple │
│concrete, cum ar fi: folosirea unui │
│dicţionar pentru a memora o agendă │
│telefonică, a unui tablou pentru │
│înregistrarea măsurătorilor unui │
│senzor, memorarea dimensiunilor unei │
│imagini într-un tuplu sau stocarea │
│numelor elevilor înscrişi la un │
│concurs într-o listă │
├──────────────────────────────────────┤
│- crearea, iniţializarea, conversia şi│
│utilizarea unor date structurate, de │
│exemplu pentru a ordona date sau a │
│căuta valori │
├──────────────────────────────────────┤
│1.4. Definirea şi apelarea funcţiilor │
│în Python │
├──────────────────────────────────────┤
│- prezentarea structurii unei funcţii │
│în Python (antet, parametri, mecanisme│
│de transmitere a parametrilor şi │
│returnare a valorilor) │
├──────────────────────────────────────┤
│- utilizarea unor funcţii predefinite/│
│metode, de exemplu, funcţia/metoda len│
│pentru a obţine lungimea unei │
│structuri de date, funcţia/metoda str │
│pentru a converti o dată numerică în │
│şir de caractere │
├──────────────────────────────────────┤
│- rezolvarea de probleme folosind │
│funcţii definite de utilizator (de │
│exemplu, scrierea unei funcţii care │
│furnizează cel mai mare divizor comun │
│a două numere şi apelul acesteia │
│pentru a determina cel mai mare │
│divizor comun al unei serii de numere)│
├──────────────────────────────────────┤
│- analizarea avantajelor utilizării │
│funcţiilor: reutilizarea codului, │
│elaborarea algoritmilor prin │
│descompunerea problemei în subprobleme│
│mai simple, reducerea numărului de │
│erori care pot apărea la scrierea │
│programelor, depistarea cu uşurinţă a │
│erorilor, realizarea unor programe │
│uşor de urmărit (lizibile) │
├──────────────────────────────────────┤
│- rezolvarea de probleme care necesită│
│prelucrarea unor date structurate (de │
│exemplu, listele sau dicţionarele ce │
│pot fi utilizate pentru gestiunea │
│cărţilor dintr-o bibliotecă sau pentru│
│gestiunea unei agende telefonice, │
│evidenţiind metodele/funcţiile │
│predefinite, specifice fiecărui tip de│
│date structurate) │
├──────────────────────────────────────┤
│1.5. Utilizarea bibliotecilor │
│predefinite în elaborarea unor │
│scripturi │
├──────────────────────────────────────┤
│- prezentarea şi exemplificarea │
│utilizării unor funcţii uzuale din │
│cadrul unor biblioteci │
├──────────────────────────────────────┤
│○ Matplotlib - grafice de funcţii şi │
│ale derivatelor lor (de exemplu, │
│funcţia cosinus şi derivata acesteia -│
│funcţia sinus) │
├──────────────────────────────────────┤
│○ Numpy - lucrul cu date │
│multidimensionale: filtrarea datelor │
│după anumite criterii, calculul de │
│funcţii matematice (medie, minim, │
│maxim) pe anumite dimensiuni ale │
│datelor │
├──────────────────────────────────────┤
│○ PIL (Python Image Library) - │
│conversia în tonuri de gri, │
│binarizarea imaginilor, filtrarea │
│imaginilor │
├──────────────────────────────────────┤
│- realizarea de aplicaţii simple ce │
│folosesc funcţiile exemplificate, cum │
│ar fi: trasarea graficului nivelului │
│de poluare, calculul unor valori medii│
│înregistrate pentru diverse tipuri de │
│particule ce poluează sau compresia │
│unor imagini relevante pentru poluare │
└──────────────────────────────────────┘
2. Elaborarea creativă de soluţii informatice care vizează aspecte sociale, culturale şi personale, utilizând algoritmi care au la bază învăţarea automată
┌──────────────────────────────────────┐
│Clasa a XI-a/Clasa a XII-a │
├──────────────────────────────────────┤
│2.1. Caracterizarea inteligenţei │
│artificiale în contextul aplicaţiilor │
│acesteia în viaţa cotidiană │
├──────────────────────────────────────┤
│- prezentarea în evoluţie temporală a │
│sistemelor inteligente cu exemple │
│renumite - Deep Blue, AlexNet, AlphaGo│
│sau AlphaFold │
├──────────────────────────────────────┤
│- identificarea unor aplicaţii ale │
│inteligenţei artificiale în viaţa │
│cotidiană (funcţionarea maşinilor │
│autonome, recunoaşterea facială şi │
│vocală) │
├──────────────────────────────────────┤
│- exersarea reflecţiei critice din │
│perspectiva utilizării inteligenţei │
│artificiale în viaţa de zi cu zi │
├──────────────────────────────────────┤
│- vizualizarea unor materiale video ce│
│redau exemple de succes privind │
│utilizarea inteligenţei artificiale │
├──────────────────────────────────────┤
│2.2. Caracterizarea învăţării automate│
├──────────────────────────────────────┤
│- prezentarea învăţării automate ca │
│subdomeniu al inteligenţei artificiale│
├──────────────────────────────────────┤
│- compararea învăţării automate cu │
│programarea prin algoritmi clasici, │
│identificând aspecte comune şi │
│diferenţe de abordare │
├──────────────────────────────────────┤
│- recunoaşterea unor situaţii în care │
│învăţarea automată este utilă/necesară│
├──────────────────────────────────────┤
│- definirea problemei în învăţarea │
│automată: mulţimea de date pe care se │
│bazează învăţarea (dataset) şi │
│formularea obiectivului/obiectivelor │
│învăţării automate │
├──────────────────────────────────────┤
│- exemplificarea unor situaţii │
│concrete de utilizare a învăţării │
│automate (de exemplu, identificarea │
│unor obiecte în imagini, predicţia │
│unor valori pe baza istoricului) │
├──────────────────────────────────────┤
│- exemplificare prin probleme abordate│
│prin algoritmi clasici versus prin │
│învăţare automată (de exemplu, │
│identificarea unei categorii de │
│obiecte în imagini) │
├──────────────────────────────────────┤
│- prezentarea unor probleme care au │
│soluţii dificil de implementat prin │
│programarea clasică din cauza │
│numărului mare de cazuri posibile │
├──────────────────────────────────────┤
│2.3. Elaborarea unor scripturi Python │
│care implementează algoritmi specifici│
│învăţării automate │
├──────────────────────────────────────┤
│- formularea problemelor principale în│
│învăţarea automată (clusterizare, │
│clasificare, regresie) │
├──────────────────────────────────────┤
│- identificarea asemănărilor şi │
│deosebirilor între clusterizare, │
│clasificare şi regresie │
├──────────────────────────────────────┤
│- proiectarea contextului, pregătirea │
│şi implementarea de algoritmi pentru │
│rezolvarea unor probleme specifice │
│pentru utilizarea învăţării automate │
│(de exemplu, Kmeans pentru │
│clusterizare, KNN pentru clasificare │
│şi regresie liniară) │
├──────────────────────────────────────┤
│- utilizarea funcţiei FORECAST.LINEAR │
│în Excel ca suport de vizualizare a │
│rezultatelor regresiei liniare │
├──────────────────────────────────────┤
│2.4. Alegerea unor algoritmi eficienţi│
│de învăţare automată pentru rezolvarea│
│problemelor │
├──────────────────────────────────────┤
│- analizarea situaţiilor în care │
│predicţia rezultată în urma rulării │
│unui algoritm nu este conformă cu │
│realitatea (de exemplu, utilizarea │
│unor seturi de date neechilibrate care│
│generează predicţii părtinitoare) │
├──────────────────────────────────────┤
│- punerea în discuţie a modului în │
│care elevii au rezolvat o problemă şi │
│a unor situaţii noi în care ar putea │
│fi folosit acelaşi algoritm │
├──────────────────────────────────────┤
│- alegerea algoritmului de învăţare │
│automată (supervizat sau nesupervizat)│
│în funcţie de tipul de date │
│disponibile: etichetate sau │
│neetichetate, continue sau discrete │
├──────────────────────────────────────┤
│- conştientizarea achiziţiilor de │
│învăţare personală în urma aplicării │
│algoritmilor specifici învăţării │
│automate (Ce folosesc pentru viaţă? Ce│
│am învăţat din fiecare situaţie │
│problemă - clusterizare, clasificare, │
│regresie - şi va fi folositor mâine? │
│Ce pot explica altei persoane? etc.) │
└──────────────────────────────────────┘
CONŢINUTURI
┌──────────────┬───────────────────────┐
│Domenii │Conţinuturi │
│de conţinut │ │
├──────────────┼───────────────────────┤
│ │- Repere importante din│
│ │istoricul inteligenţei │
│ │artificiale şi al │
│ │învăţării automate │
│ │- Modul de proiectare │
│ │şi operare a unui │
│ │sistem inteligent bazat│
│ │pe învăţare automată │
│ │- Tipuri de seturi de │
│ │date utilizate în │
│ │învăţarea automată: │
│ │etichetate, │
│ │neetichetate, de │
│Caracteristici│antrenare şi de test │
│ale învăţării │- Atributele unui │
│automate ca │sistem inteligent bazat│
│subdomeniu al │pe învăţare automată: │
│inteligenţei │autonomie, robusteţe, │
│artificiale │capacitate de adaptare,│
│ │învăţare din experienţă│
│ │- Rolul inteligenţei │
│ │artificiale bazate pe │
│ │învăţarea automată în │
│ │societate │
│ │- Elemente de etică în │
│ │utilizarea inteligenţei│
│ │artificiale bazate pe │
│ │învăţarea automată │
│ │(protejarea datelor │
│ │personale, bias, │
│ │diferenţa între │
│ │corelaţie şi │
│ │cauzalitate) │
├──────────────┼───────────────────────┤
│ │- Elemente de lucru în │
│ │mediile de dezvoltare │
│ │pentru limbajul Python:│
│ │interpretor de comenzi,│
│ │fişier de comenzi, │
│ │script, linie de │
│ │comandă │
│ │- Modalităţi de │
│ │instalare/accesare a │
│ │unui interpretor Python│
│ │- Funcţionalităţi ale │
│Medii de │mediului de dezvoltare │
│dezvoltare │pentru editarea │
│Python │codului: indentare, │
│ │sugestii de completare,│
│ │ajutor contextual │
│ │- Funcţionalităţi ale │
│ │mediului de dezvoltare │
│ │pentru executarea │
│ │codului: executare a │
│ │unei comenzi, executare│
│ │a unui script, │
│ │semnalare a erorilor, │
│ │depanare a secvenţelor │
│ │de cod │
├──────────────┼───────────────────────┤
│ │- Noţiuni de bază │
│ │necesare utilizării │
│ │unor clase predefinite:│
│Elemente de │clasă, membri ai clasei│
│bază ale │(date şi metode), │
│programării │obiecte, biblioteci │
│orientate pe │- Instanţiere a unei │
│obiecte │clase predefinite/ │
│ │declarare a unui obiect│
│ │şi acces la membrii │
│ │acestuia │
├──────────────┼───────────────────────┤
│ │- Comenzi şi scripturi │
│ │- structură generală: │
│ │biblioteci, variabile, │
│ │instrucţiuni, funcţii │
│ │- Elemente de vocabular│
│ │al limbajului Python: │
│ │identificatori, │
│ │cuvinte-cheie, │
│ │constante, separatori, │
│ │operatori, comentarii │
│ │- Clase predefinite │
│ │pentru tipuri de date │
│ │de bază în Python: date│
│ │numerice (int, float), │
│ │date logice (bool), │
│ │şiruri de caractere │
│ │(str); iniţializare, │
│ │operaţii specifice │
│ │- Funcţii pentru │
│ │citirea şi afişarea │
│ │datelor: input, print │
│Elemente de │(fără formatare şi cu │
│bază ale │formatare) │
│limbajului de │- Instrucţiuni: │
│programare │instrucţiunea expresie,│
│Python │instrucţiunea │
│ │alternativă (if), │
│ │instrucţiuni repetitive│
│ │(for, while) │
│ │- Clase predefinite │
│ │pentru tipuri │
│ │structurate de date │
│ │(liste, tupluri, │
│ │dicţionare): │
│ │iniţializare, operaţii │
│ │specifice (adăugare/ │
│ │ştergere elemente, │
│ │parcurgeri) │
│ │- Funcţii definite de │
│ │utilizator: antet, │
│ │parametri, domeniul de │
│ │vizibilitate a │
│ │variabilelor, mecanisme│
│ │de transmitere a │
│ │parametrilor şi │
│ │returnare a valorilor, │
│ │apel │
├──────────────┼───────────────────────┤
│ │- Biblioteca Numpy - │
│ │tipuri de date │
│ │multidimensionale şi │
│ │metode pentru calcule │
│ │numerice (min, max, │
│ │sort, len, shape, type)│
│ │- Biblioteca Matplotlib│
│Biblioteci │- metode pentru │
│Python │vizualizarea graficelor│
│utilizate în │de funcţii matematice │
│învăţarea │(plot, show) │
│automată │- Biblioteca PIL │
│ │(Python Image Library) │
│ │- tipuri de date şi │
│ │metode pentru │
│ │manipularea şi │
│ │prelucrarea imaginilor │
│ │(open, save, convert, │
│ │filter, pad) │
├──────────────┼───────────────────────┤
│ │- Definiţia şi │
│ │caracteristicile │
│ │învăţării automate │
│ │nesupervizate │
│ │(utilizează seturi de │
│ │date neetichetate, │
│ │descoperă structura │
│ │intrinsecă a datelor) │
│ │- Clusterizarea ca │
│ │tehnică de învăţare │
│ │nesupervizată: │
│ │obiectivul învăţării, │
│ │criterii de grupare a │
│ │datelor pe baza │
│ │similarităţii │
│ │- Algoritmul de │
│ │clusterizare K-means: │
│ │set de date │
│ │neetichetate (convexe │
│ │şi neconvexe), număr de│
│ │clustere, funcţia de │
│ │similaritate, │
│Învăţare │corespondenţa între │
│automată │date şi clustere ca │
│nesupervizată │date de ieşire │
│ │- Criterii de │
│ │interpretare a │
│ │rezultatelor obţinute │
│ │prin clusterizare: │
│ │puritatea şi densitatea│
│ │clusterelor │
│ │- Avantajele utilizării│
│ │algoritmului de │
│ │clusterizare K-means: │
│ │convergenţă rapidă, │
│ │aplicabilitate pe scară│
│ │largă, uşurinţa │
│ │implementării │
│ │- Dezavantajele │
│ │utilizării algoritmului│
│ │de clusterizare │
│ │K-means: dificultatea │
│ │alegerii numărului │
│ │optim de clustere, │
│ │funcţionarea │
│ │defectuoasă pe seturi │
│ │de date neconvexe │
├──────────────┼───────────────────────┤
│ │- Definiţia şi │
│ │caracteristicile │
│ │învăţării automate │
│ │supervizate (utilizează│
│ │seturi de date │
│ │etichetate de antrenare│
│ │şi de test, descoperă │
│ │corespondenţa între │
│ │date de intrare şi │
│ │etichete) │
│ │- Clasificarea ca │
│ │tehnică de învăţare │
│ │supervizată: obiectivul│
│ │învăţării, natura │
│ │etichetelor (discrete, │
│ │fără relaţie de ordine)│
│ │- Algoritmul de │
│ │clasificare KNN: set de│
│ │date etichetate, număr │
│ │de etichete, distanţa │
│ │între date (vecini), │
│ │vecini luaţi în │
│ │considerare, │
│ │corespondenţa între │
│ │date şi etichete ca │
│ │date de ieşire │
│ │- Criterii de │
│ │interpretare a │
│ │rezultatelor obţinute │
│Învăţare │prin clasificare: │
│automată │acurateţe pe datele de │
│supervizată │antrenare şi de test, │
│ │matricea de confuzie │
│ │- Regresia ca tehnică │
│ │de învăţare │
│ │supervizată: obiectivul│
│ │învăţării, natura │
│ │etichetelor (continue, │
│ │cu relaţie de ordine) │
│ │- Algoritmul de │
│ │regresie liniară: │
│ │dependenţa liniară │
│ │dintre datele de ieşire│
│ │(etichete) şi datele de│
│ │intrare, formule de │
│ │calcul pentru │
│ │parametrii funcţiei │
│ │liniare │
│ │- Criterii de │
│ │interpretare a │
│ │rezultatelor obţinute │
│ │prin regresie: eroarea │
│ │medie │
│ │- Criterii de analiză │
│ │comparativă între │
│ │clasificare şi regresie│
│ │(rezultatele vizate │
│ │sunt discrete sau │
│ │continue, existenţa │
│ │unei relaţii de ordine │
│ │între rezultatele │
│ │vizate) │
└──────────────┴───────────────────────┘
SUGESTII METODOLOGICE Fiecare profesor proiectează unităţile de învăţare, stabileşte succesiunea logică de parcurgere a acestora şi bugetul de timp alocat, într-o manieră flexibilă, având în vedere nivelul de achiziţii şi interesele elevilor, precum şi punând în valoare experienţa şi creativitatea acestora. Este recomandată abordarea, în egală măsură, a aspectelor teoretice şi practice, astfel încât, la finalul parcurgerii programei, elevii să înţeleagă principiile de bază utilizate în învăţarea automată şi să poată demonstra formarea competenţelor specifice. Parcurgerea cu succes a acestei programe este facilitată de cunoştinţe şi abilităţi de programare, folosind unul dintre limbajele studiate la şcoală. De asemenea, noţiuni de matematică sunt necesare ca suport teoretic pentru a înţelege anumite concepte de învăţare automată. Conţinuturile sunt structurate în două părţi: prima parte vizează familiarizarea cu limbajul Python, iar în partea a doua sunt prezentate concepte de bază privind învăţarea automată, algoritmii fiind implementaţi în limbajul Python. Pentru implementarea de secvenţe de cod în limbajul Python pot fi folosite platformele https://pythonisti.ro, https://trinket.io/python, Google Colab sau mediile de dezvoltare Python 3.0 IDE sau Visual Studio Code. Se recomandă folosirea platformei Google Colab deoarece nu necesită nicio configurare prealabilă, fiind suficient doar un cont Gmail, şi permite crearea şi partajarea de documente care conţin secvenţe de cod care rulează în timp real, reprezentări vizuale şi text. În plus, utilizarea Google Colab permite accesul gratuit la resurse de calcul paralel (acceleratoare grafice) din Google Cloud. În procesul de predare-învăţare-evaluare, activitatea va fi orientată pe analizarea unor situaţii cotidiene şi pe identificarea unor soluţii practice în care sunt folosiţi algoritmi de învăţare automată (machine learning). Activităţi de învăţare Este recomandat ca prezentarea conceptelor şi algoritmilor de învăţare automată să fie însoţită de exemple practice de aplicare a acestora în realitate, în viaţa de zi cu zi, şi/sau de materiale video relevante. Prezentarea conţinuturilor poate debuta cu analizarea unei secvenţe de cod relevante şi modificarea acesteia pentru a obţine diverse rezultate. Elevii pot lucra individual sau în echipă pentru aplicarea algoritmilor studiaţi pe diverse seturi de date. De exemplu, referitor la strategia de învăţare supervizată, problema clasificării poate fi prezentată utilizând setul de date Iris, iar elevii îşi pot consolida cunoştinţele aplicând algoritmul de clasificare pe alt set de date, cum ar mnist. Elevii pot organiza discuţii şi dezbateri plecând de la experienţele practice furnizate de profesor sau disponibile pe internet, pentru a înţelege cum pot fi utilizaţi algoritmii de învăţare automată în realitate. Activităţi de feedback şi evaluare Se recomandă metoda de învăţare-evaluare prin proiecte, individual sau în echipă, cu teme practice inspirate din viaţa cotidiană, care să stimuleze creativitatea elevilor şi să le faciliteze aplicarea cunoştinţelor în diverse domenii. Prezentarea soluţiilor obţinute oferă o ocazie de reflecţie asupra propriei experienţe şi creează canale de comunicare între elevi şi profesor. În ceea ce priveşte etica în utilizarea inteligenţei artificiale pot fi organizate dezbateri, jurnale de reflecţie, plecând de la întrebări precum: • Datele personale sunt protejate? Viaţa privată este respectată? • Care ar fi consecinţele folosirii unui set de date inadecvat? • În ce contexte poate apărea confuzia corelaţie şi cauzalitate? Resurse • Python & Machine Learning pentru liceu - Bine aţi venit! (pyml.ro) - platformă online, cu acces liber, ce detaliază conţinuturile ştiinţifice, inclusiv exemple practice, şi oferă acces la un interpretor Python pentru editarea, executarea şi depanarea scripturilor, precum şi acces la acceleratoare grafice pe maşini virtuale prin intermediul platformei Google Colab • Curs de Python 3 pentru începători - Online interactiv (pythonisti.ro) - platformă de învăţare online, cu acces liber, pentru dezvoltarea abilităţilor de programare în limbajul Python • Jocuri didactice ce au ca scop iniţierea în Python https://silentteacher.toxicode.fr/ https://compute-it.toxicode.fr/ • Minitutoriale video online pentru iniţierea în Python (seria Python is fun! – canalul youtube Infogim) https://www.youtube.com/watch?v=c7mD2_v5-0Q&t=2s https://www.youtube.com/watch?v=Fq6UvEf_n3A&t=2s https://www.youtube.com/watch?v=X18gx_OYTt4&t=46s • https://trinket.io/python - platformă online, cu acces liber, ce permite dezvoltarea de scripturi Python şi furnizează exemple de proiecte • https://ml.infobits.ro/machine-learning-aplicatii-practice-online.php - platformă online, cu acces liber, dedicată aplicaţiilor practice interactive de învăţare automată REFERINŢE BIBLIOGRAFICE • Elements of Al https://course.elementsofai.com/ro/ • AI for Everyone, Andrew Ng, Coursera, https://www.coursera.org/learn/ai-for-everyone • Deep Learning (partea I), de Ian Goodfellow, Yoshua Bengio, Aaron Courville, MIT Press (2017) https://www.deeplearningbook.org/ Pattern Recognition and Machine Learning (partea a III-a şi partea a IV-a), de Christopher Bishop, Springer (2006), http://users.isr.ist.utl.pt/~wurmd/Livros/school/Bishop%20-%20Pattern%20Recognition%20And%20 Machine%20Learning%20-%20Springer%20%202006.pdf • AI/ML/Big Data News: https://allainews.com/ • Artificial Intelligence: A Modern Approach (4th Edition), Russell and Norvig, 2020, https://drive.google.com/ file/d/1g6LwB6UQ47RfFAGRjYaCLJrMkTa86KfF/view Autori Prof. dr. Ana-Maria ARIŞANU, Colegiul Naţional „Mircea cel Bătrân“, Rm. Vâlcea Prof. gr. II Antonia HALLER, Colegiul Naţional „Mircea cel Bătrân“, Rm. Vâlcea Prof. gr. I Emil ONEA, Colegiul Naţional „Unirea“, Focşani, UPIR Dr. cercetător Răzvan PAŞCANU, DeepMind Londra, EEML Dr. ing. cercetător Viorica PĂTRĂUCEAN, DeepMind Londra, EEML Cu sprijin din partea: https://www.eeml.eu/ Comunitatea Eastern European Machine Learning http://aria-romania.org/ Asociaţia Română pentru Inteligenţă Artificială http://www.upir.ro/ Uniunea Profesorilor de Informatică din România https://www.airomania.eu Comunitatea AIRomania ----