คำถามติดแท็ก autoencoders

เครือข่ายประสาทเทียมแบบ Feedforward ได้รับการฝึกฝนให้สร้างอินพุตของตนเองขึ้นใหม่ โดยปกติแล้วหนึ่งในเลเยอร์ที่ซ่อนอยู่จะเป็น "คอขวด" ซึ่งนำไปสู่การตีความตัวเข้ารหัส -> ตัวถอดรหัส

2
ต้นกำเนิดของเครือข่ายประสาทเทียม autoencoder คืออะไร?
ฉันค้นหาใน Google, Wikipedia, Google scholar และอื่น ๆ แต่ไม่พบต้นกำเนิดของ Autoencoders บางทีมันอาจเป็นหนึ่งในแนวคิดเหล่านั้นที่มีการพัฒนาอย่างค่อยเป็นค่อยไปและเป็นไปไม่ได้ที่จะย้อนกลับไปยังจุดเริ่มต้นที่ชัดเจน แต่ถึงกระนั้นฉันก็ยังอยากจะสรุปบางส่วนของขั้นตอนหลักของการพัฒนาของพวกเขา บทที่เกี่ยวกับ autoencodersในเอียน Goodfellow, โยชัวเบนจิโอและหนังสือการเรียนรู้ลึกแอรอน Courville กล่าวว่า: แนวคิดของ autoencoders เป็นส่วนหนึ่งของภูมิทัศน์ทางประวัติศาสตร์ของโครงข่ายประสาทเทียมมานานหลายทศวรรษ (LeCun, 1987; Bourlard และ Kamp, 1988; Hinton and Zemel, 1994) ตามเนื้อผ้า autoencoders ถูกนำมาใช้เพื่อลดมิติหรือการเรียนรู้คุณสมบัติ งานนำเสนอนี้โดย Pascal Vincent พูดว่า: Denoising ที่ใช้ autoencoders แบบดั้งเดิมนั้นมีการนำมาใช้ก่อนหน้านี้มาก (LeCun, 1987; Gallinari และคณะ, 1987) ซึ่งเป็นทางเลือกสำหรับเครือข่าย Hopfield (Hopfield, 1982) …

4
อะไรคือความแตกต่างระหว่าง autoencoders และ t-SNE
เท่าที่ฉันรู้ทั้งตัวเข้ารหัสอัตโนมัติและ t-SNE นั้นใช้สำหรับการลดขนาดแบบไม่เชิงเส้น อะไรคือความแตกต่างระหว่างพวกเขาและทำไมฉันถึงควรใช้อันหนึ่งกับอีกอัน?

1
ฉันสามารถใช้ ReLU ใน autoencoder เป็นฟังก์ชั่นการเปิดใช้งานได้หรือไม่?
เมื่อติดตั้ง autoencoder กับโครงข่ายประสาทเทียมคนส่วนใหญ่จะใช้ sigmoid เป็นฟังก์ชั่นการเปิดใช้งาน เราสามารถใช้ ReLU แทนได้หรือไม่? (เนื่องจาก ReLU ไม่มีขีด จำกัด บนขอบเขตโดยทั่วไปหมายถึงภาพอินพุตสามารถมีพิกเซลใหญ่กว่า 1 ซึ่งแตกต่างจากเกณฑ์ที่ จำกัด สำหรับ autoencoder เมื่อใช้ sigmoid)

2
KL ขาดทุนด้วยยูนิตเสียน
ฉันได้ใช้ VAE และฉันสังเกตเห็นการใช้งานที่แตกต่างกันสองทางออนไลน์ของความแตกต่างที่ไม่ซับซ้อนของ gaussian KL แบบไม่ระบุตัวตน ความแตกต่างดั้งเดิมตามที่นี่คือ หากเราถือว่าก่อนหน้านี้คือหน่วย gaussian เช่นและสิ่งนี้จะลดความซับซ้อนลงเหลือ และนี่คือที่ที่ความสับสนของฉันอยู่ แม้ว่าฉันจะพบ repos github ที่คลุมเครือไม่กี่อย่างกับการใช้งานข้างต้นสิ่งที่ฉันมักจะใช้คือ:KLL o s s= บันทึก(σ2σ1) +σ21+ (μ1-μ2)22σ22-12KLล.โอss=เข้าสู่ระบบ⁡(σ2σ1)+σ12+(μ1-μ2)22σ22-12 KL_{loss}=\log(\frac{\sigma_2}{\sigma_1})+\frac{\sigma_1^2+(\mu_1-\mu_2)^2}{2\sigma^2_2}-\frac{1}{2} μ2= 0μ2=0\mu_2=0σ2= 1σ2=1\sigma_2=1KLL o s s= - บันทึก(σ1) +σ21+μ212-12KLล.โอss=-เข้าสู่ระบบ⁡(σ1)+σ12+μ122-12 KL_{loss}=-\log(\sigma_1)+\frac{\sigma_1^2+\mu_1^2}{2}-\frac{1}{2} KLL o s s= -12( 2 บันทึก(σ1) -σ21-μ21+ 1 )KLล.โอss=-12(2เข้าสู่ระบบ⁡(σ1)-σ12-μ12+1) KL_{loss}=-\frac{1}{2}(2\log(\sigma_1)-\sigma_1^2-\mu_1^2+1) = -12( บันทึก(σ1) -σ1-μ21+ 1 )=-12(เข้าสู่ระบบ⁡(σ1)-σ1-μ12+1) =-\frac{1}{2}(\log(\sigma_1)-\sigma_1-\mu^2_1+1) …

1
ไม่สามารถทำให้ฟังก์ชั่นเครือข่าย autoencoder นี้ถูกต้อง (กับชั้น convolutional และ maxpool)
เครือข่ายAutoencoderดูเหมือนจะมีความซับซ้อนกว่าเครือข่าย MLP ลักษณนามทั่วไป หลังจากความพยายามหลายครั้งในการใช้Lasagneทุกสิ่งที่ฉันได้รับในผลลัพธ์ที่สร้างขึ้นใหม่นั้นเป็นสิ่งที่คล้ายกับค่าเฉลี่ยที่เบลอที่สุดของภาพทั้งหมดของฐานข้อมูลMNISTโดยไม่แยกแยะว่าตัวเลขที่ป้อนเข้านั้นคืออะไร โครงสร้างเครือข่ายที่ฉันเลือกคือเลเยอร์น้ำตกต่อไปนี้: ชั้นอินพุต (28x28) 2D convolutional layer ขนาดตัวกรอง 7x7 Max Pooling layer, ขนาด 3x3, stride 2x2 ชั้นแบนราบหนาแน่น (เชื่อมต่ออย่างเต็มที่) 10 ยูนิต (นี่คือคอขวด) ชั้นหนาแน่น (เชื่อมต่ออย่างเต็มที่) 121 หน่วย ปรับขนาดเลเยอร์เป็น 11x11 2D convolutional layer ขนาดตัวกรอง 3x3 ตัวคูณยกระดับ 2D 2 2D convolutional layer ขนาดตัวกรอง 3x3 ตัวคูณยกระดับ 2D 2 2D convolutional layer ขนาดตัวกรอง …

1
ความแตกต่างระหว่างตัวกรองที่เรียนรู้ใน autoencoder และเครือข่ายประสาทเทียมคืออะไร?
ในซีเอ็นเอ็นเราจะได้เรียนรู้ตัวกรองเพื่อสร้างแผนที่คุณลักษณะในเลเยอร์ convolutional ใน Autoencoder หน่วยที่ซ่อนอยู่ของแต่ละเลเยอร์ถือเป็นตัวกรองได้ ความแตกต่างระหว่างตัวกรองที่เรียนในเครือข่ายทั้งสองนี้คืออะไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.