Czy istnieje sposób na wyodrębnienie przekątnej kwadratowej macierzy w programie TensorFlow? Oznacza to, że do matrycy jak ten:Uzyskaj przekątną macierzy w TensorFlow
[
[0, 1, 2],
[3, 4, 5],
[6, 7, 8]
]
chcę sprowadzić elementy: [0, 4, 8]
W numpy, to jest całkiem prosta poprzez np.diag:
W TensorFlow, istnieje diag function, ale tworzy ona tylko nową macierz z elementami określonymi w argumencie na przekątnej, co nie jest tym, czego chcę.
Mogę sobie wyobrazić, jak można to osiągnąć poprzez kroczenie ... ale nie widzę kroczenia po tensorach w TensorFlow.
Niestety operacja ta może być niezwykle powolne, choć nie wiem, dlaczego. – Literal