PEDAGOŠKO DELO

KABINET R2.07: 2. nadstropje, po hodniku desno
GOVORILNE URE:
samo po predhodnem dogovoru oz. po e-mailu

Razpisane diplomske in magistrske naloge

Od leta 1982 do 1984 sem bil zaposlen na FE kot stažist raziskovalec. Od leta 1984 do leta 1995 sem bil zaposlen kot asistent na FER in pozneje na FRI. Na več seminarjih sem predaval o sistemih za strojno učenje, o logičnem programiranju in o nevronskih mrežah. Kot asistent sem vodil vaje pri 5 predmetih starega programa na takratni FER, pri 9 predmetih novega visokošolskega programa na FRI ter pri 1 predmetu višješolskega študija na FRI. Od leta 1996 sem bil zaposlen kot izredni profesor na FRI in od leta 2002 kot redni profesor. Predaval sem pri dveh predmetih višješolskega študija,  tri predmete visoke strokovne šole (pred bolonjsko reformo): Programski jeziki (VSŠ), Osnove algoritmov in podatkovnih struktur II (VSŠ), Metode umetne inteligence (VSŠ) ter tri predmete na univerzitetnem programu (pred bolonjsko reformo): Algoritmi in podatkovne strukture I (UNI, IŠRM), Tehnologija znanja (UNI), Teorija strojnega učenja (IŠRM),  ter dva predmeta na podiplomskem študiju (pred bolonjsko reformo): Strojno učenje (magistrski), Odkrivanje znanja v podatkih - Knowledge Discovery in Databases (magistrski)

Predavam predmete (po bolonjski reformi):

NA DODIPLOMSKEM ŠTUDIJU:

 

NA MAGISTRSKEM ŠTUDIJU:

Sem (so)avtor (glej bibliografijo) 2 srednješolskih učbenikov, 8 univerzitetnih učbenikov (od tega so 3 učbeniki izšli še v 2. dopolnjeni izdaji) ter dveh knjig v tujini (Angliji). Bil sem mentor pri 2 zaključnih nalogah, 84 diplomskih nalogah, 15 znanstvenih magistrskih delih in 15 doktoratih. Sodeloval sem na številnih zagovorih diplom, magistrskih nalog in doktorskih del na Fakulteti za računalništvo in informatiko, na Fakulteti za elektrotehniko in na drugih fakultetah Univerze v Ljubljani (Fakulteta za strojništvo, Filozofska fakulteta, Fakulteta za kemijo in kemijsko tehnologijo), Univerzi v Mariboru, na University of Rijeka na Hrvaškem, na University of Porto na Portugalskem in na Univerzi v Sarajevu v Bosni in Hercegovini. Poleti 1993 sem se dva meseca strokovno izpopolnjeval na Univerzi Caltech v Pasadeni v ZDA. Večkrat sem bil na krajših delovnih obiskih (1-3 tedne) na različnih univerzah v tujini (ZDA, Kanada, Avstralija, Evropa).

Poleg neakademskih ustanov sem imel vabljena predavanja na sledečih univerzah:
- 1989 na University of Zagreb;
- 1993 na Caltech University (3X) (Pasadena, California)
- 1995 IBM Watson Research center, New York
- 2000 University of Porto;
- 2004 Univerza v Mariboru;
- 2014 University of Split
- 2017 Royal Holloway, University of London


OPISI POSAMEZNIH PREDMETOV


 

Naslov predmetaAlgoritmi in podatkovne structure I – RI-UNI (Bolonja) ter RM, 2. letnik

Predavatelj: prof. dr. Igor Kononenko
Asistenti:  dr. Petar Vračar, dr. Miha Drole
Namen predmeta:

1.      Izpopolniti in utrditi znanje iz programiranja (predvsem rekruzije)

2.      Naučiti se načrtovati algoritme in analizirati njihovo časovno zahtevnost

3.      Podati osnovne abstraktne podatkovne tipe in operacije na njih

4.      Spoznati osnovne operacije na dinamičnih podatkovnih strukturah: seznamih, drevesih in grafih


Okvirna vsebina:


VAJE

Študenti preko e-učilnice sproti rešujejo ob rokih objavljene spletne kolokvije, ki se točkujejo. Vsak študent mora doseči najmanj 50% pri reševanju spletnih kolokvijev, da lahko dobi oceno iz vaj.

V okviru laboratorijskih vaj vsak študent samostojno izdela 2 seminarski nalogi, ki jih oddaja ob rokih preko učilnice ter zagovarja v dveh rokih na laboratorijskih vajah  in zagovori seminarskih  nalog se ocenjujejo.

Pri oddajanju seminarskih nalog preko učilnice se programska koda navzkrižno preverja glede prepisovanja. Odkriti prepisovalci (tako avtorji kode kot tisti, ki so kodo prepisali) se ocenijo negativno s prepovedjo opravljanja vaj in izpita v tekočem šolskem letu ter prijavijo disciplinski komisiji FRI, ki kršitelje ustrezno kaznuje (od prepovedi opravljanja vseh izpitov 6-12 mesecev do izključitve iz FRI).

Uspešno (ocena vsake seminarske naloge najmanj 50%) in pravočasno (do postavljenih rokov) zagovarjane seminarske  naloge so pogoj za pristop k opravljanju izpita. Ocena seminarskih nalog se upošteva kot ocena vaj, pri čemer imata lahko seminarski nalogi različno težo. Končna ocena predmeta je povprečje ocene iz vaj in ocene iz izpita. Pri tem morata biti tako ocena vaj in ocena izpita pozitivni.

Ocena iz vaj velja samo tekoče šolsko leto. Če študent, ki ima pozitivno ocenjene vaje, v tekočem šolskem letu ne opravi izpita, mu ocena iz vaj propade. 



IZPIT:

Izpit je sestavljen iz pisnega in morebitnega ustnega dela. Na pisnem izpitu je od literature dovoljen en A4 list napisan lastnoročno z navadnim svinčnikom (da se lahko radira) in podpisan s kemičnim svinčnikom z imenom in priimkom ter vpisno številko (fotokopije in printi niso dovoljeni). Ta list se odda skupaj s pisnim izdelkom. Na ustnem izpitu lahko študent popravi ali pokvari oceno pisnega izpita.

Ocena vaj in ocena izpita morata biti pozitivni. Končna ocena predmeta je povprečje ocene iz vaj in ocene iz izpita.


 
Osnovna literatura:

Igor Kononenko, Marko Robnik Šikonja, Zoran Bosnić: Programiranje in algoritmi, Založba FE in FRI, 2008.


Pomožna literatura

 

 


Naslov predmeta: Umetna inteligenca – VSŠ (Bolonja) – 2. letnik

Predavatelj:  prof.dr.Igor Kononenko
Asistenta:  dr. Petar Vračar, Gregor Pirš

Namen predmeta: predstaviti metode strojnega učenja in umetne inteligence ter razviti sposobnost njihove praktične uporabe.

Obveznosti študenta:

·        pravočasno izdelane in pozitivno ocenjene domače naloge (spletni kvizi ter sprotna poročila)

·        pravočasno izdelani in pozitivno ocenjeni obe seminarski raziskovalni nalogi

·        pisni in ustni izpit

Ocenjevanje

Vaje
Študenti preko e-učilnice sproti rešujejo ob rokih objavljene spletne kolokvije, ki se točkujejo. Vsak študent mora doseči najmanj 50% pri reševanju spletnih kolokvijev, da lahko dobi oceno iz vaj. Oceno vaj predstavlja skupna ocena  dveh seminarskih raziskovalnih nalog.  Vsaka od seminarskih raziskovalnih  nalog mora biti oddana pravočasno in ocenjena  pozitivno. Pogoj za pozitivno oceno iz vaj je tudi vsaj polovica točk pri domačih nalogah. Upoštevajo se le pravočasno oddane  domače naloge. Ocena iz vaj velja samo tekoče leto. Če v tekočem letu študent ne opravi izpita, mora v naslednjem šolskem letu ponovno opravljati domače naloge in seminarske raziskovalne naloge. 
Izpit
Izpit je sestavljen iz pisnega in morebitnega ustnega dela. Pogoj za opravljanje izpita so pozitivno ocenjene vaje. Na pisnem izpitu je dovoljen en A4 list napisan lastnoročno z navadnim svinčnikom (da se lahko radira) in podpisan s kemičnim svinčnikom z imenom in priimkom ter vpisno številko (fotokopije in natisnjene strani niso dovoljene). Ta list se odda skupaj s pisnim izdelkom.
Končna ocena
Končna ocena je sestavljena iz ocene vaj (50%) in skupne ocene izpita (50%). Pri tem mora študent v vsakem delu doseči vsaj polovico možnih točk, torej tako pri vajah kot na pisnem izpitu.

Okvirna vsebina:

1. Uvod v strojno učenje in pregled metod strojnega učenja
2. Kaj je inteligenca, kaj je učenje in relacija človek-stroj
3. Osnovni principi strojnega učenja
4. Odločitvena in regresijska drevesa
5. Osnovne metode strojnega učenja
6. Ocenjevanje atributov, predprocesiranje podatkov
7. Ocenjevanje učenja, ansambli, umetne nevronske mreže
8. Preiskovanje prostorov: neinformirano, lokalno, hevristično
9. Priskovanje po principu MINIMAX, igranje iger
10. Evolucijsko računanje in genetski algoritmi
11. Inteligentni agenti in roboti
12. Spodbujevano učenje

Osnovna literatura:

I.Kononenko in M. Robnik Šikonja: Inteligentni sistemi. Založba FE in FRI, Ljubljana, 2010.


Pomožna literatura:

I. Kononenko in M. Kukar: Machine Learning and Data Mining: Introduction to Principles and Algorithms. Horwood publ., 2007.

G. F. Luger: Artificial Intelligence: Structures and Strategies for Complex Problem Solving (6th ed.). Addison-Wesley, Pearson Education, 2009

D. L. Poole,  A. K. Mackworth: Artificial Intelligence: Foundations of Computational Agents. Cambridge University Press, 2010 

S.J. Russell, P. Norvig: Artificial Intelligence: A Modern Approach (3rd ed.). Prentice Hall, Pearson Education, 2010

 

PRIMERA SEMINARSKIH RAZISKOVALNIH NALOG

1. seminarska raziskovalna naloga: Strojno učenje

 Študenti se v vsakem ciklu laboratorijskih vaj razdelijo v dve skupini. Vsaka skupina izbere vodjo. Vodja vodi celoten projekt analize dveh baz podatkov z metodami strojnega učenja. Vsako bazo je treba obravnavati na več načinov:

-         vizualizacija podatkov

-         ocenjevanje atributov: detekcija naključnih in redundantnih atributov, izbira podmnožice pomembnih atributov

-         kot klasifikacijski problem (tako da se odvisna spremenljivka diskretizira na 2 intervala s podanim pragom)

-         kot regresijski problem

 Vsaka skupina bo imela podizvajalce (podskupine) za 4 naloge. Vodja usklajuje delo skupine tako, da razdeli skupino na podskupine, razdeli delo posameznim podskupinam, izsledke podskupin usklajuje med seboj, tako da se smiselno dopolnjujejo, npr.

-         vizualizacija in izbira podmnožice pomembnih atributov,

-         primerjava klasifikacijskega in regresijskega drevesa, itd.

Vsaka skupina pripravi poročilo o analizi obeh baz podatkov, in sicer vsak študent pripravi do 4 strani poročila o svojem delu. Glavno poročilo vodje skupine (tudi do 4 strani) povzame delo celotne skupine in kot priloge k poročilu doda poročila vseh izvajalcev.

Skupine zagovarjajo seminarsko raziskovalno nalogo ob postavljenem roku na vajah tako, da vodja predstavi delo celotne skupine. Temu sledijo vprašanja, ki jih asistent postavlja vsakemu članu skupine posebej. Vsaka skupina pripravi tudi "najboljši" klasifikator in "najboljši" regresor za oba problema. Za njuno testirenje dobi za oba problema določeno število novih testnih primerov. Primerja se njihova "ocenjena" točnost in dejansko točnost na novih testnih primerih.

 

 2. seminarska raziskovalna naloga: Preiskovanje prostorov

 


Naslov predmeta: Strojno učenje (magistrski bolonjski študij)

Predavatelj: prof. dr. Igor Kononenko
Asistent: dr. Petar Vračar
Osnovni cilj predmeta: Spoznati osnovne principe in metode strojnega učenja

Vsebina:

1.        Pregled metod strojnega učenja

2.        (Strojno) učenje in (umetna) inteligenca, zgodnji uspehi strojnega učenja;

3.        Osnovni principi strojnega učenja  in preiskovalni algoritmi za podprobleme strojnega učenja

4.        Napredne metode za ocenjevanje atributov

5.        Uvod v umetne nevronske mreže: Hopfieldove NN, RBF, večnivojske NN, (samo informativno globoke NN)

6.        Nenadzorovano učenje (samo informativno razvrščanje), povezovalna pravila (association rules)

7.        Predstavitev znanja (samo informativno ILP), Bayesovsko učenje: Bayesov klasifikator, NB in nenaivni Bayes, semi-naivni Bayes, Bayesovske mreže, TAN

8.        Kalibracija verjetnosti in ocenjevanje zanesljivosti posameznih predikcij, kombiniranje algoritmov SU

9.        Vizualizacija in Razlaga posameznih predikcij

10.     Učenje iz podatkovnih tokov, aktivno učenje

11.     Osnove teorije naučljivosti

 

POTREBNO PREDZNANJE:

 

Vaje:

Na vajah se vadijo metode in tehnike, ki so predstavljene na predavanjih. Študenti rešujejo tudi domače naloge (spletni kviz, iz katerega vsak študent dobi oceno DN, ki mora biti najmanj 50%, da lahko dobi oceno pri premetu).

Raziskovalne naloge in MLDM (Machine Learning and Data Mining) Workshop:

Vsak študent (ali največ dva v skupini):

-         izbere podpodročje strojnega učenja (z izjemo učenja na področju računalniškega vida),

-         naredi pregled podpodročja SU, izbere konkreten problem/podatke in algoritme strojnega učenja, naredi nekaj poskusov in analizira rezultate

-         v sredini semestra med predavanjih predstavi idejo seminarske naloge in načrt dela,

-         samostojno izdela, napiše poročilo v obliki članka za delavnico (v angleščini) in ga odda za delavnico

-         zagovarja raziskovalno nalogo na delavnici (MLDM Workshop), ki se organizira zadnja dva tedna v semestru v okviru predavanja.

Ocena raziskovalne  naloge (pod pogojem, da je ocena domačih nalog pozitivna) se šteje za oceno iz vaj OC. Pozitivna ocena iz vaj je pogoj za pristop k izpitu. Ocena iz vaj velja samo tekoče leto. Če v tekočem letu študent ne opravi izpita, mora v nasl. šol. letu ponovno opravljati domače naloge in raziskovalne naloge.

Vsak študent (oziroma skupina, če raziskovalno nalogo izvaja več študentov), mora napisati poročilo v obliki znanstvenega članka - v angleščini, 6-8 strani dolg članek, oblika je specificirana z navodili za pisanje članka za delavnico. Oddati morajo PDF verzijo do postavljenega roka (deadline). Na delavnici vsak članek predstavijo v kratkem predavanju (10 min + 5 min diskusije).

  Sodelovanje na delavnici je obvezno za vse študente. 


Ocena izpita in vaj: ( I+V)/2

 

Izpit:

Izpit je sestavljen iz pisnega in morebitnega ustnega dela. Na pisnem izpitu je od literature dovoljen en A4 list napisan lastnoročno z navadnim svinčnikom (da se lahko radira) in podpisan s kemičnim svinčnikom z imenom in priimkom ter vpisno številko (fotokopije in printi niso dovoljeni). Ta list se odda skupaj s pisnim izdelkom.

 


Študijska literatura

Temeljna:
      KNJIGA:

ČLANKI:

·         Reliability of single predictions in classification and regression (paper: Comparison of approaches for estimating reliability of individual regression predictions )

·         Explaining classification of a single instance (paper: Explaining instance classifications with interactions of subsets of feature values  )

·         Learning from imbalanced data sets (Book chapter: Use of Prediction Reliability Estimates onImbalanced Datasets )

·         Active learning (Paper: Active Learning Literature Survey)

 

Dodatna: