คำนวณลำดับขั้นต่ำโดยประมาณ (AMD) ของ "อินพุต"
คำนวณระดับขั้นต่ำโดยประมาณ (AMD) เพื่อเรียงลำดับเมทริกซ์แบบกระจาย
การเรียงสับเปลี่ยนที่ส่งคืนอาจใช้เพื่อสับเปลี่ยนแถวและคอลัมน์ของเมทริกซ์กระจัดกระจายที่กำหนด โดยทั่วไปสิ่งนี้จะส่งผลให้ Cholesky กระจัดกระจายของเมทริกซ์กระจัดกระจายที่ได้รับการดัดแปลง (หรือการสลายตัวอื่น ๆ ) มีการเติมศูนย์น้อยลงเมื่อเปรียบเทียบกับการสลายตัวของเมทริกซ์ดั้งเดิม
เมทริกซ์กระจัดกระจายอินพุตอาจมีอันดับ 2 หรืออันดับ 3 เทนเซอร์เอาท์พุตที่เป็นตัวแทนจะมีอันดับ 1 หรือ 2 ตามลำดับ โดยมีรูปร่างแบทช์เดียวกันกับอินพุต
แต่ละองค์ประกอบของเมทริกซ์กระจัดกระจายอินพุตจะต้องแสดงถึงเมทริกซ์สมมาตรแบบสี่เหลี่ยม อ่านเฉพาะส่วนสามเหลี่ยมด้านล่างของเมทริกซ์เท่านั้น ค่าของเมทริกซ์กระจัดกระจายไม่ส่งผลต่อการเรียงสับเปลี่ยนที่ส่งคืน จะใช้เฉพาะรูปแบบกระจัดกระจายของเมทริกซ์กระจัดกระจายเท่านั้น ดังนั้น ลำดับ AMD เดียวอาจถูกนำมาใช้ซ้ำสำหรับการสลายตัวของ Cholesky ของเมทริกซ์แบบกระจัดกระจายที่มีรูปแบบกระจัดกระจายเหมือนกัน แต่อาจมีค่าที่แตกต่างกัน
ส่วนประกอบแต่ละชุดของการเรียงสับเปลี่ยนเอาต์พุตแสดงถึงการเรียงสับเปลี่ยนขององค์ประกอบ `N` โดยที่ส่วนประกอบเมทริกซ์กระจัดกระจายอินพุตแต่ละรายการมีแถว 'N' นั่นคือ ส่วนประกอบประกอบด้วยจำนวนเต็มแต่ละตัว `{0, .. N-1}` หนึ่งครั้ง องค์ประกอบ "i" แสดงถึงดัชนีแถวที่แถว "i" จับคู่กับ
ตัวอย่างการใช้งาน:
from tensorflow.python.ops.linalg.sparse import sparse_csr_matrix_ops
a_indices = np.array([[0, 0], [1, 1], [2, 1], [2, 2], [3, 3]])
a_values = np.array([1.0, 2.0, 1.0, 3.0, 4.0], np.float32)
a_dense_shape = [4, 4]
with tf.Session() as sess:
# Define (COO format) SparseTensor over Numpy array.
a_st = tf.sparse.SparseTensor(a_indices, a_values, a_dense_shape)
# Convert SparseTensors to CSR SparseMatrix.
a_sm = sparse_csr_matrix_ops.sparse_tensor_to_csr_sparse_matrix(
a_st.indices, a_st.values, a_st.dense_shape)
# Obtain the AMD Ordering for the CSR SparseMatrix.
ordering_amd = sparse_csr_matrix_ops.sparse_matrix_ordering_amd(sparse_matrix)
ordering_amd_value = sess.run(ordering_amd)
อินพุต: A `CSRSparseMatrix`
ค่าคงที่
สตริง | OP_NAME | ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow |
วิธีการสาธารณะ
เอาท์พุต < TInt32 > | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
SparseMatrixOrderingAMD แบบ คงที่ | สร้าง (ขอบเขต ขอบเขต , ตัวถูกดำเนินการ <?> อินพุต) วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseMatrixOrderingAMD ใหม่ |
เอาท์พุต < TInt32 > | เอาท์พุท () การเรียงลำดับระดับขั้นต่ำโดยประมาณ (AMD) ของ `อินพุต` |
วิธีการสืบทอด
บูลีน | เท่ากับ (วัตถุ arg0) |
คลาสสุดท้าย<?> | รับคลาส () |
ภายใน | แฮชโค้ด () |
โมฆะสุดท้าย | แจ้ง () |
โมฆะสุดท้าย | แจ้งทั้งหมด () |
สตริง | toString () |
โมฆะสุดท้าย | รอสักครู่ (ยาว arg0, int arg1) |
โมฆะสุดท้าย | รอ (ยาว arg0) |
โมฆะสุดท้าย | รอ () |
บทคัดย่อ ExecutionEnvironment | สิ่งแวดล้อม () ส่งคืนสภาพแวดล้อมการดำเนินการที่ op นี้ถูกสร้างขึ้น |
การดำเนินการ ที่เป็นนามธรรม |
เอาต์พุต นามธรรม < TInt32 > | เป็นเอาท์พุต () ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์ |
นามธรรม TInt32 | แอสเทนเซอร์ () ส่งกลับเทนเซอร์ที่ตัวถูกดำเนินการนี้ |
รูปร่าง นามธรรม | |
คลาสนามธรรม< TInt32 > | พิมพ์ () ส่งกลับประเภทเทนเซอร์ของตัวถูกดำเนินการนี้ |
ค่าคงที่
สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME
ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow
วิธีการสาธารณะ
เอาท์พุต สาธารณะ < TInt32 > asOutput ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต
สร้าง SparseMatrixOrderingAMD แบบคงที่สาธารณะ (ขอบเขต ขอบเขต , ตัวดำเนินการ <?> อินพุต)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ SparseMatrixOrderingAMD ใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
ป้อนข้อมูล | `CSRSparseMatrix` |
การส่งคืน
- ตัวอย่างใหม่ของ SparseMatrixOrderingAMD