Онлайн час в Google Meet
Лого на 91. НЕГ „Проф. Константин Гълъбов“

12. клас · Избираем модул · Урок 14

Анализ на данни с Orange Data Mining

Визуално програмиране с уиджети: File → Data Table → модел → Test and Score. Обучавате и сравнявате два модела върху собствения си CSV без ред код и четете точността и матрицата на грешките.

От CSV към модел без код

В урок 12 направихте nabor.csv. В урок 13 видяхте цикъла обучение → тест → поправка върху снимки. Днес същият цикъл върху вашата таблица — с Orange Data Mining, безплатна настолна програма (orangedatamining.com), в която моделът се сглобява от кутийки, а не се пише. След час ще имате число: колко от тестовите редове моделът познава.

Уиджети и работен поток

Уиджет (widget)

Кутийка с една функция — чете файл, показва таблица, обучава модел, смята точност. Влачите я от лентата вляво върху платното и свързвате изхода ѝ с входа на следващата.

FileData TableScatter PlotTest and ScoreConfusion MatrixPredictionsTreeДанните текат по линиите отляво надясно; всеки кръг е уиджет, който се отваря с двойно щракване.
Минималният работен поток за днес. File подава данни; Tree подава модел; Test and Score ги събира и мери.
РазделУиджетЗа какво
DataFileчете CSV/Excel; тук казвате коя колона е етикетът
DataData Tableпоказва редовете — първата проверка след зареждане
VisualizeScatter Plotдве колони една срещу друга, цвят по етикет
VisualizeDistributionsхистограма на една колона, разделена по етикет
ModelLogistic Regression, Tree, kNN, Random Forestчетири алгоритъма; днес са само избор от менюто
EvaluateTest and Scoreобучава всеки свързан модел и мери резултата
EvaluateConfusion Matrixматрицата на грешките от Test and Score
EvaluatePredictionsпредсказанията на модела за конкретни редове
VisualizeTree Viewerрисува наученото дърво — единственият модел, който се чете

File — къде се казва кое е етикетът

При отваряне на CSV в File се появява списък на колоните с три неща за всяка: тип (numeric, categorical, text, datetime) и роля (feature, target, meta, skip). Orange познава типовете от данните, но ролята е ваша работа:

  1. Колоната с етикета (visok_uspeh) — двойно щракване върху ролята ѝ → target. Ако е 0/1, сменете и типа на categorical, иначе Orange ще прави регресия.
  2. Идентификаторът (uchenik) → meta: вижда се в таблиците, но не влиза в модела.
  3. Колона, която изтича отговора (урок 12) → skip.
  4. Натиснете Apply. Без него промените не тръгват по кабела.

Test and Score — числата

Уиджетът взима данните и всеки свързан към него модел, обучава и проверява по избраната схема и показва таблица с по един ред на модел. Вляво избирате как да се проверява:

Cross validationTest on train data
Какво правидели данните на k части (по подразбиране 10); обучава върху k−1, тества върху останалата, k пътиобучава и тества върху едни и същи редове
Честно ли еда — всеки ред е бил тестов точно веднъжне — мери паметта на модела (урок 12)
Когапо подразбиране; при малки набори — 5 частисамо за сравнение, колко е самозалъгването

Има и Test on test data — тогава свързвате втори File с test.csv към входа Test Data. Това е точно разделянето, което направихте на ръка в урок 12.

Колоните на резултата

  • CA (classification accuracy) — дял познати редове. Числото, което търсите днес.
  • Precision и Recall — за какво служат, идва в урок 15; днес само ги записвате.
  • AUC, F1, MCC — други обобщени мерки; засега ги пропускате.

Свържете Confusion Matrix към Test and Score: редовете са истинският клас, колоните — предсказаният. Диагоналът са познатите; всичко извън него са грешки, разделени по вид. Щракване върху клетка избира тези редове и ги изпраща нататък — например към Data Table, за да ги разгледате.

Четирите модела от менюто

Днес не е важно как работят — важно е, че се сменят с влачене на друга кутийка. Само толкова, колкото да знаете какво сравнявате:

УиджетИдея с едно изречениеМоже ли да се прочете
Logistic Regressionпретегля признаците и тегли една границадонякъде — по теглата
Treeпоредица от въпроси „признак > праг?“да — с Tree Viewer
kNNгледа k-те най-близки реда и взима техния етикетне
Random Forestмного дървета върху случайни части от данните; гласуватне

Какво трябва да запомниш

  • Orange сглобява анализа от уиджети: File → Data Table → модел + Test and Score → Confusion Matrix.
  • Ролята на колоните се задава във File: target за етикета, meta за идентификатора, skip за изтичащите.
  • Test and Score с cross validation дава честна оценка; „Test on train data“ мери само паметта.
  • CA е делът познати редове; Confusion Matrix показва кои класове се бъркат.
  • Модели се сравняват в един Test and Score; четимият (Tree с Tree Viewer) има предимство при равни резултати.