Digitalno obrazovanje: Korištenje dijaloške tehnike u obrazovanju

Zadatak

Sve zadatke treba riješiti alatom „Google Dialog Fllow“. Prvo treba napraviti projektni zadatak za svaki zadatak i diskutirati ga s nastavnikom. Planirati kako će se zajednički istražiti svojstva alata Dialog Flow. Planirati kako će se prepoznati zajednički dijelovi za sve pod zadatke i organizirati rad na njima. Osmisliti kako će se nabaviti pitanja za inicijalno punjenje baza. Kako će se testirati. Tijekom projekta planirati, prikupljati podatke i pripremati dokumentaciju za izradu stručnog ili znanstvenog članka za prezentaciju na konferenciji ili objavu u časopisu.

Rezultat: Dokumentacija.

Zadatak: A3N (Automatski Administrativni Asistent u nastavi)

Potreba: studenti tijekom semestra postavljaju niz organizacijsko administrativnih pitanja (ne odnose se na znanje u predmetu). Većina pitanja se ponavlja i unutar jedne generacije i između generacija. Neki predmeti grade bazu pitanja i odgovora (FAQ – Frequently Asked Questions), ali studenti ne provjere u toj bazi odgovor na svoje pitanje već ga šalju nastavnicima. Rješenje: Napraviti automat koji će odgovarati na poznata pitanja, a nova pitanja slati nastavniku te uvrštavati u bazu i pitanja i odgovor.

Zadatak: AFAQ (Automatski odgovori na FAQ)

Potreba: studenti tijekom učenja predmeta imaju pitanja na koja ne mogu naći odgovor. Najradije bi pitali nastavnika ili znalca. Neki studenti se stide ili boje pitati nastavnike, a neki nastavnici na stignu promptno odgovoriti na pitanja. Rješenje: Napraviti automat koji će odgovarati na poznata pitanja, a nova pitanja slati nastavniku te uvrštavati u bazu i pitanja i odgovor.

Zadatak: AAOEQ (Automated Assessment of Open Ended Questions, Automatsko ocjenjivanje odgovora na otvorena pitanja)

Potreba: računalnu provjeru (i samoprovjeru) znanja najlakše je napraviti pitanjima s višestrukim odgovorima. Međutim u tom slučaju se provjerava sposobnost studenta da se prepozna odgovor. Viša razina znanja bi tražila da se sam prisjeti odgovora, ali to znači da odgovor može poprimati različite oblike. Na primjer: „Kad sviće dan?“, „U jutro“, „Nakon noći“, „Jutrom“, „Između 4 i 7“ itd. Dosadašnji računalni programi/alati ne mogu lagano prepoznati točan odgovor, odnosno trebalo bi unijeti sve varijacije odgovora. Rješenje: Napraviti automat koji će prepoznavati različite oblike odgovora.

Zadatak: DT2DF (Decision tree to Dialog Flow converter)

Potreba: za potrebe dijagnostike potrebno je s korisnikom proći niz pitanja, od općenitijih do specifičnih. Jedan način organiziranja ekspertnog znanja za dijagnostiku su stabla odlučivanja. Postoji mnogo alata kojima se jednostavno grade i održavaju stabla odlučivanja. S druge strane, korisnicima je ponekad lakše eksplicirati svoju potrebu ili problem dijalogom. Rješenje: Napraviti alat za konverziju stabla odluke u dijaloški tok.

Vremenski plan rada i podjela zadataka

A3N / AFAQ - Maslač, Mutnjaković

Maslač, Mutnjaković - proučavanje Dialogflow dokumentacije i primjera na Github repozitoriju

Mutnjaković - izrada baze i backenda (web api)

Maslač - frontend i spajanje backenda s Dialogflow servisom

do 13. siječnja:

Maslač - dodati metodu koja će odgovore iz baze spremati na Dialogflow

Mutnjaković - dodavanje nova pitanja i odgovore na Dialogflow za potrebe demonstracije

do prezentacije - testiranje i ispravljanje mogućih bugova

AAOEQ

Dinčir

proučavanje Dialogflow dokumentacije i funkcionalnosti

pronalaženje pitanja i odgovora koja se će se koristiti kao primjeri

smišljanje i izrada strukture za provjeru odgovora u Dialogflow-u

u backend dodati metode za povezivanje sa prethodno navedenom strukturom

do 13. siječnja:

povezati backend i frontend

do prezentacije

testiranje i ispravljanje mogućih bugova

DT2DF

Redzepovic

Proucavanje dokumentacije

Isprobavanje alata u google-ovom sucelju

Smisljanje DT primjera i izrada skripte koja pomocu zadanog DT stvara potrebne objekte u Dialogflowu

Do 13. sijecnja: povezati frontend i backend

Do prezentacije: testiranje i ispravak mogucih bugova

Izvještaji o napredku

Odlučili smo ujediniti sva 4 zadatka pod jedan veliki projekt i napraviti sučelje koje možemo pokazati ostalim studentima na prezentaciji te je ovo ujedno i prototip aplkacije ukoliko je netko od nas (ili drugih studenata) želi nastaviti razvijati.

U pozadini imamo .NET web api i MSSQL bazu podataka, a sučelje gradimo pomoću React frameworka (Typescript). U idućim točkama pokazane su trenutne mogućnosti svakog od dijelova sustava te interakcija između korisnika (profesora ili studenta) s backendom i Dialogflow servisom.

A3N

A3N je implementacijski ujedinjen s AFAQ jer je u pozadini funkcioalnost ista (A3N odgovara na općenita pitanja, a AFAQ na pitanja o specifičnom predmetu)

isto kao AFAQ, općenita pitanja su kao jedan od mogućih predmeta iz AFAQ dijela

AFAQ

student odabire predmet te dobija popis odgovorenih pitanja te mogućnost pitanja

student pita pitanje

studentovo pitanje šalje se na server

server uspostavlja vezu s Dialogflowom i pita ga pitanje

Dialogflow vraća odgovor na pitanje ili default fallback ako odgovora nema

student dobija odgovor i označava ovisno o tome je li zadovoljan odgovorom

ako nije zadovoljan odgovorom ili odgovor nije dobio ima mogućnost slanja odgovora profesoru​​​​​​

profesor otvara stranicu s neodgovorenim pitanjima

profesor odabire pitanje te odgovara na njega - odgovor se sprema u našu bazu (još ne i na Dialogflow) te šalje studentu koji ga je pitao

AAOEQ

Za provjeru ispravnosti odgovora koristi se troslojna struktura na Dialogflow-u:

Ime predmeta na koji se odnose pitanja

Redni broj pitanja

Točan odgovor na pitanje

Backend sadrži tri metode za dohvaćanje podataka iz strukture (za svaku razinu jedna metoda):

Iz prvog sloja ovisno o nazivu predmeta dobivamo broj pitanja koji se nalazi u strukturi

Drugi sloj ovisno o rednom broju pitanja nam vraća tekst pitanja na koje je potrebno dati odgovor

Trećem sloju predajemo odgovor i dobivamo postotak u kojemu se dani odgovor i točan odgovor poklapaju

Frontend ima sljedeće funkcionalnosti:

Padajuća lista iz koje se odabire predmet za koji želimo pitanja

Odabir postotka poklapanja danog odgovora s točnim odgovorom

Ispis svih pitanja za odabrani predmet

Upisivanje odgovora ispod svakog pitanja i njegova provjera točnosti

DT2DF

Skripta definiranu strukturu DT-a pretvara u dijalog u alatu Dialogflow

Backend: nakon sto se postavi “korijensko” pitanje, nude se ostala pitanje po razinama ovisno o odgovoru da/ne