Извличането на знания от данни () е процес на откриване на смислови корелации, асоциации и зависимости, повтарящи се модели или образци (), тенденции, честота и продължителност на тенденциите, извънредни, рядко срещани или отчитани от комютъра като аномалии в шаблонния модел в големи масиви от данни, съхранявани в складове чрез използване на техники и алгоритми от областта на машинното обучение, разпознаването на образи, статистиката, невронните мрежи и визуализацията на данни. За разлика от извличането на данни посредством заявки към база данни, извличането на знания от данните генерира имплицитно формулирана, не очевидна, предварително известна, потенциално полезна информация.
Възникването и развитието на областта е естествено следствие от нарасналата употреба на бази данни и приложенията им в бизнеса. Традиционните средства за заявки към системата за управление на базата данни се използват за описание и извличане на точни масиви от данни от базата. В тези случаи потребителят е формулирал някаква хипотеза, която проверява посредством върнатите от системата данни. За разлика от по-общото извличане на информация (information retrieval, data retrieval), потребителят използва извличането на знания от данни, за да генерира хипотези.
Data mining представлява процес на анализ на съхраняваните бази данни в посока на извличане нова полезна информация чрез разкриване на дълбоките и скрити взаимоотношения между на пръв поглед неизвестни и несвързани една с друга величини. Важна негова особеност е че той осигурява възможност за обработка на многомерни масиви и извличане на многомерни зависимости като същевременно автоматично разкрива изключителните ситуации – данни и случаи не включващи се в общите закономерности. Data mining анализа автоматически прави хипотези за разкриване на зависимости между различни компоненти и параметри. Работата на аналитиците, които се занимават с тези системи се свежда до проверка и доуточняване на получените хипотези. Появата на Data mining е свързана с необходимостта от усъвършенстване на техниките за запис и съхранение на данните, които обобщават труда на хиляди хора в колосални потоци от информация в най-различни области. Като с времето е станало ясно, че без продуктивна обработка на данните се правят никому ненужни извадки. Нуждата в развитието на съвременните технологии от такава преработка на данните може да се обобщи в следното:
Неограниченият обем на данните. Голямата разнообразие и разнородност на данните (количествени, качествени и текстови). Необходимост от конкретни и разбираеми резултати. Инструменти за обработка на данните предоставящи възможност за лесно използване.
В основата на съвременните технологии Data mining стои концепцията за закономерности или модели (patterns), отразяващи фрагментираните многоаспектни взаимоотношения между данните. Тези шаблони представят сбор от закономерности, подбор на данните по дадени свойства, които са подходящо представени във форми лесно достъпни за потребителите. За създаването на тези шаблони се прилагат методи, които не ограничават основното предположение в структурата модела и вида на разпределените значения на анализирания показател.
Понятието OLAP (Online Analytical Processing) обхваща технологията за многомерен анализ, която позволява използването на информацията съхранена в data warehouse. Обикновено тя включва средства за интерактивен анализ на данните, които се извличат от различни бази и се обобщават за нуждите на даден потребител. OLAP средствата предоставят възможности за представяне на данните в различни разрези, поради което са значително по-сложни от традиционните релационни бази от данни. От своя страна Data mining също се използва за анализ на данните, но обхваща технологии, позволяващи да се открият неявни шаблони и взаимодействия в различни извадки. Съществуват и т.нар. Data marts, които съхраняват подмножества от агрегирани данни и могат да се разглеждат като локални Data Warehouses. Информацията получена от Data mining може да се използва след това за увеличаване на фирмената ефективност. Например при анализирането на потребителските особености на потребителите, дава възможност да се предскаже поведението на потребителите и да се повлияе върху него.
Терминология Терминът извличане на знания от данни, (), е възприет като българския превод на популярния термин data mining, въпреки че на английски двата термина не винаги се смятат за точни синоними. В някои източници data mining се посочва само като един от етапите на knowledge discovery in databases. В българските източници е широко възприето да се ползва английският термин, както и транслитерацията му дейта майнинг, а се срещат и отделни преводи като сондиране на данни, интелектуален анализ на данните, интелигентен анализ на данните, дълбочинен анализ на данните, добиване на данни, добив на данни, целенасочено търсене на данни и други.
Етапи
Процесът на извличане на знания от данни се състои от шест основни етапа:
Достигане на разбиране (знание) чрез математически и компютърен анализ – това е началният етап, който се фокусира върху дефинирането на целите на изследванията и съответните изисквания от гледната точка на компютърния потребител. След завършването на етапа тези знания трябва да бъдат превърнати в дефиниции на задачи за сондиране на данни и да се състави предварителен план как тези цели могат да бъдат постигнати. Разбиране на данните (Data understanding) – започва с първоначално събиране на данни и продължава с дейности, целящи задълбочаване на знанията на изследователя за естеството на данните. На този етап е необходимо да бъдат идентифицирани проблеми, свързани с качеството на данните, да бъде получено първоначално мнение за характера на данните, да бъдат намерени интересните подмножества на данните, за да бъдат формирани първоначални хипотези за скритата в данните информация. Подготовката на данните (Data preparation) – покрива всички дейности по създаване от първоначални „сурови“ данни на крайното множество от данни (т.е. данни, които ще бъдат използвани от моделиращите средства). Етапът на подготовката на данни често се налага да бъде изпълняван многократно и по различно време. Задачите по подготовката на данни включват в себе си избор на таблиците с данни, техни атрибути и отделни записи, както и трансформация и изчистване на данни. Моделиране (Modeling) – този етап се състои от избор и прилагане на различни техники за моделиране, целящи извличане на закономерности от данните. Параметрите на моделите се калибрират до свои оптимални стойности. Тъй като някои модели имат свои специфични изисквания към форма̀та на данните, на този етап често се налага връщането към етапа за подготовката на данни. Оценка на модела (Model evaluation) – етапът се състои във внимателно преглеждане на всички стъпки, изпълнени при създаването на конкретния модел, за да се осигури, че те постигат поставените цели. В края на този етап се приема решение за използване на получените в процеса на сондиране резултати. Експлоатация на модела (Deployment) – свързана е с необходимостта от наблюдение и стратегия за експлоатация. На този етап следва да се определи дали и кога да се поднови процедурата по извличане на знания от данни и при какви условия.
В литературата тези шест етапа се срещат и окрупнени до три: Подготовка на данните, Прилагане на алгоритъм за сондиране и Анализ на резултата.
Използвани техники Обичайно използваните техники за извличане на знания от данни включват дървета на решенията, асоциативни правила, невронни мрежи, размита логика, генетични алгоритми, клъстерен анализ по „метода на най-близкия съсед“.
Дърво на решенията – предназначен е за класифициране на данните като използват тежестта на коефициентите на разпределение на елементите на данните във все по-малки и по-малки групи.
Асоциативни правила – този метод класифицира данните на основата на набор от правила, които са подобни на експертните системи. Като тези правила могат да се генерират чрез използването на процес по изискване и проверка на различни комбинации от правила или на извличането на такива от дървото на решенията.
Генетичен алгоритъм – чрез него се определят естествени „разбивки“ на данните основани на целеви променливи. Всеки клон на дървото е отделна част от правилата.
Невронни мрежи – при този метод знанията се представят във вид на връзки, съединяващи набор от условия. Силата на връзката се определя от отношението между факторите и данните.
Data Mining и неговите закономерности
Има пет типа закономерности, които позволяват да бъде реализиран един Data Mining анализ:
1 Асоциация Тя се прилага в случаите, когато няколко събития са свързани едни с други например изследване проведено в супермаркетите може да покаже, че 65% от купуващите пуканки си купуват и Кока кола, а при наличието на отстъпка за такъв комплект покупките на Кока кола се увеличават с 85%. Разполагайки със сведения за подобна асоциация, мениджърите лесно мога да преценят колко процента да бъде тази отстъпка.
2 Последователност Ако съществува верижност по време на събитията се говори за последователност. Така например след покупката на жилище в 45% от случаите в течените на месец се закупува и кухненско обзавеждане, а след това и 60% закупуват и хладилник.
3 Класификация С нейна помощ се разкриват признаци, характеризиращи групите, в които се включва даден обект. Това става посредством анализ на класификацируемите обекти и формулиране на определен набор от правила.
4 Клъстеризация С нейна помощ от класификационните множества се извличат хомогенни (еднородни) групи от данни имащи сродни признаци.
5 Прогнозиране В основата на съвременните прогнози в технологията на Data mining анализа стоят данните намиращ се в Хранилищата от данни (Data warehouse). Въз основа на тях се построяват шаблони, отразяващи динамиката на поведението на целевия показател, с чиято помощ може да се предскаже поведението на системите в бъдеще. Data warehouse (хранилищата от данни) се дефинира като множество от интегрирани, тематично ориентирани бази от данни, проектирани за поддържане на процеса „вземане на решения“, където всяка единица от данни е смислена в определен момент от време. Този информационен масив съдържа както самостоятелни така и силно обобщени данни. На фигурата е представено мястото на Data Mining анализа сред традиционните компоненти на Data Warehouse, както и взаимодействията между тях.
Data mining софтуер Инструменти на разработка на софтуер за Data Mining анализ и разработването на Data Mining мобилни приложения
Съществува широк кръг от инструменти за поддържането на Data Mining анализа. Тук се отнасят, както общо достъпните алгоритми за визуализация и машинно обучение, така и сложни програмни пакети, работещи на базата на паралелните процесори, като тяхната стойност може да достигне до няколко хиляди долара. Използването на най-подходящия инструмент за извършването на Data Mining анализа се определя от ред на условията и целите на проекта например анализа на потребителската кошница. При избора на инструменти или алгоритми е много важна гъвкавостта – доколко чрез избраната стратегия може да бъде получен желаният резултат. Разработването на Data Mining приложения в сферата на бизнеса преминава през няколко стъпки:
Стъпка 1: Установяват се мащабите на проекта, определящи какви данни е необходимо да се съберат. Важно е проектът да бъде направен, така че да решава конкретни бизнес цели.