Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

รับค่าผกผันของอาร์เรย์สี่มิติใน Python


ในการคำนวณค่าผกผันของอาร์เรย์สี่มิติ ให้ใช้เมธอด numpy.linalg.tensorinv() ใน Python ผลลัพธ์ที่ได้คือผกผันสำหรับสัมพัทธ์กับการดำเนินการ tensordot tensordot(a, b, ind), i e. จนถึงความแม่นยำทศนิยม tensordot(tensorinv(a), a, ind) คือเทนเซอร์ "เอกลักษณ์" สำหรับการทำงานของเทนซอร์ดอต

วิธีการส่งกลับค่าผกผันเทนเซอร์ดอท a.shape[ind:] + a.shape[:ind] พารามิเตอร์ที่ 1 คือ a เทนเซอร์เพื่อ 'กลับด้าน' รูปร่างของมันต้องเป็น 'สี่เหลี่ยม' ผม e., prod(a.shape[:ind]) ==prod(a.shape[ind:]). พารามิเตอร์ตัวที่ 2 คือ ind จำนวนดัชนีแรกที่เกี่ยวข้องกับผลรวมผกผัน ต้องเป็นจำนวนเต็มบวก ค่าเริ่มต้นคือ 2

ขั้นตอน

ขั้นแรก นำเข้าไลบรารีที่จำเป็น-

นำเข้า numpy เป็น npfrom numpy.linalg นำเข้า inv

สร้างอาร์เรย์ numpy.eye() ส่งคืนอาร์เรย์ 2 มิติโดยมีอาร์เรย์ในแนวทแยงและค่าศูนย์อยู่ที่อื่น -

arr =np.eye(4*6)

การเปลี่ยนรูปร่างของอาร์เรย์ที่สร้างขึ้นด้านบน -

arr.shape =(4, 6, 8, 3)

แสดงอาร์เรย์ -

print("Our Array...\n",arr)

ตรวจสอบขนาด -

print("\nขนาดของอาร์เรย์ของเรา...\n",arr.nim)

รับประเภทข้อมูล -

print("\nประเภทข้อมูลของวัตถุ Array...\n",arr.dtype)

รับรูปร่าง -

print("\nรูปร่างของวัตถุ Array...\n",arr.shape)

ในการคำนวณค่าผกผันของอาร์เรย์สี่มิติ ใช้วิธี numpy.linalg.tensorinv() ใน Python -

พิมพ์("\nผลลัพธ์...\n",np.linalg.tensorinv(arr))

ตัวอย่าง

นำเข้า numpy เป็น npfrom numpy.linalg นำเข้า inv# สร้างอาร์เรย์ # numpy.eye() ส่งคืนอาร์เรย์ 2 มิติพร้อมอาร์เรย์ 2 มิติในแนวทแยงและค่าศูนย์ที่อื่นarr =np.eye(4*6)# การเปลี่ยนรูปร่าง ของอาร์เรย์ที่สร้างขึ้น abovearr.shape =(4, 6, 8, 3)# Display the arrayprint("Our Array...\n",arr)# Check the Dimensionsprint("\nDimensions of our Array...\n ",arr.nim)# รับ Datatypeprint("\nประเภทข้อมูลของวัตถุ Array...\n",arr.dtype)# รับ Shapeprint("\nรูปร่างของวัตถุ Array...\n",arr. รูปร่าง)# ในการคำนวณค่าผกผันของอาร์เรย์สี่มิติ ใช้วิธี numpy.linalg.tensorinv() ใน Python.print("\nResult...\n",np.linalg.tensorinv(arr)) 

ผลลัพธ์

อาร์เรย์ของเรา... [[[[1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.0.]] [[[0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.0.]] [[[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.0.]] [[[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.]]]]ขนาดของ Array...4Datatype ของ Array object...float64Shape of our Array object...(4, 6, 8, 3)Result... [[[[1. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 1. 0. 0. 0. 0] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 0. 0. ] [1. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. 0] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ] [1. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. 0] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0. ]]] [[[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. ] [1. 0. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. ]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. ]]] [[[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0]] [[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.] [0. 0. 0. 0. 1.]]]]