ძირითადი კომპონენტის ანალიზი: 4 ნაბიჯი
ძირითადი კომპონენტის ანალიზი: 4 ნაბიჯი
Anonim
ძირითადი კომპონენტის ანალიზი
ძირითადი კომპონენტის ანალიზი

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

ნაბიჯი 1: ორიგინალური გეგმები

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

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

ნაბიჯი 2: კვლევა

Კვლევა
Კვლევა

პირველი ნაბიჯი იყო ბიბლიოთეკის მონახულება და ნებისმიერი წიგნის პოვნა, რომელმაც გამაცნო მანქანათმცოდნეობა და უფრო კონკრეტულად სურათის დამუშავება. ეს ბევრად უფრო რთული აღმოჩნდა, ვიდრე მეგონა და მე ამით ბევრი არაფერი დამიმთავრებია. შემდეგ გადავწყვიტე ვკითხო მეგობარს, რომელიც მუშაობდა ხედვის ლაბორატორიაში, რომელმაც მთხოვა განვიხილო წრფივი ალგებრა და უფრო კონკრეტულად საკუთარი ვექტორები და საკუთრივ ღირებულებები. მე მქონდა გარკვეული გამოცდილება წრფივი ალგებრის იმ კლასში, რომელიც მეორე კურსზე მქონდა აღებული, მაგრამ არ მესმოდა, თუ როგორ შეიძლებოდა ყოფილიყო სასარგებლო ვექტორები ან საკუთარი ღირებულებები სურათებთან მუშაობისას. რაც უფრო ვსწავლობდი, მივხვდი, რომ სურათები სხვა არაფერია თუ არა უზარმაზარი მონაცემთა ნაკრები და, შესაბამისად, შეიძლება განვიხილოთ როგორც მატრიცები და ჩემთვის ცოტა უფრო ნათელი გახდა, თუ რატომ იყო შესაბამისი ვეგეტორინგები შესაბამისი, რასაც ვაკეთებდი. ამ დროს, მე გადავწყვიტე, რომ უნდა მესწავლა სურათების კითხვა პითონის გამოყენებით, რადგან პითონის გამოყენებას ვაპირებდი ჩემი პროექტისთვის. თავდაპირველად, დავიწყე სურათების წასაკითხად CV2.imread– ის გამოყენებით, მაგრამ ეს მართლაც ნელი აღმოჩნდა და ამიტომ გადავწყვიტე გამომეყენებინა glob და PIL.image.open ამის გაკეთება, რადგან ეს ბევრად უფრო სწრაფია. ეს პროცესი ქაღალდზე შედარებით შრომატევადია, მაგრამ რეალურად საკმაოდ დიდი დრო დამჭირდა, რადგან მომიწია სწავლა, თუ როგორ უნდა დამემონტაჟებინა და შემოეტანა სხვადასხვა ბიბლიოთეკები PyCharm– ში (IDE) და შემდეგ წაეკითხა დოკუმენტაცია ინტერნეტით თითოეული ბიბლიოთეკისთვის. ამის გაკეთებისას მე ასევე ვისწავლე როგორ გამოვიყენო პიპ ინსტალაციის განცხადებები ბრძანების სტრიქონში.

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

ნაბიჯი 3: სირთულეები და გაკვეთილები

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

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

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

ნაბიჯი 4: შემდეგი ნაბიჯები

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

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

გირჩევთ: