Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metodichka_komp_analit_diyalnist.doc
Скачиваний:
7
Добавлен:
01.07.2025
Размер:
9 Мб
Скачать
☆

Набір даних для weka

Набір даних, який ми будемо використовувати для прикладу класифікаційного аналізу, містить інформацію, зібрану дилерським центром BMW. Центр починає рекламну кампанію, пропонуючи розширену дворічну гарантію своїм постійним клієнтам. Подібні кампанії вже проводилися, так що дилерський центр має 4500 показники щодо попередніх продажів з розширеною гарантією. Цей набір даних має такі атрибути:

  • Розподіл за доходами

[0=$0-$30k,

1=$31k-$40k,

2=$41k-$60k,

3=$61k-$75k,

4=$76k-$100k,

5=$101k-$150k,

6=$151k-$500k,

7=$501k+]

  • Рік / місяць покупки першого автомобіля BMW

  • Рік / місяць покупки останнього автомобіля BMW

  • Чи скористався клієнт розширеною гарантією

Файл даних у форматі Attribute-Relation File Format (ARFF) буде виглядати наступним чином:

@attribute IncomeBracket {0,1,2,3,4,5,6,7}

@attribute FirstPurchase numeric

@attribute LastPurchase numeric

@attribute responded {1,0}

@data

4,200210,200601,0

5,200301,200601,1

...

Класифікація в weka

Завантажте файл bmw-training.arff в програмний пакет WEKA, використовуючи ті ж кроки, які ми виконали для завантаження даних у випадку регресійного аналізу. 

Зауваження: в пропонованому файлі містяться 3000 з наявних 4500 записів. Ми розділили набір даних так, щоб частина їх використовувалася для створення моделі, а частина - для перевірки її точності, щоб переконатися, що модель не є підігнаною під конкретний набір даних. 

Після завантаження даних вікно WEKA має виглядати так, як показано на рис. 1.

  Рис. 1. Дані дилерського центру BMW для класифікації в WEKA

Аналогічно тому, як ми вибирали тип моделі для регресійного аналізу в попередній лабораторній роботі, тепер нам слід вибрати модель для класифікації: відкрийте закладку Classify , виберіть опцію trees, а потім опцію J48.

  Рис. 2. Алгоритм класифікації даних BMW

Тепер ми готові приступити до створення конкретної моделі аналізу засобами пакета WEKA. Переконайтеся, що обрана опція Use training set , щоб пакет WEKA при створенні моделі використовував саме ті дані, які ми тільки що завантажили у вигляді файлу. Натисніть кнопку Start і надайте WEKA можливість попрацювати з нашими даними. Результуюча модель повинна виглядати так, як показано нижче:

Результат роботи класифікаційної моделі weka

Number of Leaves : 28

Size of the tree : 43

Time taken to build model: 0.18 seconds

=== Evaluation on training set ===

=== Summary ===

Correctly Classified Instances 1774 59.1333 %

Incorrectly Classified Instances 1226 40.8667 %

Kappa statistic 0.1807

Mean absolute error 0.4773

Root mean squared error 0.4885

Relative absolute error 95.4768 %

Root relative squared error 97.7122 %

Total Number of Instances 3000

=== Detailed Accuracy By Class ===

TP Rate FP Rate Precision Recall F-Measure ROC Area Class

0.662 0.481 0.587 0.662 0.622 0.616 1

0.519 0.338 0.597 0.519 0.555 0.616 0

Weighted Avg. 0.591 0.411 0.592 0.591 0.589 0.616

=== Confusion Matrix ===

a b <-- classified as

1009 516 | a = 1

710 765 | b = 0

Розберемося що означають всі ці числа. Як нам зрозуміти, наскільки хороша отримана модель? І де, власне, це так зване «дерево», яке мало вийти в результаті? Цілком закономірні питання. Давайте відповімо на кожне з них по черзі:

  • Що означають всі ці числа? Найбільш суттєві дані - це показники класифікації "Correctly Classified Instances" (59.1%) і "Incorrectly Classified Instances" (40.9%). Крім того, слід звернути увагу на число в першому рядку стовпця ROC Area (0.616). Трохи пізніше ми докладніше обговоримо ці значення, поки ж просто запам'ятайте їх. Нарешті, таблиця Confusion Matrix показує кількість хибно-позитивних (516) і хибно-негативних (710) розпізнавань.

  • Як зрозуміти, наскільки хороша отримана модель? Оскільки показник точності нашої моделі - 59,1%, то в первісному розгляді її не можна назвати досить хорошою.

  • Де це так зване дерево? Ви зможете побачити дерево, якщо клацнете правою кнопкою миші в панелі результуючої моделі. У контекстному меню виберіть опцію Visualize tree . На екрані відобразиться візуальне уявлення класифікаційного дерева нашої моделі (рис. 3), проте в даному випадку картинка мало чим нам допоможе. Ще один спосіб побачити дерево моделі - прокрутити вгору висновок у вікні Classifier Output, там ви знайдете текстовий опис дерева з вузлами і листками.

Рис. 3. Візуальне подання дерева класифікації

Залишився останній етап перевірки класифікаційного дерева: нам треба пропустити набір даних, що залишився через отриману модель і перевірити, наскільки результати класифікації будуть відрізнятися від реальних даних. Для цього в секції Test options виберіть опцію Supplied test set і натисніть на кнопку Set. Вкажіть файл bmw-test.arff, що містить решту 1500 даних, які не були включені в навчальний набір. При натисканні на кнопку Start WEKA пропустить тестові дані через модель і покаже результат роботи моделі. Давайте натиснемо на Start і перевіримо, що у нас вийшло.

  Рис 4. Перевірка класифікаційного дерева

Порівнюючи показник Correctly Classified Instances для тестового набору (55,7%) з цим же показником для навчального набору (59,1%), ми бачимо, що точність моделі для двох різних наборів даних приблизно однакова. Це означає, що нові дані, які будуть використовуватися в цій моделі в майбутньому, не знизять точність її роботи.

Однак, оскільки власне точність моделі досить низька (всього лише 60% даних класифіковано вірно), ми маємо повне право зупинитися і сказати: «На жаль, ця модель взагалі нікуди не годиться. Вона працює з точністю трохи вище 50%, з таким же успіхом ми можемо просто намагатися вгадати значення випадковим чином». І цей вислів буде цілком справедливим. Це приводить нас до розуміння дуже важливого факту: існують випадки, коли використання алгоритмів інтелектуального аналізу даних призводить до створення невдалої аналітичної моделі. Наш приклад - наочнй тому доказ, і саме для цього ми його розглянули.

Ми свідомо проробили всі кроки, необхідні для створення класифікаційного дерева на підставі даних, здавалося б, ідеально відповідних для класифікаційної моделі. Однак, результат, отриманий WEKA, вказує на помилковість наших міркувань. Класифікаційна модель не підходить для аналізу наявних у нас даних. Створена нами модель не дасть нам ніяких корисних відомостей, а її використання може призвести до прийняття неправильних рішень і втрати грошей.

Чи означає це, що наші дані взагалі не підлягають ніякому аналізу? Відповідь демонструє ще одну важливу особливість інтелектуального аналізу даних: використовуючи метод «найближчих сусідів», який ми детально розглянемо в майбутньому, ми створимо іншу модель на базі цього ж набору даних, з точністю роботи 88%. Отже, завжди необхідно пам'ятати, що для того, щоб витягти корисну інформацію з великого набору даних, вам слід вибрати відповідну модель.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]