2017-10-10 21 views
5

Tôi đang cố gắng để xây dựng một DAG trong Tensorflow, nơi tôi cần phải thực hiện chế độ (giá trị thường xuyên nhất) của các khu vực cá nhân của mục tiêu của tôi. Điều này là để xây dựng một mục tiêu được lấy mẫu.Có thể lấy chế độ của một Tensor trong Tensorflow không?

Hiện tại, tôi đang xử lý trước các mục tiêu được lấy mẫu xuống cho từng trường hợp riêng lẻ mà tôi có thể gặp phải, lưu chúng và sau đó tải chúng. Rõ ràng, điều này sẽ dễ dàng hơn nhiều nếu nó được tích hợp vào đồ thị Tensorflow của tôi, để tôi có thể downsample khi chạy.

Nhưng tôi đã xem ở khắp mọi nơi và tôi không thể tìm thấy bằng chứng về số tf.reduce_mode, có chức năng giống như tf.reduce_mean. Có cách nào để xây dựng chức năng này trong đồ thị Tensorflow không?

Trả lời

0

Ý tưởng của tôi là chúng tôi có được số duy nhất và số lượng của chúng. Sau đó chúng tôi tìm thấy những con số xuất hiện thường xuyên nhất. Cuối cùng, chúng tôi lấy những con số đó (có thể nhiều hơn một) bằng cách sử dụng các chỉ số của chúng trong bộ đếm số đếm.

samples = tf.constant([10, 32, 10, 5, 7, 9, 9, 9]) 
unique, _, count = tf.unique_with_counts(samples) 
max_occurrences = tf.reduce_max(count) 
max_cond = tf.equal(count, max_occurrences) 
max_numbers = tf.squeeze(tf.gather(unique, tf.where(max_cond))) 

with tf.Session() as sess: 
    print 'Most frequent Numbers\n', sess.run(max_numbers) 
> Most frequent Numbers 
    9 
Các vấn đề liên quan