ตัวอย่างการสร้างการฝัง

ตัวอย่างนี้แสดงวิธีสร้างการฝังที่ใช้ในมาตรวัดความคล้ายคลึงภายใต้การควบคุมดูแล

ลองนึกภาพว่าคุณมีชุดข้อมูลที่พักอาศัยชุดเดียวกันกับที่คุณใช้เมื่อสร้างมาตรวัดความคล้ายคลึงกันด้วยตนเอง

ฟีเจอร์ประเภท
ราคาจำนวนเต็มบวก
ขนาด ค่าจุดลอยตัวบวกในหน่วยตารางเมตร
รหัสไปรษณีย์จำนวนเต็ม
จำนวนห้องนอนจำนวนเต็ม
ประเภทบ้านค่าข้อความจาก "single_family", "multifamily", "partment," "condo"
โรงจอดรถ0/1 สําหรับไม่/ใช่
สีหมวดหมู่ที่หลากหลาย: อย่างน้อย 1 ค่าจากสีมาตรฐาน ได้แก่ "สีขาว" "สีเหลือง" "เขียว" เป็นต้น

การประมวลผลข้อมูลล่วงหน้า

คุณต้องประมวลผลข้อมูลล่วงหน้าก่อนใช้ข้อมูลฟีเจอร์เป็นอินพุต ขั้นตอนก่อนการประมวลผลจะเป็นไปตามขั้นตอนที่คุณทําเมื่อสร้างมาตรวัดความคล้ายคลึงกันด้วยตนเอง ข้อมูลสรุปมีดังนี้

ฟีเจอร์ประเภทหรือการจัดจําหน่ายแอ็กชัน
ราคาการกระจายตัวของ Poisson จงวัดและปรับขนาดเป็น [0,1]
ขนาดการกระจายตัวของ Poisson จงวัดและปรับขนาดเป็น [0,1]
รหัสไปรษณีย์เชิงหมวดหมู่ แปลงเป็นลองจิจูดและละติจูด คํานวณและปรับขนาดเป็น [0,1]
จำนวนห้องนอนจำนวนเต็ม ค่าที่ผิดปกติของคลิปและปรับขนาดเป็น [0,1]
ประเภทบ้านเชิงหมวดหมู่ แปลงเป็นการเข้ารหัสแบบ 1 หัว
โรงจอดรถ0 หรือ 1 ปล่อยไว้ตามเดิม
สีเชิงหมวดหมู่ แปลงเป็นค่า RGB และประมวลผลเป็นข้อมูลตัวเลข

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเข้ารหัสแบบ 1 ครั้งได้ที่การฝัง: ข้อมูลอินพุตเชิงหมวดหมู่

เลือกตัวคาดการณ์หรือตัวเข้ารหัสอัตโนมัติ

หากต้องการสร้างการฝัง คุณจะเลือกโปรแกรมเข้ารหัสอัตโนมัติหรือตัวคาดการณ์ได้ อย่าลืมว่าตัวเลือกเริ่มต้นของคุณคือตัวเข้ารหัสอัตโนมัติ คุณจะเลือกตัวคาดการณ์แทนหากฟีเจอร์บางอย่างในชุดข้อมูลกําหนดความคล้ายคลึงกัน สําหรับความสมบูรณ์ของการพิจารณาทั้ง 2 กรณี

ฝึกตัวคาดการณ์

คุณต้องเลือกฟีเจอร์เหล่านั้นเป็นป้ายกํากับการฝึกอบรมสําหรับ DNN ซึ่งเป็นสิ่งสําคัญในการกําหนดความคล้ายคลึงระหว่างตัวอย่างของคุณ สมมติว่าราคาเป็นสิ่งสําคัญที่สุดในการกําหนดความคล้ายคลึงกันของบ้านแต่ละหลัง

เลือกราคาเป็นป้ายกํากับการฝึกอบรม แล้วนําออกจากข้อมูลฟีเจอร์อินพุตไปยัง DNN ฝึก DNN โดยใช้ฟีเจอร์อื่นๆ ทั้งหมดเป็นข้อมูลอินพุต สําหรับการฝึก ฟังก์ชันการสูญเสียเป็นเพียง MSE ระหว่างราคาที่คาดการณ์กับราคาจริง หากต้องการเรียนรู้วิธีฝึก DNN โปรดดูการฝึกอบรมโครงข่ายระบบประสาทเทียม

ฝึกเครื่องมือเข้ารหัสอัตโนมัติ

ฝึกเครื่องมือเข้ารหัสอัตโนมัติในชุดข้อมูลโดยทําตามขั้นตอนต่อไปนี้

  1. ตรวจสอบว่าเลเยอร์ที่ซ่อนอยู่ของตัวเข้ารหัสอัตโนมัติมีขนาดเล็กกว่าเลเยอร์อินพุตและเอาต์พุต
  2. คํานวณการสูญเสียสําหรับเอาต์พุตแต่ละรายการตามที่อธิบายไว้ในการวัดความคล้ายกันที่มีการควบคุมดูแล
  3. สร้างฟังก์ชันการสูญเสียโดยการรวมการสูญเสียสําหรับเอาต์พุตแต่ละรายการ ให้น้ําหนักของแต่ละฟีเจอร์เท่ากัน เช่น เพราะข้อมูลสีจะประมวลผลเป็น RGB ให้ถ่วงน้ําหนักแต่ละ RGB ที่ส่งออกทีละ 1/3
  4. ฝึก DNN

การแยกการฝังจาก DNN

หลังจากการฝึก DNN ไม่ว่าจะเป็นตัวคาดการณ์หรือตัวเข้ารหัสอัตโนมัติ ให้ดึงการฝังสําหรับตัวอย่างจาก DNN แยกการฝังโดยใช้ข้อมูลฟีเจอร์ของตัวอย่างเป็นอินพุต แล้วอ่านเอาต์พุตของเลเยอร์ที่ซ่อนอยู่สุดท้าย เอาต์พุตเหล่านี้จะสร้างเวกเตอร์การฝัง อย่าลืมว่าเวกเตอร์สําหรับบ้านที่คล้ายกันควรอยู่ใกล้กันมากกว่าเวกเตอร์สําหรับบ้านที่ไม่คล้ายกัน

ถัดไป คุณจะเห็นวิธีวัดความคล้ายคลึงสําหรับความคล้ายคลึงกันของคู่ตัวอย่างโดยใช้เวกเตอร์การฝัง