Apache MXNet - สถาปัตยกรรมระบบ

บทนี้จะช่วยคุณในการทำความเข้าใจเกี่ยวกับสถาปัตยกรรมระบบ MXNet เริ่มต้นด้วยการเรียนรู้เกี่ยวกับโมดูล MXNet

โมดูล MXNet

แผนภาพด้านล่างเป็นสถาปัตยกรรมระบบ MXNet และแสดงโมดูลและส่วนประกอบหลักของ MXNet modules and their interaction.

ในแผนภาพด้านบน -

  • โมดูลในกล่องสีฟ้าคือ User Facing Modules.

  • โมดูลในกล่องสีเขียวคือ System Modules.

  • ลูกศรทึบแสดงถึงการพึ่งพาสูงกล่าวคือต้องพึ่งพาอินเทอร์เฟซเป็นอย่างมาก

  • ลูกศรประแสดงถึงการพึ่งพาแสงกล่าวคือโครงสร้างข้อมูลที่ใช้เพื่อความสะดวกและความสอดคล้องของอินเทอร์เฟซ ในความเป็นจริงมันสามารถถูกแทนที่ด้วยทางเลือกอื่น

ให้เราพูดคุยเพิ่มเติมเกี่ยวกับการเผชิญหน้ากับผู้ใช้และโมดูลระบบ

โมดูลสำหรับผู้ใช้

โมดูลสำหรับผู้ใช้มีดังต่อไปนี้ -

  • NDArray- มีโปรแกรมจำเป็นที่ยืดหยุ่นสำหรับ Apache MXNet เป็นอาร์เรย์ n มิติแบบไดนามิกและอะซิงโครนัส

  • KVStore- ทำหน้าที่เป็นส่วนต่อประสานสำหรับการซิงโครไนซ์พารามิเตอร์ที่มีประสิทธิภาพ ใน KVStore KV ย่อมาจาก Key-Value ดังนั้นจึงเป็นอินเทอร์เฟซการจัดเก็บคีย์ - ค่า

  • Data Loading (IO) - โมดูลที่หันหน้าเข้าหาผู้ใช้นี้ใช้สำหรับการโหลดและการเพิ่มข้อมูลแบบกระจายอย่างมีประสิทธิภาพ

  • Symbol Execution- เป็นตัวดำเนินการกราฟสัญลักษณ์แบบคงที่ ให้การดำเนินการและการเพิ่มประสิทธิภาพกราฟสัญลักษณ์ที่มีประสิทธิภาพ

  • Symbol Construction - โมดูลที่เผชิญหน้ากับผู้ใช้นี้ช่วยให้ผู้ใช้สามารถสร้างกราฟการคำนวณเช่นการกำหนดค่าสุทธิ

โมดูลระบบ

โมดูลระบบมีดังนี้ -

  • Storage Allocator - โมดูลระบบนี้ตามชื่อที่แนะนำจะจัดสรรและรีไซเคิลบล็อกหน่วยความจำอย่างมีประสิทธิภาพบนโฮสต์เช่น CPU และอุปกรณ์ต่างๆเช่น GPU

  • Runtime Dependency Engine - ตารางเวลาโมดูลกลไกการพึ่งพารันไทม์ตลอดจนเรียกใช้การดำเนินการตามการพึ่งพาการอ่าน / เขียน

  • Resource Manager - โมดูลระบบ Resource Manager (RM) จัดการทรัพยากรทั่วโลกเช่นตัวสร้างตัวเลขสุ่มและพื้นที่ชั่วคราว

  • Operator - โมดูลระบบตัวดำเนินการประกอบด้วยตัวดำเนินการทั้งหมดที่กำหนดการคำนวณการไปข้างหน้าแบบคงที่และการไล่ระดับสีเช่น backpropagation