ตัวเข้ารหัสอัตโนมัติ
ตัวเข้ารหัสอัตโนมัติ (autoencoder) เป็นขั้นตอนวิธีสำหรับการลดมิติโดยใช้โครงข่ายประสาทเทียมในการเรียนรู้ของเครื่อง วิธีนี้ถูกเสนอครั้งแรกโดยเจฟฟรีย์ ฮินตันในปี 2006[1]
ภาพรวม
[แก้]ตัวเข้ารหัสอัตโนมัติเป็นโครงข่ายประสาทเทียมสามชั้นที่ทำการเรียนรู้แบบไม่มีผู้สอนโดยใช้ข้อมูลเดียวกันสำหรับชั้นป้อนเข้าและชั้นขาออก เมื่อข้อมูลการฝึกเป็นมูลค่าจริงและไม่มีการแบ่งเป็นช่วง ฟังก์ชันกระตุ้นของชั้นขาออกมักจะถูกเลือกเป็นฟังก์ชันเอกลักษณ์ (นั่นคือชั้นขาออกเป็นการแปลงเชิงเส้น) หากเราเลือกใช้ฟังก์ชันเอกลักษณะเป็นฟังก์ชันกระตุ้นของชั้นตรงกลาง ผลลัพธ์จะแทบไม่ต่างจากการวิเคราะห์องค์ประกอบหลัก ในทางปฏิบัติวิธีนี้สามารถใช้เพื่อทำการตรวจหาความผิดปกติโดยพิจารณาความแตกต่างระหว่างค่าข้อมูลป้อนเข้าและข้อมูลขาออก
ลักษณะเด่นและข้อจำกัด
[แก้]ตัวเข้ารหัสอัตโนมัติได้รับการออกแบบให้มีคุณสมบัติที่จำเป็นสำหรับการลดมิติ
โครงสร้างภายในตัวเข้ารหัสอัตโนมัติถูกออกแบบให้จำนวนขนาดของชั้นที่ซ่อนอยู่ มีขนาดเล็กกว่าจำนวนของชั้นป้อนเข้าและชั้นขาออก เนื่องจากว่าถ้าหาก แล้ว ตัวเข้ารหัสอัตโนมัติจะสามารถทำให้ผิดพลาดในการสร้างใหม่เป็นศูนย์ได้โดยใช้เพียงการแปลงเอกลักษณ์เท่านั้น[2]
ตัวเข้ารหัสอัตโนมัติสามารถทำการลดมิติข้อมุลลง แต่ไม่ได้หมายความว่าจะสามารถใช้เป็นการเรียนรู้ต้วแทนที่ดีเสมอไป[3] การลดค่า ลงจะทำให้คงไว้แค่ค่าลักษณะที่มีปริมาณข้อมูลมากภายในค่าป้อนเข้า เรียกว่าเป็นการบีบอัดคงข้อมูลหลัก
ทฤษฎี
[แก้]ได้มีการวิเคราะห์ทางทฤษฎีถึงเหตุผลที่การเข้ารหัสอัตโนมัติสามารถเรียนรู้การสร้างใหม่พร้อมทั้งทำการลดมิติได้
โครงข่ายตัวเข้ารหัสอัตโนมัติ ประกอบขึ้นจากโครงข่ายตัวเข้ารหัส และโครงข่ายตัวถอดรหัส ในการตีความเชิงกำหนด AE จะให้ข้อมูลที่สร้างขึ้นใหม่จากข้อมูลขาเข้าที่ป้อนเข้าไปโดยตรง นั่นคือ
การตีความเชิงความน่าจะเป็น
[แก้]ตัวเข้ารหัสอัตโนมัติถือได้ว่าเป็นแบบจำลองตัวแปรแฝงเชิงลึกประเภทหนึ่งจากมุมมองของ แบบจำลองความน่าจะเป็น และสามารถเขียนเป็นสูตรได้ดังต่อไปนี้
นั่นคือสามารถอธิบายได้ว่า จะให้ค่าพารามิเตอร์การแจกแจง และได้ค่า โดยการแจกแจง[4][5] เมื่อใช้ ร่วมกันภายในตัวเข้ารหัสอัตโนมัติสามารถแสดงได้ในรูปนิพจน์ความน่าจะเป็นดังต่อไปนี้:
ฟังก์ชันการสูญเสียต่าง ๆ รวมถึงค่าคลาดเคลื่อนกำลังสองเฉลี่ย (MSE, L2) ถูกนำมาใช้เชิงประจักษ์ (จากมุมมองที่กำหนด) สำหรับการเรียนรู้ของตัวเข้ารหัสอัตโนมัติ ผลที่ได้เป็นเพียงเชิงประจักษ์และไม่อาจรับประกันได้ว่าการเรียนรู้จะสิ้นสุดโดยลู่เข้าเสมอไป
แบบจำลองการแจกแจงแบบปรกติความแปรปรวนคงที่
[แก้]เมื่อพิจารณาการแจกแจงแบบปกติที่มีความแปรปรวนคงที่ ค่าลบของลอการิทึมภาวะน่าจะเป็น จะได้เป็น:
ซึ่งสามารถตีความได้ว่าเป็นค่าคลาดเคลื่อนกำลังสองของ และ นั่นคือการทำให้ค่าลบของลอการิทึมภาวะน่าจะเป็นของ มีค่าต่ำสุด ถือได้ว่าเทียบเท่ากับการทำให้ค่าคลาดเคลื่อนกำลังสองของ มีค่าต่ำสุด[6] กล่าวอีกนัยหนึ่งคือ แบบจำลองการเข้ารหัสอัตโนมัติที่ได้รับการฝึกให้เรียนรู้โดยมีค่าคลาดเคลื่อนกำลังสองสามารถมองได้ว่าเป็น แบบจำลองสุ่มตัวอย่างค่าความถี่สูงสุดจากการแจกแจงแบบปรกติความแปรปรวนคงที่ซึ่งถูกประมาณว่าภาวะน่าจะเป็นสูงสุด
อ้างอิง
[แก้]- ↑ Geoffrey E. Hinton; R. R. Salakhutdinov (2006-07-28). "Reducing the Dimensionality of Data with Neural Networks" (PDF). Science. 313 (5786): 504–507.
- ↑ "autoencoder where Y is of the same dimensionality as X (or larger) can achieve perfect reconstruction simply by learning an identity mapping." Vincent. (2010). Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion.
- ↑ "The criterion that representation Y should retain information about input X is not by itself sufficient to yield a useful representation." Vincent. (2010). Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion.
- ↑ "a deterministic mapping from X to Y, that is, ... equivalently ... The deterministic mapping that transforms an input vector into hidden representation is called the encoder." Vincent. (2010). Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion.
- ↑ ". This mapping is called the decoder. ... In general is not to be interpreted as an exact reconstruction of , but rather in probabilistic terms as the parameters (typically the mean) of a distribution " Vincent. (2010). Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion.
- ↑ " is called the decoder ... ... associated loss function ... ... This yields ... This is the squared error objective found in most traditional autoencoders." Vincent. (2010). Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion.