哭了,复现TensorFlow版本MAE的shuffle和reshuffle
生活随笔
收集整理的這篇文章主要介紹了
哭了,复现TensorFlow版本MAE的shuffle和reshuffle
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在encoder的輸入需要非masked token,然后decoder的輸入需要把對應位置的token用0代替進去,只想解決這個接口,所以解決目標就是按指定位置先取出對應的token,省略中間處理步驟,在按照index位置把非masked token塞回原大小矩陣。
廢了2個小時,菜狗終于解決了這個問題(丟)
寫了個小測試代碼
import tensorflow as tf import numpy as np #值矩陣 target_tensor = tf.constant([[7, 2], [9, 6], [1, 3]]) #假裝mask mask_tensor2 = tf.constant([[1, 0], [0, 0], [1, 0]]) #把mask矩陣轉為bool矩陣 mask = mask_tensor2>0 #為了方便直接flatten了 index = tf.where(tf.reshape(~mask,[-1])) #為了對比結果用的 masked_tensor2 = tf.boolean_mask(target_tensor, ~mask) #塞回去,為了省事沒有reshape,直接在flatten上復原了 mm = tf.sparse_tensor_to_dense(tf.SparseTensor(indices=index, values=masked_tensor2, dense_shape=[6]))輸出結果如圖示
參考鏈接
https://www.jianshu.com/p/831cc6f5d810
總結
以上是生活随笔為你收集整理的哭了,复现TensorFlow版本MAE的shuffle和reshuffle的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Tensorflow broadcast
- 下一篇: TensorFlow patch块划分(