Daftar Isi:

Analisis Komponen Utama: 4 Langkah
Analisis Komponen Utama: 4 Langkah

Video: Analisis Komponen Utama: 4 Langkah

Video: Analisis Komponen Utama: 4 Langkah
Video: Analisis Komponen Utama (Bagian 1) 2024, November
Anonim
Analisis Komponen Utama
Analisis Komponen Utama

Analisis Komponen Utama adalah metode statistik yang mengubah sekumpulan variabel yang mungkin berkorelasi menjadi sekumpulan nilai yang tidak berkorelasi linier dengan menggunakan transformasi ortogonal. Dengan kata sederhana diberikan kumpulan data dengan banyak dimensi, ini membantu mengurangi jumlah dimensi sehingga membuat data lebih mudah dibaca.

Langkah 1: Paket Asli

Saya datang ke kelas ini dengan ide yang ingin saya pahami dan mudah-mudahan bisa menulis algoritma yang bisa melakukan pengenalan wajah saat disertakan dengan gambar. Saya tidak memiliki pengalaman atau pengetahuan sebelumnya tentang apa pun yang berkaitan dengan pengenalan wajah dan tidak tahu betapa sulitnya mencapai sesuatu seperti ini. Setelah berbicara dengan profesor Malloch saya menyadari bahwa saya harus belajar banyak hal sebelum dapat memahami sepenuhnya tugas yang akhirnya saya rencanakan untuk dicapai.

Setelah sedikit riset, saya akhirnya memutuskan bahwa lebih dari apa pun saya perlu belajar aljabar linier dan beberapa dasar pembelajaran mesin dan menetap di PCA (analisis komponen utama) menjadi tujuan saya untuk kelas ini.

Langkah 2: Riset

Riset
Riset

Langkah pertama adalah mengunjungi Perpustakaan dan menemukan buku apa pun yang memperkenalkan saya pada pembelajaran mesin dan lebih khusus lagi pemrosesan gambar. Ini ternyata jauh lebih sulit daripada yang saya kira dan saya berakhir dengan apa-apa dari itu. Saya kemudian memutuskan untuk bertanya kepada seorang teman yang bekerja di Lab Visi yang meminta saya untuk melihat ke dalam aljabar linier dan lebih khusus vektor eigen dan nilai eigen. Saya memiliki beberapa pengalaman dengan aljabar linier dari kelas yang saya ambil di tahun kedua saya tetapi tidak mengerti bagaimana vektor eigen atau nilai eigen dapat berguna ketika berhadapan dengan gambar. Ketika saya meneliti lebih lanjut, saya mengerti bahwa gambar hanyalah kumpulan data besar dan karenanya dapat diperlakukan sebagai matriks dan menjadi sedikit lebih jelas bagi saya mengapa vektor eigen relevan dengan apa yang saya lakukan. Pada titik ini, saya memutuskan bahwa saya harus belajar cara membaca gambar menggunakan python karena saya akan menggunakan python untuk proyek saya. Awalnya, saya memulai dengan menggunakan CV2.imread untuk membaca gambar tetapi ternyata sangat lambat dan karenanya saya memutuskan untuk menggunakan glob dan PIL.image.open untuk melakukannya karena ini jauh lebih cepat. Proses di atas kertas ini tampaknya relatif tidak memakan waktu tetapi sebenarnya memakan banyak waktu karena saya harus belajar cara menginstal dan mengimpor perpustakaan yang berbeda ke PyCharm (IDE) dan kemudian membaca dokumentasi online untuk setiap perpustakaan. Dalam proses melakukannya, saya juga belajar bagaimana menggunakan pernyataan pip install di command prompt.

Setelah ini, langkah selanjutnya adalah mencari tahu apa sebenarnya yang ingin saya lakukan dan pelajari dalam pemrosesan gambar dan awalnya, saya berencana melakukan pencocokan template tetapi ketika meneliti untuk itu saya belajar tentang PCA dan ternyata lebih menarik jadi saya memutuskan untuk pergi dengan PCA sebagai gantinya. Istilah pertama yang terus bermunculan adalah algoritma K-NN (K- Nearest Neighbor). Ini adalah paparan pertama saya terhadap algoritme pembelajaran mesin. Saya belajar tentang data pelatihan dan pengujian dan apa arti 'pelatihan' dari suatu algoritma. Memahami algoritma K-NN juga menantang tetapi sangat memuaskan untuk akhirnya memahami cara kerjanya. Saat ini saya sedang mengerjakan agar kode untuk K-NN berfungsi dan saya hampir selesai.

Langkah 3: Kesulitan yang Dihadapi dan Pelajaran yang Dipetik

Kesulitan besar pertama adalah ruang lingkup proyek itu sendiri. Ini lebih berorientasi pada penelitian daripada fisik. Saat minggu-minggu berlalu beberapa kali saya akan melihat kemajuan yang dibuat rekan-rekan saya dan merasa bahwa saya tidak melakukan cukup atau bahwa saya tidak membuat kemajuan yang cukup cepat dan itu kadang-kadang sangat menurunkan motivasi. Berbicara dengan Profesor Malloch dan meyakinkan diri sendiri bahwa saya benar-benar mempelajari hal-hal yang sangat baru bagi saya membantu saya untuk terus maju. Masalah lain adalah bahwa mengetahui hal-hal teoritis dan menerapkannya adalah dua hal yang berbeda. Meskipun saya tahu apa yang harus saya lakukan, sebenarnya mengkodekannya dengan python adalah cerita yang berbeda. Di sinilah hanya membaca dokumentasi online dan bertanya kepada teman-teman yang mengetahuinya lebih banyak membantu untuk akhirnya mengetahui rencana tindakan.

Saya pribadi berpikir bahwa memiliki perpustakaan buku dan dokumen yang lebih besar di M5 dapat membantu orang-orang yang sedang mengerjakan proyek. Juga memiliki catatan digital real-time dari proyek yang dilakukan oleh siswa sehingga siswa dan staf lain dapat melihatnya dan terlibat jika itu menarik bagi mereka adalah ide yang bagus untuk M5.

Saat proyek berakhir, saya telah belajar banyak dalam rentang waktu yang singkat. Saya telah memperoleh pengetahuan yang sangat baik tentang pembelajaran mesin dan merasa seperti saya telah mengambil langkah pertama untuk lebih terlibat di dalamnya. Saya telah menyadari bahwa saya menyukai visi komputer dan bahwa saya mungkin ingin mengejar ini bahkan di masa depan. Yang terpenting, saya telah mempelajari apa itu PCA, mengapa itu sangat penting dan bagaimana menggunakannya.

Langkah 4: Langkah Selanjutnya

Bagi saya, ini hanya menggores permukaan dari sesuatu yang jauh lebih luas dan sesuatu yang sangat penting di dunia saat ini, yaitu pembelajaran mesin. Saya berencana untuk mengambil kursus yang terkait dengan pembelajaran mesin dalam waktu dekat. Saya juga berencana untuk membangun jalan saya ke pengenalan wajah karena di situlah seluruh proyek ini dimulai. Saya juga punya ide untuk sistem keamanan yang memanfaatkan fitur kombinasi (salah satunya adalah wajah orang) untuk membuatnya benar-benar aman dan ini adalah sesuatu yang ingin saya kerjakan di masa depan ketika saya memiliki pemahaman yang lebih luas tentang berbagai hal..

Bagi siapa pun seperti saya yang tertarik dengan pembelajaran mesin dan pemrosesan gambar tetapi tidak memiliki pengalaman sebelumnya, saya akan sangat menyarankan untuk mempelajari dan memahami aljabar linier terlebih dahulu bersama dengan statistik (terutama distribusi). Kedua, saya sarankan membaca Pengenalan Pola dan Pembelajaran Mesin oleh Christopher M. Bishop. Buku ini membantu saya memahami dasar-dasar dari apa yang saya hadapi dan terstruktur dengan sangat baik.

Direkomendasikan: