Садржај
Друштвено битни аспекти развоја вештачке интелигенције

Основни појмови машинског учења

Појмови које ћемо увести у овој лекцији представљају основне појмове машинског учења. Они ће ти помоћи да лакше пратиш теме о којима ће бити речи у наставку а о сваком од њих ћеш још научити.


Уобичајено је да се у терминима машинског учења колекција података којом располажемо зове скуп података (енг. dataset). То може бити нека фина табеларна евиденција, налик онима које сусрећемо у базама података или Excel датотекама, али и нека скупина сателитских снимака или аудио-клипова. Један конкретан елемент скупа података се зове инстанца. Значи, један одређени ред у табели са евиденцијама или један одређени сателитски снимак су примери инстанци. Број инстанци у скупу података може да одређује избор алгоритма учења јер неки алгоритми захтевају више података од других.


У инстанцама фигуришу атрибути, својства којима описујемо податке. Ако замислимо да је табеларна евиденција о појавама земљотреса, у њој као атрибути могу да се јаве датум и време настанка, географска ширина, географска дужина, јачина земљотреса, ниво разорности и други важни подаци. Атрибуте равноправно називамо и карактеристикама (енг. features). Нешто касније ћеш научити какве све врсте атрибута постоје и о чему морамо да водимо рачуна. Оне атрибуте на основу којих треба да научимо да решавамо задатак називамо улазним променљивама (енг. input variables), а оне које треба да научимо излазним променљивама (енг. output variables). Тако, датум и време настанка земљотреса, његове гео-координате и јачина могу да буду улазне променљиве у задатку одређивања разорности земљотреса. Разорност земљотреса је као атрибут такође присутна у скупу података па би била излазна променљива. Некада ћемо користити и мање формалне термине попут улаза и излаза. Важно је да приметиш да је задатак тај који диктира шта ће нам бити улазне, а шта излазне променљиве.


Шта би могли да буду атрибути једног сателитског снимка?

Сложићеш се и да за сателитске снимке можемо да уведемо атрибуте попут локације, датума и времена настанка. Можемо да уведемо и атрибуте који описују сателит који га је снимио. Ипак, ниједан од ових атрибута не описује директно шта сателитски снимак садржи. Размисли о овој теми док не стигнемо до лекције која је покрива.


Рекли смо да је циљ алгоритама машинског учења да одреде пресликавање задатих узлаза у задате излазе. Сада можемо бити прецизнији и рећи да је циљ машинског учења да одреде пресликавања задатих улазних променљивих у задате излазне променљиве. Таква пресликавања зовемо моделима (енг. models).

    Q-3: Који математички појам повезујемо са пресликавањем?

  • скалар
  • Одговор није тачан.
  • функцију
  • Одговор је тачан.
  • тетраедар
  • Одговор није тачан.

Појам који повезујемо са пресликавањем је функција. На часовима математике си чуо много тога о функцијама као пресликавањима улаза у излазе. На пример, функција једне променљиве \(y = 2x + 4\) пресликава улаз \(x = 5\) у вредност \(y = 14\), док функција више променљивих \(y = 2x_1 - 3x_2 + x_3 + 5\) пресликава улаз \((x_1, x_2, x_3) = (1, -1, 3)\) у вредност \(y = 13\). Променљиве које се појављују у функцијама повезујемо са вредностима атрибута. Тако \(x\) у првој функцији може да представља квадратуру некретнине, док, редом \(x_1\), \(x_2\), \(x_3\) у другој функцији могу да представљају вредности атрибута као што су географска ширина, географска дужина и јачина земљотреса. На часовима математике чуо си да постоје и различите класе функција (линеарне, полиномијалне, тригонометријске, експоненцијалне, логаритамске), као и да сваку од њих карактеришу нека посебна својства попут непрекидности, монотоности или конвексности. Сва ова знања су добродошла приликом трагања за правим моделом.

    Q-4: Задатак за тебе је да поређаш следеће функције по комплексности, од једноставније ка комплекснијој:

    1. \(log(sin(x) - 2\cdot \pi \cdot e^{-4x + 0.5}) + 1\)

    2. \(sin(-x + 0.3)\)

    3. \(2x + 3\)

  • 2, 3, 1
  • Одговор није тачан.
  • 2, 1, 3
  • Одговор није тачан.
  • 3, 2, 1
  • Одговор је тачан.

Комплексност функције је нешто што нећемо формално уводити. Јасно ти је да су неке функције једноставније од других ”кобасица”. Једноставне функције су захвалније за рад и лакше их разумемо, али нам не дају много слободе да опишемо неке неуобичајеније везе између самих атрибута и излаза. Са друге стране, комплексне функције су са разлогом комплексне па нам може бити тешко да испратимо нека њихова математичка понашања која могу да утичу на учење. Када тражимо моделе, покушавамо да направимо баланс између комплексности и онога што знамо о подацима и што желимо да научимо.


У моделима, као што смо видели у уводном примеру одређивања цена некретнина, могу да се појављују параметри као што су \(k\) и \(n\). Такве моделе називамо параметарским моделима и задатак одређивања правог модела сводимо на задатак одређивања најбољих вредности параметара. У линеарном моделу у задатку одређивања цена некретнина појавила су се само два параметра, док модерни модели, они који се заснивају на неуронским мрежама, имају милионе или милијарде параметара. Видећемо да постоје и нешто другачији непараметарски модели, чије су форме другачије изражене.


Процес проналажења модела назива се тренирање или обучавање (енг. model training). Уколико у моделу фигуришу непознати параметри, у току тренирања треба да одредимо њихове вредности. То нам је циљ.


У скупу података који се користе за обучавање модела могу да се нађу и нетачне, непрецизне или опречне вредности. Зато модели никада нису апсолутно тачни. То нас доводи до још једног важног појма у теорији машинског учења: функцијe грешке (енг. loss function). Функција грешке треба да нам да информацију о томе колико модел греши. Њене вредности активно користимо у току обучавања модела и тежимо оним конфигурацијама модела које нас воде до најмање вредности функције грешке. У случају параметарских модела, а то је био случај и у уводном примеру са некретнинама, циљ је да одредимо оне вредности параметара за које је вредност функције грешке најмања.

Посматрајмо систем једначина:

\(2x_1 = 2\)

\(-x_1 + x_2 = 0\)

\(2x_2 = -2\)

Он нема тачно решење јер из прве једначине следи да је \(x_1=1\), из последње да је \(x_2=-1\), a из друге да је \(x_1=x_2\), што је контрадикција. Ипак, овај систем има много приближних решења, на пример, пар (\(x_1\), \(x_2\))=(0,6, -0,6). Приближно решење је и пар бројева (\(x_1\), \(x_2\))=(0,35, -0,8) али нам се оно ипак чини нешто лошијим у односу на прво: одступања од очекиваних вредности 2, 0 и -2 су нешто већа. На сличан начин модел мора да се снађе са опречним или непрецизним информацијама у подацима - мора да направи баланс између свих инстанци и направи што је могуће мању грешку.


Када обучимо модел машинског учења, треба да проценимо колико је он заправо добар за примену у пракси. Томе нам служе такозване мере квалитета - свака од њих је прилагођена специфичном задатку учења и домену у којем ће се примењивати модел. Важно је нагласити да се, у општем случају, функција грешке и мере квалитета разликују. Обе имају за циљ да нам дају информацију о томе колико је модел добар, с тим што функција грешке то ради у току обучавања модела, док мере квалитета то раде након обучавања модела. Функција грешке је уско везана за модел док се мере квалитета дизајнирају тако да могу да их разумеју и корисници и доменски експерти. Уколико се не добију одговарајуће вредности мера квалитета, модел мора да се поправи. У наставку ћемо причати шта то заправо значи и како може да се постигне. Цео процес испитивања квалитета модела и израчунавања његових мера квалитета назива се тестирање модела (енг. model testing).


Уобичајено је да се вредности које израчунава и генерише обучени модел називају предикцијама (енг. predictions). Тако су цена за нову некретнину или оцена разорности земљотреса примери предикција модела. Због овог термина се прича о предвиђањима у свету вештачке интелигенције. Јасно ти је да ова предвиђања никако нису насумична, већ врло основана и утемељена на подацима. Сама примена модела се назива и закључивање (енг. inference).


Сви појмови који су наглашени су важни појмови машинског учења и провлаче се увек у литератури о машинском учењу и његовим применама. Зато је важно да ти буду јасни и да разумеш какву улогу играју у развоју једног модела.

(Created using Swinx, RunestoneComponents and PetljaDoc)
© 2022 Petlja
A- A+