สารบัญ:
- ขั้นตอนที่ 1: แผนดั้งเดิม
- ขั้นตอนที่ 2: วิจัย
- ขั้นตอนที่ 3: ความยากลำบากที่ต้องเผชิญและบทเรียนที่ได้รับ
- ขั้นตอนที่ 4: ขั้นตอนต่อไป
วีดีโอ: การวิเคราะห์องค์ประกอบหลัก: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
การวิเคราะห์องค์ประกอบหลักเป็นวิธีทางสถิติที่แปลงชุดของตัวแปรที่อาจสัมพันธ์กันเป็นชุดของค่าที่ไม่สัมพันธ์กันเชิงเส้นโดยใช้การแปลงมุมฉาก พูดง่ายๆ ว่าชุดข้อมูลที่มีหลายมิติ ช่วยลดจำนวนมิติข้อมูล จึงทำให้อ่านข้อมูลได้ง่ายขึ้น
ขั้นตอนที่ 1: แผนดั้งเดิม
ฉันเข้ามาในชั้นเรียนนี้ด้วยแนวคิดที่ว่าฉันต้องการจะเข้าใจและหวังว่าจะเขียนอัลกอริทึมที่สามารถทำการจดจำใบหน้าได้เมื่อมาพร้อมกับรูปภาพ ฉันไม่เคยมีประสบการณ์หรือความรู้เกี่ยวกับการจดจำใบหน้ามาก่อนและไม่รู้ว่ามันยากแค่ไหนที่จะบรรลุสิ่งนี้ หลังจากพูดคุยกับศาสตราจารย์ Malloch ฉันรู้ว่าฉันต้องเรียนรู้หลายสิ่งหลายอย่างก่อนที่จะสามารถเข้าใจงานที่ฉันวางแผนไว้ได้อย่างเต็มที่
หลังจากการค้นคว้าเพียงเล็กน้อย ในที่สุดฉันก็ตัดสินใจว่ามากกว่าสิ่งอื่นใดที่ฉันจำเป็นต้องเรียนรู้เกี่ยวกับพีชคณิตเชิงเส้นและพื้นฐานของการเรียนรู้ของเครื่อง และตัดสินใจใช้ PCA (การวิเคราะห์องค์ประกอบหลัก) เพื่อเป็นเป้าหมายสำหรับชั้นเรียนนี้
ขั้นตอนที่ 2: วิจัย
ขั้นตอนแรกคือไปที่ห้องสมุดและค้นหาหนังสือใดๆ ที่แนะนำให้ฉันรู้จักกับแมชชีนเลิร์นนิงและการประมวลผลภาพโดยเฉพาะ มันกลับกลายเป็นว่ายากกว่าที่ฉันคิดไว้มาก และสุดท้ายฉันก็ไม่ได้อะไรจากมันมากนัก จากนั้นฉันตัดสินใจถามเพื่อนที่ทำงานใน Vision Lab ซึ่งขอให้ฉันดูพีชคณิตเชิงเส้นและเวกเตอร์ลักษณะเฉพาะและค่าลักษณะเฉพาะมากขึ้น ฉันมีประสบการณ์บางอย่างเกี่ยวกับพีชคณิตเชิงเส้นจากชั้นเรียนที่ฉันเรียนในปีที่สองแต่ไม่เข้าใจว่าเวกเตอร์ลักษณะเฉพาะหรือค่าลักษณะเฉพาะจะมีประโยชน์อย่างไรเมื่อต้องจัดการกับรูปภาพ เมื่อฉันค้นคว้ามากขึ้น ฉันเข้าใจว่ารูปภาพไม่มีอะไรเลยนอกจากชุดข้อมูลขนาดใหญ่ และสามารถถือเป็นเมทริกซ์ได้ และฉันก็เข้าใจได้ชัดเจนขึ้นเล็กน้อยว่าเหตุใด eigenvectors จึงเกี่ยวข้องกับสิ่งที่ฉันทำ ณ จุดนี้ ฉันตัดสินใจว่าฉันควรเรียนรู้วิธีอ่านรูปภาพโดยใช้ python เนื่องจากฉันกำลังจะใช้ python สำหรับโครงการของฉัน ตอนแรกฉันเริ่มด้วยการใช้ CV2.imread เพื่ออ่านรูปภาพ แต่กลับกลายเป็นว่าช้ามาก ดังนั้นฉันจึงตัดสินใจใช้ glob และ PIL.image.open เพื่อทำสิ่งนี้เร็วกว่ามาก กระบวนการบนกระดาษนี้ดูเหมือนจะไม่ใช้เวลามาก แต่จริง ๆ แล้วใช้เวลานานพอสมควร เนื่องจากฉันต้องเรียนรู้วิธีติดตั้งและนำเข้าไลบรารีต่าง ๆ ไปยัง PyCharm (IDE) จากนั้นอ่านเอกสารออนไลน์สำหรับแต่ละไลบรารี ในกระบวนการนี้ ฉันยังได้เรียนรู้วิธีใช้คำสั่ง pip install ใน command prompt
หลังจากนี้ ขั้นตอนต่อไปคือการหาว่าฉันต้องการทำอะไรและเรียนรู้เกี่ยวกับการประมวลผลภาพในตอนแรก ฉันกำลังวางแผนที่จะทำการจับคู่เทมเพลต แต่ในขณะที่ค้นคว้าเกี่ยวกับมัน ฉันได้เรียนรู้เกี่ยวกับ PCA และพบว่าสิ่งนี้น่าสนใจมากขึ้น ฉันจึงตัดสินใจ ไปกับ PCA แทน เทอมแรกที่โผล่ขึ้นมาคืออัลกอริทึม K-NN (K- เพื่อนบ้านที่ใกล้ที่สุด) นี่เป็นครั้งแรกที่ฉันได้สัมผัสอัลกอริธึมการเรียนรู้ของเครื่อง ฉันได้เรียนรู้เกี่ยวกับข้อมูลการฝึกอบรมและการทดสอบ และความหมายของ 'การฝึกอบรม' ของอัลกอริทึม การทำความเข้าใจอัลกอริธึม K-NN ก็เป็นเรื่องที่ท้าทายเช่นกัน แต่ก็เป็นที่น่าพอใจมากที่ในที่สุดก็เข้าใจวิธีการทำงาน ฉันกำลังดำเนินการเพื่อให้รหัสสำหรับ K-NN ใช้งานได้ และฉันใกล้จะเสร็จสมบูรณ์แล้ว
ขั้นตอนที่ 3: ความยากลำบากที่ต้องเผชิญและบทเรียนที่ได้รับ
ปัญหาใหญ่ประการแรกคือขอบเขตของโครงการเอง นี่เป็นการวิจัยเชิงวิจัยมากกว่าเชิงกายภาพ หลายสัปดาห์ผ่านไป บางครั้งฉันจะดูความคืบหน้าที่เพื่อนของฉันทำและรู้สึกว่าฉันยังทำไม่เพียงพอหรือความคืบหน้าไม่เร็วพอ และบางครั้งก็ทำให้ลดต่ำลงอย่างมาก การได้พูดคุยกับศาสตราจารย์มัลลอคและปลอบตัวเองว่าฉันกำลังเรียนรู้สิ่งใหม่ๆ สำหรับฉันจริงๆ ช่วยให้ฉันก้าวต่อไปได้ ปัญหาอีกประการหนึ่งคือการรู้สิ่งเชิงทฤษฎีและนำไปใช้เป็นสองสิ่งที่แตกต่างกัน แม้ว่าฉันจะรู้ว่าฉันต้องทำอะไร แต่จริงๆ แล้วการเขียนโค้ดใน python นั้นเป็นอีกเรื่องหนึ่ง นี่คือจุดที่เพียงแค่อ่านเอกสารออนไลน์และถามเพื่อนที่รู้เรื่องนี้มากขึ้น ช่วยได้มากในการคิดแผนปฏิบัติการในที่สุด
โดยส่วนตัวแล้วฉันคิดว่าการมีห้องสมุดและเอกสารขนาดใหญ่ที่ M5 สามารถช่วยเหลือผู้ที่กำลังทำงานในโครงการได้ นอกจากนี้ การมีบันทึกดิจิทัลแบบเรียลไทม์ของโครงการที่นักเรียนทำเพื่อให้นักเรียนและเจ้าหน้าที่คนอื่นๆ สามารถดูและมีส่วนร่วมได้หากพวกเขาสนใจเป็นความคิดที่ดีสำหรับ M5
เมื่อโครงการสิ้นสุดลง ฉันได้เรียนรู้มากมายในช่วงเวลาสั้นๆ ฉันได้รับความรู้เกี่ยวกับแมชชีนเลิร์นนิงที่ใช้งานได้จริง และรู้สึกเหมือนได้ทำตามขั้นตอนแรกเพื่อมีส่วนร่วมมากขึ้น ฉันตระหนักว่าฉันชอบคอมพิวเตอร์วิทัศน์และฉันอาจต้องการดำเนินการนี้ต่อไปในอนาคต สิ่งสำคัญที่สุดคือฉันได้เรียนรู้ว่า PCA คืออะไร เหตุใดจึงสำคัญและจะใช้งานอย่างไร
ขั้นตอนที่ 4: ขั้นตอนต่อไป
สำหรับฉัน นี่เป็นเพียงการเกาพื้นผิวของบางสิ่งที่กว้างใหญ่ไพศาล และสิ่งที่สำคัญมากในโลกปัจจุบัน นั่นคือแมชชีนเลิร์นนิง ฉันวางแผนที่จะเรียนหลักสูตรที่เกี่ยวข้องกับการเรียนรู้ของเครื่องในอนาคตอันใกล้นี้ ฉันยังวางแผนที่จะสร้างวิธีการจดจำใบหน้าซึ่งเป็นจุดเริ่มต้นของโครงการทั้งหมด ฉันยังมีแนวคิดเกี่ยวกับระบบรักษาความปลอดภัยที่ใช้คุณลักษณะต่างๆ ร่วมกัน (หนึ่งในนั้นคือหน้าตาของตัวบุคคล) เพื่อให้ปลอดภัยจริงๆ และนี่คือสิ่งที่ฉันต้องการจะทำในอนาคตเมื่อฉันเข้าใจสิ่งต่างๆ มากขึ้น.
สำหรับทุกคนเช่นฉันที่สนใจแมชชีนเลิร์นนิงและการประมวลผลภาพ แต่ไม่มีประสบการณ์มาก่อน ฉันขอแนะนำอย่างยิ่งให้เรียนรู้และทำความเข้าใจพีชคณิตเชิงเส้นพร้อมกับสถิติก่อน (โดยเฉพาะการแจกแจง) ประการที่สอง ข้าพเจ้าขอแนะนำให้อ่าน Pattern Recognition และ Machine Learning โดย Christopher M. Bishop หนังสือเล่มนี้ช่วยให้ฉันเข้าใจพื้นฐานของสิ่งที่ฉันกำลังศึกษาอยู่และมีโครงสร้างที่ดีมาก
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง