კლასტერიზაციის მეთოდები. მონაცემთა კლასტერიზაციის ალგორითმების მიმოხილვა

კლასტერული ანალიზი

მკვლევართა უმეტესობა მიდრეკილია იფიქროს, რომ პირველად ტერმინი „კლასტერული ანალიზი“ (ინგლისური) კასეტური- bunch, clot, bunch) შემოგვთავაზა მათემატიკოსმა რ.ტრიონმა. შემდგომში წარმოიშვა მთელი რიგი ტერმინები, რომლებიც ამჟამად განიხილება ტერმინის „კლასტერული ანალიზის“ სინონიმად: ავტომატური კლასიფიკაცია; ბოტრიოლოგია.

კლასტერული ანალიზი არის მრავალვარიანტული სტატისტიკური პროცედურა, რომელიც აგროვებს მონაცემებს, რომლებიც შეიცავს ინფორმაციას ობიექტების ნიმუშის შესახებ და შემდეგ აწყობს ობიექტებს შედარებით ჰომოგენურ ჯგუფებად (კლასტერებად) (Q-კლასტერირება, ან Q-ტექნიკა, თავად კლასტერული ანალიზი). კლასტერი - ელემენტების ჯგუფი, რომელსაც ახასიათებს საერთო საკუთრება, მთავარი მიზანი კლასტერული ანალიზი- ნიმუშში მსგავსი ობიექტების ჯგუფების პოვნა. კლასტერული ანალიზის გამოყენების სპექტრი ძალიან ფართოა: იგი გამოიყენება არქეოლოგიაში, მედიცინაში, ფსიქოლოგიაში, ქიმიაში, ბიოლოგიაში, საჯარო მმართველობა, ფილოლოგია, ანთროპოლოგია, მარკეტინგი, სოციოლოგია და სხვა დისციპლინები. თუმცა, გამოყენების უნივერსალურობამ გამოიწვია დიდი რაოდენობით შეუთავსებელი ტერმინების, მეთოდებისა და მიდგომების გაჩენა, რაც ართულებს კლასტერული ანალიზის ერთმნიშვნელოვნად გამოყენებას და თანმიმდევრულ ინტერპრეტაციას. ორლოვი A.I გვთავაზობს განასხვავოს შემდეგნაირად:

მიზნები და პირობები

კლასტერული ანალიზი ასრულებს შემდეგს მთავარი მიზნები:

  • ტიპოლოგიის ან კლასიფიკაციის შემუშავება.
  • ობიექტების დაჯგუფების სასარგებლო კონცეპტუალური სქემების შესწავლა.
  • ჰიპოთეზების გენერირება მონაცემთა ძიების საფუძველზე.
  • ჰიპოთეზის ტესტირება ან კვლევა იმის დასადგენად, არის თუ არა ამა თუ იმ გზით იდენტიფიცირებული ტიპები (ჯგუფები) რეალურად არსებულ მონაცემებში.

შესწავლის საგნის მიუხედავად, კლასტერული ანალიზის გამოყენება მოიცავს შემდეგი ნაბიჯები:

  • კლასტერიზაციისთვის ნიმუშის შერჩევა. მნიშვნელობა ის არის, რომ აზრი აქვს მხოლოდ რაოდენობრივი მონაცემების დაჯგუფებას.
  • ცვლადების სიმრავლის განსაზღვრა, რომლითაც შეფასდება ნიმუშში არსებული ობიექტები, ანუ ფუნქციების სივრცე.
  • ობიექტებს შორის მსგავსების (ან განსხვავების) კონკრეტული საზომის მნიშვნელობების გამოთვლა.
  • კლასტერული ანალიზის მეთოდის გამოყენება მსგავსი ობიექტების ჯგუფების შესაქმნელად.
  • კასეტური გადაწყვეტის შედეგების სანდოობის შემოწმება.

კლასტერული ანალიზი წარმოგიდგენთ შემდეგს მონაცემთა მოთხოვნები:

  1. ინდიკატორები არ უნდა იყოს დაკავშირებული ერთმანეთთან;
  2. ინდიკატორები არ უნდა ეწინააღმდეგებოდეს გაზომვის თეორიას;
  3. ინდიკატორების განაწილება უნდა იყოს ნორმალურთან ახლოს;
  4. ინდიკატორები უნდა აკმაყოფილებდეს „სტაბილურობის“ მოთხოვნას, რაც ნიშნავს შემთხვევითი ფაქტორებით მათ მნიშვნელობებზე გავლენის არარსებობას;
  5. ნიმუში უნდა იყოს ერთგვაროვანი და არ შეიცავდეს „განსხვავებულებს“.

თქვენ შეგიძლიათ იპოვოთ მონაცემების ორი ფუნდამენტური მოთხოვნის აღწერა - ჰომოგენურობა და სისრულე:

ჰომოგენურობა მოითხოვს, რომ ცხრილში წარმოდგენილი ყველა ერთეული იყოს ერთი და იგივე ბუნების. სისრულის მოთხოვნა არის ის, რომ კომპლექტი მედა წარმოადგინა განსახილველი ფენომენის გამოვლინების სრული ინვენტარიზაცია. თუ გავითვალისწინებთ ცხრილს, რომელშიც მე- მთლიანობა და - ცვლადების ნაკრები, რომელიც აღწერს ამ პოპულაციას, ის უნდა იყოს წარმომადგენლობითი ნიმუში შესწავლილი პოპულაციისა და მახასიათებლების სისტემადან უნდა მისცეს ინდივიდების დამაკმაყოფილებელი ვექტორული წარმოდგენა მემკვლევარის გადმოსახედიდან.

თუ კლასტერულ ანალიზს წინ უძღვის ფაქტორული ანალიზი, მაშინ ნიმუში არ საჭიროებს „შეკეთებას“ - აღნიშნული მოთხოვნები ავტომატურად სრულდება თავად ფაქტორების მოდელირების პროცედურის საშუალებით (არის კიდევ ერთი უპირატესობა - z- სტანდარტიზაცია ნიმუშისთვის უარყოფითი შედეგების გარეშე; თუ იგი ხორციელდება უშუალოდ კასეტური ანალიზისთვის, ამან შეიძლება გამოიწვიოს ჯგუფების დაყოფის სიცხადის შემცირება). IN წინააღმდეგ შემთხვევაშინიმუშის კორექტირებაა საჭირო.

კლასტერიზაციის პრობლემების ტიპოლოგია

შეყვანის ტიპები

თანამედროვე მეცნიერებაში გამოიყენება შეყვანის მონაცემების დამუშავების რამდენიმე ალგორითმი. ანალიზი მახასიათებლებზე დაფუძნებული ობიექტების შედარებით (ყველაზე გავრცელებული ბიოლოგიური მეცნიერებები) ეწოდება - ანალიზის ტიპი და ობიექტებზე დაფუძნებული მახასიათებლების შედარების შემთხვევაში - - ანალიზის ტიპი. არსებობს ჰიბრიდული ტიპის ანალიზის გამოყენების მცდელობები (მაგალითად, RQ- ანალიზი), მაგრამ ეს მეთოდოლოგია ჯერ არ არის სათანადოდ შემუშავებული.

კლასტერიზაციის მიზნები

  • მონაცემთა გაგება კლასტერის სტრუქტურის იდენტიფიცირებით. ნიმუშის მსგავსი ობიექტების ჯგუფებად დაყოფა შესაძლებელს ხდის მონაცემთა შემდგომი დამუშავებისა და გადაწყვეტილების მიღების გამარტივებას თითოეულ კლასტერზე ანალიზის განსხვავებული მეთოდის გამოყენებით („დაყავი და იბატონე“ სტრატეგია).
  • მონაცემთა შეკუმშვა. თუ ორიგინალური ნიმუში ზედმეტად დიდია, მაშინ შეგიძლიათ შეამციროთ იგი და დატოვოთ ერთი ყველაზე ტიპიური წარმომადგენელი თითოეული კლასტერიდან.
  • სიახლის გამოვლენა სიახლის გამოვლენა). იდენტიფიცირებულია ატიპიური ობიექტები, რომლებიც არ შეიძლება მიმაგრდეს რომელიმე კლასტერზე.

პირველ შემთხვევაში, ისინი ცდილობენ მტევანთა რაოდენობა შეამცირონ. მეორე შემთხვევაში, უფრო მნიშვნელოვანია, რომ უზრუნველყოს ობიექტების მსგავსების მაღალი ხარისხი თითოეულ კლასტერში და შეიძლება იყოს ნებისმიერი რაოდენობის კლასტერები. მესამე შემთხვევაში, ყველაზე საინტერესო ინდივიდუალური ობიექტებია, რომლებიც არ ჯდება არცერთ კლასტერში.

ყველა ამ შემთხვევაში შეიძლება გამოვიყენოთ იერარქიული კლასტერირება, როდესაც დიდი კლასტერები იყოფა უფრო პატარაებად, რომლებიც თავის მხრივ იყოფიან კიდევ უფრო პატარაებად და ა.შ. ასეთ პრობლემებს ტაქსონომიურ პრობლემებს უწოდებენ. ტაქსონომია იწვევს ხის მსგავს იერარქიულ სტრუქტურას. ამ შემთხვევაში, თითოეულ ობიექტს ახასიათებს ყველა კლასტერის ჩამოთვლა, რომელსაც ის ეკუთვნის, როგორც წესი, დიდიდან პატარამდე.

კლასტერიზაციის მეთოდები

არ არსებობს კლასტერიზაციის მეთოდების ზოგადად მიღებული კლასიფიკაცია, მაგრამ შეიძლება აღინიშნოს V.S. Berikov და G.S. Lbov-ის მყარი მცდელობა. Შეჯამება სხვადასხვა კლასიფიკაციაკლასტერიზაციის მეთოდები, შემდეგ შეიძლება განვასხვავოთ რამდენიმე ჯგუფი (ზოგიერთი მეთოდი შეიძლება დაიყოს რამდენიმე ჯგუფად ერთდროულად და ამიტომ შემოთავაზებულია განიხილოს ეს ტიპიფიკაცია, როგორც გარკვეული მიახლოება კლასტერიზაციის მეთოდების რეალურ კლასიფიკაციასთან):

  1. სავარაუდო მიდგომა. ვარაუდობენ, რომ თითოეული განხილული ობიექტი ეკუთვნის k კლასებიდან ერთ-ერთს. ზოგიერთი ავტორი (მაგალითად, ა.ი. ორლოვი) თვლის, რომ ეს ჯგუფი საერთოდ არ ეხება კლასტერიზაციას და ეწინააღმდეგება მას "დისკრიმინაციის" სახელწოდებით, ანუ ობიექტების მინიჭების არჩევანს ერთ-ერთ ცნობილ ჯგუფზე (სავარჯიშო ნიმუშები).
  2. ხელოვნური ინტელექტის სისტემებზე დაფუძნებული მიდგომები. ძალიან პირობითი ჯგუფია, რადგან AI მეთოდი ბევრია და მეთოდოლოგიურად ძალიან განსხვავებულია.
  3. ლოგიკური მიდგომა. დენდროგრამა აგებულია გადაწყვეტილების ხის გამოყენებით.
  4. გრაფიკის თეორიული მიდგომა.
    • გრაფიკის კლასტერიზაციის ალგორითმები
  5. იერარქიული მიდგომა. ჩადგმული ჯგუფების (სხვადასხვა რიგის კლასტერების) არსებობა ვარაუდობენ. ალგორითმები, თავის მხრივ, იყოფა აგლომერატიულ (გამაერთიანებელ) და გამყოფად (გამყოფად). მახასიათებლების რაოდენობის მიხედვით ზოგჯერ განასხვავებენ კლასიფიკაციის მონოთეტურ და პოლითეტურ მეთოდებს.
    • იერარქიული დაყოფის კლასტერირება ან ტაქსონომია. კლასტერიზაციის პრობლემები განიხილება რაოდენობრივი ტაქსონომიით.
  6. სხვა მეთოდები. არ შედის წინა ჯგუფებში.
    • სტატისტიკური კლასტერიზაციის ალგორითმები
    • კლასტერიზატორების ანსამბლი
    • KRAB ოჯახის ალგორითმები
    • ალგორითმი დაფუძნებული გაცრილის მეთოდზე
    • DBSCAN და სხვ.

4 და 5 მიდგომები ზოგჯერ გაერთიანებულია სტრუქტურული ან გეომეტრიული მიდგომის სახელით, რომელსაც აქვს სიახლოვის უფრო ფორმალიზებული კონცეფცია. ჩამოთვლილ მეთოდებს შორის მნიშვნელოვანი განსხვავებების მიუხედავად, ისინი ყველა ეყრდნობა ორიგინალს. კომპაქტურობის ჰიპოთეზა": ობიექტის სივრცეში, ყველა ახლო ობიექტი უნდა ეკუთვნოდეს ერთ კლასტერს და ყველა სხვადასხვა ობიექტებიშესაბამისად, ისინი უნდა იყვნენ სხვადასხვა კლასტერში.

კლასტერიზაციის პრობლემის ფორმალური ფორმულირება

მოდით იყოს ობიექტების კომპლექტი, და მოდით იყოს მტევანთა რიცხვების (სახელები, ეტიკეტები) სიმრავლე. ობიექტებს შორის მანძილის ფუნქცია მითითებულია. არსებობს ობიექტების სასრული სასწავლო ნიმუში. საჭიროა ნიმუშის დაყოფა ცალსახად ე.წ მტევანი, ისე, რომ თითოეული კლასტერი შედგება ობიექტებისგან, რომლებიც მსგავსია მეტრიკაში, ხოლო სხვადასხვა კლასტერების ობიექტები მნიშვნელოვნად განსხვავდება. ამ შემთხვევაში, თითოეულ ობიექტს ენიჭება კლასტერული ნომერი.

კლასტერიზაციის ალგორითმიარის ფუნქცია, რომელიც ანიჭებს კლასტერულ ნომერს ნებისმიერ ობიექტს. ზოგიერთ შემთხვევაში, ნაკრები წინასწარ არის ცნობილი, მაგრამ უფრო ხშირად ამოცანაა კლასტერების ოპტიმალური რაოდენობის განსაზღვრა, ამა თუ იმ თვალსაზრისით. ხარისხის კრიტერიუმებიკლასტერირება.

კლასტერირება (უკონტროლო სწავლება) განსხვავდება კლასიფიკაციისგან (ზედამხედველობითი სწავლა) იმით, რომ ორიგინალური ობიექტების ეტიკეტები თავდაპირველად არ არის მითითებული და თავად ნაკრები შეიძლება უცნობიც კი იყოს.

კლასტერიზაციის პრობლემის გადაწყვეტა ფუნდამენტურად ორაზროვანია და ამის რამდენიმე მიზეზი არსებობს (როგორც რამდენიმე ავტორს მიაჩნია):

  • აშკარად არ არსებობს საუკეთესო კრიტერიუმიკლასტერიზაციის ხარისხი. Ცნობილი მთელი ხაზიევრისტიკული კრიტერიუმები, ისევე როგორც მთელი რიგი ალგორითმები, რომლებსაც არ გააჩნიათ მკაფიოდ განსაზღვრული კრიტერიუმი, მაგრამ ახორციელებენ საკმაოდ გონივრულ კლასტერირებას „კონსტრუქციით“. ყველა მათგანს შეუძლია სხვადასხვა შედეგის მოტანა. ამიტომ, კლასტერიზაციის ხარისხის დასადგენად საჭიროა ექსპერტი საგნობრივი სფერო, რამაც შეიძლება შეაფასოს კლასტერების იდენტიფიცირების მნიშვნელობა.
  • კლასტერების რაოდენობა, როგორც წესი, წინასწარ უცნობია და დადგენილია გარკვეული სუბიექტური კრიტერიუმის მიხედვით. ეს ეხება მხოლოდ დისკრიმინაციის მეთოდებს, ვინაიდან კლასტერების მეთოდებში კლასტერების იდენტიფიცირება ხდება ფორმალიზებული მიდგომით, რომელიც დაფუძნებულია სიახლოვის ზომებზე.
  • კლასტერიზაციის შედეგი მნიშვნელოვნად არის დამოკიდებული მეტრიკაზე, რომლის არჩევაც, როგორც წესი, ასევე სუბიექტურია და განისაზღვრება ექსპერტის მიერ. მაგრამ აღსანიშნავია, რომ არსებობს მთელი რიგი რეკომენდაციები სხვადასხვა ამოცანებისთვის სიახლოვის ზომების არჩევისთვის.

განაცხადი

ბიოლოგიაში

ბიოლოგიაში კლასტერიზაციას ყველაზე მეტად ბევრი გამოყენება აქვს სხვადასხვა სფეროებში. მაგალითად, ბიოინფორმატიკაში იგი გამოიყენება ურთიერთდაკავშირებული გენების რთული ქსელების გასაანალიზებლად, რომლებიც ზოგჯერ შედგება ასობით ან თუნდაც ათასობით ელემენტისგან. კლასტერული ანალიზი შესაძლებელს ხდის შესწავლილი სისტემის ქვექსელების, ბოსტნეულების, ჰაბების და სხვა ფარული თვისებების იდენტიფიცირებას, რაც საბოლოო ჯამში შესაძლებელს ხდის გაირკვეს თითოეული გენის წვლილი შესწავლილი ფენომენის ფორმირებაში.

ეკოლოგიის დარგში იგი ფართოდ გამოიყენება ორგანიზმების სივრცით ჰომოგენური ჯგუფების, თემების და ა.შ. იდენტიფიცირებისთვის. ნაკლებად ხშირად, კლასტერული ანალიზის მეთოდები გამოიყენება დროთა განმავლობაში თემების შესასწავლად. თემის სტრუქტურის ჰეტეროგენულობა იწვევს კლასტერული ანალიზის არატრივიალური მეთოდების გაჩენას (მაგალითად, ჩეკანოვსკის მეთოდი).

ზოგადად, აღსანიშნავია, რომ ისტორიულად, ბიოლოგიაში სიახლოვის საზომად ხშირად გამოიყენება მსგავსების საზომები და არა განსხვავების (მანძილის) საზომები.

სოციოლოგიაში

შედეგების გაანალიზებისას სოციოლოგიური კვლევარეკომენდირებულია ანალიზის ჩატარება იერარქიული აგლომერაციული ოჯახის მეთოდების გამოყენებით, კერძოდ Ward მეთოდით, რომლის დროსაც ოპტიმიზებულია მინიმალური დისპერსია კლასტერებში, რის შედეგადაც იქმნება დაახლოებით თანაბარი ზომის კლასტერები. უორდის მეთოდი ყველაზე შესაფერისია სოციოლოგიური მონაცემების გასაანალიზებლად. განსხვავების უკეთესი საზომი არის კვადრატული ევკლიდური მანძილი, რომელიც ხელს უწყობს კლასტერების კონტრასტის გაზრდას. იერარქიული კლასტერული ანალიზის მთავარი შედეგია დენდროგრამა ან „ყინულის დიაგრამა“. მისი ინტერპრეტაციისას მკვლევარებს ისეთივე პრობლემის წინაშე დგანან, როგორიც ფაქტორული ანალიზის შედეგების ინტერპრეტაცია - კლასტერების იდენტიფიცირების ცალსახა კრიტერიუმების არარსებობა. რეკომენდებულია ორი ძირითადი მეთოდის გამოყენება - დენდროგრამის ვიზუალური ანალიზი და სხვადასხვა მეთოდით შესრულებული კლასტერიზაციის შედეგების შედარება.

დენდროგრამის ვიზუალური ანალიზი გულისხმობს ხის „მოჭრას“ ნიმუშის ელემენტების მსგავსების ოპტიმალურ დონეზე. მიზანშეწონილია „ყურძნის ტოტის მოჭრა“ (M. S. Oldenderfer და R. K. Blashfield-ის ტერმინოლოგია) Rescaled Distance Cluster Combine-ის სკალის მე-5 დონეზე, რითაც მიიღწევა მსგავსების 80%-იანი დონე. თუ ამ ლეიბლის გამოყენებით კლასტერების იდენტიფიცირება რთულია (რამდენიმე პატარა კლასტერი გაერთიანდება ერთ დიდში), მაშინ შეგიძლიათ აირჩიოთ სხვა ლეიბლი. ეს ტექნიკა შემოთავაზებულია Oldenderfer-ისა და Blashfield-ის მიერ.

ახლა ჩნდება კითხვა მიღებული კლასტერული გადაწყვეტის მდგრადობის შესახებ. არსებითად, კლასტერიზაციის სტაბილურობის შემოწმება მისი სანდოობის შემოწმებაზე მოდის. აქ არის ცერის წესი - სტაბილური ტიპოლოგია შენარჩუნებულია კლასტერიზაციის მეთოდების შეცვლისას. იერარქიული კლასტერული ანალიზის შედეგების შემოწმება შესაძლებელია კლასტერული განმეორებითი ანალიზით k-means მეთოდის გამოყენებით. თუ რესპონდენტთა ჯგუფების შედარებით კლასიფიკაციას აქვს 70%-ზე მეტი დამთხვევის მაჩვენებელი (შემთხვევების 2/3-ზე მეტი), მაშინ მიიღება კლასტერული გადაწყვეტილება.

შეუძლებელია ხსნარის ადეკვატურობის შემოწმება სხვა ტიპის ანალიზის გარეშე. ყოველ შემთხვევაში, თეორიული თვალსაზრისით, ეს პრობლემა არ მოგვარებულა. Oldenderfer და Blashfield-ის კლასიკური ნაშრომი, კლასტერული ანალიზი, დეტალურად განიხილავს და საბოლოოდ უარყოფს გამძლეობის ტესტირების დამატებით ხუთ მეთოდს:

კომპიუტერულ მეცნიერებაში

  • ძიების შედეგების დაჯგუფება - გამოიყენება შედეგების „ინტელექტუალური“ დაჯგუფებისთვის ფაილების, ვებსაიტების და სხვა ობიექტების ძიებისას, რაც მომხმარებელს აძლევს შესაძლებლობას სწრაფად ნავიგაცია, შეარჩიოს აშკარად უფრო შესაბამისი ქვეჯგუფი და გამორიცხოს აშკარად ნაკლებად შესაბამისი - რაც შეიძლება გაზარდოს ინტერფეისის გამოყენებადობა შედარებით მარტივი სიის გამოშვებასთან შესაბამისობის მიხედვით.
    • Clusty არის კლასტერული საძიებო სისტემა Vivísimo-სგან
    • ნიგმა - რუსული საძიებო სისტემა შედეგების ავტომატური დაჯგუფებით
    • Quintura - ვიზუალური კლასტერირება საკვანძო სიტყვების ღრუბლის სახით
  • გამოსახულების სეგმენტაცია გამოსახულების სეგმენტაცია) - კლასტერირება შეიძლება გამოყენებულ იქნას ციფრული გამოსახულების ცალკეულ ზონებად გასაყოფად კიდეების ამოცნობის მიზნით. კიდეების გამოვლენა) ან ობიექტის ამოცნობა.
  • Მონაცემების მოპოვება მონაცემების მოპოვება)- კლასტერირება მონაცემთა მოპოვებაში იძენს მნიშვნელობას, როდესაც ის მოქმედებს როგორც მონაცემთა ანალიზის ერთ-ერთი ეტაპი და სრული ანალიტიკური გადაწყვეტის აგება. ანალიტიკოსისთვის ხშირად უფრო ადვილია მსგავსი ობიექტების ჯგუფების იდენტიფიცირება, მათი მახასიათებლების შესწავლა და თითოეული ჯგუფისთვის ცალკე მოდელის შექმნა, ვიდრე ერთის შექმნა. ზოგადი მოდელიყველა მონაცემისთვის. ეს ტექნიკა მუდმივად გამოიყენება მარკეტინგში, კლიენტების, მყიდველების, პროდუქტების ჯგუფების იდენტიფიცირება და თითოეული მათგანისთვის ცალკე სტრატეგიის შემუშავება.

იხილეთ ასევე

შენიშვნები

ბმულები

Რუსულად
  • www.MachineLearning.ru - პროფესიონალური ვიკი რესურსი, რომელიც ეძღვნება მანქანათმცოდნეობას და მონაცემთა მოპოვებას
Ინგლისურად
  • COMPACT - შედარებითი პაკეტი კლასტერული შეფასებისთვის. უფასო Matlab პაკეტი, 2006 წელი.
  • პ.ბერხინი, კლასტერული მონაცემთა მოპოვების ტექნიკის კვლევა, Accrue Software, 2002 წ.
  • ჯეინი, მერტი და ფლინი: მონაცემთა კლასტერირება: მიმოხილვა,ACM კომპ. Surv., 1999 წ.
  • იერარქიული, k-საშუალებების და ბუნდოვანი c-საშუალების კიდევ ერთი პრეზენტაციისთვის იხილეთ კლასტერიზაციის ეს შესავალი. ასევე აქვს ახსნა გაუსელების ნარევზე.
  • დევიდ დოუ ნარევი მოდელირების გვერდი- სხვა კლასტერინგი და ნარევი მოდელის ბმულები.
  • გაკვეთილი კლასტერიზაციის შესახებ
  • ონლაინ სახელმძღვანელო: ინფორმაციის თეორია, დასკვნა და სწავლის ალგორითმები, ავტორი დევიდ ჯ. MacKay მოიცავს თავებს k-საშუალებების კლასტერირებაზე, soft k-means კლასტერირებაზე და წარმოებულებს E-M ალგორითმის ჩათვლით და E-M ალგორითმის განსხვავებული ხედვა.
  • „თვითორგანიზებული გენი“, გაკვეთილი, რომელიც ხსნის კლასტერირებას კონკურენტული სწავლისა და თვითორგანიზების რუქების მეშვეობით.
  • kernlab - R პაკეტი ბირთვზე დაფუძნებული მანქანათმცოდნეობისთვის (მოიცავს სპექტრალური კლასტერირების განხორციელებას)
  • სახელმძღვანელო - გაკვეთილი კლასტერული ალგორითმების დანერგვით (k-საშუალებები, fuzzy-c-means, იერარქიული, გაუსიანების ნარევი) + რამდენიმე ინტერაქტიული დემო (java აპლეტი)
  • მონაცემთა მოპოვების პროგრამული უზრუნველყოფა - მონაცემთა მოპოვების პროგრამული უზრუნველყოფა ხშირად იყენებს კლასტერიზაციის ტექნიკას.
  • Java Competitive Learning Application უკონტროლო ნერვული ქსელების კომპლექტი კლასტერისთვის. ჯავაზე დაწერილი. შეავსეთ ყველა წყარო კოდით.
  • მანქანათმცოდნეობის პროგრამული უზრუნველყოფა - ასევე შეიცავს უამრავ კლასტერულ პროგრამას.

სალამი!

Მისი სადიპლომო ნამუშევარიჩავატარე მონაცემთა კლასტერიზაციის ალგორითმების მიმოხილვა და შედარებითი ანალიზი. ვიფიქრე, რომ უკვე შეგროვებული და დამუშავებული მასალა შეიძლება ვინმესთვის საინტერესო და სასარგებლო ყოფილიყო.
მე ვისაუბრე იმაზე, თუ რა არის კლასტერირება სტატიაში. ნაწილობრივ გავიმეორებ ალექსანდრეს სიტყვებს და ნაწილობრივ დავამატებ. ასევე ამ სტატიის ბოლოს მსურველებს შეუძლიათ გაეცნონ მასალებს ბიბლიოგრაფიაში მოცემული ბმულების საშუალებით.

ასევე ვცდილობდი პრეზენტაციის მშრალი „კურსდამთავრებული“ სტილი უფრო ჟურნალისტურ სტილში მომეყვანა.

კლასტერიზაციის ცნება

კლასტერირება (ან კლასტერული ანალიზი) არის ობიექტების ნაკრების ჯგუფებად დაყოფის ამოცანა, რომელსაც ეწოდება კლასტერები. თითოეულ ჯგუფში უნდა იყოს „მსგავსი“ ობიექტები და სხვადასხვა ჯგუფის ობიექტები მაქსიმალურად განსხვავებული უნდა იყოს. კლასტერიზაციასა და კლასიფიკაციას შორის მთავარი განსხვავება ისაა, რომ ჯგუფების სია არ არის მკაფიოდ განსაზღვრული და განისაზღვრება ალგორითმის მუშაობის დროს.

ზოგადად, კლასტერული ანალიზის გამოყენება შემდეგ ეტაპებზე მოდის:

  1. ობიექტების ნიმუშის შერჩევა დაჯგუფებისთვის.
  2. ცვლადების ნაკრების განსაზღვრა, რომლითაც შეფასდება ნიმუშში არსებული ობიექტები. საჭიროების შემთხვევაში, ცვლადების მნიშვნელობების ნორმალიზება.
  3. მსგავსების გაზომვის მნიშვნელობების გაანგარიშება ობიექტებს შორის.
  4. კლასტერული ანალიზის მეთოდის გამოყენება მსგავსი ობიექტების (კლასტერების) ჯგუფების შესაქმნელად.
  5. ანალიზის შედეგების პრეზენტაცია.
შედეგების მიღებისა და ანალიზის შემდეგ შესაძლებელია შერჩეული მეტრული და კლასტერული მეთოდის კორექტირება ოპტიმალური შედეგის მიღებამდე.

მანძილის ზომები

მაშ, როგორ განვსაზღვროთ ობიექტების „მსგავსება“? პირველ რიგში, თქვენ უნდა შექმნათ მახასიათებლების ვექტორი თითოეული ობიექტისთვის - როგორც წესი, ეს არის ნაკრები რიცხვითი მნიშვნელობებიმაგალითად, ადამიანის სიმაღლე და წონა. თუმცა არის ალგორითმებიც, რომლებიც მუშაობენ ხარისხობრივი (ე.წ. კატეგორიული) მახასიათებლებით.

მას შემდეგ რაც განვსაზღვრავთ მახასიათებლის ვექტორს, ნორმალიზება შეიძლება განხორციელდეს ისე, რომ ყველა კომპონენტი თანაბრად წვლილი შეიტანოს „დისტანციის“ გაანგარიშებაში. ნორმალიზაციის პროცესში, ყველა მნიშვნელობა მიყვანილია გარკვეულ დიაპაზონში, მაგალითად, [-1, -1] ან .

დაბოლოს, თითოეული წყვილი ობიექტისთვის იზომება მათ შორის "მანძილი" - მსგავსების ხარისხი. არსებობს მრავალი მეტრიკა, აქ არის მხოლოდ ძირითადი:

მეტრიკის არჩევანი მთლიანად მკვლევარს ეკისრება, ვინაიდან კლასტერიზაციის შედეგები შეიძლება მნიშვნელოვნად განსხვავდებოდეს სხვადასხვა ზომის გამოყენებისას.

ალგორითმების კლასიფიკაცია

ჩემთვის მე გამოვყავი კლასტერიზაციის ალგორითმების ორი ძირითადი კლასიფიკაცია.
  1. იერარქიული და ბრტყელი.
    იერარქიული ალგორითმები (ასევე უწოდებენ ტაქსონომიურ ალგორითმებს) ქმნიან ნიმუშის არა მხოლოდ ერთ დანაყოფის ნაწილებად, არამედ წყობილი დანაყოფების სისტემას. რომ. შედეგად ვიღებთ მტევნების ხეს, რომლის ფესვი მთლიანი ნიმუშია, ხოლო ფოთლები ყველაზე პატარა მტევნებია.
    ბრტყელი ალგორითმები ქმნიან ობიექტების ერთ დაყოფას კლასტერებად.
  2. ნათელი და ბუნდოვანი.
    წმინდა (ან გადახურვის გარეშე) ალგორითმები თითოეულ ნიმუშის ობიექტს ანიჭებს კლასტერულ ნომერს, ე.ი. თითოეული ობიექტი ეკუთვნის მხოლოდ ერთ კლასტერს. ბუნდოვანი (ან გადაკვეთის) ალგორითმები თითოეულ ობიექტს ანიჭებს კომპლექტს რეალური ღირებულებები, რომელიც აჩვენებს ობიექტის მტევანთან ურთიერთობის ხარისხს. იმათ. თითოეული ობიექტი მიეკუთვნება თითოეულ კლასტერს გარკვეული ალბათობით.

კლასტერების შერწყმა

იერარქიული ალგორითმების გამოყენების შემთხვევაში ჩნდება კითხვა, როგორ გავაერთიანოთ კლასტერები ერთმანეთთან, როგორ გამოვთვალოთ მათ შორის „მანძილი“. არსებობს რამდენიმე მეტრიკა:
  1. ერთი ბმული (უახლოესი მეზობლების მანძილი)
    ამ მეთოდით, მანძილი ორ კლასტერს შორის განისაზღვრება მანძილით ორ უახლოეს ობიექტს (უახლოეს მეზობლებს) შორის სხვადასხვა კლასტერში. შედეგად მიღებული მტევანი მიდრეკილია ჯაჭვების ფორმირებისკენ.
  2. სრული კავშირი (ყველაზე შორეული მეზობლების მანძილი)
    ამ მეთოდით, კლასტერებს შორის მანძილი განისაზღვრება ყველაზე დიდი მანძილით ნებისმიერ ორ ობიექტს შორის სხვადასხვა კლასტერში (ანუ ყველაზე შორეულ მეზობლებს შორის). ეს მეთოდი ჩვეულებრივ ძალიან კარგად მუშაობს, როდესაც ობიექტები ცალკე ჯგუფებიდან მოდის. თუ მტევანებს აქვთ წაგრძელებული ფორმა ან მათი ბუნებრივი ტიპი "ჯაჭვია", მაშინ ეს მეთოდი უვარგისია.
  3. შეუწონავი წყვილი საშუალო
    ამ მეთოდით, მანძილი ორ განსხვავებულ კლასტერს შორის გამოითვლება, როგორც საშუალო მანძილი მათში არსებული ყველა წყვილი ობიექტის შორის. მეთოდი ეფექტურია ობიექტების ფორმირებისას სხვადასხვა ჯგუფებითუმცა, ის ერთნაირად კარგად მუშაობს გაფართოებული ("ჯაჭვის" ტიპის) კლასტერების შემთხვევაში.
  4. შეწონილი წყვილი საშუალო
    მეთოდი იდენტურია შეუწონავი წყვილის საშუალო მეთოდის, გარდა იმისა, რომ გამოთვლებში შეწონვის ფაქტორად გამოიყენება შესაბამისი კლასტერების ზომა (ანუ მათში შემავალი ობიექტების რაოდენობა). Ამიტომაც ამ მეთოდითუნდა იქნას გამოყენებული, როდესაც მოსალოდნელია მტევნის არათანაბარი ზომები.
  5. არაწონიანი ცენტროიდის მეთოდი
    ამ მეთოდით, მანძილი ორ კლასტერს შორის განისაზღვრება, როგორც მანძილი მათ სიმძიმის ცენტრებს შორის.
  6. შეწონილი ცენტროიდური მეთოდი (მედიანა)
    ეს მეთოდი წინა მეთოდის იდენტურია, გარდა იმისა, რომ გაანგარიშება იყენებს წონებს კლასტერის ზომებს შორის განსხვავებების დასადგენად. ამიტომ, თუ არსებობს ან არსებობს ეჭვმიტანილი მნიშვნელოვანი განსხვავებები კლასტერის ზომებში, ეს მეთოდი სასურველია წინაზე.

ალგორითმების მიმოხილვა

იერარქიული კლასტერიზაციის ალგორითმები
იერარქიულ კლასტერიზაციის ალგორითმებს შორის არის ორი ძირითადი ტიპი: ქვემოდან ზევით და ზემოდან ქვევით. ზემოდან ქვევით ალგორითმები მუშაობს ზემოდან ქვევით პრინციპით: დასაწყისში ყველა ობიექტი მოთავსებულია ერთ კლასტერში, რომელიც შემდეგ იყოფა პატარა და პატარა კლასტერებად. უფრო გავრცელებულია ქვემოდან ზევით ალგორითმები, რომლებიც იწყება თითოეული ობიექტის ცალკეულ კლასტერში მოთავსებით და შემდეგ კლასტერების გაერთიანებით უფრო და უფრო დიდებად, სანამ ნიმუშის ყველა ობიექტი ერთ კლასტერში მოხვდება. ამ გზით, აგებულია წყობილი დანაყოფების სისტემა. ასეთი ალგორითმების შედეგები ჩვეულებრივ წარმოდგენილია ხის სახით - დენდროგრამა. ასეთი ხის კლასიკური მაგალითია ცხოველებისა და მცენარეების კლასიფიკაცია.

კლასტერებს შორის მანძილის გამოსათვლელად, ყველა ყველაზე ხშირად იყენებს ორ დისტანციას: ერთ ბმულს ან სრულ ბმულს (იხილეთ კლასტერებს შორის მანძილის ზომების მიმოხილვა).

იერარქიული ალგორითმების მინუსი არის სრული დანაყოფების სისტემა, რომელიც შეიძლება არასაჭირო იყოს პრობლემის გადაჭრის კონტექსტში.

კვადრატული შეცდომის ალგორითმები
კლასტერიზაციის პრობლემა შეიძლება ჩაითვალოს, როგორც ობიექტების ოპტიმალური დაყოფის აგება ჯგუფებად. ამ შემთხვევაში, ოპტიმალურობა შეიძლება განისაზღვროს, როგორც დანაყოფის ძირის საშუალო კვადრატული შეცდომის მინიმიზაციის მოთხოვნა:

სად გ ჯ- მტევნის „მასობრივი ცენტრი“. (წერტილი საშუალო მახასიათებლებით მოცემული კლასტერისთვის).

კვადრატული შეცდომის ალგორითმები ბრტყელი ალგორითმების ტიპია. ამ კატეგორიაში ყველაზე გავრცელებული ალგორითმი არის k-means მეთოდი. ეს ალგორითმი აშენებს მოცემული ნომერიმტევანი განლაგებულია რაც შეიძლება შორს ერთმანეთისგან. ალგორითმის მუშაობა დაყოფილია რამდენიმე ეტაპად:

  1. შემთხვევით აირჩიეთ წერტილები, რომლებიც წარმოადგენენ მტევნის საწყისი „მასის ცენტრებს“.
  2. თითოეულ ობიექტს მიაკუთვნეთ კლასტერს უახლოესი „მასობრივი ცენტრი“.
  3. ხელახლა გამოთვალეთ მტევნების „მასის ცენტრები“ მათი ამჟამინდელი შემადგენლობის მიხედვით.
  4. თუ ალგორითმის შეჩერების კრიტერიუმი არ არის დაკმაყოფილებული, დაუბრუნდით მე-2 საფეხურს.
საშუალო კვადრატული ცდომილების მინიმალური ცვლილება ჩვეულებრივ არჩეულია ალგორითმის შეჩერების კრიტერიუმად. ასევე შესაძლებელია ალგორითმის შეჩერება, თუ მე-2 საფეხურზე არ იყო ობიექტები, რომლებიც გადავიდნენ კლასტერიდან კლასტერში.

ამ ალგორითმის ნაკლოვანებები მოიცავს დაყოფისთვის კლასტერების რაოდენობის მითითების აუცილებლობას.

ბუნდოვანი ალგორითმები
ყველაზე პოპულარული ბუნდოვანი კლასტერიზაციის ალგორითმი არის c-means ალგორითმი. ეს არის k-means მეთოდის მოდიფიკაცია. ალგორითმის ნაბიჯები:

ეს ალგორითმი შეიძლება არ იყოს შესაფერისი, თუ კლასტერების რაოდენობა წინასწარ უცნობია, ან თუ აუცილებელია თითოეული ობიექტის ცალსახად მინიჭება ერთ კლასტერზე.
გრაფიკების თეორიაზე დაფუძნებული ალგორითმები
ასეთი ალგორითმების არსი იმაში მდგომარეობს, რომ ობიექტების შერჩევა წარმოდგენილია როგორც გრაფიკი G=(V, E), რომლის წვეროები შეესაბამება ობიექტებს, ხოლო კიდეებს აქვთ წონა ტოლი ობიექტებს შორის "მანძილის". გრაფიკის კლასტერიზაციის ალგორითმების უპირატესობებია სიცხადე, განხორციელების შედარებით სიმარტივე და გეომეტრიული მოსაზრებების საფუძველზე სხვადასხვა გაუმჯობესების დანერგვის შესაძლებლობა. ძირითადი ალგორითმებია ალგორითმი დაკავშირებული კომპონენტების იდენტიფიცირებისთვის, ალგორითმი მინიმალური გაშლილი ხის ასაგებად და ფენა-ფენა კლასტერის ალგორითმი.
დაკავშირებული კომპონენტების იდენტიფიცირების ალგორითმი
დაკავშირებული კომპონენტების იდენტიფიკაციის ალგორითმში მითითებულია შეყვანის პარამეტრი ხოლო გრაფაში წაიშლება ყველა კიდე, რომლისთვისაც „დისტანციები“ მეტია . დაკავშირებულია მხოლოდ ობიექტების უახლოესი წყვილი. ალგორითმის მიზანი ასეთი მნიშვნელობის შერჩევაა , დევს ყველა „დისტანციის“ დიაპაზონში, რომლის დროსაც გრაფიკი „იშლება“ რამდენიმე დაკავშირებულ კომპონენტად. შედეგად მიღებული კომპონენტები მტევანია.

პარამეტრის შესარჩევად როგორც წესი, აგებულია წყვილი მანძილების განაწილების ჰისტოგრამა. მონაცემთა კარგად განსაზღვრული კლასტერული სტრუქტურის მქონე ამოცანებში ჰისტოგრამას ექნება ორი პიკი - ერთი შეესაბამება კლასტერშიდა დისტანციებს, მეორე - კლასტერთაშორის დისტანციებს. Პარამეტრი შერჩეულია ამ მწვერვალებს შორის მინიმალური ზონიდან. ამავდროულად, საკმაოდ რთულია კლასტერების რაოდენობის კონტროლი მანძილის ზღვრის გამოყენებით.

მინიმალური დაფარვის ხის ალგორითმი
მინიმალური გაშლილი ხის ალგორითმი ჯერ აყალიბებს მინიმალურ გაშლილ ხეს გრაფიკზე და შემდეგ თანმიმდევრულად აშორებს ყველაზე დიდი წონის კიდეებს. ფიგურა გვიჩვენებს ცხრა ობიექტზე მიღებულ მინიმალური დაფარვის ხეს.

6 ერთეული სიგრძის CD (ზღვარი მაქსიმალური მანძილით) ამოღებით, ვიღებთ ორ კლასტერს: (A, B, C) და (D, E, F, G, H, I). მეორე კლასტერი მოგვიანებით შეიძლება დაიყოს კიდევ ორ კლასტერად EF კიდის ამოღებით, რომლის სიგრძეა 4,5 ერთეული.

ფენა-ფენა დაჯგუფება
ფენა-ფენა კლასტერის ალგორითმი ეფუძნება დაკავშირებული გრაფიკის კომპონენტების იდენტიფიცირებას ობიექტებს შორის მანძილის გარკვეულ დონეზე (ვერტიკებზე). მანძილის დონე განისაზღვრება მანძილის ზღვრით . მაგალითად, თუ მანძილი ობიექტებს შორის , რომ .

ფენა-ფენა კლასტერიზაციის ალგორითმი ქმნის გრაფიკის ქვეგრაფების თანმიმდევრობას , რომელიც ასახავს იერარქიულ ურთიერთობებს კლასტერებს შორის:

,

სად G t = (V, E t)- დონის გრაფიკი ერთად ტ,
,
ერთად ტ- t-ე მანძილის ბარიერი,
m – იერარქიის დონეების რაოდენობა,
G 0 = (V, o), o არის გრაფიკის კიდეების ცარიელი ნაკრები, რომელიც მიღებულია t 0 = 1,
გ მ = გ, ანუ ობიექტების გრაფიკი მანძილის შეზღუდვის გარეშე (გრაფიკის კიდეების სიგრძე), ვინაიდან ტ მ = 1.

მანძილის ზღურბლების შეცვლით ( s 0, …, s m), სადაც 0 = 0-დან < 1-დან < …< = 1, შესაძლებელია მიღებული კლასტერების იერარქიის სიღრმის კონტროლი. ამრიგად, ფენა-ფენა კლასტერიზაციის ალგორითმს შეუძლია შექმნას მონაცემთა როგორც ბრტყელი, ასევე იერარქიული დანაყოფი.

ალგორითმების შედარება

ალგორითმების გამოთვლითი სირთულე

ალგორითმის შედარების ცხრილი
კლასტერიზაციის ალგორითმი მტევნის ფორმა Შესაყვანი მონაცემები შედეგები
იერარქიული უფასო კლასტერების რაოდენობა ან მანძილის ბარიერი იერარქიის შესაკვეცად ორობითი კასეტური ხე
კ- ნიშნავს ჰიპერსფერო კლასტერების რაოდენობა კლასტერ ცენტრები
გ-ნიშნავს ჰიპერსფერო მტევანთა რაოდენობა, ბუნდოვანების ხარისხი კლასტერული ცენტრები, წევრობის მატრიცა
დაკავშირებული კომპონენტების შერჩევა უფასო მანძილის ბარიერი R
მინიმალური დაფარვის ხე უფასო კლასტერების რაოდენობა ან მანძილის ზღვარი კიდეების მოსაშორებლად მტევნის ხის სტრუქტურა
ფენა-ფენა დაჯგუფება უფასო მანძილის ზღურბლების თანმიმდევრობა მტევანთა ხის სტრუქტურა იერარქიის სხვადასხვა დონეებით

ცოტა აპლიკაციის შესახებ

ჩემს ნამუშევარში მე მჭირდებოდა ცალკეული უბნების შერჩევა იერარქიული სტრუქტურებიდან (ხეები). იმათ. არსებითად საჭირო იყო ორიგინალური ხის მოჭრა რამდენიმე პატარა ხედ. ვინაიდან მიმართული ხე არის გრაფიკის განსაკუთრებული შემთხვევა, გრაფიკის თეორიაზე დაფუძნებული ალგორითმები ბუნებრივად შეესაბამება.

სრულად დაკავშირებული გრაფისგან განსხვავებით, მიმართულ ხეში ყველა წვერო არ არის დაკავშირებული კიდეებით და სულკიდეები არის n–1, სადაც n არის წვეროების რაოდენობა. იმათ. ხის კვანძებთან მიმართებაში, დაკავშირებული კომპონენტების იდენტიფიცირების ალგორითმის მუშაობა გამარტივდება, რადგან ნებისმიერი რაოდენობის კიდეების ამოღება ხეს "გატეხავს" დაკავშირებულ კომპონენტებად (ცალკეულ ხეებად). მინიმალური დაფარვის ხის ალგორითმი ამ შემთხვევაში დაემთხვევა დაკავშირებული კომპონენტების შერჩევის ალგორითმს - ყველაზე გრძელი კიდეების ამოღებით, ორიგინალური ხე იყოფა რამდენიმე ხედ. ამ შემთხვევაში, აშკარაა, რომ თავად მინიმალური დაფარვის ხის აგების ფაზა გამოტოვებულია.

თუ სხვა ალგორითმები გამოიყენებოდა, მათ ცალკე უნდა გაითვალისწინონ ობიექტებს შორის კავშირების არსებობა, რაც ართულებს ალგორითმს.

ცალკე, მინდა ვთქვა, რომ საუკეთესო შედეგის მისაღწევად, აუცილებელია ექსპერიმენტების ჩატარება მანძილის ზომების არჩევისას და ზოგჯერ ალგორითმის შეცვლაც კი. არ არსებობს ერთიანი გამოსავალი.

ჩვენ ვიცით, რომ დედამიწა ერთ-ერთია იმ 8 პლანეტიდან, რომელიც მზის გარშემო ბრუნავს. მზე მხოლოდ ვარსკვლავია გალაქტიკის 200 მილიარდ ვარსკვლავს შორის ირმის ნახტომი. ძალიან რთულია ამ რიცხვის გაგება. ამის ცოდნით შეგვიძლია გამოვიტანოთ ვარაუდი სამყაროს ვარსკვლავების რაოდენობაზე - დაახლოებით 4X10^22. ჩვენ შეგვიძლია დავინახოთ დაახლოებით მილიონი ვარსკვლავი ცაზე, თუმცა ეს ვარსკვლავების რეალური რაოდენობის მხოლოდ მცირე ნაწილია. ასე რომ, ჩვენ გვაქვს ორი კითხვა:

  1. რა არის გალაქტიკა?
  2. და რა კავშირია გალაქტიკებსა და სტატიის თემას შორის (კასეტური ანალიზი)


გალაქტიკა არის ვარსკვლავების, გაზის, მტვრის, პლანეტების და ვარსკვლავთშორისი ღრუბლების კოლექცია. როგორც წესი, გალაქტიკები წააგავს სპირალურ ან ედეპტიკურ ფიგურას. კოსმოსში გალაქტიკები ერთმანეთისგან გამოყოფილია. უზარმაზარი შავი ხვრელები ხშირად გალაქტიკების უმეტესობის ცენტრებია.

როგორც შემდეგ ნაწილში განვიხილავთ, გალაქტიკებსა და კასეტურ ანალიზს შორის ბევრი მსგავსებაა. გალაქტიკები არსებობს სამგანზომილებიან სივრცეში, კასეტური ანალიზი მრავალვარიანტული ანალიზი, განხორციელებული n-განზომილებიანი სივრცეში.

შენიშვნა: შავი ხვრელი არის გალაქტიკის ცენტრი. ჩვენ გამოვიყენებთ მსგავს იდეას ცენტროიდებთან დაკავშირებით კასეტური ანალიზისთვის.

კლასტერული ანალიზი

ვთქვათ, თქვენ ხართ სატელეკომუნიკაციო კომპანიის მარკეტინგისა და მომხმარებელთა ურთიერთობის ხელმძღვანელი. თქვენ გესმით, რომ ყველა მომხმარებელი განსხვავებულია და რომ თქვენ გჭირდებათ განსხვავებული სტრატეგიები სხვადასხვა მომხმარებლის მოსაზიდად. თქვენ დააფასებთ ისეთი ხელსაწყოს ძალას, როგორიცაა მომხმარებელთა სეგმენტაცია ხარჯების ოპტიმიზაციისთვის. კლასტერული ანალიზის შესახებ თქვენი ცოდნის გასაახლებლად, განიხილეთ შემდეგი მაგალითი, რომელიც ასახავს 8 მომხმარებელს და მათი ზარების საშუალო ხანგრძლივობას (ადგილობრივი და საერთაშორისო). ქვემოთ მოცემული მონაცემები:

უკეთესი აღქმისთვის დავხატოთ გრაფიკი, სადაც იქნება x ღერძი საშუალო ხანგრძლივობასაერთაშორისო ზარები, ხოლო y-ღერძი არის ადგილობრივი ზარების საშუალო ხანგრძლივობა. ქვემოთ მოცემულია გრაფიკი:

შენიშვნა: ეს ჰგავს ღამის ცაზე ვარსკვლავების განლაგების ანალიზს (აქ ვარსკვლავებს ანაცვლებენ მომხმარებლები). გარდა ამისა, ნაცვლად სამგანზომილებიანი სივრცეგვაქვს ორგანზომილებიანი, ადგილობრივი და საერთაშორისო ზარების ხანგრძლივობის გათვალისწინებით x და y ღერძებით.
ახლა, გალაქტიკების კუთხით საუბრისას, ამოცანა შემდეგნაირად არის ჩამოყალიბებული - შავი ხვრელების პოზიციის პოვნა; კლასტერულ ანალიზში მათ უწოდებენ ცენტროიდებს. ცენტროიდების აღმოსაჩენად, ჩვენ დავიწყებთ თვითნებური წერტილების აღებით, როგორც ცენტრის პოზიციები.

ევკლიდეს მანძილი კლასტერებისთვის ცენტროიდების მოსაძებნად

ჩვენს შემთხვევაში, ჩვენ თვითნებურად მოვათავსებთ ორ ცენტროიდს (C1 და C2) წერტილებში კოორდინატებით (1, 1) და (3, 4). რატომ ავირჩიეთ ეს ორი ცენტრი? გრაფიკზე წერტილების ვიზუალური ჩვენება გვაჩვენებს, რომ არსებობს ორი კლასტერი, რომლებსაც გავაანალიზებთ. თუმცა, მოგვიანებით ვნახავთ, რომ ამ კითხვაზე პასუხი არც ისე მარტივი იქნება დიდი ნაკრებიმონაცემები.
შემდეგ ჩვენ გავზომავთ მანძილს ცენტროიდებს (C1 და C2) და გრაფიკის ყველა წერტილს შორის ევკლიდეს ფორმულის გამოყენებით, რათა ვიპოვოთ მანძილი ორ წერტილს შორის.

შენიშვნა: მანძილი შეიძლება გამოითვალოს სხვა ფორმულების გამოყენებით, მაგალითად,

  1. კვადრატული ევკლიდური მანძილი - წონის მინიჭება ობიექტებს, რომლებიც უფრო შორს არიან ერთმანეთისგან
  2. მანჰეტენის მანძილი - ემისიების ზემოქმედების შესამცირებლად
  3. სიმძლავრის მანძილი - გავლენის გაზრდა/შემცირება კონკრეტული კოორდინატების გასწვრივ
  4. უთანხმოების პროცენტი - კატეგორიული მონაცემებისთვის
  5. და ა.შ.
სვეტები 3 და 4 (მანძილი C1 და C2-დან) არის მანძილი, რომელიც გამოითვლება ამ ფორმულით. მაგალითად, პირველი მომხმარებლისთვის

Centroid წევრობა (ბოლო სვეტი) გამოითვლება ცენტროიდებთან სიახლოვის საფუძველზე (C1 და C2). პირველი მომხმარებელი უფრო ახლოსაა ცენტროიდ #1-თან (1.41 2.24-თან შედარებით) და ამიტომ მიეკუთვნება C1 ცენტროიდულ კლასტერს.

ქვემოთ მოცემულია გრაფიკი, რომელიც ასახავს C1 და C2 ცენტროიდებს (გამოსახულია ლურჯი და ნარინჯისფერი ალმასის სახით). მომხმარებლები გამოსახულია შესაბამისი ცენტროიდის ფერით, რომელ კლასტერს მიენიჭათ.

ვინაიდან ჩვენ შემთხვევით შევარჩიეთ ცენტროიდები, მეორე ნაბიჯი არის ამ შერჩევის გამეორება. ახალი ცენტროიდის პოზიცია არჩეულია შესაბამისი კლასტერის წერტილების საშუალოდ. ასე, მაგალითად, პირველი ცენტროიდისთვის (ესენი არიან მომხმარებლები 1, 2 და 3). ამიტომ, ახალი x კოორდინატი C1 ცენტრისთვის არის საშუალო კოორდინატები x ამ მომხმარებლებიდან (2+1+1)/3 = 1.33. ჩვენ მივიღებთ ახალ კოორდინატებს C1 (1.33, 2.33) და C2 (4.4, 4.2).

და ბოლოს, ჩვენ განვათავსებთ ცენტროიდებს შესაბამისი კლასტერის ცენტრში. დიაგრამა ქვემოთ:

ჩვენი შავი ხვრელების (კასეტური ცენტრები) პოზიციები ჩვენს მაგალითში არის C1 (1.75, 2.25) და C2 (4.75, 4.75). ზემოთ ორი გროვა ჰგავს ორ გალაქტიკას, რომლებიც ერთმანეთისგან გამოყოფილია სივრცეში.

მაშ ასე, მოდით გადავხედოთ მაგალითებს შემდგომ. მოდით, დავდგეთ მომხმარებლის სეგმენტირების ამოცანა ორი პარამეტრის მიხედვით: ასაკი და შემოსავალი. ვთქვათ, გვყავს 2 მომხმარებელი, 37 და 44 წლის, 90,000 და 62,000 დოლარის შემოსავლით, შესაბამისად. თუ გვსურს გავზომოთ ევკლიდური მანძილი წერტილებს შორის (37, 90000) და (44, 62000), დავინახავთ, რომ ამ შემთხვევაში შემოსავლის ცვლადი „დომინირებს“ ასაკობრივ ცვლადზე და მისი ცვლილება დიდად მოქმედებს მანძილს. ჩვენ გვჭირდება გარკვეული სტრატეგია ამ პრობლემის მოსაგვარებლად, წინააღმდეგ შემთხვევაში ჩვენი ანალიზი არასწორ შედეგს მოგვცემს. ამ პრობლემის გადაწყვეტა არის ჩვენი ღირებულებების შესადარებელ მასშტაბებზე მიყვანა. ნორმალიზაცია არის ჩვენი პრობლემის გადაწყვეტა.

მონაცემთა ნორმალიზება

მონაცემთა ნორმალიზაციის მრავალი მიდგომა არსებობს. მაგალითად, მინიმალური-მაქსიმალური ნორმალიზება. ამ ნორმალიზებისთვის გამოიყენება შემდეგი ფორმულა

ამ შემთხვევაში X* არის ნორმალიზებული მნიშვნელობა, min და max არის მინიმალური და მაქსიმალური კოორდინატები მთელ X სიმრავლეზე
(Შენიშვნა, ეს ფორმულაათავსებს ყველა კოორდინატს სეგმენტზე)
მოდით შევხედოთ ჩვენს მაგალითს, ვთქვათ მაქსიმალური შემოსავალი არის $130,000 და მინიმალური არის $45,000. ნორმალიზებული შემოსავლის ღირებულება მომხმარებლის A არის

ჩვენ გავაკეთებთ ამ სავარჯიშოს ყველა პუნქტისთვის თითოეული ცვლადისთვის (კოორდინატები). მეორე მომხმარებლის შემოსავალი (62000) ნორმალიზების პროცედურის შემდეგ გახდება 0.2. გარდა ამისა, მინიმალური და მაქსიმალური ასაკი იყოს შესაბამისად 23 და 58. ნორმალიზების შემდეგ ჩვენი ორი მომხმარებლის ასაკი იქნება 0.4 და 0.6.

ადვილი მისახვედრია, რომ ჩვენი ყველა მონაცემი ახლა 0 და 1 მნიშვნელობებს შორის ხვდება. ამიტომ, ჩვენ ახლა გვაქვს მონაცემთა ნორმალიზებული ნაკრები შესადარებელ მასშტაბებზე.

გახსოვდეთ, კლასტერული ანალიზის პროცედურის დაწყებამდე ნორმალიზება უნდა განხორციელდეს.

სალამი!

ჩემს ნაშრომში ჩავატარე მონაცემთა კლასტერიზაციის ალგორითმების მიმოხილვა და შედარებითი ანალიზი. ვიფიქრე, რომ უკვე შეგროვებული და დამუშავებული მასალა შეიძლება ვინმესთვის საინტერესო და სასარგებლო ყოფილიყო.
საშაევმა ისაუბრა იმაზე, თუ რა არის კლასტერირება სტატიაში "კლასტერირება: k-საშუალებები და c- ნიშნავს ალგორითმები". ნაწილობრივ გავიმეორებ ალექსანდრეს სიტყვებს და ნაწილობრივ დავამატებ. ასევე ამ სტატიის ბოლოს მსურველებს შეუძლიათ გაეცნონ მასალებს ბიბლიოგრაფიაში მოცემული ბმულების საშუალებით.

ასევე ვცდილობდი პრეზენტაციის მშრალი „კურსდამთავრებული“ სტილი უფრო ჟურნალისტურ სტილში მომეყვანა.

კლასტერიზაციის ცნება

კლასტერირება (ან კლასტერული ანალიზი) არის ობიექტების ნაკრების ჯგუფებად დაყოფის ამოცანა, რომელსაც ეწოდება კლასტერები. თითოეულ ჯგუფში უნდა იყოს „მსგავსი“ ობიექტები და სხვადასხვა ჯგუფის ობიექტები მაქსიმალურად განსხვავებული უნდა იყოს. კლასტერიზაციასა და კლასიფიკაციას შორის მთავარი განსხვავება ისაა, რომ ჯგუფების სია არ არის მკაფიოდ განსაზღვრული და განისაზღვრება ალგორითმის მუშაობის დროს.

ზოგადად, კლასტერული ანალიზის გამოყენება შემდეგ ეტაპებზე მოდის:

  1. ობიექტების ნიმუშის შერჩევა დაჯგუფებისთვის.
  2. ცვლადების ნაკრების განსაზღვრა, რომლითაც შეფასდება ნიმუშში არსებული ობიექტები. საჭიროების შემთხვევაში, ცვლადების მნიშვნელობების ნორმალიზება.
  3. მსგავსების გაზომვის მნიშვნელობების გაანგარიშება ობიექტებს შორის.
  4. კლასტერული ანალიზის მეთოდის გამოყენება მსგავსი ობიექტების (კლასტერების) ჯგუფების შესაქმნელად.
  5. ანალიზის შედეგების პრეზენტაცია.
შედეგების მიღებისა და ანალიზის შემდეგ შესაძლებელია შერჩეული მეტრული და კლასტერული მეთოდის კორექტირება ოპტიმალური შედეგის მიღებამდე.

მანძილის ზომები

მაშ, როგორ განვსაზღვროთ ობიექტების „მსგავსება“? პირველ რიგში, თქვენ უნდა შექმნათ მახასიათებლების ვექტორი თითოეული ობიექტისთვის - როგორც წესი, ეს არის რიცხვითი მნიშვნელობების ნაკრები, მაგალითად, ადამიანის სიმაღლე და წონა. თუმცა არის ალგორითმებიც, რომლებიც მუშაობენ ხარისხობრივი (ე.წ. კატეგორიული) მახასიათებლებით.

მას შემდეგ რაც განვსაზღვრავთ მახასიათებლის ვექტორს, ნორმალიზება შეიძლება განხორციელდეს ისე, რომ ყველა კომპონენტი თანაბრად წვლილი შეიტანოს „დისტანციის“ გაანგარიშებაში. ნორმალიზაციის პროცესში, ყველა მნიშვნელობა მიყვანილია გარკვეულ დიაპაზონში, მაგალითად, [-1, -1] ან .

დაბოლოს, თითოეული წყვილი ობიექტისთვის იზომება მათ შორის "მანძილი" - მსგავსების ხარისხი. არსებობს მრავალი მეტრიკა, აქ არის მხოლოდ ძირითადი:

მეტრიკის არჩევანი მთლიანად მკვლევარს ეკისრება, ვინაიდან კლასტერიზაციის შედეგები შეიძლება მნიშვნელოვნად განსხვავდებოდეს სხვადასხვა ზომის გამოყენებისას.

ალგორითმების კლასიფიკაცია

ჩემთვის მე გამოვყავი კლასტერიზაციის ალგორითმების ორი ძირითადი კლასიფიკაცია.
  1. იერარქიული და ბრტყელი.
    იერარქიული ალგორითმები (ასევე უწოდებენ ტაქსონომიურ ალგორითმებს) ქმნიან ნიმუშის არა მხოლოდ ერთ დანაყოფის ნაწილებად, არამედ წყობილი დანაყოფების სისტემას. რომ. შედეგად ვიღებთ მტევნების ხეს, რომლის ფესვი მთლიანი ნიმუშია, ხოლო ფოთლები ყველაზე პატარა მტევნებია.
    ბრტყელი ალგორითმები ქმნიან ობიექტების ერთ დაყოფას კლასტერებად.
  2. ნათელი და ბუნდოვანი.
    წმინდა (ან გადახურვის გარეშე) ალგორითმები თითოეულ ნიმუშის ობიექტს ანიჭებს კლასტერულ ნომერს, ე.ი. თითოეული ობიექტი ეკუთვნის მხოლოდ ერთ კლასტერს. ბუნდოვანი (ან გადამკვეთი) ალგორითმები თითოეულ ობიექტს ანიჭებს რეალური მნიშვნელობების კომპლექტს, რომელიც აჩვენებს ობიექტის კლასტერებთან ურთიერთობის ხარისხს. იმათ. თითოეული ობიექტი მიეკუთვნება თითოეულ კლასტერს გარკვეული ალბათობით.

კლასტერების შერწყმა

იერარქიული ალგორითმების გამოყენების შემთხვევაში ჩნდება კითხვა, როგორ გავაერთიანოთ კლასტერები ერთმანეთთან, როგორ გამოვთვალოთ მათ შორის „მანძილი“. არსებობს რამდენიმე მეტრიკა:
  1. ერთი ბმული (უახლოესი მეზობლების მანძილი)
    ამ მეთოდით, მანძილი ორ კლასტერს შორის განისაზღვრება მანძილით ორ უახლოეს ობიექტს (უახლოეს მეზობლებს) შორის სხვადასხვა კლასტერში. შედეგად მიღებული მტევანი მიდრეკილია ჯაჭვების ფორმირებისკენ.
  2. სრული კავშირი (ყველაზე შორეული მეზობლების მანძილი)
    ამ მეთოდით, კლასტერებს შორის მანძილი განისაზღვრება ყველაზე დიდი მანძილით ნებისმიერ ორ ობიექტს შორის სხვადასხვა კლასტერში (ანუ ყველაზე შორეულ მეზობლებს შორის). ეს მეთოდი ჩვეულებრივ ძალიან კარგად მუშაობს, როდესაც ობიექტები ცალკე ჯგუფებიდან მოდის. თუ მტევანებს აქვთ წაგრძელებული ფორმა ან მათი ბუნებრივი ტიპი "ჯაჭვია", მაშინ ეს მეთოდი უვარგისია.
  3. შეუწონავი წყვილი საშუალო
    ამ მეთოდით, მანძილი ორ განსხვავებულ კლასტერს შორის გამოითვლება, როგორც საშუალო მანძილი მათში არსებული ყველა წყვილი ობიექტის შორის. მეთოდი ეფექტურია, როდესაც ობიექტები ქმნიან სხვადასხვა ჯგუფს, მაგრამ ის ერთნაირად კარგად მუშაობს გაფართოებული ("ჯაჭვის" ტიპის) კლასტერების შემთხვევაში.
  4. შეწონილი წყვილი საშუალო
    მეთოდი იდენტურია შეუწონავი წყვილის საშუალო მეთოდის, გარდა იმისა, რომ გამოთვლებში შეწონვის ფაქტორად გამოიყენება შესაბამისი კლასტერების ზომა (ანუ მათში შემავალი ობიექტების რაოდენობა). ამიტომ, ეს მეთოდი უნდა იქნას გამოყენებული, როდესაც მოსალოდნელია არათანაბარი მტევნის ზომები.
  5. არაწონიანი ცენტროიდის მეთოდი
    ამ მეთოდით, მანძილი ორ კლასტერს შორის განისაზღვრება, როგორც მანძილი მათ სიმძიმის ცენტრებს შორის.
  6. შეწონილი ცენტროიდური მეთოდი (მედიანა)
    ეს მეთოდი წინა მეთოდის იდენტურია, გარდა იმისა, რომ გაანგარიშება იყენებს წონებს კლასტერის ზომებს შორის განსხვავებების დასადგენად. ამიტომ, თუ არსებობს ან არსებობს ეჭვმიტანილი მნიშვნელოვანი განსხვავებები კლასტერის ზომებში, ეს მეთოდი სასურველია წინაზე.

ალგორითმების მიმოხილვა

იერარქიული კლასტერიზაციის ალგორითმები
იერარქიულ კლასტერიზაციის ალგორითმებს შორის არის ორი ძირითადი ტიპი: ქვემოდან ზევით და ზემოდან ქვევით. ზემოდან ქვევით ალგორითმები მუშაობს ზემოდან ქვევით პრინციპით: დასაწყისში ყველა ობიექტი მოთავსებულია ერთ კლასტერში, რომელიც შემდეგ იყოფა პატარა და პატარა კლასტერებად. უფრო გავრცელებულია ქვემოდან ზევით ალგორითმები, რომლებიც იწყება თითოეული ობიექტის ცალკეულ კლასტერში მოთავსებით და შემდეგ კლასტერების გაერთიანებით უფრო და უფრო დიდებად, სანამ ნიმუშის ყველა ობიექტი ერთ კლასტერში მოხვდება. ამ გზით, აგებულია წყობილი დანაყოფების სისტემა. ასეთი ალგორითმების შედეგები ჩვეულებრივ წარმოდგენილია ხის სახით - დენდროგრამა. ასეთი ხის კლასიკური მაგალითია ცხოველებისა და მცენარეების კლასიფიკაცია.

კლასტერებს შორის მანძილის გამოსათვლელად, ყველა ყველაზე ხშირად იყენებს ორ დისტანციას: ერთ ბმულს ან სრულ ბმულს (იხილეთ კლასტერებს შორის მანძილის ზომების მიმოხილვა).

იერარქიული ალგორითმების მინუსი არის სრული დანაყოფების სისტემა, რომელიც შეიძლება არასაჭირო იყოს პრობლემის გადაჭრის კონტექსტში.

კვადრატული შეცდომის ალგორითმები
კლასტერიზაციის პრობლემა შეიძლება ჩაითვალოს, როგორც ობიექტების ოპტიმალური დაყოფის აგება ჯგუფებად. ამ შემთხვევაში, ოპტიმალურობა შეიძლება განისაზღვროს, როგორც დანაყოფის ძირის საშუალო კვადრატული შეცდომის მინიმიზაციის მოთხოვნა:

სად გ ჯ- მტევნის „მასობრივი ცენტრი“. (წერტილი საშუალო მახასიათებლებით მოცემული კლასტერისთვის).

კვადრატული შეცდომის ალგორითმები ბრტყელი ალგორითმების ტიპია. ამ კატეგორიაში ყველაზე გავრცელებული ალგორითმი არის k-means მეთოდი. ეს ალგორითმი აშენებს კლასტერების მოცემულ რაოდენობას, რომლებიც განლაგებულია ერთმანეთისგან რაც შეიძლება შორს. ალგორითმის მუშაობა დაყოფილია რამდენიმე ეტაპად:

  1. შემთხვევით აირჩიეთ წერტილები, რომლებიც წარმოადგენენ მტევნის საწყისი „მასის ცენტრებს“.
  2. თითოეულ ობიექტს მიაკუთვნეთ კლასტერს უახლოესი „მასობრივი ცენტრი“.
  3. ხელახლა გამოთვალეთ მტევნების „მასის ცენტრები“ მათი ამჟამინდელი შემადგენლობის მიხედვით.
  4. თუ ალგორითმის შეჩერების კრიტერიუმი არ არის დაკმაყოფილებული, დაუბრუნდით მე-2 საფეხურს.
საშუალო კვადრატული ცდომილების მინიმალური ცვლილება ჩვეულებრივ არჩეულია ალგორითმის შეჩერების კრიტერიუმად. ასევე შესაძლებელია ალგორითმის შეჩერება, თუ მე-2 საფეხურზე არ იყო ობიექტები, რომლებიც გადავიდნენ კლასტერიდან კლასტერში.

ამ ალგორითმის ნაკლოვანებები მოიცავს დაყოფისთვის კლასტერების რაოდენობის მითითების აუცილებლობას.

ბუნდოვანი ალგორითმები
ყველაზე პოპულარული ბუნდოვანი კლასტერიზაციის ალგორითმი არის c-means ალგორითმი. ეს არის k-means მეთოდის მოდიფიკაცია. ალგორითმის ნაბიჯები:

ეს ალგორითმი შეიძლება არ იყოს შესაფერისი, თუ კლასტერების რაოდენობა წინასწარ უცნობია, ან თუ აუცილებელია თითოეული ობიექტის ცალსახად მინიჭება ერთ კლასტერზე.
გრაფიკების თეორიაზე დაფუძნებული ალგორითმები
ასეთი ალგორითმების არსი იმაში მდგომარეობს, რომ ობიექტების შერჩევა წარმოდგენილია როგორც გრაფიკი G=(V, E), რომლის წვეროები შეესაბამება ობიექტებს, ხოლო კიდეებს აქვთ წონა ტოლი ობიექტებს შორის "მანძილის". გრაფიკის კლასტერიზაციის ალგორითმების უპირატესობებია სიცხადე, განხორციელების შედარებით სიმარტივე და გეომეტრიული მოსაზრებების საფუძველზე სხვადასხვა გაუმჯობესების დანერგვის შესაძლებლობა. ძირითადი ალგორითმებია ალგორითმი დაკავშირებული კომპონენტების იდენტიფიცირებისთვის, ალგორითმი მინიმალური გაშლილი ხის ასაგებად და ფენა-ფენა კლასტერის ალგორითმი.
დაკავშირებული კომპონენტების იდენტიფიცირების ალგორითმი
დაკავშირებული კომპონენტების იდენტიფიკაციის ალგორითმში მითითებულია შეყვანის პარამეტრი ხოლო გრაფაში წაიშლება ყველა კიდე, რომლისთვისაც „დისტანციები“ მეტია . დაკავშირებულია მხოლოდ ობიექტების უახლოესი წყვილი. ალგორითმის მიზანი ასეთი მნიშვნელობის შერჩევაა , დევს ყველა „დისტანციის“ დიაპაზონში, რომლის დროსაც გრაფიკი „იშლება“ რამდენიმე დაკავშირებულ კომპონენტად. შედეგად მიღებული კომპონენტები მტევანია.

პარამეტრის შესარჩევად როგორც წესი, აგებულია წყვილი მანძილების განაწილების ჰისტოგრამა. მონაცემთა კარგად განსაზღვრული კლასტერული სტრუქტურის მქონე ამოცანებში ჰისტოგრამას ექნება ორი პიკი - ერთი შეესაბამება კლასტერშიდა დისტანციებს, მეორე - კლასტერთაშორის დისტანციებს. Პარამეტრი შერჩეულია ამ მწვერვალებს შორის მინიმალური ზონიდან. ამავდროულად, საკმაოდ რთულია კლასტერების რაოდენობის კონტროლი მანძილის ზღვრის გამოყენებით.

მინიმალური დაფარვის ხის ალგორითმი
მინიმალური გაშლილი ხის ალგორითმი ჯერ აყალიბებს მინიმალურ გაშლილ ხეს გრაფიკზე და შემდეგ თანმიმდევრულად აშორებს ყველაზე დიდი წონის კიდეებს. ფიგურა გვიჩვენებს ცხრა ობიექტზე მიღებულ მინიმალური დაფარვის ხეს.

6 ერთეული სიგრძის CD (ზღვარი მაქსიმალური მანძილით) ამოღებით, ვიღებთ ორ კლასტერს: (A, B, C) და (D, E, F, G, H, I). მეორე კლასტერი მოგვიანებით შეიძლება დაიყოს კიდევ ორ კლასტერად EF კიდის ამოღებით, რომლის სიგრძეა 4,5 ერთეული.

ფენა-ფენა დაჯგუფება
ფენა-ფენა კლასტერის ალგორითმი ეფუძნება დაკავშირებული გრაფიკის კომპონენტების იდენტიფიცირებას ობიექტებს შორის მანძილის გარკვეულ დონეზე (ვერტიკებზე). მანძილის დონე განისაზღვრება მანძილის ზღვრით . მაგალითად, თუ მანძილი ობიექტებს შორის , რომ .

ფენა-ფენა კლასტერიზაციის ალგორითმი ქმნის გრაფიკის ქვეგრაფების თანმიმდევრობას , რომელიც ასახავს იერარქიულ ურთიერთობებს კლასტერებს შორის:

,

სად G t = (V, E t)- დონის გრაფიკი ერთად ტ,
,
ერთად ტ- t-ე მანძილის ბარიერი,
m – იერარქიის დონეების რაოდენობა,
G 0 = (V, o), o არის გრაფიკის კიდეების ცარიელი ნაკრები, რომელიც მიღებულია t 0 = 1,
გ მ = გ, ანუ ობიექტების გრაფიკი მანძილის შეზღუდვის გარეშე (გრაფიკის კიდეების სიგრძე), ვინაიდან ტ მ = 1.

მანძილის ზღურბლების შეცვლით ( s 0, …, s m), სადაც 0 = 0-დან < 1-დან < …< = 1, შესაძლებელია მიღებული კლასტერების იერარქიის სიღრმის კონტროლი. ამრიგად, ფენა-ფენა კლასტერიზაციის ალგორითმს შეუძლია შექმნას მონაცემთა როგორც ბრტყელი, ასევე იერარქიული დანაყოფი.

ალგორითმების შედარება

ალგორითმების გამოთვლითი სირთულე

ალგორითმის შედარების ცხრილი
კლასტერიზაციის ალგორითმი მტევნის ფორმა Შესაყვანი მონაცემები შედეგები
იერარქიული უფასო კლასტერების რაოდენობა ან მანძილის ბარიერი იერარქიის შესაკვეცად ორობითი კასეტური ხე
კ- ნიშნავს ჰიპერსფერო კლასტერების რაოდენობა კლასტერ ცენტრები
გ-ნიშნავს ჰიპერსფერო მტევანთა რაოდენობა, ბუნდოვანების ხარისხი კლასტერული ცენტრები, წევრობის მატრიცა
დაკავშირებული კომპონენტების შერჩევა უფასო მანძილის ბარიერი R
მინიმალური დაფარვის ხე უფასო კლასტერების რაოდენობა ან მანძილის ზღვარი კიდეების მოსაშორებლად მტევნის ხის სტრუქტურა
ფენა-ფენა დაჯგუფება უფასო მანძილის ზღურბლების თანმიმდევრობა მტევანთა ხის სტრუქტურა იერარქიის სხვადასხვა დონეებით

ცოტა აპლიკაციის შესახებ

ჩემს ნამუშევარში მე მჭირდებოდა ცალკეული უბნების შერჩევა იერარქიული სტრუქტურებიდან (ხეები). იმათ. არსებითად საჭირო იყო ორიგინალური ხის მოჭრა რამდენიმე პატარა ხედ. ვინაიდან მიმართული ხე არის გრაფიკის განსაკუთრებული შემთხვევა, გრაფიკის თეორიაზე დაფუძნებული ალგორითმები ბუნებრივად შეესაბამება.

სრულად დაკავშირებული გრაფისგან განსხვავებით, მიმართულ ხეში ყველა წვერო არ არის დაკავშირებული კიდეებით და კიდეების საერთო რაოდენობაა n–1, სადაც n არის წვეროების რაოდენობა. იმათ. ხის კვანძებთან მიმართებაში, დაკავშირებული კომპონენტების იდენტიფიცირების ალგორითმის მუშაობა გამარტივდება, რადგან ნებისმიერი რაოდენობის კიდეების ამოღება ხეს "გატეხავს" დაკავშირებულ კომპონენტებად (ცალკეულ ხეებად). მინიმალური დაფარვის ხის ალგორითმი ამ შემთხვევაში დაემთხვევა დაკავშირებული კომპონენტების შერჩევის ალგორითმს - ყველაზე გრძელი კიდეების ამოღებით, ორიგინალური ხე იყოფა რამდენიმე ხედ. ამ შემთხვევაში, აშკარაა, რომ თავად მინიმალური დაფარვის ხის აგების ფაზა გამოტოვებულია.

თუ სხვა ალგორითმები გამოიყენებოდა, მათ ცალკე უნდა გაითვალისწინონ ობიექტებს შორის კავშირების არსებობა, რაც ართულებს ალგორითმს.

ცალკე, მინდა ვთქვა, რომ საუკეთესო შედეგის მისაღწევად, აუცილებელია ექსპერიმენტების ჩატარება მანძილის ზომების არჩევისას და ზოგჯერ ალგორითმის შეცვლაც კი. არ არსებობს ერთიანი გამოსავალი.

მოიცავს სიახლოვის საზომის ოპტიმიზაციას და გენეტიკური ალგორითმების საფუძველზე საშუალოდ აღრიცხვის ჩანაწერების რაოდენობას. MR ალგორითმი გამოიყენება რიცხვითი ცვლადების და კატეგორიული ცვლადების მნიშვნელობების პროგნოზირებისთვის, ტექსტის ჩათვლით (სტრიქონი მონაცემთა ტიპი), ასევე ორ ან მეტ კლასად კლასიფიკაციისთვის.

კლასტერიზაციის ალგორითმები

Find Dependencies (FD) - განაწილების N-განზომილებიანი ანალიზი

ეს ალგორითმი წყაროს ცხრილში აღმოაჩენს ჩანაწერების ჯგუფებს, რომლებიც ხასიათდება ფუნქციური ურთიერთობის არსებობით სამიზნე ცვლადსა და დამოუკიდებელ ცვლადებს შორის, აფასებს ამ ურთიერთობის ხარისხს (სიძლიერეს) სტანდარტული შეცდომის მიხედვით, განსაზღვრავს ყველაზე მეტად გავლენიანი ფაქტორები და აღმოფხვრის გამონაკლისებს. სამიზნე ცვლადი FD-სთვის უნდა იყოს რიცხვითი ტიპის, ხოლო დამოუკიდებელი ცვლადები შეიძლება იყოს რიცხვითი, კატეგორიული ან ლოგიკური.

ალგორითმი მუშაობს ძალიან სწრაფად და შეუძლია დიდი რაოდენობით მონაცემების დამუშავება. ის შეიძლება გამოყენებულ იქნას, როგორც FL, PN, LR ალგორითმების წინასწარი პროცესორი, რადგან ის ამცირებს საძიებო სივრცეს, ასევე, როგორც ფილტრი ამობრუნებული წერტილებისთვის ან, პირიქით, როგორც გამონაკლისის დეტექტორი. FD ქმნის ცხრილის სტილის წესს, თუმცა, როგორც ყველა პოლიანალიტიკოსის წესი, ის შეიძლება შეფასდეს ნებისმიერი ცხრილის ჩანაწერის მიხედვით.

იპოვეთ კლასტერები (FC) - N-განზომილებიანი კლასტერერი

ეს მეთოდი გამოიყენება მაშინ, როდესაც აუცილებელია კომპაქტური ტიპიური ქვეჯგუფების (კლასტერების) იდენტიფიცირება მონაცემთა გარკვეულ ნაკრებში, რომელიც შედგება მსგავსი მახასიათებლების მქონე ჩანაწერებისგან. FC ალგორითმი თავად განსაზღვრავს ცვლადების სიმრავლეს, რომლებისთვისაც დანაყოფი ყველაზე მნიშვნელოვანია. ალგორითმის შედეგია თითოეული აღმოჩენილი კლასტერის დამახასიათებელი არეების (ცვლადი მნიშვნელობების დიაპაზონის) აღწერა და შესასწავლი ცხრილის დაყოფა კლასტერების შესაბამის ქვეჯგუფებად. თუ მონაცემები საკმარისად ერთგვაროვანია მის ყველა ცვლადში და არ შეიცავს ქულების „დაგროვებას“ ზოგიერთ მხარეში, ეს მეთოდი არ გამოიღებს შედეგს. უნდა აღინიშნოს, რომ აღმოჩენილი კლასტერების მინიმალური რაოდენობა არის ორი - წერტილების კონდენსაცია მხოლოდ ერთ ადგილზე არ ითვლება კლასტერად ამ ალგორითმში. უფრო მეტიც, ეს მეთოდი არის უფრო დიდი ზომით, ვიდრე სხვები, აწესებს მოთხოვნებს შესასწავლ ცხრილში საკმარისი რაოდენობის ჩანაწერების არსებობის შესახებ, კერძოდ: ჩანაწერების მინიმალური რაოდენობა ცხრილში, რომელშიც N კლასტერების აღმოჩენაა შესაძლებელი, არის (2N-1)4.

კლასიფიკაციის ალგორითმები

PolyAnalyst პაკეტს აქვს ინსტრუმენტების მდიდარი ნაკრები კლასიფიკაციის პრობლემების გადასაჭრელად, ე.ი. იპოვონ ჩანაწერების მინიჭების წესები ორიდან ერთ ან რამდენიმე კლასში.

Classify (CL) - ბუნდოვანი ლოგიკის კლასიფიკატორი

CL ალგორითმი შექმნილია ჩანაწერების ორ კლასად კლასიფიკაციისთვის. მისი ნამუშევარი ეფუძნება ეგრეთ წოდებული წევრობის ფუნქციის აგებას და კლასებად დაყოფის ზღვრის პოვნას. წევრობის ფუნქცია იღებს მნიშვნელობებს მეზობლიდან 0-დან 1-მდე.

მაშინ ეს ჩანაწერი ეკუთვნის კლასს "1", თუ ნაკლებია, მაშინ კლასს "0", შესაბამისად. ამ მოდულის სამიზნე ცვლადი უნდა იყოს ლოგიკური ტიპის.

დისკრიმინაცია (DS) - დისკრიმინაცია

ეს ალგორითმი არის CL ალგორითმის მოდიფიკაცია. იგი შექმნილია იმის გასარკვევად, თუ როგორ განსხვავდება შერჩეული ცხრილის მონაცემები პროექტში შეტანილი დანარჩენი მონაცემებისგან, სხვა სიტყვებით რომ ვთქვათ, ხაზგასმით აღვნიშნოთ სპეციფიკური მახასიათებლები, რომელიც ახასიათებს პროექტის ჩანაწერების გარკვეულ ქვეჯგუფს. CL ალგორითმისგან განსხვავებით, ის არ საჭიროებს სამიზნე ცვლადის მითითებას, საკმარისია მიუთითოთ მხოლოდ ცხრილი, რომლისთვისაც გსურთ იპოვოთ განსხვავებები.

გადაწყვეტილების ხე (DT) - გადაწყვეტილების ხე

PolyAnalyst სისტემა ახორციელებს ალგორითმს, რომელიც დაფუძნებულია ურთიერთ ინფორმაციის მაქსიმალური გაზრდის კრიტერიუმზე (ინფორმაციული მოგება). ანუ გაყოფისთვის არჩეულია დამოუკიდებელი ცვლადი, რომელიც ატარებს მაქსიმალურ (შენონის გაგებით) ინფორმაციას დამოკიდებული ცვლადის შესახებ. ამ კრიტერიუმს აქვს მკაფიო ინტერპრეტაცია და იძლევა გონივრულ შედეგებს შესწავლილი მონაცემების მრავალფეროვანი სტატისტიკური პარამეტრების მიხედვით. DT ალგორითმი ერთ-ერთი ყველაზე სწრაფია PolyAnalyst-ში.

გადაწყვეტილების ტყე (DF) - გადაწყვეტილების ტყეები

იმ შემთხვევებში, როდესაც დამოკიდებულ ცვლადს შეუძლია მიიღოს სხვადასხვა მნიშვნელობების დიდი რაოდენობა, გადაწყვეტილების ხის მეთოდის გამოყენება ხდება არაეფექტური. ამ სიტუაციაში, PolyAnalyst იყენებს მეთოდს, რომელსაც ეწოდება გადაწყვეტილების ტყე. ამ შემთხვევაში, აგებულია გადაწყვეტილების ხეების ნაკრები - თითო თითოეულისთვის განსხვავებული მნიშვნელობადამოკიდებული ცვლადი. გადაწყვეტილების ტყეზე დაფუძნებული პროგნოზის შედეგი არის დამოკიდებული ცვლადის მნიშვნელობა, რომლისთვისაც შესაბამისი ხე იძლევა ყველაზე სავარაუდო შეფასებას.

ასოციაციის ალგორითმები

ბაზრის კალათის ანალიზი (BA) - „საყიდლების კალათის“ ანალიზის მეთოდი

ამ მეთოდის სახელწოდება მომდინარეობს ამოცანადან, რათა დადგინდეს, რომელი საქონლის ერთად არის შეძენილი. თუმცა, მისი გამოყენების რეალური ფარგლები გაცილებით ფართოა. მაგალითად, პროდუქტები შეიძლება ჩაითვალოს გვერდებად ინტერნეტში, ან კლიენტის გარკვეული მახასიათებლებით, ან რესპონდენტთა პასუხები სოციოლოგიურ და მარკეტინგული კვლევადა ა.შ. BA ალგორითმი შესაყვანად იღებს ბინარულ მატრიცას, რომელშიც მწკრივი არის ერთი კალათა (მაგალითად, ფულადი ქვითარი), ხოლო სვეტები ივსება ლოგიკური 0 და 1-ით, რაც მიუთითებს მოცემული ატრიბუტის (პროდუქტის) არსებობაზე ან არარსებობაზე. გამოსავალზე, ერთობლივად წარმოქმნილი მახასიათებლების კლასტერები იქმნება მათი ალბათობისა და სანდოობის შეფასებით. გარდა ამისა, ჩამოყალიბებულია ტიპის ასოციაციური მიმართულების წესები: თუ მახასიათებელია "A", მაშინ ასეთი და ასეთი ალბათობით ასევე მახასიათებელი "B" და ასევე მახასიათებელი "C". VA ალგორითმი PolyAnalyst-ში ძალიან სწრაფია და შეუძლია უზარმაზარი მონაცემების დამუშავება.

ტრანზაქციების კალათის ანალიზი (TB) - "კალათის" ტრანზაქციის ანალიზი.

ტრანზაქციების კალათის ანალიზი არის BA ალგორითმის მოდიფიკაცია, რომელიც გამოიყენება ძალიან დიდი მონაცემების გასაანალიზებლად, რაც არ არის იშვიათი ამ ტიპის პრობლემისთვის. იგი ვარაუდობს, რომ მონაცემთა ბაზაში თითოეული ჩანაწერი შეესაბამება ერთ ტრანზაქციას და არა ერთ კალათას (ერთ ტრანზაქციაში შეძენილი ნივთების ნაკრები). ამ ალგორითმის საფუძველზე, კომპანია Megaputer-მა შექმნა ცალკე პროდუქტი - X-SellAnalyst, რომელიც განკუთვნილია ონლაინ მაღაზიებში პროდუქტის რეკომენდაციებისთვის.

ტექსტის ანალიზის მოდულები

PolyAnalyst სისტემა აერთიანებს მონაცემთა მოპოვების ინსტრუმენტებს ტექსტის ანალიზის მეთოდებთან ბუნებრივი ენა- ტექსტის მოპოვების ალგორითმები. ტექსტის ანალიზის მოდულების მუშაობის ილუსტრაცია ნაჩვენებია ნახ. 24.3.

ბრინჯი. 24.3. ტექსტის ანალიზის მოდულების მუშაობის ილუსტრაცია

ტექსტის ანალიზი (TA) - ტექსტის ანალიზი

ტექსტის ანალიზი არის ინსტრუმენტი მონაცემთა ბაზებში არასტრუქტურირებული ტექსტური ველების ფორმალიზაციისთვის. ამ შემთხვევაში, ტექსტის ველი წარმოდგენილია როგორც ლოგიკური მახასიათებლების ნაკრები, მოცემული სიტყვის არსებობის ან/და სიხშირის საფუძველზე. სტაბილური ფრაზაან ცნებები (სინონიმიისა და „ზოგად-განსაკუთრებული“ მიმართებების გათვალისწინებით) ში ამ ტექსტს. ეს შესაძლებელს ხდის მონაცემთა მოპოვების ალგორითმების სრული სიმძლავრის გაფართოებას PolyAnalyst სისტემაში ტექსტურ ველებზე. გარდა ამისა, ეს მეთოდი შეიძლება გამოყენებულ იქნას მონაცემთა ტექსტური კომპონენტის უკეთ გასაგებად, ყველაზე გავრცელებული ძირითადი ცნებების ავტომატურად ხაზგასმით.

ტექსტის კატეგორიზატორი (TC) - ტექსტის კატალოგერი

ეს მოდული საშუალებას გაძლევთ ავტომატურად შექმნათ ხელმისაწვდომი ტექსტების იერარქიული ხის მსგავსი კატალოგი და მონიშნოთ ამ ხის სტრუქტურის თითოეული კვანძი, როგორც მასთან დაკავშირებული ტექსტებიდან ყველაზე ინდიკატორი. ეს აუცილებელია ტექსტის ველების გაანალიზებული ნაკრების თემატური სტრუქტურის გასაგებად და მასში ეფექტურად ნავიგაციისთვის.

Link Terms (LT) - ცნებების კავშირი

ეს მოდული საშუალებას გაძლევთ ამოიცნოთ შესწავლილი მონაცემთა ბაზის ტექსტურ ველებში ნაპოვნი ცნებებს შორის კავშირი და წარმოადგინოთ ისინი გრაფიკის სახით. გრაფიკი ასევე შეიძლება გამოყენებულ იქნას ჩანაწერების ხაზგასასმელად, რომლებიც ახორციელებენ არჩეულ ურთიერთობას.

IN PolyAnalyst-ს აქვს ჩაშენებული ალგორითმები ორი ტიპის ტექსტურ მონაცემებთან მუშაობისთვის:

1. ალგორითმები, რომლებიც ამოიღებს ძირითად ცნებებს და მუშაობენ მათთან.

2. ალგორითმები, რომლებიც ახარისხებენ ტექსტს კლასებად, რომლებიც განსაზღვრულია მომხმარებლის მიერ შეკითხვის ენის გამოყენებით.

პირველი ტიპის ალგორითმი მუშაობს მხოლოდ ინგლისურენოვან ტექსტებთან - გამოიყენება ინგლისური ცნებების სპეციალური ლექსიკონი. მეორე ტიპის ალგორითმებს შეუძლიათ ტექსტებთან მუშაობა როგორც ინგლისურ, ასევე რუსულ ენებზე.

ტექსტი OLAP (გაზომვის მატრიცები) და ტაქსონომიები (ტაქსონომიები) ტექსტების კატეგორიზაციის მსგავსი მეთოდებია. Text OLAP-ში მომხმარებელი ქმნის დასახელებულ სვეტებს (განზომილებებს), რომლებიც შედგება ტექსტური მოთხოვნებისგან. მაგალითად: "[მოპოვება] და [ნავთობი] და არა ([მადანი] ან [ქვანახშირი] ან [გაზი])". როდესაც ალგორითმი მუშაობს, PolyAnalyst იყენებს თითოეულ პირობას მონაცემთა ბაზის თითოეულ დოკუმენტზე და, თუ პირობა დაკმაყოფილებულია, ანიჭებს ამ დოკუმენტს შესაბამის კატეგორიას. მოდულის გაშვების შემდეგ მომხმარებელს შეუძლია შეარჩიოს საზომი მატრიცის სხვადასხვა ელემენტები და ეკრანზე ნახოს ტექსტები, რომლებიც აკმაყოფილებს შერჩეულ პირობებს. ნაპოვნი სიტყვები ამ დოკუმენტებში სხვადასხვა ფერებში იქნება შეღებილი.

ტაქსონომიებთან მუშაობა ძალიან ჰგავს Text OLAP-თან მუშაობას, მხოლოდ აქ მომხმარებელი აშენებს იერარქიულ სტრუქტურას იგივე პირობებიდან, როგორც განზომილების მატრიცებში. სისტემა ცდილობს დააკავშიროს თითოეული დოკუმენტი ამ ხის კვანძებთან. მოდულის გაშვების შემდეგ მომხმარებელს ასევე შეუძლია ნავიგაცია შევსებული ტაქსონომიის კვანძებში, ნახოს გაფილტრული დოკუმენტები შეფერილი სიტყვებით.

განზომილების მატრიცები და ტაქსონომიები მომხმარებელს საშუალებას აძლევს შეხედოს მისი დოკუმენტების კოლექციას სხვადასხვა კუთხიდან. მაგრამ ეს ყველაფერი არ არის: ამ ობიექტებზე დაყრდნობით, შეგიძლიათ გააკეთოთ ანალიზის სხვა, უფრო რთული მეთოდები (მაგალითად, ბმული ანალიზი, რომელიც გვიჩვენებს, თუ რამდენად არის დაკავშირებული მომხმარებლის მიერ აღწერილი ტექსტების სხვადასხვა კატეგორიები ერთმანეთთან) ან შეიტანეთ ტექსტები, როგორც დამოუკიდებელი ერთეულები. ხაზოვანი და არაწრფივი ანალიზის სხვა მეთოდებში. ყოველივე ეს იწვევს მონაცემთა მოპოვებისა და ტექსტის მოპოვების მიდგომების მჭიდრო ინტეგრაციას ინფორმაციის ანალიზის ერთიან კონცეფციაში.

ვიზუალიზაცია

PolyAnalyst-ს აქვს ინსტრუმენტების მდიდარი ნაკრები გრაფიკული წარმოდგენადა მონაცემთა ანალიზი და კვლევის შედეგები. მონაცემები შეიძლება წარმოდგენილი იყოს სხვადასხვა სახით

უახლესი მასალები განყოფილებაში:

ფროიდიზმისა და არაფროიდიზმის ფილოსოფია ფროიდიზმის საფუძვლები
ფროიდიზმისა და არაფროიდიზმის ფილოსოფია ფროიდიზმის საფუძვლები

ფროიდიზმის ფუძემდებელია ავსტრიელი ფსიქიატრი და ფსიქოლოგი ზიგმუნდ ფროიდი (1856-1939). ფროიდის იდეებზე დაყრდნობით მათი შევსება და გარკვევა...

ცივი ომის მოვლენების ქრონოლოგია
ცივი ომის მოვლენების ქრონოლოგია

მეორე მსოფლიო ომის შემდეგ კაპიტალისტური დასავლეთისა და კომუნისტური აღმოსავლეთის ქვეყნებს შორის ყოველთვის ნაგულისხმევმა დაპირისპირებამ მიიღო...

ლათინური ამერიკის ქვეყნების ეკოლოგიური პრობლემები 21-ე საუკუნეში
ლათინური ამერიკის ქვეყნების ეკოლოგიური პრობლემები 21-ე საუკუნეში

ბიჭებო, ჩვენ სულს ვდებთ საიტზე. მადლობა ამ სილამაზის გამოვლენისთვის. გმადლობთ ინსპირაციისთვის და შემცივნებისთვის, შემოგვიერთდით Facebook-ზე და...