โปรแกรมเข้ารหัสอัตโนมัติคืออะไร? คู่มือสำหรับผู้เริ่มต้น
เผยแพร่แล้ว: 2024-10-28ตัวเข้ารหัสอัตโนมัติเป็นองค์ประกอบสำคัญของการเรียนรู้เชิงลึก โดยเฉพาะอย่างยิ่งในงานแมชชีนเลิร์นนิงที่ไม่ได้รับการดูแล ในบทความนี้ เราจะมาสำรวจว่าตัวเข้ารหัสอัตโนมัติทำงานอย่างไร สถาปัตยกรรมของตัวเข้ารหัส และประเภทต่างๆ ที่มี นอกจากนี้คุณยังจะค้นพบแอปพลิเคชันในโลกแห่งความเป็นจริง ตลอดจนข้อดีและข้อด้อยที่เกี่ยวข้องกับการใช้งาน
สารบัญ
- โปรแกรมเข้ารหัสอัตโนมัติคืออะไร?
- สถาปัตยกรรมตัวเข้ารหัสอัตโนมัติ
- ประเภทของตัวเข้ารหัสอัตโนมัติ
- แอปพลิเคชัน
- ข้อดี
- ข้อเสีย
โปรแกรมเข้ารหัสอัตโนมัติคืออะไร?
ตัวเข้ารหัสอัตโนมัติคือโครงข่ายประสาทเทียมประเภทหนึ่งที่ใช้ในการเรียนรู้เชิงลึกเพื่อเรียนรู้การแสดงข้อมูลอินพุตในมิติที่ต่ำกว่าอย่างมีประสิทธิภาพ ซึ่งจากนั้นจะใช้เพื่อสร้างข้อมูลต้นฉบับขึ้นใหม่ การทำเช่นนี้ เครือข่ายนี้จะเรียนรู้คุณลักษณะที่สำคัญที่สุดของข้อมูลระหว่างการฝึกอบรมโดยไม่ต้องมีป้ายกำกับที่ชัดเจน ทำให้เป็นส่วนหนึ่งของการเรียนรู้แบบมีผู้ดูแลด้วยตนเอง ตัวเข้ารหัสอัตโนมัติถูกนำไปใช้อย่างกว้างขวางในงานต่างๆ เช่น การลดสัญญาณรบกวนของภาพ การตรวจจับความผิดปกติ และการบีบอัดข้อมูล ซึ่งความสามารถในการบีบอัดและสร้างข้อมูลใหม่นั้นมีคุณค่า
สถาปัตยกรรมตัวเข้ารหัสอัตโนมัติ
ตัวเข้ารหัสอัตโนมัติประกอบด้วยสามส่วน: ตัวเข้ารหัส คอขวด (หรือที่เรียกว่าพื้นที่แฝงหรือโค้ด) และตัวถอดรหัส ส่วนประกอบเหล่านี้ทำงานร่วมกันเพื่อรวบรวมคุณลักษณะสำคัญของข้อมูลอินพุต และใช้เพื่อสร้างโครงสร้างใหม่ที่แม่นยำ
ตัวเข้ารหัสอัตโนมัติปรับเอาต์พุตให้เหมาะสมโดยการปรับน้ำหนักของทั้งตัวเข้ารหัสและตัวถอดรหัส โดยมีเป้าหมายเพื่อสร้างการแสดงอินพุตที่ถูกบีบอัดซึ่งคงคุณสมบัติที่สำคัญไว้ การเพิ่มประสิทธิภาพนี้ช่วยลดข้อผิดพลาดในการสร้างใหม่ให้เหลือน้อยที่สุด ซึ่งแสดงถึงความแตกต่างระหว่างข้อมูลอินพุตและเอาต์พุต
ตัวเข้ารหัส
ขั้นแรก ตัวเข้ารหัสจะบีบอัดข้อมูลอินพุตให้เป็นการแสดงที่มีประสิทธิภาพมากขึ้น โดยทั่วไปตัวเข้ารหัสประกอบด้วยหลายเลเยอร์โดยมีโหนดน้อยลงในแต่ละเลเยอร์ เมื่อข้อมูลถูกประมวลผลผ่านแต่ละเลเยอร์ จำนวนโหนดที่ลดลงจะบังคับให้เครือข่ายเรียนรู้คุณสมบัติที่สำคัญที่สุดของข้อมูลเพื่อสร้างการนำเสนอที่สามารถจัดเก็บในแต่ละเลเยอร์ได้ กระบวนการนี้เรียกว่าการลดขนาด ซึ่งจะแปลงอินพุตให้เป็นการสรุปคุณลักษณะสำคัญของข้อมูลแบบกระชับ ไฮเปอร์พารามิเตอร์หลักในโปรแกรมเปลี่ยนไฟล์ประกอบด้วยจำนวนเลเยอร์และเซลล์ประสาทต่อเลเยอร์ ซึ่งกำหนดความลึกและรายละเอียดของการบีบอัด และฟังก์ชันการเปิดใช้งาน ซึ่งกำหนดวิธีแสดงและแปลงคุณลักษณะข้อมูลในแต่ละเลเยอร์
คอขวด
คอขวดหรือที่เรียกว่าพื้นที่แฝงหรือรหัสคือที่ที่การแสดงข้อมูลอินพุตที่ถูกบีบอัดจะถูกจัดเก็บระหว่างการประมวลผล คอขวดมีจำนวนโหนดน้อย ซึ่งจะจำกัดจำนวนข้อมูลที่สามารถจัดเก็บและกำหนดระดับการบีบอัด จำนวนโหนดที่อยู่ในคอขวดคือไฮเปอร์พารามิเตอร์ที่ปรับแต่งได้ ช่วยให้ผู้ใช้สามารถควบคุมการแลกเปลี่ยนระหว่างการบีบอัดและการเก็บรักษาข้อมูลได้ หากคอขวดมีขนาดเล็กเกินไป ตัวเข้ารหัสอัตโนมัติอาจสร้างข้อมูลขึ้นใหม่อย่างไม่ถูกต้องเนื่องจากสูญเสียรายละเอียดที่สำคัญ ในทางกลับกัน หากคอขวดมีขนาดใหญ่เกินไป ตัวเข้ารหัสอัตโนมัติอาจเพียงแค่คัดลอกข้อมูลอินพุต แทนที่จะเรียนรู้การนำเสนอทั่วไปที่มีความหมาย
ตัวถอดรหัส
ในขั้นตอนสุดท้ายนี้ ตัวถอดรหัสจะสร้างข้อมูลต้นฉบับขึ้นใหม่จากรูปแบบที่บีบอัดโดยใช้คุณสมบัติหลักที่ได้เรียนรู้ในระหว่างกระบวนการเข้ารหัส คุณภาพของการบีบอัดข้อมูลนี้จะถูกวัดปริมาณโดยใช้ข้อผิดพลาดในการสร้างใหม่ ซึ่งเป็นการวัดว่าข้อมูลที่สร้างขึ้นใหม่แตกต่างจากอินพุตอย่างไร โดยทั่วไปข้อผิดพลาดในการสร้างใหม่จะคำนวณโดยใช้ค่าความคลาดเคลื่อนกำลังสองเฉลี่ย (MSE) เนื่องจาก MSE วัดความแตกต่างกำลังสองระหว่างข้อมูลต้นฉบับและข้อมูลที่สร้างขึ้นใหม่ จึงให้วิธีที่ตรงไปตรงมาทางคณิตศาสตร์ในการลงโทษข้อผิดพลาดในการสร้างใหม่ที่มีขนาดใหญ่กว่าได้หนักกว่า
ประเภทของตัวเข้ารหัสอัตโนมัติ
มีตัวเข้ารหัสอัตโนมัติแบบพิเศษหลายประเภท ซึ่งแต่ละประเภทได้รับการปรับให้เหมาะกับการใช้งานเฉพาะ คล้ายกับโครงข่ายประสาทเทียมอื่นๆ
ตัวเข้ารหัสอัตโนมัติ denoising
ตัวเข้ารหัสอัตโนมัติแบบ Denoising ได้รับการออกแบบมาเพื่อสร้างข้อมูลที่สะอาดขึ้นมาใหม่จากอินพุตที่มีสัญญาณรบกวนหรือเสียหาย ในระหว่างการฝึก เสียงรบกวนจะถูกเพิ่มเข้าไปในข้อมูลอินพุตโดยเจตนา ทำให้โมเดลสามารถเรียนรู้คุณสมบัติต่างๆ ที่ยังคงสม่ำเสมอแม้จะมีเสียงรบกวนก็ตาม จากนั้นเอาต์พุตจะถูกเปรียบเทียบกับอินพุตแบบคลีนดั้งเดิม กระบวนการนี้ทำให้ตัวเข้ารหัสอัตโนมัติ denoising มีประสิทธิภาพสูงในงานลดเสียงรบกวนภาพและเสียง รวมถึงการลบเสียงรบกวนพื้นหลังในการประชุมทางวิดีโอ
ตัวเข้ารหัสอัตโนมัติกระจัดกระจาย
ตัวเข้ารหัสอัตโนมัติแบบกระจัดกระจายจะจำกัดจำนวนเซลล์ประสาทที่ทำงานอยู่ ณ เวลาใดก็ตาม ส่งเสริมให้เครือข่ายเรียนรู้การแสดงข้อมูลที่มีประสิทธิภาพมากขึ้นเมื่อเปรียบเทียบกับตัวเข้ารหัสอัตโนมัติมาตรฐาน ข้อจำกัดความกระจัดกระจายนี้บังคับใช้ผ่านการลงโทษที่ไม่สนับสนุนการเปิดใช้งานเซลล์ประสาทมากกว่าเกณฑ์ที่ระบุ ตัวเข้ารหัสอัตโนมัติแบบกระจัดกระจายช่วยลดความซับซ้อนของข้อมูลมิติสูงในขณะที่ยังคงรักษาคุณสมบัติที่สำคัญ ทำให้มีคุณค่าสำหรับงานต่างๆ เช่น การแยกคุณสมบัติที่ตีความได้ และการแสดงภาพชุดข้อมูลที่ซับซ้อน
ตัวเข้ารหัสอัตโนมัติแบบแปรผัน (VAE)
แตกต่างจากตัวเข้ารหัสอัตโนมัติทั่วไป VAE สร้างข้อมูลใหม่โดยการเข้ารหัสคุณลักษณะจากข้อมูลการฝึกอบรมเป็นการแจกแจงความน่าจะเป็น แทนที่จะเป็นจุดคงที่ ด้วยการสุ่มตัวอย่างจากการกระจายนี้ VAE สามารถสร้างข้อมูลใหม่ที่หลากหลาย แทนที่จะสร้างข้อมูลต้นฉบับขึ้นใหม่จากอินพุต ความสามารถนี้ทำให้ VAE มีประโยชน์สำหรับงานสร้างสรรค์ รวมถึงการสร้างข้อมูลสังเคราะห์ ตัวอย่างเช่น ในการสร้างภาพ VAE ที่ได้รับการฝึกอบรมเกี่ยวกับชุดข้อมูลตัวเลขที่เขียนด้วยลายมือสามารถสร้างตัวเลขใหม่ที่ดูสมจริงโดยอิงตามชุดการฝึกอบรมที่ไม่ใช่แบบจำลองที่แน่นอน
ตัวเข้ารหัสอัตโนมัติแบบสัญญา
ตัวเข้ารหัสอัตโนมัติแบบสัญญาจะเสนอบทลงโทษเพิ่มเติมในระหว่างการคำนวณข้อผิดพลาดในการประกอบใหม่ กระตุ้นให้โมเดลเรียนรู้การแสดงคุณลักษณะที่ทนทานต่อสัญญาณรบกวน บทลงโทษนี้ช่วยป้องกันการติดตั้งมากเกินไปโดยส่งเสริมการเรียนรู้ฟีเจอร์ที่ไม่แปรเปลี่ยนกับรูปแบบเล็กน้อยของข้อมูลอินพุต เป็นผลให้ตัวเข้ารหัสอัตโนมัติแบบหดตัวมีความทนทานต่อสัญญาณรบกวนมากกว่าตัวเข้ารหัสอัตโนมัติมาตรฐาน
ตัวเข้ารหัสอัตโนมัติแบบ Convolutional (CAE)
CAE ใช้เลเยอร์แบบหมุนวนเพื่อบันทึกลำดับชั้นและรูปแบบเชิงพื้นที่ภายในข้อมูลมิติสูง การใช้เลเยอร์แบบหมุนวนทำให้ CAE เหมาะอย่างยิ่งสำหรับการประมวลผลข้อมูลภาพ โดยทั่วไปแล้ว CAE จะใช้ในงานต่างๆ เช่น การบีบอัดภาพ และการตรวจจับความผิดปกติในภาพ
การประยุกต์ใช้ตัวเข้ารหัสอัตโนมัติใน AI
ตัวเข้ารหัสอัตโนมัติมีการใช้งานหลายอย่าง เช่น การลดขนาด ลดสัญญาณรบกวนของภาพ และการตรวจจับความผิดปกติ
การลดขนาด
ตัวเข้ารหัสอัตโนมัติเป็นเครื่องมือที่มีประสิทธิภาพในการลดขนาดของข้อมูลอินพุตโดยยังคงรักษาคุณสมบัติหลักไว้ กระบวนการนี้มีประโยชน์สำหรับงานต่างๆ เช่น การแสดงภาพชุดข้อมูลที่มีมิติสูงและการบีบอัดข้อมูล ด้วยการลดความซับซ้อนของข้อมูล การลดขนาดยังช่วยเพิ่มประสิทธิภาพในการคำนวณ โดยลดทั้งขนาดและความซับซ้อน
การตรวจจับความผิดปกติ
ด้วยการเรียนรู้คุณสมบัติที่สำคัญของชุดข้อมูลเป้าหมาย ตัวเข้ารหัสอัตโนมัติสามารถแยกแยะระหว่างข้อมูลปกติและข้อมูลผิดปกติได้เมื่อได้รับอินพุตใหม่ การเบี่ยงเบนไปจากปกติจะระบุด้วยอัตราข้อผิดพลาดในการฟื้นฟูที่สูงกว่าปกติ ด้วยเหตุนี้ ตัวเข้ารหัสอัตโนมัติจึงสามารถนำไปใช้กับโดเมนที่หลากหลาย เช่น การบำรุงรักษาเชิงคาดการณ์ และความปลอดภัยของเครือข่ายคอมพิวเตอร์
การปฏิเสธ
ตัวเข้ารหัสอัตโนมัติที่ลดสัญญาณรบกวนสามารถล้างข้อมูลที่มีสัญญาณรบกวนได้โดยการเรียนรู้ที่จะสร้างข้อมูลใหม่จากอินพุตการฝึกอบรมที่มีสัญญาณรบกวน ความสามารถนี้ทำให้ตัวเข้ารหัสอัตโนมัติ denoising มีคุณค่าสำหรับงานต่างๆ เช่น การปรับภาพให้เหมาะสม รวมถึงการปรับปรุงคุณภาพของภาพถ่ายที่พร่ามัว ตัวเข้ารหัสอัตโนมัติแบบ Denoising ยังมีประโยชน์ในการประมวลผลสัญญาณ ซึ่งสามารถทำความสะอาดสัญญาณรบกวนเพื่อการประมวลผลและการวิเคราะห์ที่มีประสิทธิภาพมากขึ้น
ข้อดีของตัวเข้ารหัสอัตโนมัติ
โปรแกรมเข้ารหัสอัตโนมัติมีข้อดีที่สำคัญหลายประการ ซึ่งรวมถึงความสามารถในการเรียนรู้จากข้อมูลที่ไม่มีป้ายกำกับ เรียนรู้คุณสมบัติโดยอัตโนมัติโดยไม่ต้องมีคำแนะนำที่ชัดเจน และแยกคุณสมบัติที่ไม่เป็นเชิงเส้น
สามารถเรียนรู้จากข้อมูลที่ไม่มีป้ายกำกับ
ตัวเข้ารหัสอัตโนมัติคือโมเดลการเรียนรู้ของเครื่องที่ไม่ได้รับการดูแล ซึ่งหมายความว่าสามารถเรียนรู้คุณลักษณะข้อมูลพื้นฐานจากข้อมูลที่ไม่มีป้ายกำกับได้ ความสามารถนี้หมายความว่าสามารถใช้ตัวเข้ารหัสอัตโนมัติกับงานที่ข้อมูลที่ติดป้ายกำกับอาจขาดแคลนหรือไม่พร้อมใช้งานได้
การเรียนรู้คุณสมบัติอัตโนมัติ
เทคนิคการแยกคุณสมบัติมาตรฐาน เช่น การวิเคราะห์องค์ประกอบหลัก (PCA) มักจะทำไม่ได้ในทางปฏิบัติเมื่อพูดถึงการจัดการชุดข้อมูลที่ซับซ้อนและ/หรือขนาดใหญ่ เนื่องจากตัวเข้ารหัสอัตโนมัติได้รับการออกแบบโดยคำนึงถึงการลดขนาด จึงสามารถเรียนรู้คุณสมบัติหลักและรูปแบบในข้อมูลได้โดยอัตโนมัติโดยไม่ต้องออกแบบคุณสมบัติด้วยตนเอง
การแยกคุณสมบัติแบบไม่เชิงเส้น
ตัวเข้ารหัสอัตโนมัติสามารถจัดการความสัมพันธ์แบบไม่เชิงเส้นในข้อมูลที่ป้อนเข้าได้ ทำให้โมเดลสามารถจับภาพคุณลักษณะหลักจากการแสดงข้อมูลที่ซับซ้อนมากขึ้นได้ ความสามารถนี้หมายความว่าตัวเข้ารหัสอัตโนมัติมีข้อได้เปรียบเหนือโมเดลที่สามารถทำงานได้กับข้อมูลเชิงเส้นเท่านั้น เนื่องจากสามารถจัดการกับชุดข้อมูลที่ซับซ้อนมากขึ้นได้
ข้อจำกัดของตัวเข้ารหัสอัตโนมัติ
เช่นเดียวกับรุ่น ML อื่นๆ ตัวเข้ารหัสอัตโนมัติมีข้อเสียของตัวเอง ซึ่งรวมถึงการขาดความสามารถในการตีความ ความต้องการชุดข้อมูลการฝึกอบรมขนาดใหญ่เพื่อให้ทำงานได้ดี และความสามารถในการสรุปทั่วไปที่จำกัด
ขาดการตีความ
เช่นเดียวกับโมเดล ML ที่ซับซ้อนอื่นๆ ตัวเข้ารหัสอัตโนมัติประสบปัญหาจากการขาดความสามารถในการตีความ ซึ่งหมายความว่าเป็นการยากที่จะเข้าใจความสัมพันธ์ระหว่างข้อมูลอินพุตและเอาต์พุตของโมเดล ในโปรแกรมเข้ารหัสอัตโนมัติ การขาดความสามารถในการตีความนี้เกิดขึ้นเนื่องจากโปรแกรมเข้ารหัสอัตโนมัติเรียนรู้คุณสมบัติต่างๆ โดยอัตโนมัติ ซึ่งต่างจากรุ่นดั้งเดิมซึ่งมีการกำหนดคุณสมบัติไว้อย่างชัดเจน การแสดงคุณลักษณะที่เครื่องสร้างขึ้นนี้มักมีลักษณะเป็นนามธรรมสูงและมีแนวโน้มที่จะขาดคุณลักษณะที่มนุษย์สามารถตีความได้ ทำให้เป็นการยากที่จะเข้าใจว่าแต่ละองค์ประกอบในการเป็นตัวแทนหมายถึงอะไร
ต้องใช้ชุดข้อมูลการฝึกอบรมขนาดใหญ่
โดยทั่วไปตัวเข้ารหัสอัตโนมัติต้องใช้ชุดข้อมูลการฝึกอบรมขนาดใหญ่เพื่อเรียนรู้การนำเสนอคุณสมบัติข้อมูลที่สำคัญแบบทั่วไปได้ เมื่อพิจารณาชุดข้อมูลการฝึกอบรมขนาดเล็ก ตัวเข้ารหัสอัตโนมัติอาจมีแนวโน้มที่จะมีการใช้งานมากเกินไป ส่งผลให้มีภาพรวมที่ไม่ดีเมื่อนำเสนอด้วยข้อมูลใหม่ ในทางกลับกัน ชุดข้อมูลขนาดใหญ่ให้ความหลากหลายที่จำเป็นสำหรับตัวเข้ารหัสอัตโนมัติเพื่อเรียนรู้คุณลักษณะของข้อมูลที่สามารถนำไปใช้ในสถานการณ์ที่หลากหลาย
ลักษณะทั่วไปที่จำกัดสำหรับข้อมูลใหม่
ตัวเข้ารหัสอัตโนมัติที่ได้รับการฝึกบนชุดข้อมูลเดียวมักจะมีความสามารถในการวางข้อมูลทั่วไปที่จำกัด ซึ่งหมายความว่าไม่สามารถปรับตัวเข้ากับชุดข้อมูลใหม่ได้ ข้อจำกัดนี้เกิดขึ้นเนื่องจากตัวเข้ารหัสอัตโนมัติมุ่งเน้นไปที่การสร้างข้อมูลใหม่โดยอิงตามคุณสมบัติที่โดดเด่นจากชุดข้อมูลที่กำหนด ด้วยเหตุนี้ ตัวเข้ารหัสอัตโนมัติมักจะโยนรายละเอียดเล็กๆ น้อยๆ ออกจากข้อมูลระหว่างการฝึก และไม่สามารถจัดการข้อมูลที่ไม่สอดคล้องกับการแสดงคุณสมบัติทั่วไปได้