Qruplaşdırma (Clustering) — Unsupervised Learning

Qruplaşdırma oxşar obyektlərin bir yerə toplanması prosesidir. Bu, nəzarətsiz maşın öyrənməsi texnikasının məqsədidir: verilənlərdəki oxşarlıqları müəyyən etmək və bənzər məlumat nöqtələrini bir qrupa toplamaqdır.

Niyə Qruplaşdırma istifadə olunur?

Bənzər varlıqları qruplaşdırmaq, müxtəlif qrupların xüsusiyyətlərini təhlil etməyə və onları daha yaxşı anlamağa kömək edir. Başqa sözlə, bu bizə müxtəlif qrupların əsasında yatan nümunələr barədə anlayış verəcək. Etiketlenməmiş məlumatların qruplaşdırılmasının çoxsaylı tətbiqləri mövcuddur, məsələn, siz müştərilərin müxtəlif qruplarını/segmentlərini müəyyən edə və hər bir qrupa gəliri maksimumlaşdırmaq üçün fərqli şəkildə marketinq edə bilərsiniz. Başqa bir nümunə isə oxşar mövzulara aid olan sənədləri qruplaşdırmaqdır.

“Qruplaşdırma, çox sayda dəyişənlə işlədiyiniz zaman verilənlərin ölçülərini azaltmaq üçün də istifadə olunur.”

Qruplaşdırma alqoritmləri necə işləyir?

Qruplaşdırma həyata keçirmək üçün bir çox alqoritm mövcuddur və bunlardan ən populyar və maşın öyrənməsində ən çox istifadə olunanlar bunlardır.

  1. K-mean Clustering

2. Hierarchical Clustering

K-mean Clustering

  1. Başlanğıc olaraq, K dəyəri daxil edilir, bu da tapmaq istədiyiniz qrupların sayını göstərir. Daha sonra, K təsadüfi mərkəz nöqtələri (centroid) məkanınızda yerləşdirilir.
  2. İndi, məlumat nöqtələri ilə mərkəz nöqtələr arasındakı Euklid məsafəsindən istifadə edərək, hər bir məlumat nöqtəsini ona ən yaxın olan qrupa təyin edirik.
  3. Qrup mərkəzlərini, həmin qrupa təyin olunmuş məlumat nöqtələrinin ortalaması olaraq yenidən hesablayırıq.
  4. 2 və 3-cü addımları, heç bir dəyişiklik baş verməyənə qədər təkrarlayırıq

İndi, bəlkə də, birinci addımda K dəyərini necə müəyyən edəcəyimi düşünürsünüz.

Bu məqsədlə istifadə olunan metodlardan biri “Elbow” (Bükülmə) metodudur. Bu metodda, bir sıra K dəyərlərində K-mean qruplaşdırmasını tətbiq edib, Y oxunda “açıqlanan varyans faizi”ni və X oxunda “K” dəyərini göstərən qrafik çəkirik.

Aşağıdakı şəkildən görəcəksiniz ki, 3-dən sonra daha çox qrup əlavə etdikdə verilənlər üzərində daha yaxşı bir modelləşdirmə əldə olunmur. İlk qrup çox məlumat əlavə edir, amma bir müddət sonra, əlavə edilən hər yeni qrupla əldə olunan fayda azalmağa başlayır.

Hierarchical Clustering

K-means qruplaşmasından fərqli olaraq, Hiyerarxik qruplaşma prosesinə hər bir məlumat nöqtəsini öz müstəqil qrupu kimi qəbul etməklə başlayır. Daha sonra, adından da göründüyü kimi, Hiyerarxik bir quruluş yaradır və növbəti mərhələdə ən yaxın iki məlumat nöqtəsini taparaq onları bir qrupda birləşdirir. Bu proses davamlı olaraq təkrarlanır və nəticədə daha böyük qruplar əmələ gəlir.

  1. Hər bir məlumat nöqtəsini öz müstəqil qrupuna təyin edirik.
  2. Evklid məsafəsindən istifadə edərək ən yaxın iki qrupun cütlüyünü tapırıq və onları tək bir qrupa birləşdiririk.
  3. Ən yaxın iki qrup arasındakı məsafəni hesablayaraq, bütün məlumatlar bir qrup halına gələnə qədər bu prosesi davam etdiririk.

Bu texnikada optimal qrupların sayını təyin etmək üçün üfüqi xətti çəkərək hansı şaquli xətlərin bir qrupu kəsmədən keçdiyini və maksimum məsafəni əhatə etdiyini müşahidə edə bilərsiniz.

Qruplaşdırma alqoritmalarını istifadə edərkən diqqət etməli olduğunuz əsas məqamlar:

  1. Dəyişənləri Standartlaşdırın: Dəyişənlərinizi hər zaman standartlaşdırın (məsələn, z-skala normallaşdırması ilə), beləliklə bütün xüsusiyyətlər məsafə hesablamalarında bərabər şəkildə töhfə verir.
  2. Çıxıntıları İdarə Edin: Çıxıntıları müəyyən edin və onlarla işləyin, çünki onlar qruplasdırmanın formalaşmasına həddindən artıq təsir göstərə bilər. Kəsmə və ya möhkəm miqyaslama kimi metodları nəzərdən keçirin.
  3. Bonus məsləhət: Seçdiyiniz alqoritmin növünü (məsələn, k-means, DBSCAN, Hiyerarxik) və onun məlumatın paylanması və səs-küyə necə yanaşdığını nəzərə alın.

Alas Academy təlim proqramlarımız kibertəhlükəsizlik sahəsində nəzəri bilikləri