Similar presentations:
3. Класификация и прогнозиране
1. Класификация, регресия и прогнозиране
2. Класификация - Classification Predictive Modeling
Класификационното прогнозно моделиране е задачата заприближаване на функцията (f) от входните променливи (X) до
дискретни изходни променливи (y).
Изходните
променливи
често
се
наричат
етикети
или
категории. Функцията предсказва класа или категорията за
дадено наблюдение.
Например ел. писмо с текст може да бъде класифицирано в един
от двата класа: „спам“ и „не спам“.
June 23, 2026
2
3. Класификация - Classification Predictive Modeling
Проблемът с класификацията изисква примерите да бъдаткласифицирани в един от два или повече класа.
Една класификация може да има реални или дискретни
входни променливи.
Проблем с два класа често се нарича проблем с двукласова
или двоична класификация (two-class or binary classification
problem).
June 23, 2026
3
4. Класификация
Проблем с повече от два класа често се нарича проблем смногокласова
класификация
(multi-class
classification
problem).
Проблем, при който на един пример са присвоени множество
класове, се нарича проблем с класификация с множество
етикети (multi-label classification problem).
June 23, 2026
4
5. Класификация
Обичайное
класификационните
модели
да
предвиждат
непрекъсната стойност като вероятността даден пример да
принадлежи към всеки изходен клас. Вероятностите могат да се
тълкуват като вероятност или увереност даден пример да
принадлежи към всеки клас. Предсказаната вероятност може да
бъде преобразувана в стойност на клас чрез избиране на етикета на
класа, който има най-висока вероятност.
Например, на конкретен имейл с текст може да се присвоят
вероятности от 0,1 като „спам“ и 0,9 като „не спам“. Можем да
преобразуваме тези вероятности в етикет на клас, като изберем
етикета „не спам“, тъй като има най-високата предвидена вероятност.
June 23, 2026
5
6. Класификация
Има много начини за оценка на уменията на класификационниямодел за прогнозиране, но може би най-разпространеният е да се
изчисли точността на класификацията.
Точността на
класифицираните
класификацията е
примери
от
процентът
всички
на
правилно
направени
прогнози.
Например, ако класификационен прогнозен модел направи 5 прогнози и
3 от тях са правилни, а 2 от тях са неправилни, тогава точността на
класификацията на модела, базирана само на тези прогнози, ще бъде:
accuracy = correct predictions / total predictions * 100
accuracy = 3 / 5 * 100= 60%
June 23, 2026
6
7. Класификация
Класификационните алгоритми могат да се разделят на следнитевидове:
Logistic Regression (Логическа регресия)
K-Nearest Neighbours (k най-близки съседи)
Support Vector Machines (метод на опорните вектори)
Naïve Bayes (Бейсов модел)
Decision Tree Classification (класификация с дърво на решенията)
Random Forest Classification (класификация със случайни гори)
Neural Networks (Невронни мрежи)
June 23, 2026
7
8. Регресионно прогнозно моделиране (Regression Predictive Modeling)
Регресионнотопредсказващо
моделиране
е
задачата
за
приближаване на функцията (f) от входни променливи (X) до
непрекъсната изходна променлива (y).
Непрекъсната изходна променлива е реална стойност, като цяло
число или стойност с плаваща запетая. Това често са количества, като
брой и размери.
Например, може да се прогнозира, че една къща ще се продаде за
определена стойност в долари, може би в диапазона от 100 000 до 200
000.
June 23, 2026
8
9. Регресионно прогнозно моделиране (Regression Predictive Modeling)
Регресионният проблем изисква прогнозиране на количество.Регресията
може
да
има
реални
или
дискретни
входни
променливи.
Проблем с множество входни променливи често се нарича
многовариантен регресионен проблем.
Регресионен проблем, при който входните променливи са
подредени по време, се нарича проблем за прогнозиране на
времеви редове.
June 23, 2026
9
10. Регресионно прогнозно моделиране (Regression Predictive Modeling)
Тъйкато
регресионният
прогнозен
модел
прогнозира
количество, уменията на модела трябва да бъдат докладвани като
грешка в тези прогнози.
Има много начини за оценка на уменията на регресионен
предсказващ модел, но може би най-често срещаният е да се
изчисли средната квадратна грешка, съкратено от акронима
RMSE.
June 23, 2026
10
11. Регресионно прогнозно моделиране (Regression Predictive Modeling)
Например, ако регресионен прогнозен модел направи 2 прогнози,едно от 1,5, където очакваната стойност е 1,0, и друго от 3,3 и
очакваната стойност е 3,0, тогава RMSE ще бъде:
RMSE = sqrt(average(error^2))
RMSE = sqrt(((1.0 - 1.5)^2 + (3.0 - 3.3)^2) / 2)
RMSE = sqrt((0.25 + 0.09) / 2)
RMSE = sqrt(0.17) = 0.412
Предимство на RMSE е, че единиците на оценката на грешката са в
същите единици като прогнозираната стойност.
June 23, 2026
11
12. регресия
Видове регресионни модели:Simple Linear Regression
Multiple Linear Regression
Polynomial Regression
Support Vector Regression
Decision Tree Regression
Random Forest Regression
June 23, 2026
12
13. Класификация или регресия
Проблемите с класификационното прогнозно моделиране саразлични от проблемите с регресионното прогнозно моделиране.
Класификацията е задача за предсказване на етикет на отделен
клас.
Регресията
е
задача
за
прогнозиране
на
непрекъснато
количество.
June 23, 2026
13
14. Класификация или регресия
Имаизвестно
припокриване
между
алгоритмите
за
класификация и регресия; например:
Алгоритъмът
за
класифициране
може
да
предвиди
непрекъсната стойност, но непрекъснатата стойност е под
формата на вероятност за етикет на клас.
Алгоритъмът
за регресия може да предвиди дискретна
стойност, но дискретната стойност под формата на цяло
число.
June 23, 2026
14
15. Класификация или регресия
Някои алгоритми могат да се използват както закласификация, така и за регресия с малки модификации,
като дървета на решенията и изкуствени невронни мрежи.
Някои алгоритми не могат или не могат лесно да се
използват и за двата типа проблеми, като например линейна
регресия
за
логистична
моделиране.
регресионно
регресия
за
прогнозно
моделиране
класификационно
и
прогнозно
June 23, 2026
15
16. Класификация или регресия
June 23, 202616
17. Класификация или регресия
June 23, 202617
18. Класификация или регресия
June 23, 202618
19. Процес на прогнозиране
Да предположим, че маркетинг мениджърът трябва да предвидиколко ще похарчи даден клиент по време на разпродажба в
неговата компания. В този пример сме притеснени да предвидим
числова стойност. Следователно задачата за анализ на данни е
пример за числено прогнозиране. В този случай ще бъде
конструиран модел или предиктор, който предвижда функция с
непрекъсната стойност или подредена стойност.
Забележка
методология,
−
Регресионният
която
най-често
анализ
се
е
използва
статистическа
за
числено
прогнозиране.
June 23, 2026
19
20. Процес на прогнозиране
June 23, 202620
21. Невронни мрежи
Могат да се използват за клъстеризация, класификация ипрогнозиране.
Образува се повтарящ цикъл на обучение, като тегловите
коефициенти се променят, докато се получи действителната
стойност на входния параметър.
Знанията се представят като връзки, свързващи набор от
условия. Силата на връзките определя свързаността между
данните.
June 23, 2026
21
22. Невронни мрежи
Необходима е съвкупност от входни параметри, тегла иматематически функции за определяне значението на целевия
показател.
При класификацията целта е да се предскаже клас, а при
предсказването се предсказва стойности на непрекъснати
променливи и категорийни данни.
June 23, 2026
22
23. Невронни мрежи
Невроннитемрежи
представляват
сложни
нелинейни
модели, изградени от компоненти, които индивидуално се
държат сходно на регресионния модел. Въпреки че структурата
на
невронната
мрежа
е
проектирана
предварително,
обработването, което мрежата извършва, за да се произведе една
хипотеза се усъществява по време на учебния процес. Първият
математически модел на неврон е предложен от McCulloch и Pitts
през 1943.
June 23, 2026
23
24. Невронни мрежи
Въпреки, че един-единствен неврон може да изпълняванякои прости функции за обработка на информация, силата на
невронните изчисления идва от свързването на невроните в
мрежи. Изкуствената невронна мрежа е компютърен модел,
определящ се от три параметъра - тип на неврона, свързваща
архитектура (организацията на връзките между невроните) и
обучаващ алгоритъм.
June 23, 2026
24
25. Невронни мрежи
Функционирането на невронната мрежа, когато е подаденвходен
вектор X, може да се разглежда като преобразуваща
функция F: X Y, където X e състоянието на входното
пространството и Y е състоянието на изходното пространство на
мрежата. Мрежата нанася входните вектори x X в изходните
вектори y Y през "филтър" на теглата, т.е y = F(x) = s(W, x),
където W е матрицата с тегловните връзки. Матрицата с
тегловните коефициенти представя "знания".
June 23, 2026
25
26. Невронни мрежи
Видът на връзките между невроните в невронна мрежаопределя нейната топология. Невроните в невронната мрежа
могат да бъдат напълно свързани, т.е всеки неврон е свързан
към всички други, частично свързани, например само връзките
между невроните в различни слоеве да са разрешени, или в
общият случай не са представени всички възможни връзки
между невроните в невронната мрежа.
June 23, 2026
26
27. Невронни мрежи
Могат да бъдат разграничени две основни свързващиархитектури, в зависимост от броя на входните и изходните
множества на невроните и използваните слоеве: автоматично
асоцииращи (autoassociative) - входните неврони са също
изходни и различно асоцииращи (heteroassociative) - налични
са
отделни множества от входни и съответно от изходни
неврони. Към първата група принадлежи мрежата на Хопфийлд
(The Hopfield network), докато към втората спадат перцептрона
и многослойния перцептрон (Perceptron and the multilayer
perceptron (MLP)).
June 23, 2026
27
28. Невронни мрежи
ИзходВход
Изход
Вход
Автоматично асоцииращи и различно асоцииращи типове
невронни мрежи
June 23, 2026
28
29. Невронни мрежи
В зависимост дали имат обратна връзка или не, невроннитемрежи се делят на два типа:
Архитектура с право предаване (Feedforward architecture) - няма
зададени обратни връзки от изходните към входните неврони;
мрежата не пази спомен за предишните изходни стойности и
активиращите състояния на невроните.
Архитектура с обратно предаване (Feedback architecture) - има
връзки от изходните към входните неврони; така че мрежата
помни предишните си състояния и следващото състояние зависи
не само от входните сигнали, но и от предишните състояния на
невронната мрежа.
June 23, 2026
29
30. Невронни мрежи
June 23, 202630
31. Невронни мрежи
Алгоритмите за обучение чрез невронна мрежа се класифициратв три групи:
(Supervised learningОбучение под наблюдение, конролирано
или обучение чрез учител ) - обучаващите данни съдържат
входни вектори x и желаните изходни вектори y. Обучението се
извършва
докато
невронната
мрежа
"обучи"
за
всеки
асоцииран входен вектор x отговарящият и желан изходен
вектор y.
June 23, 2026
31
32. Невронни мрежи
Обучениебез наблюдение или обучение без учител
(Unsupervised learning) - предоставят се само входни вектори x
невронната мрежа обучава някои вътрешни функции
на
цялото множество от представящите го входни вектори.
Подсилващо обучение (Reinforcement learning) - представлява
комбинация от споменатите по-горе два типа обучение.
Предоставя се входен вектор x на невронната мрежа и се
търсят изчислените от мрежата изходни вектори. Невронната
мрежа
функционира
чрез
увеличаване
и
намаляне
на
тегловните връзки.
June 23, 2026
32
33. Невронни мрежи
Основният процес на обучение на невронната мрежа се описвачрез характеристика, наречена "сходство" (convergence). Обучението
на невронната мрежа е итерационен процес, при който на входа й се
подават едни и същи входни стойности x и се формират желаните
изходи y. След като невронната мрежа е спряла обучението с
обучаващото множество, теглата не се променят повече. Мрежата
може да спре да обучава по две причини: обучила е примерите за
обучение и мрежата се е превърнала в наситена. Теоремата за
насищане на Grossberg's гласи, че големите входни сигнали насищат
неврона, когато е чувствителен към малки входни сигнали, но ако той
е чувствителен към големи входни сигнали, малките сигнали са
игнорирани като шум.
June 23, 2026
33
34. Support vector machines (SVM)
Методът на опорните вектори (SVM) е статистически метод,който често се използва в областта на машинното обучение. При
извличането на данни SVMs се прилага с цел класифициране на
данни и прогнозиране на бъдещите тенденции в различни
области
-
медицинска
диагностика,
биоинформатика,
разпознаване на образи, обработка на изображения и извличане
на текст.
June 23, 2026
34
35. Support vector machines (SVM)
Класификаторите на опорните вектори трябва да бъдат обучении след това да могат да се използват за прогнозиране на бъдещи
модели. Алгоритмите на SVM се опитват да намерят „оптимална
хипер-равнина“, която може да увеличи максимално разстоянието
на две групи проби. Хиперравнината е оптимална, когато е на
максимално разстояние до точките от два класа. Двете успоредни
равнини на хиперравнината, които са разположени най-близо до
точките на разделящите множества, се наричат "опорни вектори"
June 23, 2026
35
36. Support vector machines (SVM)
Разстоянието между опорните вектори за всеки клас се нарича„margin". В случай, че има много хипер-равнини, той търси
"максималната
хипер-равнина".
Най-добре
разделя
класовете.
Елементите от класовете, които са най-близо до хиперравнината, се
наричат опорни вектори. Опорните вектори трябва да са максимални
близо до точките от всеки клас и максимални най-отдалечените от
хиперравнината [9-12]. Когато разстоянието между опорните вектори
и хипер-равнината е твърде малко, тогава класификаторът има „hard
margin".
June 23, 2026
36
37. Support vector machines (SVM)
Разделящата хипер равнина и опорните векториJune 23, 2026
37
38. Support vector machines (SVM)
Основните стъпки на алгоритъма SVM в нелинеен случай са:Предварителна обработка на данните- (липсващи стойности,
грешни данни, шум в данните, нормализиране на данните);
Разработване на модела- Избор на вида на ядрото(функцияна),
Определяне на параметрите спрямо избраното ядро, функция;
Ако резултатите са задоволителни, модела се финилизира, в
противен случай се променя типа на ядрото и параметрите, за да
се постигне желаното ниво на точност;
Извличане и внедряване на модела.
June 23, 2026
38
39. Support vector machines (SVM)
Прилагането на техниката се извършва с помощта на данни завремето.
Базата
данни
включва
следните
атрибути:
вятър,
температура, изгледи, влажност, детектор за дим, инфрачервен
детектор и дата/час. Интерес представляват случаите, когато
инфрачервеният детектор има стойност "да".
Прост пример за анализ, базиран на данни за времето, е даден с
помощта на софтуера RapidMiner. Първо, необходимо е да има връзка с
базата данни. Стъпката на предварителната обработка се извършва
с помощта на операторите „Избор на атрибути“ и „Номинално към
числено“. Класификационната задача изисква да има атрибут
етикет - това е атрибутът "Инфрачервен детектор". Следващите
стъпки са генериране на модел и неговото валидиране.
June 23, 2026
39
40. Support vector machines (SVM)
June 23, 202640
41. Support vector machines (SVM)
June 23, 202641
42. Support vector machines (SVM)
June 23, 202642
43. Support vector machines (SVM)
June 23, 202643
44. Support vector machines (SVM)
June 23, 202644
45. Decision tree
Представен е процеса на съставяне на дърво на решението,използвайки алгоритъм Hunt's(Hunt's algorithm), който е
основата на ID3, C4.5 и CART.
В началото всички обучаващи записи са в корена. Всеки запис
съдържа множество от атрибути и един от атрибутите е от
класа. Следващата стъпка е рекурсивно разделяне на записите
чрез избиране на разделящ атрибут всеки път.
Нека Dt е множеството на обучаващите примери, които се
намират във възел t и нека C1, C2,..., Cn са етикетите на класа.
June 23, 2026
45
46. Decision tree
Съгласно Hunt's Algorithm има три случая:Случай 1: Всички записи в Dt принадлежат на същия клас Ct ,
тогава възелът t е листо, означено като Ct;
Случай 2: Dt е празно множество; тогава въдзелът t е листо,
означено като липсващ(подразбиращ ) клас Cd ;
Случай 3: Dt съдържа записи, които принадлежат на повече от
един клас; тогава множеството на обучаващите записи се
разделя в по-малки подмножества чрез разделящ атрибут.
Тази процедура се повтаря рекурсивно за всяко подмножество.
June 23, 2026
46
47. Дърво на решението
Процесът по конструиране на дърво на решението се състои отпредварителна обработка на данните, задаване на атрибут за
етикетите на класовете, генериране на модел и последващото му
тестване. Първоначално е осъществена връзка към MySQL база
данни, съдържаща метеорологични данни и след това са избрани
необходимите данни за анализа. Преди стартирането на процеса по
конструиране на дърво на решението се задава атрибут за етикетите
на класовете. За текущият анализ е избрано поле "humidity".
June 23, 2026
47
48. Дърво на решението
Връзка с метеорологична база данни и подготовка за процеса по конструиране на дърво на решениетоJune 23, 2026
48
49. Дърво на решението
В оператора за кръстосана валидация(които е suboperator,т.есъстои се от подпроцесно ниво) за обучение е избран оператор
Decision Tree като неговите параметри са показани на
следващата фигура. Разделящият критерий gain ratio паказва
най-добър резултат при валидацията с наличните данни и
затова е избран. След обучението, конструираният модел е
приложен върху тестващите данни и е измерена неговата
точност.
June 23, 2026
49
50. Дърво на решението
Конструиране на дърво на решението от обучаващо множество данни и прилагане на готовия модел върху тестващи данни с цел определяненеговата точност
June 23, 2026
50
51. Дърво на решението
Конструираното дърво е визуализирано на следващата фигура.Резултатът от валидацията и представен на по-следващата
фигура. Вижда се, че точността на модела е добра, но за бъдещи
прогнозирания трябва да се увеличи. Дървото на решението
класицифира данните, намирайки температурните зависимости
във времето. При добавяне на записи за настъпили пожари в
минало моделът може да предскаже температурните условия,
при които има възможност за пожар.
June 23, 2026
51
52. Дърво на решението
Конструиран модел на дърво на решението с метеорологични данниJune 23, 2026
52
53. Дърво на решението
От дървото на решението могат да бъдат записани следнитеправила:
If Outlook=a few showers then Humidity=high;
If Outlook=overcast and Wind=breeze and Temperature=cool then Humidity=high;
If Outlook=overcast and Wind=breeze and Temperature=hot then Humidity=normal;
If Outlook=overcast and Wind=calm then Humidity=normal;
If Outlook=overcast and Wind=gale then Humidity=normal;
If Outlook=overcast and Wind=light breeze then Humidity=normal;
If Outlook=partly cloudy then Humidity=normal;
If Outlook=partly sunny then Humidity=normal;
If Outlook=periods of rain then Humidity=high;
If Outlook=storm of hail then Humidity=high;
If Outlook=sunny then Humidity=normal.
June 23, 2026
53
54. Дърво на решението
На сл. Фигури са представени резултатите от процеса на валидацияна конструираното дърво на решението. Точността на модела е 78,27
%. Примерите, предсказани правилно за атрибут Humidity и стойност
"normal" са 49 случая, прогнозирани коректно и 14 погрешно. За
стойност 'high" са предсказани правилно 31 случая и 8 предсказани
некоректно.
Резултат от валидацията на модела - точност на модела
June 23, 2026
54
55. Дърво на решението
Резултат от валидацията на модела - прецизност на моделаРезултат от валидацията на модела - всички резултати
June 23, 2026
55