Какво е извличане на данни. Технология за извличане на данни

OLAP системите предоставят на анализатора средство за тестване на хипотези при анализиране на данни, тоест основната задача на анализатора е да генерира хипотези, които той решава въз основа на своите знания и опит.Въпреки това, не само човек има знания, но и натрупаните данни, които се анализират. Такова знание се съдържа в огромно количество информация, която човек не е в състояние да изследва сам. В тази връзка съществува възможност за пропуснати хипотези, които могат да донесат значителни ползи.

За откриване на "скрити" знания се използват специални методи за автоматичен анализ, с помощта на които трябва практически да се извлекат знания от "блокировките" на информацията. Терминът „извличане на данни (DataMining)“ или „извличане на данни“ е присвоен на тази посока.

Има много дефиниции на DataMining, които се допълват взаимно. Ето някои от тях.

DataMining е процес на откриване на нетривиални и практически полезни модели в базите данни. (базова група)

Извличане на данни е процес на извличане, изследване и моделиране на големи количества данни, за да се открият неизвестни досега модели (шаблони) с цел постигане на бизнес ползи (SAS Institute)

DataMining е процес, който има за цел да открие нови значими корелации, модели и тенденции чрез пресяване на големи количества съхранени данни с помощта на техники за разпознаване на шаблони плюс прилагане на статистически и математически методи (GartnerGroup)

DataMining е изследване и откриване от „машина“ (алгоритми, инструменти за изкуствен интелект) в сурови данни на скрито знание, коетонеизвестен преди, нетривиален, практически полезен, достъпен за тълкуванечовек (А. Баргесян „Технологии за анализ на данни“)

DataMining е процес на откриване на полезни знания за бизнеса (N.M. Abdikeev "KBA")

Свойства на откриваемото знание

Обмислете свойствата на знанието, което трябва да откриете.

  • Знанието трябва да е ново, непознато досега. Усилията, изразходвани за откриване на знания, които вече са известни на потребителя, не се изплащат. Следователно ценността е новото, неизвестно досега знание.
  • Знанието трябва да е нетривиално. Резултатите от анализа трябва да отразяват неочевидни, неочакванимодели в данните, които изграждат така нареченото скрито знание. Резултати, които могат да бъдат получени повече прости начини(например чрез визуална проверка) не оправдават използването на мощни методи за DataMining.
  • Знанията трябва да са практически полезни. Намерените знания трябва да бъдат приложими, включително върху нови данни, с достатъчно висока степеннадеждност. Полезността се състои в това, че това знание може да донесе известна полза при прилагането му.
  • Знанието трябва да бъде достъпно за човешкото разбиране. Намерените модели трябва да са логически обясними, в противен случай има вероятност те да са случайни. Освен това откритите знания трябва да бъдат представени в разбираема за хората форма.

В DataMining моделите се използват за представяне на придобитите знания. Видовете модели зависят от методите на тяхното създаване. Най-често срещаните са: правила, дървета на решенията, клъстери и математически функции.

Задачи за извличане на данни

Спомнете си, че технологията DataMining се основава на концепцията за модели, които са закономерности. В резултат на откриването на тези скрити от невъоръжено око закономерности се решават проблемите на DataMining. Различни типове шаблони, които могат да бъдат изразени в разбираема за човека форма, съответстват на определени задачи на DataMining.

Няма консенсус относно това какви задачи трябва да бъдат приписани на DataMining. Повечето авторитетни източници изброяват следното: класификация,

групиране, прогнозиране, асоцииране, визуализация, анализ и откриване

отклонения, оценка, анализ на взаимоотношенията, дебрифинг.

Целта на описанието, което следва, е да направи преглед на проблемите на DataMining, да сравни някои от тях, както и да представи някои от методите, чрез които тези проблеми се решават. Най-често срещаните задачи за DataMining са класификация, групиране, асоцииране, прогнозиране и визуализация. По този начин задачите се разделят според видовете произведена информация, това е най-общата класификация на задачите за DataMining.

Класификация

Задачата за разделяне на набор от обекти или наблюдения на априори дадени групи, наречени класове, във всяка от които се предполага, че са подобни един на друг, имащи приблизително еднакви свойства и характеристики. В този случай решението се получава на базата наанализ стойности на атрибут (характеристика).

Класификацията е една от най-важните задачиизвличане на данни . Прилага се вмаркетинг при оценка на кредитоспособността на кредитополучателите, определящиклиентска лоялност, разпознаване на шаблон , медицинска диагностика и много други приложения. Ако анализаторът знае свойствата на обектите от всеки клас, тогава когато ново наблюдение принадлежи към определен клас, тези свойства автоматично се прилагат към него.

Ако броят на класовете е ограничен до два, тогавадвоична класификация , до които могат да се сведат много по-сложни проблеми. Например, вместо да дефинирате такива степени на кредитен риск като „Висока“, „Средна“ или „Ниска“, можете да използвате само две – „Издаване“ или „Отказ“.

За класификация в DataMining се използват много различни модели:невронни мрежи, дървета на решенията , поддържащи векторни машини, k-най-близки съседи, алгоритми за покритие и т.н., които са конструирани с помощта на контролирано обучение, когатоизходна променлива(етикет на клас ) се дава за всяко наблюдение. Формално класификацията се основава на дялафункционални пространства в области, в рамките на всяка от коитомногомерни вектори се считат за идентични. С други думи, ако даден обект е попаднал в област от пространството, свързана с определен клас, той принадлежи към него.

Клъстеризиране

Кратко описание. Клъстерирането е логично продължение на идеята

класификация. Тази задача е по-сложна, особеността на клъстерирането е, че класовете на обектите не са първоначално предварително определени. Резултатът от групирането е разделянето на обектите на групи.

Пример за метод за решаване на проблем с клъстеризация: обучение "без учител" от специален вид невронни мрежи- Самоорганизиращи се карти на Кохонен.

Асоциация (Асоциации)

Кратко описание. В хода на решаването на проблема за търсене на правила за асоцииране се откриват модели между свързани събитияв набора от данни.

Разликата между асоциацията и двете предишни задачи на DataMining е, че търсенето на модели не се основава на свойствата на анализирания обект, а между няколко събития, които се случват едновременно. Най-известният алгоритъм за решаване на проблема за намиране на правила за асоцииране е алгоритъмът Apriori.

Последователност или последователна асоциация

Кратко описание. Последователността ви позволява да намерите времеви модели между транзакциите. Задачата на последователността е подобна на асоциацията, но нейната цел е да установи модели не между едновременно случващи се събития, а между събития, свързани във времето (т.е. случващи се в определен интервал от време). С други думи, последователността се определя от високата вероятност за верига от събития, свързани във времето. Всъщност асоциацията е специален случай на последователност с нулево забавяне във времето. Този проблем с DataMining се нарича още проблем с последователен модел.

Правило за последователност: след събитие X през определено времеще настъпи събитие Y.

Пример. След закупуване на апартамент наемателите в 60% от случаите купуват хладилник в рамките на две седмици, а в рамките на два месеца в 50% от случаите се закупува телевизор. Решението на този проблем се използва широко в маркетинга и управлението, например при управлението на жизнения цикъл на клиента (CustomerLifecycleManagement).

Регресия, прогнозиране (Forecasting)

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

За решаването на такива проблеми широко се използват методите на математическата статистика, невронните мрежи и др.

Допълнителни задачи

Определяне на отклонения или извънредни стойности (DeviationDetection), дисперсия или анализ на извънредни стойности

Кратко описание. Целта на решаването на този проблем е откриването и анализирането на данни, които се различават най-много от общия набор от данни, идентифицирането на така наречените нехарактерни модели.

Оценка

Задачата за оценка се свежда до прогнозиране на непрекъснати стойности на характеристика.

Анализ на връзки (LinkAnalysis)

Задачата за намиране на зависимости в набор от данни.

Визуализация (визуализация, GraphMining)

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

Пример за техники за визуализация е представянето на данни в 2-D и 3-D измерения.

Обобщаване

Задачата, чиято цел е описанието на конкретни групи обекти от анализирания набор от данни.

Доста близко до горната класификация е разделянето на задачите на DataMining на следните: изследване и откриване, прогнозиране и класификация, обяснение и описание.

Автоматично проучване и откриване (безплатно търсене)

Пример за задача: откриване на нови пазарни сегменти.

За решаването на този клас проблеми се използват методи на клъстерен анализ.

Прогноза и класификация

Примерен проблем: предвидете растеж на продажбите въз основа на текущи стойности.

Методи: регресия, невронни мрежи, генетични алгоритми, дървета на решенията.

Задачите на класификацията и прогнозирането съставляват група от така нареченото индуктивно моделиране, което води до изследване на анализирания обект или система. В процеса на решаване на тези проблеми, на базата на набор от данни, a общ моделили хипотеза.

Обяснение и описание

Примерен проблем: характеризиране на клиентите по демографски данни и история на покупките.

Методи: дървета на решенията, системи от правила, правила за асоцииране, анализ на връзки.

Ако доходът на клиента е над 50 условни единици и възрастта му е над 30 години, тогава класът на клиента е първи.

Сравнение на групиране и класификация

Характеристика

Класификация

Клъстеризиране

Контролируемост на обучението

контролирани

неконтролируема

Стратегии

Учене с учител

Учене без учител

Наличие на класов етикет

Тренировъчен комплект

придружен от етикет, указващ

класа, към който принадлежи

наблюдение

Преподаване на етикети на класа

комплекти неизвестни

Основа за класификация

Новите данни се класифицират въз основа на набора за обучение

Дадени са много данни за целта

установяване на съществуването

класове или клъстери от данни

Обхват на DataMining

Трябва да се отбележи, че днес технологията DataMining е най-широко използвана при решаването на бизнес проблеми. Може би причината е, че именно в тази насока възвръщаемостта от използването на инструментите на DataMining може да бъде според някои източници до 1000%, а разходите за внедряването му могат бързо да се изплатят.

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

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

    Дали да се издаде заем на клиента

    Сегментиране на пазара

    Привличане на нови клиенти

    Измами с кредитни карти

Приложение на DataMining за решаване на проблеми на държавно ниво. Основни направления: издирване на лица, укриващи данъци; средства в борбата срещу тероризма.

Приложение на DataMining за научно изследване . Основни направления: медицина, биология, молекулярна генетика и генно инженерство, биоинформатика, астрономия, приложна химия, изследване на наркоманиите и др.

Прилагане на DataMining към решение Уеб задачи. Основни направления: търсачки (търсачки), броячи и др.

Е-търговия

В областта на електронната търговия DataMining се използва за генериране

Тази класификация позволява на компаниите да идентифицират конкретни групи клиенти и да провеждат маркетингова политика в съответствие с идентифицираните интереси и нужди на клиентите. Технологията DataMining за електронна търговия е тясно свързана с технологията WebMining.

Основните задачи на DataMining в индустриалното производство:

комплексен системен анализ на производствени ситуации;

· краткосрочна и дългосрочна прогноза за развитието на производствените ситуации;

разработване на варианти за оптимизационни решения;

Прогнозиране на качеството на продукта в зависимост от някои параметри

технологичен процес;

откриване на скрити тенденции и модели на развитие на производството

процеси;

прогнозиране на моделите на развитие на производствените процеси;

откриване на скрити фактори на влияние;

откриване и идентифициране на неизвестни досега връзки между

производствени параметри и фактори на влияние;

анализ на средата на взаимодействие на производствените процеси и прогнозиране

промени в неговите характеристики;

процеси;

визуализация на резултатите от анализите, изготвяне на предварителни отчети и проекти

осъществими решения с оценки на надеждността и ефективността на възможните реализации.

Маркетинг

В областта на маркетинга DataMining се използва широко.

Основни маркетингови въпроси „Какво се продава?“, „Как се продава?“, „Кой се продава

консуматор?"

В лекцията за проблемите на класификацията и клъстерирането подробно се описва използването на клъстерен анализ за решаване на маркетингови проблеми, като сегментиране на потребителите.

Друг общ набор от методи за решаване на маркетингови проблеми са методите и алгоритмите за търсене на асоциативни правила.

Търсенето на темпорални модели също се използва успешно тук.

На дребно

В търговията на дребно, както и в маркетинга, прилагайте:

Алгоритми за търсене на правила за асоцииране (за определяне на често срещани множества

стоки, които купувачите купуват едновременно). Идентифицирането на такива правила помага

поставяйте стоки на рафтовете на търговските етажи, разработвайте стратегии за закупуване на стоки

и поставянето им в складове и др.

използване на времеви последователности, например, за определяне

необходимото количество инвентар в склада.

методи за класифициране и групиране за идентифициране на групи или категории клиенти,

чието познаване допринася за успешното популяризиране на стоките.

Фондова борса

Ето списък с проблеми на фондовия пазар, които могат да бъдат разрешени с помощта на технологията за данни

Копаене: Прогнозиране на бъдещи стойности на финансови инструменти и индикатори

минали стойности;

прогноза за тренда (бъдеща посока на движение - растеж, спад, флет) на финансовия

инструмент и неговата сила (силен, умерено силен и т.н.);

разпределение на клъстерната структура на пазара, индустрията, сектора според определен набор

характеристики;

· динамичен контролпортфолио

прогноза за волатилност;

оценка на риска;

прогнозиране на настъпването на кризата и прогноза за нейното развитие;

избор на активи и др.

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

Приложение на DataMining в CRM

Едно от най-обещаващите приложения на DataMining е използването на тази технология в аналитичния CRM.

CRM (Customer Relationship Management) - управление на взаимоотношенията с клиентите.

При споделянеот тези технологии извличането на знания се комбинира с „извличане на пари“ от клиентски данни.

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

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

уеб копаене

WebMining може да се преведе като „извличане на данни в мрежата“. WebIntelligence или Web.

Intelligence е готова да "отвори нова глава" в бързото развитие на електронния бизнес. Възможността да се определят интересите и предпочитанията на всеки посетител чрез наблюдение на поведението му е сериозно и критично конкурентно предимство на пазара за електронна търговия.

Системите WebMining могат да отговорят на много въпроси, например кой от посетителите е потенциален клиент на уеб магазина, коя група клиенти на уеб магазина носи най-много приходи, какви са интересите на конкретен посетител или група посетители.

Методи

Класификация на методите

Има две групи методи:

  • статистически методи, базирани на използване на среден натрупан опит, който се отразява в ретроспективни данни;
  • кибернетични методи, включително много разнородни математически подходи.

Недостатъкът на такава класификация е, че както статистическите, така и кибернетичните алгоритми по един или друг начин разчитат на сравнение на статистическия опит с резултатите от наблюдението на текущата ситуация.

Предимството на подобна класификация е нейното удобство за интерпретация – тя се използва при описание на математическия инструментариум на съвременния подход за извличане на знания от масиви от първоначални наблюдения (оперативни и ретроспективни), т.е. в задачите за извличане на данни.

Нека разгледаме по-отблизо горните групи.

Статистически методи Извличане на данни

В тези методите са четири взаимосвързани раздела:

  • предварителен анализ на естеството на статистическите данни (тестване на хипотезите за стационарност, нормалност, независимост, хомогенност, оценка на вида на функцията на разпределение, нейните параметри и др.);
  • идентифициране на връзки и модели(линеен и нелинеен регресионен анализ, корелационен анализ и др.);
  • многовариантен статистически анализ (линеен и нелинеен дискриминантен анализ, клъстерен анализ, компонентен анализ, факторен анализи т.н.);
  • динамични модели и прогнози, базирани на времеви редове.

Арсеналът от статистически методи Data Mining се класифицира в четири групи методи:

  1. Описателен анализ и описание на изходните данни.
  2. Анализ на връзките (корелационен и регресионен анализ, факторен анализ, дисперсионен анализ).
  3. Многовариантен статистически анализ (компонентен анализ, дискриминантен анализ, многовариантен регресионен анализ, канонични корелации и др.).
  4. Анализ на времеви редове (динамични модели и прогнозиране).

Кибернетични методи за извличане на данни

Второто направление на Data Mining е набор от подходи, обединени от идеята за компютърна математика и използването на теорията за изкуствения интелект.

Тази група включва следните методи:

  • изкуствени невронни мрежи (разпознаване, групиране, прогнозиране);
  • еволюционно програмиране (включително алгоритми на метода за групово отчитане на аргументи);
  • генетични алгоритми (оптимизация);
  • асоциативна памет (търсене на аналози, прототипи);
  • размита логика;
  • дървета на решенията;
  • системи за обработка на експертни знания.

клъстерен анализ

Целта на групирането е търсене на съществуващи структури.

Клъстерирането е описателна процедура, не прави статистически заключения, но дава възможност за провеждане на проучвателен анализ и изследване на „структурата на данните“.

Самото понятие "клъстер" се дефинира двусмислено: всяко изследване има свои собствени "клъстери". Концепцията за клъстер (клъстер) се превежда като "грозд", "грозд". Клъстерът може да се опише като група от обекти, които имат общи свойства.

Има две характеристики на клъстера:

  • вътрешна хомогенност;
  • външна изолация.

Въпрос, който анализаторите задават при много проблеми, е как да организират данните във визуални структури, т.е. разширяване на таксономиите.

Първоначално групирането се използва най-широко в такива науки като биология, антропология и психология. Дълго време клъстерирането се използва малко за решаване на икономически проблеми поради спецификата на икономическите данни и явления.

Клъстерите могат да бъдат неприпокриващи се или изключителни (неприпокриващи се, изключителни) и пресичащи се (припокриващи се).

Трябва да се отбележи, че в резултат на прилагането на различни методи за клъстерен анализ могат да се получат клъстери с различни форми. Например, възможни са клъстери от тип "верига", когато клъстерите са представени от дълги "вериги", удължени клъстери и т.н., а някои методи могат да създават клъстери с произволна форма.

Различни методи могат да имат за цел да създадат клъстери с определени размери (напр. малки или големи) или да приемат клъстери с различни размери в набора от данни. Някои методи за клъстерен анализ са особено чувствителни към шум или отклонения, докато други са по-малко. В резултат на прилагането на различни методи за групиране могат да се получат различни резултати, това е нормално и е характеристика на работата на даден алгоритъм. Тези характеристики трябва да се вземат предвид при избора на метод за групиране.

Нека дадем кратко описание на подходите за групиране.

Алгоритми, базирани на разделяне на данни (Partitioningalgorithms), вкл. итеративен:

  • разделяне на обектите на k клъстера;
  • итеративно преразпределение на обекти за подобряване на клъстерирането.
  • Йерархични алгоритми (Hierarchyalgorithms):
  • агломерация: всеки обект първоначално е клъстер, клъстери,
  • свързвайки се помежду си, образуват по-голям клъстер и т.н.

Методи, базирани на концентрацията на обекти (методи, базирани на плътност):

  • въз основа на свързаността на обектите;
  • игнориране на шумове, намиране на клъстери с произволна форма.

Решетка - методи (методи, базирани на мрежа):

  • квантуване на обекти в мрежови структури.

Моделни методи (базирани на модел):

  • използване на модела за намиране на клъстерите, които най-добре отговарят на данните.

Методи за клъстерен анализ. итеративни методи.

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

Такова нейерархично групиране се състои от разделяне на набор от данни на определен брой отделни клъстери. Има два подхода. Първият е да се определят границите на клъстерите като най-плътните области в многомерното пространство на първоначалните данни, т.е. дефиниция на клъстер, където има голяма "концентрация на точки". Вторият подход е да се минимизира мярката на разликата в обекта

Алгоритъм k-средни (k-средни)

Най-често срещаният сред нейерархичните методи е алгоритъмът на k-средните, наричан още бърз клъстерен анализ. Пълно описаниеалгоритъмът може да се намери в работата на Hartigan и Wong (1978). За разлика от йерархичните методи, които не изискват предварителни предположения за броя на клъстерите, за да може да се използва този метод, е необходимо да има хипотеза за най-вероятния брой на клъстерите.

Алгоритъмът за k-средни стойности изгражда k клъстера, разположени на възможно най-голямо разстояние един от друг. Основният тип проблеми, които решава алгоритъмът на k-средните, е наличието на предположения (хипотези) относно броя на клъстерите, като същевременно те трябва да бъдат възможно най-различни. Изборът на числото k може да се основава на предишни изследвания, теоретични съображения или интуиция.

Общата идея на алгоритъма: даден фиксиран брой k клъстери за наблюдение се сравняват с клъстери по такъв начин, че средните стойности в клъстера (за всички променливи) да се различават възможно най-много една от друга.

Описание на алгоритъма

1. Първоначално разпределение на обектите по клъстери.

  • Избира се числото k и на първата стъпка тези точки се считат за "центрове" на клъстерите.
  • Всеки клъстер съответства на един център.

Изборът на начални центроиди може да се извърши, както следва:

  • избор на k-наблюдения за максимизиране на първоначалното разстояние;
  • случаен избор на k-наблюдения;
  • избор на първите k-наблюдения.

В резултат на това всеки обект се присвоява на конкретен клъстер.

2. Итеративен процес.

Изчисляват се центровете на клъстерите, които след това и по-нататък се считат за средни координати на клъстерите. Обектите се преразпределят отново.

Процесът на изчисляване на центрове и преразпределение на обекти продължава, докато не бъде изпълнено едно от следните условия:

  • клъстерните центрове са се стабилизирали, т.е. всички наблюдения принадлежат към клъстера, към който са принадлежали преди текущата итерация;
  • броят на итерациите е равен на максималния брой итерации.

Фигурата показва пример за работа на алгоритъма за k-средни стойности за k равно на две.

Пример за алгоритъм за k-средни стойности (k=2)

Изборът на броя на клъстерите е сложен въпрос. Ако няма предположения за това число, се препоръчва да се създадат 2 клъстера, след това 3, 4, 5 и т.н., като се сравняват резултатите.

Проверка на качеството на групиране

След получаване на резултатите от клъстерния анализ с помощта на метода k-средни стойности, трябва да се провери правилността на клъстерирането (т.е. да се оцени как клъстерите се различават един от друг).

За да направите това, се изчисляват средните стойности за всеки клъстер. Доброто групиране трябва да произвежда много различни средства за всички измервания или поне повечето от тях.

Предимства на алгоритъма на k-средните:

  • лекота на използване;
  • скорост на използване;
  • яснота и прозрачност на алгоритъма.

Недостатъци на алгоритъма на k-средните:

  • алгоритъмът е твърде чувствителен към отклонения, които могат да изкривят средната стойност.

Възможно решениетози проблем е да се използва модификация на алгоритъма -k-среден алгоритъм;

  • алгоритъмът може да бъде бавен при големи бази данни. Възможно решение на този проблем е използването на извадка от данни.

Бейсови мрежи

В теорията на вероятностите концепцията за информационна зависимост се моделира чрез условна зависимост (или стриктно: липса на условна независимост), която описва как нашата увереност в резултата от някакво събитие се променя, когато придобием нови знания за фактите, като се има предвид, че вече сме знаели някакъв набор от други факти.

Удобно и интуитивно е да се представят зависимости между елементи чрез насочен път, свързващ тези елементи в графика. Ако връзката между елементите x и y не е директна и се осъществява чрез третия елемент z, тогава е логично да се очаква, че на пътя между x и y ще има елемент z. Такива междинни възли ще "прекъснат" зависимостта между x и y, т.е. да се моделира ситуация на условна независимост между тях с известна стойност на преките фактори на влияние.Такива езици за моделиране са байесовите мрежи, които служат за описание на условни зависимости между понятията на определена предметна област.

Байесовите мрежи са графични структури за представяне на вероятностни връзки между голям брой променливи и за извършване на вероятностни изводи въз основа на тези променливи.„Наивна" (Байесова) класификация е доста прозрачен и разбираем метод за класификация. „Наивен" се нарича, защото изхожда от предположението за взаимнонезависимост на характеристиките.

Класификационни свойства:

1. Използване на всички променливи и дефиниране на всички зависимости между тях.

2. Има две предположения за променливите:

  • всички променливи са еднакво важни;
  • всички променливи са статистически независими, т.е. Стойността на една променлива не казва нищо за стойността на другата.

Има два основни сценария за използване на байесови мрежи:

1. Описателен анализ. Предметната област се показва като графика, чиито възли представляват концепции, а насочените дъги, показани със стрелки, илюстрират преките връзки между тези концепции. Връзката между x и y означава, че познаването на стойността на x ви помага да направите по-добро предположение за стойността на y. Отсъствието на пряка връзка между понятията моделира условната независимост между тях, предвид известните стойности на определен набор от "разделящи" понятия. Например, размерът на обувките на детето очевидно е свързан със способността на детето да чете през възрастта. По този начин по-големият номер обувка дава повече увереност, че детето вече чете, но ако вече знаем възрастта, тогава знанието за размера на обувката вече няма да ни дава Допълнителна информацияза способността на детето да чете.


Като друг, противоположен пример, помислете за такива първоначално несвързани фактори като тютюнопушене и настинка. Но ако знаем симптом, например, че човек страда от сутрешна кашлица, тогава знанието, че човек не пуши, увеличава увереността ни, че човек има настинка.

2. Класификация и прогнозиране. Бейсовата мрежа, позволяваща условната независимост на редица концепции, позволява да се намали броят на съвместните параметри на разпределение, което прави възможно тяхното уверено оценяване на наличните обеми от данни. И така, с 10 променливи, всяка от които може да приеме 10 стойности, броят на съвместните параметри на разпределение е 10 милиарда - 1. Ако приемем, че само 2 променливи зависят една от друга между тези променливи, тогава броят на параметрите става 8 * ( 10-1) + (10 * 10-1) = 171. Имайки модел на съвместно разпределение, който е реалистичен по отношение на изчислителните ресурси, можем да предскажем неизвестната стойност на концепция като например най-вероятната стойност на това понятие с известни стойности на други понятия.

Те отбелязват такива предимства на Bayesian мрежи като метод за DataMining:

Зависимостите между всички променливи са дефинирани в модела, което улеснявасправяне със ситуации, в които стойностите на някои променливи са неизвестни;

Бейсовите мрежи се интерпретират доста просто и позволяват на етапапрогнозното моделиране е лесно за извършване на анализ на сценария "какво ако";

Байесовият метод ви позволява да комбинирате естествено модели,извлечени от данни и, например, експертни знания, получени изрично;

Използването на байесови мрежи избягва проблема с пренастройването(overfitting), тоест прекомерно усложняване на модела, което е слабостмного методи (например дървета на решенията и невронни мрежи).

Наивният байесов подход има следните недостатъци:

Умножаването на условни вероятности е правилно само когато всички входовепроменливите наистина са статистически независими; въпреки че този метод е честопоказва сравнително добри резултати, ако състоянието на статистикатанезависимост, но теоретично подобна ситуация трябва да се управлява от по-сложниметоди, базирани на обучаващи байесови мрежи;

Невъзможна директна обработка на непрекъснати променливи - те са задължителнипреобразуване в интервална скала, така че атрибутите да са дискретни; обаче такиватрансформациите понякога могат да доведат до загуба на смислени модели;

Резултатът от класификацията в наивния байесов подход се влияе само отиндивидуални стойности на входни променливи, комбинирано влияние на двойки илитук не се вземат предвид триплети от стойности на различни атрибути. Това може да се подобрикачеството на класификационния модел по отношение на неговата прогнозна точност,обаче ще увеличи броя на тестваните варианти.

Изкуствени невронни мрежи

Изкуствените невронни мрежи (наричани по-нататък невронни мрежи) могат да бъдат синхронни и асинхронни.В синхронните невронни мрежи, само във всеки момент от времеедин неврон. При асинхронен - ​​състоянието се променя незабавно за цяла група неврони, като правило за всичкослой. Могат да се разграничат две основни архитектури - многослойни и напълно свързани мрежи.Ключовата концепция в многослойните мрежи е концепцията за слой.Слой - един или повече неврони, на чиито входове се подава един и същ общ сигнал.Слоестите невронни мрежи са невронни мрежи, в които невроните са разделени на отделни групи (слоеве), така че обработката на информацията се извършва на слоеве.В слоестите мрежи невроните на i-тия слой получават входни сигнали, трансформират ги и ги предават през точките на разклонение към невроните (i + 1) на слоя. И така до k-тия слой, който даваизходни сигнали за интерпретатора и потребителя. Броят на невроните във всеки слой не е свързан с броя на невроните в другите слоеве, той може да бъде произволен.В рамките на един слой данните се обработват паралелно, а в цялата мрежа обработката се извършва последователно - от слой на слой. Слоестите невронни мрежи включват, например, многослойни персептрони, мрежи от радиални базисни функции, когнитрон, некогнитрон, мрежи с асоциативна памет.Въпреки това, сигналът не винаги се прилага към всички неврони на слоя. В когнитрон, например, всеки неврон от текущия слой получава сигнали само от неврони, близки до него в предишния слой.

Слоестите мрежи от своя страна могат да бъдат еднослойни и многослойни.

Еднослойна мрежа- мрежа, състояща се от един слой.

Многослойна мрежа- мрежа с няколко слоя.

В многослойна мрежа първият слой се нарича входен слой, следващите слоеве се наричат ​​вътрешни или скрити, а последният слой е изходен слой. По този начин междинните слоеве са всички слоеве в многослойна невронна мрежа, с изключение на входа и изхода.Входният слой на мрежата осъществява връзката с входните данни, изходният слой - с изходните.По този начин невроните могат да бъдат входни, изходни и скрити.Входният слой е организиран от входни неврони, които получават данни и ги разпределят към входовете на невроните в скрития слой на мрежата.Скритият неврон е неврон, разположен в скрит слойневронна мрежа.Изходните неврони, от които е организиран изходният слой на мрежата, произвеждатрезултати от невронната мрежа.

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

Всички входни сигнали се подават към всички неврони.

Обучение на невронни мрежи

Преди да използвате невронна мрежа, тя трябва да бъде обучена.Процесът на обучение на невронна мрежа се състои в настройка на нейните вътрешни параметри за конкретна задача.Алгоритъмът на невронната мрежа е итеративен, неговите стъпки се наричат ​​епохи или цикли.Епоха - една итерация в учебния процес, включваща представяне на всички примери от набора за обучение и, евентуално, проверка на качеството на обучението на контролакомплект. Учебният процес се провежда на учебния комплект.Обучителната извадка включва входните стойности и съответните им изходни стойности от набора от данни. В процеса на обучение невронната мрежа намира някои зависимости на изходните полета от входните.Така се изправяме пред въпроса какви полета за въвеждане (характеристики) са ни необходиминеобходимо за използване. Първоначално изборът се прави евристично, след товаброят на входовете може да се променя.

Сложността може да повдигне въпроса за броя на наблюденията в набора от данни. И въпреки че има някои правила, описващи връзката между необходимия брой наблюдения и размера на мрежата, тяхната коректност не е доказана.Броят на необходимите наблюдения зависи от сложността на проблема, който се решава. С увеличаване на броя на характеристиките, броят на наблюденията нараства нелинейно, този проблем се нарича "проклятието на размерността". С недостатъчно количестводанни, се препоръчва използването на линеен модел.

Анализаторът трябва да определи броя на слоевете в мрежата и броя на невроните във всеки слой.След това трябва да зададете такива стойности на тегла и отклонения, които могатминимизиране на грешката при вземане на решение. Теглата и отклоненията се регулират автоматично по такъв начин, че да се сведе до минимум разликата между желаните и изходните сигнали, което се нарича грешка при обучение.Грешката на обучение за изградената невронна мрежа се изчислява чрез сравняванеизходни и целеви (желани) стойности. От получените разлики се формира функцията на грешката.

Функцията на грешката е целева функция, която трябва да бъде минимизирана в процесаконтролирано обучение на невронни мрежи.Използвайки функцията за грешка, можете да оцените качеството на невронната мрежа по време на обучение. Например често се използва сумата на квадратите на грешките.Способността за решаване на поставените задачи зависи от качеството на обучението на невронната мрежа.

Преобучение на невронни мрежи

При обучението на невронни мрежи често възниква сериозна трудност, т.нарпроблем с претоварването.Overfitting, или overfitting - overfittingневронна мрежа към конкретен набор от примери за обучение, в които мрежата губиспособност за обобщение.Претоварването се получава, когато тренировката е твърде дълга, недостатъчнапримери за обучение или прекалено сложна структура на невронна мрежа.Overfitting се дължи на факта, че изборът на обучение (обучение) наборе случаен. От първите стъпки на обучение грешката е намалена. Напоследващи стъпки за намаляване на параметрите на грешката (обективна функция).съобразени с характеристиките на тренировъчния комплект. Това обаче се случва"приспособяване" не към общите модели на поредицата, а към характеристиките на нейната част -подмножество за обучение. В този случай точността на прогнозата намалява.Един от вариантите за справяне с мрежовата преквалификация е да разделите обучителната извадка на двекомплекти (обучителни и тестови).На комплекта за обучение невронната мрежа се обучава. На тестовия комплект се проверява конструираният модел. Тези множества не трябва да се пресичат.С всяка стъпка параметрите на модела се променят, но постоянно намаляватстойността на целевата функция се случва точно на набора за обучение. Когато разделяме набора на две, можем да наблюдаваме промяната в грешката на прогнозата на тестовия набор успоредно с наблюденията върху набора за обучение. някоиброят на стъпките за грешка при прогнозиране намалява и в двата набора. Въпреки това, нана определена стъпка грешката на тестовия набор започва да нараства, докато грешката на тренировъчния набор продължава да намалява. Този момент се счита за началото на преквалификацията.

Инструменти за извличане на данни

Развитието в сектора DataMining на глобалния софтуерен пазар е заето както от световноизвестни лидери, така и от нововъзникващи компании. Инструментите за DataMining могат да бъдат представени или като самостоятелно приложение, или като добавки към основния продукт.Последният вариант се прилага от много лидери на пазара на софтуер.И така, вече стана традиция разработчиците на универсални статистически пакети, в допълнение към традиционните методи за статистически анализ, да включват в пакетаопределен набор от методи за DataMining. Това са пакети като SPSS (SPSS, Clementine), Statistica (StatSoft), SAS Institute (SAS Enterprise Miner).Някои разработчици на OLAP решения също предлагат набор от техники за извличане на данни, като фамилията продукти на Cognos. Има доставчици, които включват DataMining решения във функционалността на СУБД: това са Microsoft (MicrosoftSQLServer), Oracle, IBM (IBMintelligentMinerforData).

Библиография

  1. Абдикеев Н.М. Данко Т.П. Илдеменов С.В. Киселев А.Д., „Реинженеринг на бизнес процеси. MBA курс”, Москва: Издателска къща Eksmo, 2005. - 592 с. - (MBA)
  1. Абдикеев Н.М., Киселев А.Д. "Управление на знания в корпорациите и бизнес реинженеринг" - М.: Инфра-М, 2011.- 382 с. – ISBN 978-5-16-004300-5
  1. Барсегян А.А., Куприянов М.С., Степаненко В.В., Холод И.И. "Методи и модели за анализ на данни: OLAP и извличане на данни", Санкт Петербург: BHV-Петербург, 2004 г., 336 стр., ISBN 5-94157-522-X
  1. херцог IN., Самойленко А., "Извличане на данни.Обучителен курс „SPb: Piter, 2001, 386s.
  1. Chubukova I.A., курс по извличане на данни, http://www.intuit.ru/department/database/datamining/
  1. IanH. Witten, Eibe Frank, Mark A. Hall, Morgan Kaufmann, Data Mining: Практически инструменти и техники за машинно обучение (трето издание), ISBN 978-0-12-374856-0
  1. Петрушин В.А. , Хан Л., Извличане на мултимедийни данни и откриване на знания

Извличане на данни

Data Mining е методология и процес за откриване на големи количества данни, които се натрупват в информационни системикомпании, непознати досега, нетривиални, практически полезни и достъпни за интерпретация на знанията, необходими за вземане на решения в различни области на човешката дейност. Извличането на данни е един от етапите на по-голямата методология за откриване на знания в бази данни.

Знанието, открито в процеса на извличане на данни, трябва да бъде нетривиално и неизвестно досега. Нетривиалността предполага, че такова знание не може да бъде открито чрез прост визуален анализ. Те трябва да описват връзките между свойствата на бизнес обектите, да предвиждат стойностите на някои характеристики въз основа на други и т.н. Намерените знания трябва да бъдат приложими към нови обекти.

Практическата полезност на знанията се дължи на възможността за тяхното използване в процеса на подпомагане на осиновяването управленски решенияи подобряване дейността на фирмата.

Знанията трябва да бъдат представени във форма, която е разбираема за потребители, които нямат специално математическо обучение. Например, логическите конструкции „ако, тогава“ се възприемат най-лесно от човек. Освен това такива правила могат да се използват в различни СУБД като SQL заявки. В случай, че извлечените знания не са прозрачни за потребителя, трябва да има методи за последваща обработка, които позволяват те да бъдат доведени до интерпретируема форма.

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

Извличането на данни има мултидисциплинарен характер, тъй като включва елементи от числени методи, математическа статистика и теория на вероятностите, теория на информацията и математическа логика, изкуствен интелект и машинно обучение.

Задачите на бизнес анализа се формулират по различни начини, но решаването на повечето от тях се свежда до една или друга задача за извличане на данни или до комбинация от тях. Например оценката на риска е решение на проблем с регресия или класификация, сегментирането на пазара е групиране, стимулирането на търсенето е правила за асоцииране. Всъщност задачите за извличане на данни са елементи, от които можете да „сглобите“ решението на повечето реални бизнес проблеми.

За решаване на горните проблеми се използват различни методи и алгоритми за извличане на данни. С оглед на факта, че извличането на данни се е развило и се развива в пресечната точка на такива дисциплини като математическа статистика, теория на информацията, машинно обучение и бази данни, съвсем естествено е, че повечето от алгоритмите и методите на Data Mining са разработени въз основа на различни методи от тези дисциплини. Например, алгоритъмът за групиране на k-средни стойности е заимстван от статистиката.

Добре дошли в Data Mining Portal - уникален портал, посветен на съвременните методи за Data Mining.

Технологиите за извличане на данни са мощен инструмент за модерно бизнес разузнаване и извличане на данни за откриване на скрити модели и изграждане на прогнозни модели. Извличането на данни или извличането на знания не се основава на спекулативни разсъждения, а на реални данни.

Ориз. 1. Схема на приложение на Data Mining

Дефиниране на проблем - Дефиниране на проблем: класификация на данни, сегментиране, изграждане на прогнозни модели, прогнозиране.
Събиране и подготовка на данни - Събиране и подготовка на данни, почистване, проверка, премахване на дублиращи се записи.
Изграждане на модел - Изграждане на модел, оценка на точността.
Разгръщане на знания - Приложение на модела за решаване на проблема.

Data Mining се използва за реализиране на мащабни аналитични проекти в бизнеса, маркетинга, интернет, телекомуникациите, индустрията, геологията, медицината, фармацевтиката и други области.

Извличането на данни ви позволява да започнете процеса на намиране на значителни корелации и връзки в резултат на пресяване на огромно количество данни, използвайки съвременни методиразпознаване на образи и прилагане на уникални аналитични технологии, включително дървета за вземане на решения и класификация, групиране, методи на невронни мрежи и други.

Потребител, който открива технологията за извличане на данни за първи път, е изумен от изобилието от методи и ефективни алгоритми, които позволяват намирането на подходи за решаване на трудни проблеми, свързани с анализа на големи количества данни.

Като цяло Data Mining може да се опише като технология, предназначена за търсене в големи количества данни. неочевидни, обективени практически полезенмодели.

Data Mining се основава на ефективни методи и алгоритми, разработени за анализ на неструктурирани данни с голям обем и измерение.

Ключовият момент е, че данните с голям обем и голямо измерение изглеждат лишени от структура и връзки. Целта на технологията за извличане на данни е да идентифицира тези структури и да открие модели, където на пръв поглед царят хаос и произвол.

Ето един действителен пример за приложението на извличане на данни във фармацевтичната и лекарствената индустрия.

Лекарствените взаимодействия са нарастващ проблем пред съвременното здравеопазване.

С течение на времето броят на предписаните лекарства (без рецепта и всякакви добавки) се увеличава, което прави все по-вероятно взаимодействията между лекарствата да причинят сериозни странични ефекти, за които лекарите и пациентите не знаят.

Тази област се отнася до постклиничните проучвания, когато лекарството вече е на пазара и се използва широко.

Клиничните проучвания се отнасят до оценката на ефективността на лекарството, но слабо отчитат взаимодействията на това лекарство с други лекарства на пазара.

Изследователи от Станфордския университет в Калифорния проучиха базата данни на FDA (Администрация по храните и лекарствата) за страничните ефекти на лекарствата и установиха, че две често използвани лекарства - антидепресантът пароксетин и правастатин, използвани за понижаване на нивата на холестерола - увеличават риска от развитие на диабет, ако се приемат заедно.

Подобно аналитично проучване, базирано на данни от FDA, идентифицира 47 неизвестни досега нежелани взаимодействия.

Това е забележително, с уговорката, че много от негативните ефекти, отбелязани от пациентите, остават неоткрити. Само в този случай мрежовото търсене може да се покаже по най-добрия начин.

Предстоящи курсове по извличане на данни в StatSoft Academy of Data Analysis през 2020 г

Започваме нашето запознанство с Data Mining с помощта на прекрасните видеоклипове на Academy of Data Analysis.

Не пропускайте да гледате нашите видеа и ще разберете какво е Data Mining!

Видео 1. Какво е извличане на данни?


Видео 2: Преглед на извличането на данни: Дървета на решенията, обобщени предсказуеми модели, групиране и други

JavaScript е деактивиран във вашия браузър


Преди да започнем изследователски проект, трябва да организираме процеса на получаване на данни от външни източници, сега ще покажем как се прави това.

Видеото ще ви запознае с уникалната технология СТАТИСТИКАОбработка на база данни на място и връзка за извличане на данни с реални данни.

Видео 3. Редът на взаимодействие с бази данни: графичен интерфейс за изграждане на SQL заявки Технология за обработка на база данни на място

JavaScript е деактивиран във вашия браузър


Сега ще се запознаем с интерактивни сондажни технологии, които са ефективни при провеждането на проучвателен анализ на данни. Самият термин сондиране отразява връзката между технологията за извличане на данни и геоложките проучвания.

Видео 4. Интерактивно сондиране: Методи за изследване и графични методи за интерактивно изследване на данни

JavaScript е деактивиран във вашия браузър


Сега ще се запознаем с анализа на асоциации (правила за асоцииране), тези алгоритми ви позволяват да намерите връзки, които съществуват в реални данни. Ключовият момент е ефективността на алгоритмите върху големи количества данни.

Резултатът от алгоритмите за анализ на връзките, например алгоритъма Apriori, е да се намерят правилата за връзки на изследваните обекти с дадена надеждност, например 80%.

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

можете да намерите конкретни примеритакива решения на нашите връзки:

В търговията на дребно алгоритмите Apriori или техните модификации ви позволяват да изследвате връзката на различни продукти, например, когато продавате парфюми (парфюм - лак - спирала и т.н.) или продукти от различни марки.

Анализът на най-интересните раздели на сайта също може да бъде ефективно извършен с помощта на правила за асоцииране.

Така че вижте следващия ни видеоклип.

Видео 5. Правила за асоцииране

JavaScript е деактивиран във вашия браузър

Нека дадем примери за приложението на Data Mining в конкретни области.

Интернет търговия:

  • анализ на траекториите на клиентите от посещението на сайта до закупуването на стоки
  • оценка на ефективността на услугата, анализ на повреди поради липса на стоки
  • свързване на продукти, които представляват интерес за посетителите

Търговия на дребно: Анализ на информацията за клиентите въз основа на кредитни карти, карти за отстъпка и др.

Типични задачи за търговия на дребно, решавани от инструменти за извличане на данни:

  • анализ на пазарската количка;
  • създаване на прогнозни моделии класификационни модели на купувачи и закупени стоки;
  • създаване на профили на купувачи;
  • CRM, оценка на клиентската лоялност от различни категории, планиране на програми за лоялност;
  • изследване на времеви редовеи времеви зависимости, избор на сезонни фактори, оценка на ефективността на промоциите върху широк набор от реални данни.

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

  • класификация на клиенти въз основа на ключови характеристики на разговорите (честота, продължителност и др.), честота на SMS;
  • идентифициране на лоялността на клиентите;
  • определение за измама и др.

Застраховка:

  • анализ на риска. Чрез идентифициране на комбинации от фактори, свързани с изплатени претенции, застрахователите могат да намалят загубите си от отговорност. Известен е случай, когато застрахователна компания е открила, че изплатените суми по заявленията на женени хора са два пъти по-високи от сумите по заявленията на необвързаните хора. Компанията отговори на това, като преразгледа политиката си за отстъпки за семейни клиенти.
  • откриване на измами. Застрахователните компании могат да намалят измамите, като търсят стереотипи в исковете за искове, които характеризират взаимоотношенията между адвокати, лекари и ищци.

Практическото приложение на извличането на данни и решаването на конкретни проблеми е представено в следващото ни видео.

Уебинар 1. Уебинар "Практически задачи на Data Mining: проблеми и решения"

JavaScript е деактивиран във вашия браузър

Уебинар 2. Уебинар „Извличане на данни и извличане на текст: примери за решаване на реални проблеми“

JavaScript е деактивиран във вашия браузър


Можете да получите по-задълбочени познания относно методологията и технологията на извличане на данни в курсовете на StatSoft.

Министерство на образованието и науката на Руската федерация

Федерална държавна бюджетна образователна институция за висше професионално образование

"НАЦИОНАЛЕН ИЗСЛЕДОВАТЕЛСКИ ТОМСК ПОЛИТЕХНИЧЕСКИ УНИВЕРСИТЕТ"

Институт по кибернетика

Направление Информатика и компютърна техника

Катедра ВТ

Тест

в дисциплината информатика и компютърна техника

Тема: Методи за извличане на данни

Въведение

извличане на данни. Основни понятия и определения

1 Етапи в процеса на извличане на данни

2 Компоненти на системи за извличане на данни

3 Методи за извличане на данни в Data Mining

Методи за извличане на данни

1 Извеждане на асоциативни правила

2 Алгоритми на невронни мрежи

3 Методи на най-близкия съсед и k-най-близкия съсед

4 дървета на решенията

5 Алгоритми за групиране

6 Генетични алгоритми

Приложения

Производители на инструменти за извличане на данни

Критика на методите

Заключение

Библиография

Въведение

Резултатът от развитието на информационните технологии е колосално количество данни, натрупани в електронен вид, които нарастват с бързи темпове. В същото време данните, като правило, имат разнородна структура (текстове, изображения, аудио, видео, хипертекстови документи, релационни бази данни). Натрупани за дългосроченданните могат да съдържат модели, тенденции и връзки, които са ценна информация при планиране, прогнозиране, вземане на решения, контрол на процеси. Човек обаче не е физически в състояние да анализира ефективно такива обеми от разнородни данни. Методите на традиционната математическа статистика отдавна претендират за ролята на основен инструмент за анализ на данни. Те обаче не позволяват синтеза на нови хипотези и могат да се използват само за потвърждаване на предварително формулирани хипотези и „груб“ проучвателен анализ, който формира основата на онлайн аналитична обработка (OLAP). Често именно формулирането на хипотеза се оказва най-трудната задача при извършване на анализ за последващо вземане на решение, тъй като не всички модели в данните са очевидни на пръв поглед. Поради това технологиите за извличане на данни се считат за една от най-важните и обещаващи теми за изследване и приложение в индустрията на информационните технологии. В този случай извличането на данни се разбира като процес на определяне на нови, правилни и потенциално полезни знания въз основа на големи набори от данни. Така MIT Technology Review описа Data Mining като една от десетте нововъзникващи технологии, които ще променят света.

1. Извличане на данни. Основни понятия и определения

Data Mining е процесът на откриване на неизвестни преди това, нетривиални, практически полезни и достъпни знания в необработени данни, които са необходими за вземане на решения в различни области на човешката дейност.

Същността и целта на технологията Data Mining може да се формулира по следния начин: това е технология, която е предназначена да търси неочевидни, обективни и практични модели в големи количества данни.

Неочевидните модели са модели, които не могат да бъдат открити чрез стандартни методи за обработка на информация или от експерт.

Под обективни закони трябва да се разбират закони, които са напълно в съответствие с реалността, за разлика от експертното мнение, което винаги е субективно.

Тази концепция за анализ на данни предполага, че:

§ данните могат да бъдат неточни, непълни (да съдържат пропуски), противоречиви, разнородни, непреки и в същото време да имат гигантски обеми; следователно разбирането на данни в конкретни приложения изисква значителни интелектуални усилия;

§ самите алгоритми за анализ на данни могат да имат „елементи на интелигентност“, по-специално способността да се учат от прецеденти, тоест да правят общи заключения въз основа на конкретни наблюдения; разработването на такива алгоритми също изисква значителни интелектуални усилия;

§ Процесите на обработка на сурови данни в информация и на информация в знания не могат да се извършват ръчно и изискват автоматизация.

Технологията Data Mining се основава на концепцията за шаблони (модели), отразяващи фрагменти от многомерни връзки в данните. Тези модели са модели, присъщи на подизвадки от данни, които могат да бъдат изразени стегнато в четима от човека форма.

Търсенето на шаблони се извършва чрез методи, които не са ограничени от априорни предположения за структурата на извадката и вида на разпределението на стойностите на анализираните показатели.

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

асоциация - висока вероятност за връзка на събитията помежду си. Пример за асоциация са артикули в магазин, често закупени заедно;

последователност - висока вероятност за верига от събития, свързани във времето. Пример за последователност е ситуация, при която в рамките на определен период от време след придобиването на един продукт, друг ще бъде закупен с висока степен на вероятност;

Класификация - има признаци, които характеризират групата, към която принадлежи това или онова събитие или обект;

групиране - модел, подобен на класификацията и различен от нея по това, че самите групи не са специфицирани - те се откриват автоматично в процеса на обработка на данни;

· времеви модели – наличие на модели в динамиката на поведението на определени данни. Типичен пример за времеви модел са сезонните колебания в търсенето на определени стоки или услуги.

1.1 Стъпки в процеса на извличане на данни

Традиционно в процеса на извличане на данни се разграничават следните етапи:

1. Изследването на предметната област, в резултат на което се формулират основните цели на анализа.

2. Събиране на данни.

Предварителна обработка на данни:

а. Почистване на данни - премахване на противоречия и случаен "шум" от оригиналните данни

b. Интегриране на данни - комбиниране на данни от няколко възможни източника в едно хранилище. Преобразуване на данни. На този етап данните се преобразуват във вид, подходящ за анализ. Често се използват агрегиране на данни, дискретизация на атрибути, компресиране на данни и намаляване на размерността.

4. Анализ на данни. В рамките на този етап се прилагат алгоритми за копаене за извличане на модели.

5. Интерпретация на открити модели. Този етап може да включва визуализация на извлечените модели, идентифициране на наистина полезни модели въз основа на някаква полезна функция.

Използване на нови знания.

1.2 Компоненти на минни системи

Обикновено в системите за извличане на данни се разграничават следните основни компоненти:

1. База данни, хранилище на данни или друго хранилище на информация. Това може да бъде една или повече бази данни, хранилище на данни, електронни таблици, други видове хранилища, които могат да бъдат почиствани и интегрирани.

2. База данни или сървър за съхранение на данни. Посоченият сървър отговаря за извличането на съответните данни въз основа на заявка на потребителя.

Знание. Познаването на домейна е това, което показва как да търсите и оценявате полезността на получените модели.

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

Модул за оценка на модела. Този компонент изчислява показателите за интерес или полезност на моделите.

Графичен потребителски интерфейс. Този модул отговаря за комуникацията между потребителя и системата за извличане на данни, визуализация на модели в различни форми.

1.3 Методи за извличане на данни

Повечето от аналитичните методи, използвани в технологията за извличане на данни, са добре известни математически алгоритми и методи. Новото в приложението им е възможността за използването им при решаване на определени специфични проблеми, поради нововъзникващите възможности на хардуера и софтуера. Трябва да се отбележи, че повечето от методите за извличане на данни са разработени в рамките на теорията за изкуствения интелект. Помислете за най-широко използваните методи:

Извеждане на асоциативни правила.

2. Алгоритми на невронни мрежи, чиято идея се основава на аналогия с функционирането на нервната тъкан и се крие във факта, че първоначалните параметри се разглеждат като сигнали, които се трансформират в съответствие със съществуващите връзки между "невроните" “, а отговорът на цялата мрежа се счита за отговор, произтичащ от анализа на изходни данни.

Избор на близък аналог на оригиналните данни от вече наличните исторически данни. Нарича се още метод на най-близкия съсед.

Дърветата на решенията са йерархична структура, базирана на набор от въпроси, които изискват отговор „Да“ или „Не“.

Клъстерните модели се използват за групиране на подобни събития в групи въз основа на подобни стойности на множество полета в набор от данни.

В следващата глава ще опишем тези методи по-подробно.

2. Методи за извличане на данни

2.1 Извеждане на правила за асоцииране

Правилата за асоцииране са правила от формата "ако...тогава...". Търсенето на такива правила в набор от данни разкрива скрити връзки в привидно несвързани данни. Един от най-често цитираните примери за търсене на правила за асоцииране е проблемът с намирането на стабилни връзки в пазарска количка. Този проблем е да се определи кои продукти се купуват заедно от клиентите, така че търговците да могат да поставят тези продукти по подходящ начин в магазина, за да увеличат продажбите.

Правилата за асоцииране се дефинират като изрази от формата (X1,X2,…,Xn) -> Y, където се разбира, че Y може да присъства в транзакция, при условие че X1,X2,…,Xn присъстват в същата транзакция. Обърнете внимание, че думата „може“ предполага, че правилото не е идентичност, а е валидно само с известна вероятност. Освен това Y може да бъде набор от елементи, а не само един елемент. Вероятността за намиране на Y в транзакция, която съдържа елементи X1,X2,…,Xn, се нарича увереност. Процентът на транзакциите, съдържащи правилото, от общия брой транзакции се нарича поддръжка. Нивото на сигурност, което трябва да надвишава сигурността на правилото, се нарича интересност.

Има различни видове правила за асоцииране. В най-простата си форма правилата за асоцииране отчитат само наличието или отсъствието на асоциация. Такива правила се наричат ​​булеви правила за асоцииране. Пример за такова правило е „клиентите, които купуват кисело мляко, купуват и нискомаслено масло“.

Правилата, които събират няколко правила за асоцииране заедно, се наричат ​​многостепенни или генерализирани правила за асоцииране. При конструирането на такива правила елементите обикновено се групират според йерархия и търсенето се извършва на най-високо концептуално ниво. Например „клиентите, които купуват мляко, купуват и хляб“. В този пример млякото и хлябът съдържат йерархия различни видовеи марки, но търсенето на по-ниско ниво няма да покаже интересни правила.

По-сложен тип правила са правилата за количествено свързване. Този тип правило се търси с помощта на количествени (напр. цена) или категорични (напр. пол) атрибути и се определя като ( , ,…,} -> . Например „клиенти на възраст между 30 и 35 години с доход над 75 000 годишно купуват коли на стойност над 20 000“.

Горните видове правила не засягат факта, че транзакциите по своето естество са зависими от времето. Например търсенето, преди даден продукт да бъде обявен за продажба или след като е изчезнал от пазара, ще се отрази неблагоприятно на прага на подкрепа. Имайки предвид това, концепцията за продължителността на живота на атрибута е въведена в алгоритмите за търсене за Правила за временна асоциация.

Проблемът с намирането на правила за асоцииране може да се раздели най-общо на две части: търсене на често срещани набори от елементи и генериране на правила въз основа на намерените често срещани набори. Предишни изследвания в по-голямата си част следват тези линии и ги разширяват в различни посоки.

От появата на алгоритъма Apriori, този алгоритъм е най-често използваният в първата стъпка. Много подобрения, например в скоростта и мащабируемостта, са насочени към подобряване на алгоритъма Apriori, към коригиране на погрешното му свойство да генерира твърде много кандидати за най-често срещаните набори от елементи. Apriori генерира набори от артикули, като използва само по-големите набори от артикули, намерени в предишната стъпка, без да преразглежда транзакциите. Модифицираният алгоритъм AprioriTid подобрява Apriori, като използва базата данни само при първото преминаване. Изчисленията в следващите стъпки използват само данните, създадени при първото преминаване, които са много по-малки от оригиналната база данни. Това води до огромно увеличение на производителността. Допълнителна подобрена версия на алгоритъма, наречена AprioriHybrid, може да бъде получена чрез използване на Apriori при първите няколко преминавания и след това, при по-късни преминавания, когато k-тите набори кандидати вече могат да бъдат напълно поставени в паметта на компютъра, превключване към AprioriTid.

По-нататъшните усилия за подобряване на алгоритъма Apriori са свързани с паралелизиране на алгоритъма (Count Distribution, Data Distribution, Candidate Distribution и др.), неговото мащабиране (Intelligent Data Distribution, Hybrid Distribution), въвеждането на нови структури от данни, като дървета на често срещащи се елементи (FP-растеж).

Втората стъпка се характеризира главно с автентичност и интересност. Новите модификации добавят измерението, качеството и времевата поддръжка, описани по-горе, към традиционните булеви правила. Често се използва еволюционен алгоритъм за намиране на правила.

2.2 Алгоритми на невронни мрежи

Изкуствените невронни мрежи се появиха в резултат на прилагането на математическия апарат за изследване на функционирането на човешката нервна система с цел нейното възпроизвеждане. А именно: способността на нервната система да се учи и да коригира грешки, което трябва да ни позволи да моделираме, макар и доста грубо, работата на човешкия мозък. Основната структурна и функционална част на невронната мрежа е формалният неврон, показан на фиг. 1, където x0, x1,..., xn са компонентите на вектора на входните сигнали, w0,w1,...,wn са стойностите на теглата на входните сигнали на неврона, а y е изходния сигнал на неврона.

Ориз. 1. Формален неврон: синапси (1), суматор (2), конвертор (3).

Формалният неврон се състои от 3 вида елементи: синапси, суматор и конвертор. Синапсът характеризира силата на връзката между два неврона.

Суматорът извършва събиране на входните сигнали, предварително умножени по съответните тегла. Конверторът изпълнява функцията на един аргумент - изхода на суматора. Тази функция се нарича активираща функция или трансферна функция на неврона.

Формалните неврони, описани по-горе, могат да бъдат комбинирани по такъв начин, че изходните сигнали на някои неврони да бъдат входни към други. Полученият набор от взаимосвързани неврони се нарича изкуствени невронни мрежи (ANN) или накратко невронни мрежи.

Съществуват следните три общи типа неврони в зависимост от тяхната позиция в невронната мрежа:

Входни неврони, към които се прилагат входни сигнали. Такива неврони обикновено имат един вход с единично тегло, няма отклонение и изходната стойност на неврона е равна на входния сигнал;

Изходни възли, чиито изходни стойности представляват получените изходни сигнали на невронната мрежа;

Скрити възли, които нямат директни връзки с входни сигнали, докато стойностите на изходните сигнали на скритите неврони не са изходни сигнали на ANN.

Според структурата на междуневронните връзки се разграничават два класа ANN:

ANN на директно разпространение, при което сигналът се разпространява само от входните неврони към изходните неврони.

Повтаряща се ANN - ANN с обратна връзка. В такива ANN сигналите могат да се предават между всякакви неврони, независимо от тяхното местоположение в ANN.

Има два общи подхода за обучение на ANN:

Обучение с учител.

Учене без учител.

Обучението под наблюдение включва използването на предварително формиран набор от примери за обучение. Всеки пример съдържа вектор от входни сигнали и съответен вектор от еталонни изходни сигнали, които зависят от задачата. Този комплект се нарича комплект за обучение или комплект за обучение. Обучението на невронната мрежа е насочено към такава промяна в теглата на връзките на ANN, при която стойността на изходните сигнали на ANN се различава възможно най-малко от изискваните стойности на изходните сигнали за даден вектор на входните сигнали.

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

Невронните мрежи се използват за решаване на широк кръг от проблеми, като планиране на полезни товари за космически совалки и прогнозиране на обменни курсове. Те обаче не се използват често в системи за извличане на данни поради сложността на модела (знанието, фиксирано като тегла на няколкостотин междуневронни връзки, е напълно невъзможно да се анализира и интерпретира от човек) и дългото време за обучение на голямо обучение комплект. От друга страна, невронните мрежи имат такива предимства за използване в задачи за анализ на данни като устойчивост на шумни данни и висока точност.

2.3 Методи на най-близкия съсед и k-най-близкия съсед

Алгоритъмът за най-близък съсед и алгоритъмът за k-най-близък съсед (KNN) се основават на сходство на обекти. Алгоритъмът за най-близък съсед избира измежду всички известни обекти обекта, който е възможно най-близък (използвайки показателя за разстоянието между обектите, например евклидов) до нов неизвестен преди това обект. Основният проблем с метода на най-близкия съсед е неговата чувствителност към отклонения в данните за обучение.

Описаният проблем може да бъде избегнат чрез алгоритъма KNN, който разграничава k-най-близките съседи от всички наблюдения, които са подобни на нов обект. Въз основа на класовете на най-близките съседи се взема решение за новия обект. Важна задача на този алгоритъм е изборът на коефициента k - броя на записите, които ще се считат за подобни. Модификацията на алгоритъма, при която приносът на съседа е пропорционален на разстоянието до новия обект (метод на k-претеглените най-близки съседи), позволява да се постигне по-голяма точност на класификацията. Методът на k най-близките съседи също ви позволява да оцените точността на прогнозата. Например, ако всички k най-близки съседи имат един и същи клас, тогава вероятността проверяваният обект да има същия клас е много висока.

Сред характеристиките на алгоритъма си струва да се отбележи устойчивостта на аномални отклонения, тъй като вероятността такъв запис да попадне в броя на k-близките съседи е малка. Ако това се случи, тогава влиянието върху гласуването (особено претеглено) (за k>2) също е вероятно да бъде незначително и, следователно, въздействието върху резултата от класификацията също ще бъде малко. Също така, предимствата са проста реализация, лекота на интерпретация на резултата от алгоритъма, възможност за модифициране на алгоритъма чрез използване на най-подходящата комбинация от функции и показатели, което ви позволява да коригирате алгоритъма за конкретна задача. Алгоритъмът KNN също има редица недостатъци. Първо, наборът от данни, използван за алгоритъма, трябва да бъде представителен. Второ, моделът не може да бъде отделен от данните: всички примери трябва да се използват за класифициране на нов пример. Тази функция силно ограничава използването на алгоритъма.

2.4 Дървета на решенията

Терминът "дървета на решения" се отнася до семейство от алгоритми, базирани на представянето на класификационни правила в йерархична, последователна структура. Това е най-популярният клас алгоритми за решаване на проблеми с извличането на данни.

Семейство от алгоритми за конструиране на дървета на решения позволява да се предвиди стойността на параметър за даден случай въз основа на голямо количество данни за други подобни случаи. Обикновено алгоритмите от това семейство се използват за решаване на проблеми, които позволяват да се разделят всички първоначални данни на няколко отделни групи.

Когато се прилагат алгоритми на дървото на решенията към набор от първоначални данни, резултатът се показва като дърво. Такива алгоритми позволяват извършването на няколко нива на такова разделяне, като разделят получените групи (дървесни клони) на по-малки въз основа на други характеристики. Разделянето продължава, докато стойностите, които трябва да бъдат предвидени, са еднакви (или, в случай на непрекъсната стойност на прогнозирания параметър, затворете) за всички получени групи (листа на дървото). Именно тези стойности се използват за правене на прогнози въз основа на този модел.

Работата на алгоритмите за конструиране на дървета на решения се основава на използването на методи за регресионен и корелационен анализ. Един от най-популярните алгоритми от това семейство е CART (Дървета за класификация и регресия), базиран на разделянето на данни в дървовиден клон на два дъщерни клона; по-нататъшното разделяне на един или друг клон зависи от това колко първоначални данни са описани от този клон. Някои други подобни алгоритми ви позволяват да разделите клон на повече дъщерни клонове. В този случай разделянето се извършва на базата на най-високия коефициент на корелация за данните, описани от клона, между параметъра, според който се извършва разделението, и параметъра, който трябва да бъде допълнително прогнозиран.

Популярността на подхода се свързва с видимост и разбираемост. Но дърветата на решенията са фундаментално неспособни да намерят „най-добрите“ (най-пълните и точни) правила в данните. Те прилагат наивния принцип на последователно гледане на знаци и всъщност намират части от реални модели, създавайки само илюзията за логично заключение.

2.5 Алгоритми за групиране

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

Прилагането на клъстерния анализ в общи линии се свежда до следните стъпки:

избор на извадка от обекти за групиране;

дефиниране на набор от променливи, чрез които ще бъдат оценени обектите в извадката. При необходимост - нормализиране на променливи стойности;

изчисляване на стойностите на мярката за сходство между обекти;

прилагане на метода на клъстерен анализ за създаване на групи от подобни обекти (клъстери);

· представяне на резултатите от анализа.

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

Сред алгоритмите за групиране се разграничават йерархични и плоски групи. Йерархичните алгоритми (наричани още таксономични алгоритми) не изграждат единично разделение на извадката в несвързани клъстери, а система от вложени дялове. Така изходът на алгоритъма е дърво от клъстери, чийто корен е цялата проба, а листата са най-малките клъстери. Плоските алгоритми изграждат една част от обекти в непресичащи се клъстери.

Друга класификация на алгоритмите за групиране е на ясни и размити алгоритми. Ясните (или неприпокриващи се) алгоритми присвояват номер на клъстер на всеки примерен обект, тоест всеки обект принадлежи само на един клъстер. Размити (или пресичащи се) алгоритми присвояват на всеки обект набор от реални стойности, показващи степента на връзка на обекта с клъстерите. По този начин всеки обект принадлежи към всеки клъстер с известна вероятност.

Има два основни типа алгоритми за йерархично клъстериране: възходящи и низходящи алгоритми. Алгоритмите отгоре надолу работят на принципа отгоре надолу: първо всички обекти се поставят в един клъстер, който след това се разделя на все по-малки и по-малки клъстери. По-често срещаните са алгоритми отдолу нагоре, които първоначално поставят всяка характеристика в отделен клъстер и след това обединяват клъстерите във все по-големи и по-големи клъстери, докато всички избрани характеристики се съдържат в един и същ клъстер. Така се изгражда система от вложени дялове. Резултатите от такива алгоритми обикновено се представят под формата на дърво.

Недостатъкът на йерархичните алгоритми е системата от пълни дялове, които могат да бъдат излишни в контекста на решавания проблем.

Нека сега разгледаме плоските алгоритми. Най-простите сред този клас са алгоритмите за квадратична грешка. Проблемът с групирането на тези алгоритми може да се разглежда като изграждането на оптимално разделяне на обекти в групи. В този случай оптималността може да се дефинира като изискване за минимизиране на средноквадратичната грешка при разделяне:

,

Където ° С j - "център на масата" на клъстера й(точка със средни стойности на характеристиките за даден клъстер).

Най-често срещаният алгоритъм в тази категория е методът на k-средните стойности. Този алгоритъм изгражда даден брой клъстери, разположени възможно най-далеч един от друг. Работата на алгоритъма е разделена на няколко етапа:

Избирайте на случаен принцип кточки, които са началните "центрове на маса" на клъстерите.

2. Присвоете всеки обект на клъстер с най-близкия "център на масата".

Ако критерият за спиране на алгоритъма не е изпълнен, върнете се към стъпка 2.

Като критерий за спиране на работата на алгоритъма обикновено се избира минималното изменение на средната квадратична грешка. Възможно е също така да спрете алгоритъма, ако на стъпка 2 няма обекти, които са се преместили от клъстер в клъстер. Недостатъците на този алгоритъм включват необходимостта да се посочи броят на клъстерите за разделяне.

Най-популярният алгоритъм за размито клъстериране е алгоритъмът c-means. Това е модификация на метода на k-средните. Стъпки на алгоритъма:

1. Изберете първоначален размит дял нобекти върху кклъстери чрез избор на матрица за членство Uразмер n x k.

2. Използвайки матрицата U, намерете стойността на критерия за размита грешка:

,

Където ° С k - "център на масата" на размит клъстер к:

3. Прегрупирайте обектите, за да намалите тази стойност на критерия за размита грешка.

4. Върнете се към стъпка 2, докато матрицата се промени Uняма да станат незначителни.

Този алгоритъм може да не е подходящ, ако броят на клъстерите не е известен предварително или ако е необходимо уникално да се припише всеки обект на един клъстер.

Следващата група алгоритми са алгоритми, базирани на теория на графите. Същността на такива алгоритми е, че селекцията от обекти е представена като графика G=(V, E), чиито върхове съответстват на обекти, а ръбовете имат тегло, равно на "разстоянието" между обектите. Предимството на алгоритмите за групиране на графики е видимостта, относителната лекота на внедряване и възможността за извършване на различни подобрения въз основа на геометрични съображения. Основните алгоритми са алгоритъмът за извличане на свързани компоненти, алгоритъмът за конструиране на минимално обхващащо (spanning) дърво и алгоритъмът за слоесто клъстериране.

За да изберете параметър Робикновено се изгражда хистограма на разпределението на разстоянията по двойки. При задачи с добре дефинирана клъстерна структура на данните хистограмата ще има два пика - единият съответства на вътрешноклъстерните разстояния, а вторият - на междуклъстерните разстояния. Параметър Рсе избира от зоната на минимум между тези пикове. В същото време е доста трудно да се контролира броят на клъстерите с помощта на прага на разстоянието.

Алгоритъмът за минимално обхващащо дърво първо изгражда минимално обхващащо дърво върху графиката и след това последователно премахва ръбовете с най-голямо тегло. Алгоритъмът за клъстериране слой по слой се основава на избора на свързани графични компоненти на определено ниво на разстояния между обекти (върхове). Нивото на разстоянието се задава от прага на разстоянието ° С. Например, ако разстоянието между обектите е , то .

Алгоритъмът за слоесто клъстериране генерира последователност от подграфи на графика Ж, които отразяват йерархичните връзки между клъстерите:

,

Където Ж T = (V, E T ) - графика на нивата с T , ,

с t - t-ти праг на разстояние, m - брой нива на йерархия,
Ж 0 = (V, o), o - празен набор от ръбове на графика, получени от T 0 = 1,
Жм = Ж, тоест графика на обекти без ограничения на разстоянието (дължината на ръбовете на графиката), тъй като T m = 1.

Чрез промяна на праговете на разстоянието ( с 0 , …, С m), където 0 = с 0 < с 1 < …< с m = 1, е възможно да се контролира дълбочината на йерархията на получените клъстери. По този начин алгоритъмът за клъстериране слой по слой е в състояние да създаде както плосък дял на данните, така и йерархичен.

Клъстерирането постига следните цели:

Подобрява разбирането на данните чрез идентифициране на структурни групи. Разделянето на извадката на групи от подобни обекти прави възможно опростяването на по-нататъшната обработка на данни и вземането на решения чрез прилагане на собствен метод за анализ към всеки клъстер;

Позволява компактно съхранение на данни. За да направите това, вместо да съхранявате цялата извадка, може да се остави едно типично наблюдение от всеки клъстер;

· откриване на нови нетипични обекти, които не попадат в нито един клъстер.

Обикновено клъстерирането се използва като спомагателен метод при анализ на данни.

2.6 Генетични алгоритми

Генетичните алгоритми са сред универсалните методи за оптимизация, които позволяват решаване на задачи от различен тип (комбинаторни, общи задачи с и без ограничения) и различна степен на сложност. В същото време генетичните алгоритми се характеризират с възможността както за еднокритериално, така и за многокритериално търсене в голямо пространство, чийто пейзаж не е гладък.

Тази група методи използва итеративен процес на еволюция на последователност от поколения модели, включително операциите на селекция, мутация и кръстосване. В началото на алгоритъма популацията се формира на случаен принцип. За оценка на качеството на кодираните решения се използва фитнес функцията, която е необходима за изчисляване на годността на всеки индивид. Въз основа на резултатите от оценката на индивидите, най-силните от тях се избират за кръстосване. В резултат на кръстосването на избраните индивиди чрез използването на оператора за генетично кръстосване се създава потомство, чиято генетична информация се формира в резултат на обмена на хромозомна информация между родителските индивиди. Създадените потомци образуват нова популация, а част от потомците мутират, което се изразява в случайна промяна на генотипа им. Етапът, който включва последователността "Оценка на популацията" - "Селекция" - "Кръстосване" - "Мутация", се нарича поколение. Еволюцията на популацията се състои от поредица от такива поколения.

Разграничават се следните алгоритми за избор на индивиди за пресичане:

Панмиксия. И двата индивида, които съставляват родителската двойка, са избрани на случаен принцип от цялата популация. Всеки индивид може да стане член на няколко двойки. Този подход е универсален, но ефективността на алгоритъма намалява с нарастването на населението.

· Избор. Родители могат да станат лица с физическа годност не по-ниска от средната. Този подход осигурява по-бърза конвергенция на алгоритъма.

Инбридинг. Методът се основава на формирането на двойка въз основа на тясна връзка. Родството тук се отнася до разстоянието между членовете на популацията, както в смисъл на геометричното разстояние на индивидите в пространството на параметрите, така и на разстоянието на Хеминг между генотипите. Следователно има генотипно и фенотипно инбридинг. Първият член на двойката за кръстосване се избира произволно, а вторият е по-вероятно да бъде индивидът, който е най-близо до него. Инбридингът може да се характеризира със свойството на концентрация на търсене в локални възли, което всъщност води до разделянето на популацията на отделни локални групи около райони на ландшафта, подозрителни за екстремум.

Аутбридинг. Формиране на двойка на базата на далечна връзка, за най-отдалечените индивиди. Outbreeding има за цел да предотврати конвергенцията на алгоритъма към вече намерени решения, принуждавайки алгоритъма да изследва нови, неизследвани области.

Алгоритми за формиране на нова популация:

Избор с денивелация. От всички индивиди с еднакъв генотип, предпочитание се дава на тези, чиято годност е по-висока. По този начин се постигат две цели: не се губят най-добрите намерени решения с различни хромозомни набори, постоянно се поддържа достатъчно генетично разнообразие в популацията. Изместването формира нова популация от далечни индивиди, вместо индивиди, групирани около текущото намерено решение. Този метод се използва за многоекстремални проблеми.

Елитна селекция. Елитните методи за подбор гарантират, че най-добрите членове на популацията със сигурност ще оцелеят, когато бъдат избрани. В същото време някои от най-добрите личности преминават без никакви промени в следващото поколение. Бързата конвергенция, осигурена от елитната селекция, може да бъде компенсирана чрез подходящ метод за избор на родителски двойки. В този случай често се използва аутбридинг. Именно тази комбинация "аутбридинг - елитна селекция" е една от най-ефективните.

· Избор на турнир. Изборът на турнири включва n турнира за избиране на n индивида. Всеки турнир е изграден върху селекция от k елемента от популацията и избора на най-добрия индивид сред тях. Изборът на турнир с k = 2 е най-често срещаният.

Едно от най-търсените приложения на генетичните алгоритми в областта на Data Mining е търсенето на най-оптималния модел (търсене на алгоритъм, който отговаря на спецификата на определена област). Генетичните алгоритми се използват предимно за оптимизиране на топологията на невронните мрежи и теглата. Те обаче могат да се използват и като самостоятелен инструмент.

3. Приложения

Технологията за извличане на данни има наистина широк спектър от приложения, като всъщност представлява набор от универсални инструменти за анализ на данни от всякакъв тип.

Маркетинг

Една от първите области, в които бяха приложени технологиите за извличане на данни, беше областта на маркетинга. Задачата, с която започна разработването на методите за извличане на данни, се нарича анализ на пазарската количка.

Тази задача е да се идентифицират продуктите, които купувачите са склонни да купуват заедно. Познаването на пазарската кошница е необходимо за рекламни кампании, формиране на лични препоръки към клиентите, разработване на стратегия за създаване на запаси от стоки и начини за тяхното разполагане в търговските зали.

Също така в маркетинга се решават такива задачи като определяне на целевата аудитория на конкретен продукт за по-успешното му популяризиране; проучване на времеви модели, което помага на бизнеса да взема решения за инвентара; създаване на прогнозни модели, които позволяват на предприятията да разпознават естеството на нуждите на различни категории клиенти с определено поведение; прогнозиране на лоялността на клиентите, което ви позволява предварително да идентифицирате момента на напускане на клиента, когато анализирате поведението му и евентуално да предотвратите загубата на ценен клиент.

Индустрия

Една от важните области в тази област е мониторингът и контролът на качеството, където с помощта на инструменти за анализ е възможно да се предвиди повреда на оборудването, появата на неизправности и да се планират ремонтни дейности. Прогнозирането на популярността на определени функции и знанието кои характеристики обикновено се поръчват заедно помага за оптимизиране на производството, ориентирайки го към реалните нужди на потребителите.

Лекарство

В медицината анализът на данни също се използва доста успешно. Пример за задачи може да бъде анализ на резултатите от прегледите, диагностика, сравнение на ефективността на лечението и лекарствата, анализ на заболяванията и тяхното разпространение, идентифициране на странични ефекти. Технологии за извличане на данни, като правила за асоцииране и последователни модели, са използвани успешно за идентифициране на връзките между употребата на наркотици и страничните ефекти.

Молекулярна генетика и генно инженерство

Може би най-острата и в същото време ясна задача за откриване на закономерности в експерименталните данни е в молекулярната генетика и генното инженерство. Тук тя е формулирана като дефиниция на маркери, които се разбират като генетични кодове, които контролират определени фенотипни черти на живия организъм. Такива кодове могат да съдържат стотици, хиляди или повече свързани елементи. Резултатът от аналитичния анализ на данните е и откритата от генетиците връзка между промените в последователността на човешката ДНК и риска от развитие на различни заболявания.

Приложна химия

Методите за извличане на данни се използват и в областта на приложната химия. Тук често възниква въпросът за изясняване на особеностите на химичната структура на определени съединения, които определят техните свойства. Тази задача е особено актуална при анализа на сложни химични съединения, чието описание включва стотици и хиляди структурни елементи и техните връзки.

Борба с престъпността

В областта на сигурността инструментите за извличане на данни се използват сравнително наскоро, но вече са получени практически резултати, които потвърждават ефективността на извличането на данни в тази област. Швейцарски учени разработиха система за анализиране на протестната активност с цел прогнозиране на бъдещи инциденти и система за проследяване на възникващи кибер заплахи и действия на хакери по света. Последната система дава възможност за прогнозиране на кибер заплахи и други рискове за информационната сигурност. Също така методите за извличане на данни се използват успешно за откриване на измами с кредитни карти. Анализирайки минали транзакции, които по-късно се оказаха измамни, банката идентифицира някои стереотипи за такива измами.

Други приложения

· Анализ на риска. Например, чрез идентифициране на комбинации от фактори, свързани с изплатени искове, застрахователите могат да намалят загубите си от отговорност. Известен е случай в Съединените щати, когато голяма застрахователна компания установи, че изплатените суми по молбите на женени хора са два пъти по-високи от сумите по молбите на несемейни хора. Компанията отговори на това ново знание, като преразгледа общата си политика за семейни отстъпки.

· Метеорология. Използват се прогнози за времето чрез методи на невронни мрежи, по-специално самоорганизиращи се карти на Кохонен.

· Кадрова политика. Инструментите за анализ помагат на отделите по човешки ресурси да избират най-успешните кандидати въз основа на анализа на данните от техните автобиографии, моделират характеристиките на идеалните служители за определена позиция.

4. Производители на инструменти за извличане на данни

Инструментите за извличане на данни традиционно принадлежат към скъпите софтуерни продукти. Следователно доскоро основните потребители на тази технология бяха банки, финансови и застрахователни компании, големи търговски предприятия, а основните задачи, изискващи използването на Data Mining, бяха оценката на кредитните и застрахователните рискове и разработването на маркетингова политика, тарифа планове и други принципи на работа с клиенти. През последните години ситуацията претърпя известни промени: на пазара на софтуер се появиха сравнително евтини инструменти за извличане на данни и дори безплатни системи за разпространение, което направи тази технология достъпна за малкия и среден бизнес.

Сред платените инструменти и системи за анализ на данни лидерите са SAS Institute (SAS Enterprise Miner), SPSS (SPSS, Clementine) и StatSoft (STATISTICA Data Miner). Добре известни решения са от Angoss (Angoss KnowledgeSTUDIO), IBM (IBM SPSS Modeler), Microsoft (Microsoft Analysis Services) и (Oracle) Oracle Data Mining.

Изборът на безплатен софтуер също е разнообразен. Има както универсални инструменти за анализ, като JHepWork, KNIME, Orange, RapidMiner, така и специализирани инструменти, като Carrot2 - рамка за клъстериране на текстови данни и резултати от заявки за търсене, Chemicalize.org - решение в областта на приложната химия, NLTK (Natural Language Toolkit) инструмент за обработка на естествен език.

5. Критика на методите

Резултатите от Data Mining до голяма степен зависят от нивото на подготовка на данните, а не от „чудесните възможности“ на някакъв алгоритъм или набор от алгоритми. Около 75% от работата по Data Mining се състои в събиране на данни, което се извършва дори преди използването на инструменти за анализ. Неграмотното използване на инструменти ще доведе до загуба на потенциала на компанията, а понякога и до милиони долари.

Мнението на Хърб Еделщайн, световноизвестен експерт в областта на Data Mining, Data Warehousing и CRM: „Неотдавнашно проучване на Two Crows показа, че Data Mining е все още в ранен етап на развитие. Много организации се интересуват от тази технология, но само няколко активно изпълняват такива проекти. Друг важен момент беше изяснен: процесът на прилагане на Data Mining на практика се оказва по-сложен от очакваното Екипите бяха увлечени от мита, че инструментите за Data Mining са лесни за използване. Предполага се, че е достатъчно да стартирате такъв инструмент върху терабайтова база данни и незабавно ще се появи полезна информация. Всъщност успешният проект за извличане на данни изисква разбиране на същността на дейността, познаване на данните и инструментите, както и процеса на анализ на данни. Ето защо, преди да използвате технологията Data Mining, е необходимо внимателно да анализирате ограниченията, наложени от методите и критичните проблеми, свързани с тях, както и трезва оценка на възможностите на технологията. Критичните въпроси включват:

1. Технологията не може да даде отговори на въпроси, които не са зададени. Тя не може да замести анализатора, а само му дава мощен инструмент за улесняване и подобряване на работата му.

2. Сложността на разработването и работата на приложението Data Mining.

Тъй като тази технология е мултидисциплинарна област, за да се разработи приложение, което включва Data Mining, е необходимо да се включат специалисти от различни области, както и да се осигури тяхното висококачествено взаимодействие.

3. Квалификация на потребителя.

Различните инструменти за извличане на данни имат различна степен на "приятелство" на интерфейса и изискват определени потребителски умения. Следователно софтуерът трябва да отговаря на нивото на обучение на потребителя. Използването на Data Mining трябва да бъде неразривно свързано с подобряването на уменията на потребителя. В момента обаче има малко специалисти по извличане на данни, които са добре запознати с бизнес процесите.

4. Извличането на полезна информация е невъзможно без добро разбиране на същността на данните.

Необходим е внимателен подбор на модел и тълкуване на зависимостите или моделите, които се откриват. Следователно работата с такива инструменти изисква тясно сътрудничество между експерт по домейн и специалист по инструменти за извличане на данни. Постоянните модели трябва да бъдат добре интегрирани в бизнес процесите, за да могат да оценяват и актуализират моделите. Наскоро системите за извличане на данни бяха доставени като част от технологията за съхранение на данни.

5. Сложност на подготовката на данните.

Успешният анализ изисква висококачествена предварителна обработка на данните. Според анализатори и потребители на бази данни процесът на предварителна обработка може да отнеме до 80% от целия процес на извличане на данни.

По този начин, за да работи технологията сама за себе си, ще са необходими много усилия и време, които отиват в предварителен анализ на данните, избор на модел и неговата настройка.

6. Голям процент фалшиви, ненадеждни или безполезни резултати.

С помощта на технологиите за извличане на данни можете да намерите наистина много ценна информация, която може да даде значително предимство при по-нататъшното планиране, управление и вземане на решения. Въпреки това резултатите, получени с помощта на методите за извличане на данни, доста често съдържат неверни и безсмислени заключения. Много експерти твърдят, че инструментите за извличане на данни могат да дадат огромно количество статистически ненадеждни резултати. За да се намали процентът на такива резултати, е необходимо да се провери адекватността на получените модели върху тестови данни. Въпреки това е невъзможно напълно да се избегнат фалшивите заключения.

7. Висока цена.

Висококачественият софтуерен продукт е резултат от значителни разходи за труд от страна на разработчика. Поради това софтуерът за извличане на данни традиционно се нарича скъп софтуерен продукт.

8. Наличие на достатъчно представителни данни.

Инструментите за извличане на данни, за разлика от статистическите, теоретично не изискват строго определено количество исторически данни. Тази функция може да доведе до откриване на ненадеждни, фалшиви модели и в резултат на това вземане на неправилни решения въз основа на тях. Необходимо е да се контролира статистическата значимост на откритите знания.

алгоритъм на невронна мрежа клъстериране извличане на данни

Заключение

Дава се кратко описание на областите на приложение и се дава критика на технологията Data Mining и мнения на специалисти в тази област.

списъклитература

1. Хан и Мишелин Камбер. Извличане на данни: концепции и техники. второ издание. - Университет на Илинойс в Урбана-Шампейн

Бери, Майкъл Дж. А. Техники за извличане на данни: за маркетинг, продажби и управление на взаимоотношенията с клиенти - 2-ро изд.

Сиу Нинг Лам. Откриване на правила за асоцииране при извличане на данни. - Катедра по компютърни науки Университет на Илинойс в Урбана-Шампейн

Какво е Data Mining

Корпоративната база данни на всяко съвременно предприятие обикновено съдържа набор от таблици, които съхраняват записи за определени факти или обекти (например за стоки, техните продажби, клиенти, фактури). По правило всеки запис в такава таблица описва определен обект или факт. Например, запис в таблицата за продажби отразява факта, че такъв и такъв продукт е бил продаден на такъв и такъв клиент от такъв и такъв мениджър по това време и като цяло не съдържа нищо друго освен тази информация. Но натрупването на голям брой такива записи, натрупани в продължение на няколко години, може да се превърне в източник на допълнителна, много по-ценна информация, която не може да бъде получена на базата на един конкретен запис, а именно информация за модели, тенденции или взаимозависимости между всякакви данни . Примери за такава информация са информация за това как продажбите на определен продукт зависят от деня от седмицата, времето от деня или сезона, кои категории купувачи най-често купуват определен продукт, каква част от купувачите на един конкретен продукт купуват друг конкретен продукт , коя категория клиенти най-често не погасява кредита навреме.

Този вид информация обикновено се използва при прогнозиране, стратегическо планиране, анализ на риска и нейната стойност за предприятието е много висока. Очевидно затова процесът на търсенето му беше наречен Data Mining (копаене на английски означава „добив“, а търсенето на модели в огромен набор от действителни данни наистина е подобно на това). Терминът Data Mining се отнася не толкова до конкретна технология, колкото до самия процес на търсене на корелации, тенденции, връзки и модели чрез различни математически и статистически алгоритми: групиране, създаване на подизвадки, регресионен и корелационен анализ. Целта на това търсене е да представи данните във форма, която ясно отразява бизнес процесите, както и да изгради модел, който може да се използва за прогнозиране на процеси, които са критични за бизнес планирането (например динамиката на търсенето на определени стоки или услуги или зависимостта на тяхното закупуване от определени потребителски характеристики).

Имайте предвид, че традиционната математическа статистика, която дълго време остава основният инструмент за анализ на данни, както и инструментите за онлайн аналитична обработка (OLAP), за които вече сме писали много пъти (вижте материалите по тази тема на нашия компактдиск), могат не винаги се използва успешно за решаване на такива проблеми. Обикновено статистическите методи и OLAP се използват за тестване на предварително формулирани хипотези. Въпреки това, често формулирането на хипотезата се оказва най-трудната задача при прилагането на бизнес анализ за последващо вземане на решения, тъй като не всички модели в данните са очевидни на пръв поглед.

Основата на съвременната технология за извличане на данни е концепцията за модели, които отразяват моделите, присъщи на подизвадките от данни. Моделите се търсят чрез методи, които не използват никакви априорни предположения за тези подизвадки. Докато статистическият анализ или OLAP приложенията обикновено формулират въпроси като „Какъв е средният брой неплатени фактури от клиенти на тази услуга?“, Извличането на данни като правило означава отговори на въпроси като „Има ли типична категория клиенти, които не плащам сметки?“ . В същото време отговорът на втория въпрос често дава по-нетривиален подход към маркетинговата политика и организацията на работа с клиенти.

Важна характеристика на Data Mining е нестандартността и неочевидността на търсените модели. С други думи, инструментите за извличане на данни се различават от инструментите за обработка на статистически данни и OLAP инструментите по това, че вместо да проверяват взаимозависимостите, които потребителите предполагат, те са в състояние сами да намерят такива взаимозависимости въз основа на наличните данни и да изградят хипотези за тяхното естество.

Трябва да се отбележи, че използването на инструменти за извличане на данни не изключва използването на статистически инструменти и OLAP инструменти, тъй като резултатите от обработката на данни с помощта на последните, като правило, допринасят за по-доброто разбиране на естеството на моделите, които трябва да да се търси.

Първоначални данни за Data Mining

Използването на Data Mining е оправдано, ако има достатъчно голямо количество данни, в идеалния случай съдържащи се в правилно проектирано хранилище за данни (всъщност самите хранилища за данни обикновено се създават за решаване на проблеми с анализа и прогнозирането, свързани с подкрепата за вземане на решения). Също така многократно сме писали за принципите на изграждане на хранилища за данни; съответните материали могат да бъдат намерени на нашия компактдиск, така че няма да се спираме на този въпрос. Припомняме само, че данните в хранилището са попълнен набор, общ за цялото предприятие и ви позволява да възстановите картина на дейността му във всеки един момент. Имайте предвид също, че структурата на данните за съхранение е проектирана по такъв начин, че изпълнението на заявките към нея да се извършва възможно най-ефективно. Съществуват обаче инструменти за извличане на данни, които могат да търсят модели, корелации и тенденции не само в хранилища за данни, но и в OLAP кубове, тоест в набори от предварително обработени статистически данни.

Видове модели, разкрити чрез методите за извличане на данни

Според V.A.Dyuk има пет стандартни типа модели, идентифицирани чрез методите за извличане на данни:

Асоциация - голяма вероятност за свързване на събития помежду си (например, един продукт често се купува заедно с друг);

Последователност - висока вероятност за верига от събития, свързани във времето (например в рамките на определен период след закупуването на един продукт, друг ще бъде закупен с висока степен на вероятност);

Класификация - има признаци, които характеризират групата, към която принадлежи това или онова събитие или обект (обикновено определени правила се формулират въз основа на анализа на вече класифицирани събития);

Групирането е модел, подобен на класификацията и се различава от него по това, че самите групи в този случай не са зададени - те се откриват автоматично по време на обработката на данните;

Времеви модели - наличието на модели в динамиката на поведението на определени данни (типичен пример са сезонните колебания в търсенето на определени стоки или услуги), използвани за прогнозиране.

Методи за извличане на данни в Data Mining

Днес има доста голям брой различни методи за извличане на данни. Въз основа на горната класификация, предложена от V.A. Dyuk, сред тях са:

Регресионен, дисперсионен и корелационен анализ (имплементиран в повечето съвременни статистически пакети, по-специално в продуктите на SAS Institute, StatSoft и др.);

Методи за анализ в конкретна предметна област, базирани на емпирични модели (често използвани, например, в евтини инструменти за финансов анализ);

Алгоритмите на невронната мрежа, чиято идея се основава на аналогия с функционирането на нервната тъкан и се крие във факта, че първоначалните параметри се разглеждат като сигнали, които се трансформират в съответствие със съществуващите връзки между "невроните", и като отговор в резултат на анализа, реакцията на цялата мрежа към първоначалните данни. Връзките в този случай се създават с помощта на така нареченото мрежово обучение чрез голяма извадка, съдържаща както оригиналните данни, така и правилните отговори;

Алгоритми - избор на близък аналог на оригиналните данни от вече наличните исторически данни. Нарича се още метод на най-близкия съсед;

Дървета на решенията - йерархична структура, базирана на набор от въпроси, които предполагат отговор "Да" или "Не"; въпреки факта, че този метод за обработка на данни не винаги идеално намира съществуващи модели, той доста често се използва в системите за прогнозиране поради яснотата на получения отговор;

Клъстерните модели (понякога наричани още модели на сегментиране) се използват за групиране на подобни събития в групи въз основа на подобни стойности на няколко полета в набор от данни; също са много популярни при създаването на системи за прогнозиране;

Алгоритми за ограничено търсене, които изчисляват честотите на комбинации от прости логически събития в подгрупи от данни;

Еволюционно програмиране - търсене и генериране на алгоритъм, който изразява взаимозависимостта на данните, базиран на първоначално зададен алгоритъм, модифициран в процеса на търсене; понякога търсенето на взаимозависимости се извършва сред някои определени типове функции (например полиноми).

Повече подробности за тези и други алгоритми за извличане на данни, както и инструментите, които ги прилагат, можете да намерите в книгата „Извличане на данни: курс за обучение“ от V.A. Днес това е една от малкото книги на руски, посветени на този проблем.

Водещи производители на инструменти за извличане на данни

Инструментите за извличане на данни, както и повечето инструменти за бизнес разузнаване, традиционно принадлежат към скъпите софтуерни инструменти - цената на някои от тях достига няколко десетки хиляди долара. Следователно доскоро основните потребители на тази технология бяха банки, финансови и застрахователни компании, големи търговски предприятия, а основните задачи, изискващи използването на Data Mining, бяха оценката на кредитните и застрахователните рискове и разработването на маркетингова политика, тарифа планове и други принципи на работа с клиенти. През последните години ситуацията претърпя известни промени: на пазара на софтуер се появиха сравнително евтини инструменти за извличане на данни от няколко производители, които направиха тази технология достъпна за малки и средни предприятия, които не са мислили за това преди.

Съвременните инструменти за бизнес разузнаване включват генератори на отчети, инструменти за аналитична обработка на данни, инструменти за разработка на BI решения (BI платформи) и така наречените Enterprise BI Suites - инструменти за анализ и обработка на данни в цялото предприятие, които ви позволяват да извършвате набор от действия, свързани с анализ на данни и отчитане и често включват интегриран набор от BI инструменти и инструменти за разработка на BI приложения. Последните, като правило, съдържат както инструменти за отчитане, така и инструменти за OLAP, а често и инструменти за извличане на данни.

Според анализаторите на Gartner Group Business Objects, Cognos, Information Builders са лидери на пазара за анализ и обработка на данни в мащаб на предприятието, а Microsoft и Oracle също претендират за лидерство (фиг. 1). Що се отнася до инструментите за разработка на BI решения, основните претенденти за лидерство в тази област са Microsoft и SAS Institute (фиг. 2).

Имайте предвид, че инструментите за бизнес разузнаване на Microsoft са сравнително евтини продукти, достъпни за широк кръг компании. Ето защо ще разгледаме някои практически аспекти на използването на Data Mining, като използваме продуктите на тази компания като пример в следващите части на тази статия.

Литература:

1. Херцог V.A. Data Mining - извличане на данни. - http://www.olap.ru/basic/dm2.asp.

2. Дюк В.А., Самойленко А.П. Извличане на данни: курс на обучение. - Санкт Петербург: Питър, 2001.

3. Б. де Вил. Microsoft Data Mining. Digital Press, 2001.



Зареждане...
Връх