ค้นหาองค์ประกอบที่เป็นเอกลักษณ์ตามแกนของเทนเซอร์
การดำเนินการนี้จะส่งคืนเทนเซอร์ 'y' ที่มีองค์ประกอบเฉพาะตาม 'แกน' ของเทนเซอร์ องค์ประกอบที่ไม่ซ้ำที่ส่งคืนจะถูกจัดเรียงในลำดับเดียวกันกับที่เกิดขึ้นตาม "แกน" ใน "x" การดำเนินการนี้ยังส่งคืนเทนเซอร์ "idx" ที่มีขนาดเท่ากับจำนวนขององค์ประกอบใน "x" ตามมิติ "แกน" ประกอบด้วยดัชนีในเอาต์พุต "y" ที่ไม่ซ้ำกัน กล่าวอีกนัยหนึ่ง สำหรับเทนเซอร์ `1-D` `x` ที่มี `แกน = ไม่มี:
`y[idx[i]] = x[i] สำหรับ i ใน [0, 1,...,rank(x) - 1]`
ตัวอย่างเช่น:
# tensor 'x' is [1, 1, 2, 4, 4, 4, 7, 8, 8]
y, idx = unique(x)
y ==> [1, 2, 4, 7, 8]
idx ==> [0, 0, 1, 2, 2, 2, 3, 4, 4]
สำหรับ `2 D` เมตริกซ์` `x` กับแกน = 0`: # tensor 'x' is [[1, 0, 0],
# [1, 0, 0],
# [2, 0, 0]]
y, idx = unique(x, axis=0)
y ==> [[1, 0, 0],
[2, 0, 0]]
idx ==> [0, 0, 1]
สำหรับ` 2 D` เมตริกซ์ `` x` กับแกน = 1`: # tensor 'x' is [[1, 0, 0],
# [1, 0, 0],
# [2, 0, 0]]
y, idx = unique(x, axis=1)
y ==> [[1, 0],
[1, 0],
[2, 0]]
idx ==> [0, 1, 1]
วิธีการสาธารณะ
คง <T, V ขยายจำนวนยูขยายจำนวน> ไม่ซ้ำ <T, V> | |
คง <T, U ขยายจำนวน> ไม่ซ้ำ <T, Integer> | |
เอาท์พุท <V> | IDX () A 1-D เทนเซอร์ |
เอาท์พุท <T> | Y () 'เทนเซอร์' |
วิธีการสืบทอด
วิธีการสาธารณะ
สาธารณะคง ไม่ซ้ำ <T, V> สร้าง ( ขอบเขต ขอบเขต Operand <T> x, Operand <u> แกนชั้น <V> outIdx)
วิธีการจากโรงงานเพื่อสร้างคลาสที่ปิดการดำเนินการที่ไม่ซ้ำใหม่
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
NS | 'เทนเซอร์' |
แกน | "เทนเซอร์" ประเภท "int32" (ค่าเริ่มต้น: ไม่มี) แกนของเทนเซอร์เพื่อค้นหาองค์ประกอบที่เป็นเอกลักษณ์ |
คืนสินค้า
- ตัวอย่างใหม่ของ Unique
สาธารณะคง ไม่ซ้ำ <T, Integer> สร้าง ( ขอบเขต ขอบเขต Operand <T> x, Operand <u> แกน)
วิธีการจากโรงงานเพื่อสร้างคลาสที่ปิดการดำเนินการที่ไม่ซ้ำใหม่โดยใช้ประเภทเอาต์พุตเริ่มต้น
พารามิเตอร์
ขอบเขต | ขอบเขตปัจจุบัน |
---|---|
NS | 'เทนเซอร์' |
แกน | "เทนเซอร์" ประเภท "int32" (ค่าเริ่มต้น: ไม่มี) แกนของเทนเซอร์เพื่อค้นหาองค์ประกอบที่เป็นเอกลักษณ์ |
คืนสินค้า
- ตัวอย่างใหม่ของ Unique
ประชาชน เอาท์พุท <V> IDX ()
A 1-D เทนเซอร์ มีประเภทเดียวกับ x ที่มีดัชนีของแต่ละค่าของ x ในเอาต์พุต y