Могу ли я просто присваивать значения определенным записям в тензоре? У меня возникают такие проблемы, когда я вычисляю матрицу взаимной корреляции матрицы признаков NxP feats
, где N - наблюдения, а P - размерность. Некоторые столбцы являются постоянными, поэтому стандартное отклонение равно нулю, и я не хочу делиться на std
для этих константных столбцов. Вот что я сделал:назначить определенные записи тензора, например set_subtensor от Theano
fmean, fvar = tf.nn.moments(feats, axes = [0], keep_dims = False) fstd = tf.sqrt(fvar) feats = feats - fmean sel = (fstd != 0) feats[:, sel] = feats[:, sel]/ fstd[sel] corr = tf.matmul(tf.transpose(feats), feats)
Однако, я получил эту ошибку: TypeError: 'Tensor' object does not support item assignment
. Есть ли способ обхода проблемы?
я вижу. Попробует. Благодаря! –