tensorflow對陣列排序

2021-08-21 17:25:23 字數 1234 閱讀 9101

有時我們會遇到tensor域下的陣列排序,比如按照一定規則對輸入排序。

import tensorflow as tf

import numpy as np

a = tf.placeholder(tf.int32, shape=(3,2))

# bb = tf.constant(a) # the array

reordered = tf.gather(a, tf.nn.top_k(a[:, 0], k=3).indices)   # 按照輸入的第乙個維度排序,選取top3的值

value_ = tf.nn.top_k(a[:, 0], k=3).values

indices_ = tf.nn.top_k(a[:, 0], k=3).indices

'''tf.nn.top_k(

input,

k=1,

sorted=true,

name=none

)top_k返回值:

top_k(...).values: the k largest elements along each last dimensional slice.(返回對應的值)

top_k(...).indices: the indices of values within the last dimension of input(返回索引)

-----------------

tf.gather(

params,

indices,

validate_indices=none,

name=none,

axis=0

)根據對應索引indices把對應元素取出來

'''feed_dict =

sess = tf.session()

_in, out, v, i = sess.run([a, reordered, value_, indices_], feed_dict=feed_dict)

print('in:\n',_in, '\nout:\n', out, '\nvalue:\n', v, '\nindices:\n', i)

'''>>>in:

[[1 2]

[3 4]

[2 2]]

out:

[[3 4]

[2 2]

[1 2]]

value:

[3 2 1]

indices:

[1 2 0]

'''

oc對陣列排序

nsmutablearray array1 nsmutablearray alloc initwithobjects nil 這是資料來源,對陣列裡面的字典的 屬性進行排序 第一種方案 氣泡排序寫倆for迴圈 氣泡排序 nsdictionary t for int i 0 i array1 coun...

對陣列進行排序

函式名稱 排序依據 陣列索引鍵保持 排序的順序 相關函式 array multisort 值鍵值關聯的保持,數字型別的不保持 第乙個陣列或者由選項指定 array walk asort 值是 由低到高 arsort arsort 值是 由高到低 asort krsort 鍵是 由高到低 ksort ...

C 的對陣列排序

int list int list new int 10 for int i 0 i 10 i console.writeline 排序前 for int i 0 i list.length i console.writeline list i console.writeline int tmp 0...