Кластерний аналіз (на прикладі сегментації споживачів) частина 1

      Ми знаємо, що Земля — ​​це одна з 8 планет, які обертаються навколо Сонця. Сонце — це всього лише зірка серед близько 200 мільярдів зірок в галактиці Чумацький Шлях. Дуже важко усвідомити це число. Знаючи це, можна зробити припущення про кількість зірок у всесвіті — приблизно 4X10 ^ 22. Ми можемо бачити близько мільйона зірок на небі, хоча це всього лише мала частина від усього фактичної кількості зірок. Отже, у нас з'явилося два питання:
 
     
  1. Що таке галактика?
  2.  
  3. І який зв'язок між галактиками і темою статті (кластерний аналіз)
  4.  
 image
 
Галактика — це скупчення зірок, газу, пилу, планет і міжзоряних хмар. Зазвичай галактики нагадують спіральну або едептіческую фігуру. У просторі галактики відокремлені один від одного. Величезні чорні дірки найчастіше є центрами більшості галактик.
 
Як ми будемо обговорювати в наступному розділі, є багато спільного між галактиками і кластерним аналізом. Галактики існують в тривимірному просторі, кластерний аналіз — це багатовимірний аналіз, що проводиться в n-вимірному просторі.
 
Замітка: Чорна діра — це центр галактики. Ми будемо використовувати схожу ідею щодо центроїдів для кластерного аналізу.
 
 

Кластерний аналіз

Припустимо ви глава відділу з маркетингу і взаємодії з споживачами в телекомунікаційній компанії. Ви розумієте, що всі споживачі різні, і що вам необхідні різні стратегії для залучення різних споживачів. Ви оціните міць такого інструменту як сегментація клієнтів для оптимізації витрат. Для того, щоб освіжити ваші знання кластерного аналізу, розглянемо наступний приклад, який ілюструє 8 споживачів і середню тривалість їх розмов (локальних і міжнародних). Нижче дані:
 
 image
 
Для кращого сприйняття намалюємо графік, де по осі x буде відкладатися середня тривалість міжнародних розмов, а по осі y — середня тривалість локальних розмов. Нижче графік:
 
 image
 
Замітка: Це схоже на аналіз розташування зірок на нічному небі (тут зірки замінені споживачами). На додаток, замість тривимірного простору у нас двовимірне, задане тривалістю локальних і міжнародних розмов, як осі x і y.
Зараз, розмовляючи в термінах галактик, завдання формулюється так — знайти положення чорних дір; в кластерному аналізі вони називаються центроїди. Для виявлення центроїдів ми почнемо з того, що візьмемо довільні крапки як положення центроїдів.
 
 

Евклідова відстань для знаходження центроїди для Кластерів

У нашому випадку два центроїда (C1 і C2) ми довільним чином помістимо в точки з координатами (1, 1) і (3, 4). Чому ми обрали саме ці два центроїда? Візуальне відображення точок на графіку показує нам, що є два кластери, які ми будемо аналізувати. Однак, згодом ми побачимо, що відповідь на це питання буде не таким вже простим для великого набору даних.
Далі, ми виміряємо відстань між центроїди (C1 і C2) і всіма точками на графіку використовую формулу Евкліда для знаходження відстані між двома точками.
 
 image
 
Примітка: Відстань може бути обчислено і по інших формулах, наприклад,
 
     
  1. квадрат евклидова відстані — для надання ваги більш віддаленим один від одного об'єктах
  2.  
  3. Манхеттенський відстань — для зменшення впливу викидів
  4.  
  5. ступовий відстань — для збільшення / зменшення впливу по конкретних координатах
  6.  
  7. відсоток незгоди — для категоріальних даних
  8.  
  9. та ін
  10.  
Колонка 3 і 4 (Distance from C1 and C2) і є відстань, обчислена за цією формулою. Наприклад, для першого споживача
 
 image
 
Належність до центроїди (остання колонка) обчислюється за принципом близькості до центроїди (C1 і C2). Перший споживач ближче до центроїду № 1 (1.41 порівняно з 2.24) отже, належить до кластеру з центроїдом C1.
 
 image
 
Нижче графік, який ілюструє центроїди C1 і C2 (зображені у вигляді блакитного і помаранчевого ромбика). Споживачі зображені кольором відповідного центроїда, до кластеру якого вони були віднесені.
 
 image
 
Так як ми довільним чином вибрали центроїди, другим кроком ми зробити цей вибір ітеративним. Нова позиція центроїдів вибирається як середня для точок відповідного кластера. Так, наприклад, для першого центроїда (це споживачі 1, 2 і 3). Отже, нова координата x для центроїда C1 е то середня координат x цих споживачів (2 +1 +1) / 3 = 1.33. Ми отримаємо нові координати для C1 (1.33, 2.33) і C2 (4.4, 4.2). Новий графік нижче:
 
 image
 
Зрештою, ми помістимо центроїди в центр відповідного кластера. Графік нижче:
 
 image
 
Позиції наших чорних дір (центрів кластерів) у нашому прикладі C1 (1.75, 2.25) і C2 (4.75, 4.75). Два кластера вище подібні двом галактикам, розділеним в просторі один від одного.
 
Отже, розглянемо приклади далі. Нехай перед нами стоїть завдання по сегментації споживачів за двома параметрами: вік і дохід. Припустимо, що у нас є 2 споживача з віком 37 і 44 років і доходом в $ 90,000 і $ 62,000 відповідно. Якщо ми хочемо виміряти Евклідова відстань між точками (37, 90000) і (44, 62000), ми побачимо, що в даному випадку змінна дохід «домінує» над змінної вік і її зміна сильно позначається на відстані. Нам необхідна якась стратегія для вирішення даної проблеми, інакше наш аналіз дасть невірний результат. Рішення даної проблеми це приведення наших значень до порівнянних шкалами. Нормалізація — ось рішення нашої проблеми.
 
 

Нормалізація даних

Існує багато підходів для нормалізації даних. Наприклад, нормалізація мінімуму-максимуму. Для даної нормалізації використовується наступна формула
 image
в даному випадку X * — це нормалізоване значення, min і max — мінімальна і максимальна координата по всій множині X
(Примітка, дана формула має всі координати на відрізку [0; 1])
Розглянемо наш приклад, нехай максимальний дохід $ 130 000, а мінімальний — $ 45 000. Нормалізоване значення доходу для споживача A одно
 
 image
 
Ми зробимо це вправа для всіх точок для кожних змінних (координат). Дохід для другого споживача (62000) стане 0.2 після процедури нормалізації. Додатково, нехай мінімальний і максимальний віки 23 і 58 відповідно. Після нормалізації віки двох наших споживачів складе 0.4 і 0.6.
 
Легко побачити, що тепер всі наші дані розташовані між значеннями 0 і 1. Отже, у нас тепер є нормалізовані набори даних у порівнянних шкалах.
 
Запам'ятайте, перед процедурою кластерного аналізу необхідно провести нормалізацію.
 
Статтю знайшов kuznetsovin
  
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.