Dirbtinis intelektas

KŪRYBINĖ UŽDUOTIS


Tiuringo testas


Tiuringo testas - tai 1950 m. Alano Tiuringo pasiūlytas testas, skirtas mašinų intelekto demonstravimui. Esminis šio testo principas: jei kalbėdamas su robotu negali atskirti, ar tai yra žmogus, ar robotas, tai reiškia, jog robotas pakankamai protingas ir jis testą išlaikė.  Tiuringo testas puikiai tinka teksto atpažinimo temai. Užduoties aprašymą parsiųskite čia:

Tiuringo_testas
.pdf
Download PDF • 1.03MB

Pastaba: žaidimas vyks sklandžiau, jei pasirinksite ne 4 mokinius, kaip siūloma, o tik 2, kurie atsakinės į klausimus kaip žmogus ir robotas. Klausimus/atsakymus gali perduoti pats mokytojas. Bus įdomiau, jei mokiniai atsakys ne į visus klausimus iš karto, o po vieną, ir likusi klasės dalis diskutuos, kuris atsakymas kam priklauso, kol susidarys galutinį, tikrąjį vaizdą.

TECHNINĖS UŽDUOTYS


Mašinos apmokymas I


Užduotį mokiniai atliks adresu: https://teachablemachine.withgoogle.com/


Ši programa puikiai tinka praktiniam supažindinimui su programos apmokymu ir nereikalauja techninių žinių. Jai atlikti reikalinga kompiuterio video kamera.

Reikia apmokyti 3 duomenų tipus, programai mokantis iš 3 vaizdų/objektų. Tikslas - programa, pamačiusi pažįstamą vaizdą, į jį reaguoja (pasirinktinai) tekstu, animacija arba garsu. Pavyzdžiui: parodžius vaisių, programa parodo jo pavadinimą.


Eiga:

  • Pasiruošiame tris vaisius: obuolį, bananą ir apelsiną.

  • Iškeliame obuolį taip, kad kamerą jį matytų, ir spaudžiame žalią mygtuką „Train green“ tol, kol turėsime daugiau nei 30 pavyzdžių. Kuo įvairesnės nuotraukos (objektas įvairiu kampu, skirtingais atstumais, keli skirtingi obuoliai ir pan.), tuo tiksliau programa galės atpažinti vaisių.

  • Atlikite tą patį su kitais vaisiais, apmokydami violetinę ir oranžinę grupes.

  • Trečiajame stulpelyje (Output) pasirinkite, kas norite, kad nutiktų, programai atpažinus objektą. Pvz., pasakys jo pavadinimą (Speech).

Iššūkis. Ar galima programą apgauti? Pvz., rodai apelsiną, o ji atpažįsta obuolį?

Instrukcijos ir pavyzdys anglų k.


Pritrūkus idėjų:

  • Trys mokiniai apmoko vieną programą. Išvydusi konkretaus mokinio veidą, programa atitinkamai pasisveikina, pvz.: Sveikas, Lukai!

  • Mokinys groja įsivaizduojamais muzikos instrumentais, programa juos atpažįsta ir sugroja atitinkamą garsą.

  • Šešėlių teatro figūrų atpažinimas.

  • Galite išnaudoti šią programėlę keliems žodžiams užsienio kalba išmokti (galbūt kiekvienas mokinys išmoko programą atpažinti 3 skirtingus objektus, ir vėliau testuoja draugų programas, šitaip išmokdamas vis kelis naujus žodžius), atlikti matematinius veiksmus ar kita.

Mašinos apmokymas II


Programos teachablemachine atnaujintą versiją rasite: https://teachablemachine.withgoogle.com/


Pirmos ir antros versijos skirtumai:

Atnaujintoje versijoje rasite daugiau galimybių: galima programą apmokyti ne tik nuotraukomis, bet ir garso įrašais, taip pat programa gali atpažinti kūno judesius.

Pirmoji versija žaismingesnė, nes leidžia pasirinkti veiksmą, programai atpažinus vaizdą - tai gali būti animuotas paveikslėlis (.gif), garso įrašas arba balsu sakomas žodis. 

Instrukcijos:

Programo apmokymas vyksta taip pat, kaip ir senojoje versijoje: surenkami pavyzdžiai, programa apmokoma ir išbandoma. Atkreipkite dėmesį, kad garso įrašai sukarpomi į 1s trukmės įrašus, vadinasi, galima dirbti tik su labai trumpais garsais, pvz., suploti, spragtelėti pirštais ir pan. Pirmasis garso įrašas - 20s aplinkos garsas, jog programa galėtų lengviau atskirti aplinkos garsą nuo to, kurio bandoma apmokyti.

Apmokius programą, projektą galima atsisiųsti, ir, prireikus, vėl iš naujo įkelti į programą.

Instrukcijos ir pavyzdžiai anglų k.:

- kaip įkelti pavyzdžius

- ištreniruoti programą:

-išbandyti:



Moralinės dilemos


Aptarkite moralines dilemas, iškylančias mokant kompiuterį. Pasvarstykite, kas gali nutikti, jei jis bus išmokytas neteisingai.


Diskusija:

  • pakalbėkite apie galinčias iškilti moralines dilemas. Kaip apsaugoti žmones nuo jų pačių kūrinio? Kokias taisykles reikėtų suprogramuoti, kad nenukentėtų kiti žmonės? Apie kokius sprendimus rašoma fantastinėje literatūroje?

Jums pravers 3 Azimovo robotikos įstatymai, kurie iš pradžių buvo aprašyti mokslinės fantastikos knygose, tačiau vėliau įtakojo ir robotų etikos principus:

  0. (neoficialus) Robotų egzistavimas niekad negali kenkti žmonijos egzistavimui.

  1. Robotas negali padaryti žalos žmogui.

  2. Robotas visada privalo paklusti žmogaus nurodymams, jei jie nesikerta su pirmuoju dėsniu.

  3. Robotas privalo ginti savo egzistavimą, jei tai nesikerta su pirmaisiais dviem dėsniais.

Praktinė užduotis

Kaip, kuriant save valdančią mašiną, nuspręsti, ką jai daryti sudėtingose situacijose, kuomet bet kuriuo atveju kažkas bus sužeistas? Kas atsakingas už nelaimingus atsitikimus - programos kūrėjas ar pats įrenginys? Jei manote, kad mokiniai tam pasirengę, kartu su jais atlikite arba aptarkite kelis pavyzdžius iš šio testo: http://moralmachine.mit.edu/


Spauskite mygtuką Start Judging





Programa jums pateiks 13 paveikslėlių su įvairiomis eismo situacijomis. Jūs turite pasirinkti jums priimtinesnį scenarijų. Pavyzdys:

Situacija: sugedo save valdančio automobilio stabdžiai. Kokį sprendimą ji turėtų priimti?


Atkreipkite dėmesį, ar/kurie pėstieji pažeidžia taisykles (dešinėje pusėje žmonės kerta gatvę degant raudonai šviesai), ar tai keičia sprendimą? Taip pat matomas žmonių socialinis statusas/pomėgiai: atletės, verslininkai, vyresnio amžiaus žmonės ir pan. O tai, ar keičia sprendimą? Eismo dalyviai pažymėti kaukolės, medicininio kryžiaus arba klaustuko ženklais ir reiškia, kas jiems gali nutikti. Atitinkamai: mirtis, sužalojimas arba neaiški baigtis.


Čia nėra teisingų ar neteisingų atsakymų. Atsakius į visus klausimus, pamatysite lentelę, kurioje jūsų atsakymai lyginami su kitų, atlikusių šį testą.


Įgūdžių įsivertinimas. Kahoot viktorina


Pastaba: mašininio mokymosi technikos priklauso dirbtinio intelekto metodams, taigi yra jo sudėtinė dalis. Viktorinoje paprastumo dėlei „mašininį mokymąsi“ traktuokite kaip dirbtinį intelektą apskritai. Plačiau apie jų skirtumus dokumente „Tipai, rūšys“.


KAHOOT


Pabrėžkite viktorinos dalyviams, kad galbūt nepavyks visko teisingai atsakyti, ir tai - ne bėda, žiūrėkime tai kaip į savo žinių įsivertinimą.

Registruotis nebūtina, prisijungimas greitas ir paprastas. Jums tiesiog reikės:

  1. Atverti žaidimo nuorodą: Kahoot.

  2. Šiai užduočiai rekomenduojame rinktis klasikinį variantą (Classic), kai žaidėjai žaidžia kiekvienas už save.

  3. Ekrane pasirodys GAME PIN ir skaičius.

  4. Paprašyti dalyvių atsidaryti Kahoot tinklapio nuorodą kompiuteryje ar telefone: https://kahoot.it/ (dalyviai gali sumaišyti su https://kahoot.com) ir suvesti žaidimo kodą (Game Pin, kurį mato mokytojas savo ekrane) ir savo vardą / slapyvardį.

  5. Savo ekrane matysite, kiek dalyvių prisijungs. Prisijungus visiems, spauskite Start ir pradėkite žaidimą.

  6. Jūsų ekrane bus rodomi klausimai ir atsakymų variantai (klausimus ir atsakymų variantus perskaitykite garsiai), o dalyviai savo ekranuose matys tik atsakymo variantus simbolizuojančias spalvas ir figūras. Kiekviena užduotis turi paskirtą laiko tarpą dalyviams atsakyti. Kiekvienas dalyvis savo kompiuteryje ar telefone turės pasirinkti, jo nuomone, teisingą variantą. Užduoties laikui pasibaigus, parodomas teisingas atsakymas. Jį trumpai aptarkite, kodėl būtent jis teisingas, ir spauskite Next - kita užduotis. Žaidimo pabaigoje galėsite matyti trijų greičiausiai ir teisingiausiai atsakiusių dalyvių rezultatus.


PAPILDANČIOS TEORINĖS ŽINIOS


Dirbtinio intelekto (AI) pavyzdžiai/simuliacijos


Priklausomai nuo turimo laiko/galimybių, galite parodyti eksperimentą visai klasei arba leisti pabandyti kiekvienam savarankiškai.


  • AI ir piešimas. Žaidimo esmė - per 20s nupiešti programos siūlomą objektą taip, kad jis būtų atpažintas. (Spausti Let's draw!) Vieno žaidimo metu piešiami 6 piešiniai. Patarimas - prieš pradedant, pasiūlykite vaikams įsijungti google translate, nes ne visi pavadinimai yra lengvai suprantami. Piešdami mokiniai padeda programai mokytis - su šiuo žaidimu susijusi Auto draw programa yra jau ištreniruota, ji naudoja Quick draw metu išmoktus modelius.

  • AI ir muzika. Ši programa leidžia diriguoti orkestrui, nuskaitydama vartotojo judesius. Išbandykite. (Spausti Launch Experiment)

  • Besimokančios mašinos. Programa generuoja (kuria) įvairių formų automobilių modelius, kurių tikslas - įveikti kliūtis ir nuvažiuoti kuo toliau. Programos veikimo metu programa pati mokosi, kurie modeliai yra sėkmingi, ir kuriuos reikia tobulinti, o kuriuos - pamiršti.

  • Daugiau AI eksperimentų.


Dirbtinis intelektas ir kalba/tekstas


Kalbos apdorojimas yra viena iš AI sričių. Ši technologija padeda kompiuteriui suprasti žmonių kalbą ir netgi ja kalbėti. Kaip tai veikia? Programa analizuoja kiekvieną kalbos atkarpą (labai trumpą, 10-20 ms) ir lygina ją su prieš tai įrašytu tekstu.

Panaudojimas:

  • Virtualūs asistentai ( pvz., Alexa), gali paversti žmogaus kalbą tekstu bei atsakyti žodžiu;

  • Teksto suvokimas pagal gramatikos taisykles bei paruoštus algoritmus: rasti tekste raktinius žodžius, parašyti straipsnio santrauką, sukurti antraštę;

  • Teksto prasmės (semantinis) suvokimas. Pvz., paliktas komentaras teigiamas, neigiamas ar neutralus?

  • Rekomendacijos. Pagal įvestus raktažodžius pasiūlo filmą, knygą, kelionę ar kt.

Pokalbių robotai (Chatbot’ai)

Tai programos, kurios veikia pagal joms priskirtas taisykles ir gali palaikyti pokalbį su vartotoju.

Chatbot‘ai gali palengvinti buitį arba darbą, atlikdami kai kurias užduotis vietoje žmogaus. Užduočių pavyzdžiai: pranešti, koks šiandien bus oras, atsakyti į įvairius klausimus, padėti rasti ieškomą prekę internetinėje parduotuvėje ir kita.

Leiskite mokiniams išbandyti savarankiškai arba pademonstruokite chatbot’o veikimą (anglų k.): https://talktothetrex.com/ arba https://www.pandorabots.com/mitsuku/


Tipai, rūšys



Dirbtinis intelektas - labai plati sąvoka. Jai priklauso mašininis bei gilus mokymaisi bei dar kelios smulkesnės atšakos.

Mašininis mokymasis - plačiausiai naudojama dirbtinio intelekto atmaina. Vietoje to, jog duotume kompiuteriui tikslius nurodymus, kompiuteris mokosi pats iš jam suteiktų duomenų.

Įprastas programavimas:

TAISYKLĖS + DUOMENYS -> ATSAKYMAI

Žmogus pateikia taisykles, duomenis ir gauna atsakymus

Mašininis mokymasis:

DUOMENYS + ATSAKYMAI -> TAISYKLĖS

Žmogus pateikia duomenis, atsakymus ir gauna taisykles, kurios vėliau gali būti naudojamos naujiems duomenims apdoroti

Priklausomai nuo sprendžiamų problemų pobūdžio, mašininis mokymasis skirstomas į kelias rūšis:

  • Prižiūrimas (supervised) mokymasis. Bent dalis duomenų yra sužymėti ir iš to atrandamos taisyklės, kaip prognozuoti žymes naujiems duomenims. Prižiūrimo mokymo problemoms priklauso klasifikacija (tarkim, ar naujas pacientas turi ligą, palyginus su ankstenių pacientų duomenimis) arba regresija (tarkim, žinant kitų nekilnojamo turto vienetų kainas ir plotus, nuspėti, kokia bus kaina, kai žinomas plotas).

  • Neprižiūrimas (unsupervised) mokymasis. Duomenys nesužymėti, todėl galima atlikti tik tokius veiksmus, kaip grupavimas arba taisyklių atradimas. Grupavimas yra naudingas segmentuojant pirkėjus pagal jų pirkimo įpročius, taisyklių atradimas gali padėti parodyti, kad pirkėjai, kurie perka vieną produktą, turi tendenciją pirkti ir kitą produktą.

  • Skatinamasis (reinforcement) mokymasis. Dažniausiai naudojamas, kai dirbtinio intelekto agentas gali suteikti greitą grįžtamąjį ryšį, tuomet programa/įrenginys mokosi pats, eigoje. Pavyzdžiui, save valdantis automobilis važinėja gatvėmis, ir į sistemą yra atsiunčiama informacija apie priimtus gerus/blogus sprendimus, ir ateityje jie keičia šio bei kitų automobilių „elgesį“. Taip pat dažnai naudojama žaidimuose, kurių rezultatas/baigtis tampa aiški tik žaidimo pabaigoje.

  • Pusiau prižiūrimas (semisupervised) mokymasis. Visos šios kategorijos nėra griežtai apibrėžtos, dažnai iš dalies sutampa ir pan., todėl išskiriama ir tokia kategorija, kaip pusiau prižiūrimas, pusiau neprižiūrimas mašininis mokymasis.

Gilusis mokymasis. Tai mašininio mokymosi technika, kurioje dirbtinių neuronų sluoksniai yra sujungti į tinklą (simuliuojant tikrąjį smegenų neuronų tinklą). „Gilumą“ reperezentuoja neuronų sluoksnių kiekis. Kuo jis didesnis, tuo sudėtingesnius sprendimus ir uždavinius gali spręsti ši sistema. Vizualus neuronų tinklo 3D atvaizdavimas:


Parengta remiantis Gabijos Maršalkaitės straipsniu. Visą straipsnį skaitykite čia.


Apie dirbtinį intelektą


Pirmiausia išsiaiškinkite šių atskirų žodžių prasmę (paprastumo dėlei, žodį „intelektualumas“ galite keisti į „protingas“).

Kas yra intelektas? Koks žmogus yra intelektualus? Ar tas, kuris moka gerai skaičiuoti, daug skaito? Ar tas, kuris dažnai vaikšto į teatrą? Kuris moka užjausti ir suprasti draugą? Intelektas - tai visų šių (ir dar daugiau) gebėjimų visuma. Jei moki rasti gudrų problemos sprendimą, supranti savo jausmus, moki mokytis - turi puikų intelektą. Ar jį galima išmatuoti? Taip, intelekto lygį (intelekto koeficientą) galima sužinoti atlikus intelekto (IQ) testą. (Tiesa, kai kurie mokslininkai nesutinka su šiuo matavimu ir siūlo kitas teorijas).

O ar gali intelektualus būti ne žmogus, o, pavyzdžiui, žuvis? Telefonas? Dantų šepetėlis? Palmė?

Dirbtinio, arba netikro, intelekto turėti neįmanoma - jį reikia sukurti. Kuo paprasta programa skiriasi nuo tos, kurią kuriant panaudotas dirbtinis intelektas? Ji gali ne tik atlikti jai paskirtas užduotis, bet ir pati mokytis, reaguodama į pokyčius.

Priešingai nei pateikiama įvariose medijose, dirbtinis intelektas - tai ne terminatoriai ar pakvaišę robotai. Jis yra kur kas arčiau, mūsų kasdienybėje, telefonų, balso asistentų, rekomendacinių sistemų pavidalu.

Dirbtinio intelekto įvairiapusiškumą atspindi šie trys pavyzdžiai, kuriuose pritaikomi skirtingi dirbtinio intelekto aspektai:

  • save valdantys automobiliai (trumpiausio/greičiausio maršruto radimas, aplinkos vaizdo analizė, sprendimų priėmimas ir pan.);

  • turinio rekomendacijos (socialiniuose tinkluose, muzikos, filmų rekomendacijos, individualizuotas naujienų pateikimas);

  • nuotraukų/paveikslėlių ir video apdorojimas (veidų/vaizdų atpažinimo technologijos socialiniuose tinkluose, saugumo sistemose ir kt.).  

Kuriuose iš šių pavyzdžių naudojami dirbtinio intelekto metodai? (Teisingi atsakymai pabraukti)

  • Scratch gaudynių projektas

  • Youtube tau siūloma perklausyti daina

  • Paštininkė atneša laišką nurodytu adresu

  • Žaisti kryžiukus/nuliukus prieš kompiuterį

  • Autobusų tvarkaraštis internete

Norint dirbti su dirbtiniu intelektu, jį vystyti, neužtenka technologinių žinių - reikia ir matematikos, psichologijos, net neurologijos ir kitų žinių. Todėl dažniausiai dirbama ne po vieną, o specialistų grupėmis. Jei konstruodamas skraidantį aparatą stebėtum paukščius, tai kurdami dirbtinį intelektą mokslininkai stebi žmones ir bando atkurti žmogaus smegenis (nervų sistemą). Taigi kuriami supaprastinti neuroninių tinklų modeliai, kurie vėliau naudojami, pavyzdžiui, balso ar vaizdo atpažinimui.

Kam to reikia? Kokia nauda iš to, kad kompiuterinė programa gebės atskirti, pvz., šunį nuo katės? O kelio ženklus? (Pagalvokite apie save valdantį automobilį - ar jis galės priimti sprendimus, negalėdamas atskirti vaizdų? Iš tiesų jie analizuoja net žmonių bei gyvūnų elgesį, pvz., katės elgesys yra labiau nenuspėjamas, ji staigesnė - automobilis važiuoja atsargiau, nei jei akiratyje būtų šuo). Važiuojanti Google save valdanti mašina:


Yra kelios dirbtinio intelekto „rūšys“, priklausomai nuo priimamų sprendimų sudėtingumo, nuo to, ar jos mokosi pačios, ar seka žmonių sukurtus algoritmus ir pan. (Machine Learning, Deep Learning yra dirbtinio intelekto dalys).

21 views