Ивона Кочева е асистент на модулот Machine Learning на нашата Академија за Data Science. Таа е дип­ло­ми­ран инженер по електротехника и информациски технологии. Работи како дата научник (data scientist), а нејзината главна работна задача е креирање на модели за предвидување на продажба и услуги. Како дел од работното искуство се и четири години поминати како дата аналитичар за предвидување на потрошувачка на електрична енергија. Љубител на статистиката, како и пишаниот збор.

 

Прочитајте што Ивона Кочева има да каже за важноста на објаснување и толкување на моделите за машинско учење

 

 

Како можеме да објасниме еден модел?

Ако еден модел за машинско учење ни дава добри резултати, зошто едноставно не му веруваме на тој модел и да игнорираме како и зошто се направени соодветните одлуки? Проблемот е во тоа што една метрика, како што е точноста во класификациските проблеми, не го објаснува доволно реалниот свет.

Во овој текст, ќе се обидеме да ја објасниме важноста за толкувањето и објаснувањето на моделите. Кога станува збор за предиктивни модели, потребно е да се направи некаков баланс: Дали сакаме да знаеме само што е предвидувањето?

На пример, веројатноста дали еден корисник ќе остане во компанијата или ќе ја напушти и ќе премине во друга или како некој вид на терапија ќе влијае врз болниот пациент? Или пак сакаме да знаеме зошто и како е избрано сооодветното предвидување и кои атрибути се искористени за да се даде соодветното предвидување. Во некои случаи, можеби сакаме само да го знаеме предвидувањето, без некое дополнително објаснување, меѓутоа постојат и дејности во кои има многу голема важност да знaеме кои атрибути се искористени за да се добие соодветното предвидување.

 

 

Знаењето на овие одговори ќе ни овозможи да дознаеме повеќе за проблемот и секако доколку имаме одредена експертиза во областа, многу повеќе би знаеле дали може да му „веруваме” на моделот. Некои модели немаат потреба од објаснување бидејќи се користат во такви околини каде соодветното предвидување нема да има влијание кое би можело да направи непоправлива штета, меѓутоа постојат и околини во кои користењето на моделите и нивно објаснување е од голема важност дури и неопходно за да може да се искористи самиот модел за идни предвидувања. 

Потребата за толкување и објаснување произлегува од некомплетноста на самите модели, што значи за одредени проблеми или задачи не е доволно само да се добие предвидувањето (што е предвидено?). Моделот, исто така, мора да објасни како е дојдено до тоа предвидување (зошто?), бидејќи правилното предвидување само делумно го решава првичниот проблем.

Токму овие се потребите за да имаме библиотеки кои ќе ни помогнат да може да утврдиме врз основа на што е добиено соодветното предвидување кога користиме модели за машинско учење за кои се користи изразот „црни кутии”. Тоа значи дека ние имаме потреба од дообјаснување на соодветното предвидување, дали за да може да го потврдиме и верификуваме предвидувањето и секако да го приложиме на крајниот корисник како дополнување на предвидувањето.

 

Image source

 

Во продолжение ќе прикажеме три библиотеки кои се од иста важност без разлика на нивата наведеност овде. Секако постојат и други, но сега ќе ги илустрираме само овие.

 

1. ELI5:

ELI5, доаѓа како кратенка на „Објасни ми како да имам 5 години” (од анг. Explain like I am a 5-year-old). Оваа библиотека во Python има методи со чија помош може да се прикаже функционалноста:

  • Глобално објаснување – врз основа на параметрите на моделот да се даде објаснување како функционира моделот на глобално ниво.
  • Локално објаснување – да се анализира само една инстанца во моделот и да се даде објаснување како е дојдено до резултатот/предвидувањето за таа инстанца.

 

2. LIME

LIME, доаѓа како кратенка од локално интерпретабилно објаснување на модел (од анг. Local Interpretable Model Agnostic Explanation):

  • Идеата зад LIME е да ги даде причините зошто е направено соодветното предвидување. Доколку имаме пример каде што имаме предвидување дали клиентот ќе го купи или не соодветниот продукт, LIME треба да ги истакне оние карактеристики кои би направиле клиентот навистина да го купи тој продукт. 
  • Оваа библиотека може да се користи и за текст и за слики со користење на lime.lime_tabular.LimeImageExplainer() и lime.lime_tabular.LimeTextExplainer().

 

3. SHAP

SHAP е акроним за SHAPLEY Additive exPlanations. SHAP библиотеката ги користи вредностите на Shapley во својата основа и е насочена кон објаснување на индивидуалните предвидувања. Едноставно кажано, вредностите на Shapley се изведени од теоријата на игри, каде што секоја карактеристика во нашите податоци е играч, а конечната награда е предвидување.

  • Во зависност од наградата, вредностите на Shapley ни кажуваат како правилно да ја распределиме оваа награда меѓу играчите. Најдобриот дел за SHAP е тоа што нуди специјален модул за модели базирани на дрва.
  • Со оглед на тоа колку се популарни моделите базирани на дрвја во хакатоните и во индустријата, овој модул прави брзи пресметки, дури и со оглед на зависните карактеристики.

 

Со користењето на овие библиотеки имаме нешто што го поткрепува нашето предвидување, со тоа моделите за машинско учење не се веќе „црни кутии”. Оваа тематика станува поинтересна и барана, бидејќи за да може еден модел да биде користен, клучно е да дадеме задоволително објаснување за генерираното предвидување.

 

Уписите за следната група на Академијата за Data Science се во тек! Интересот е преголем и бројот на места – ограничен, затоа резервирај го твоето на време!

Закажи средба со нашиот student success manager за повеќе насоки и детали за програмата!