Рассмотрим следующий код:
import numpy as np
A = np.array([[.8, .6], [.1, 0]])
B1 = tf.keras.utils.normalize(A, axis=0, order=1)
B2 = tf.keras.utils.normalize(A, axis=0, order=2)
print('A:')
print(A)
print('B1:')
print(B1)
print('B2:')
print(B2)
, который возвращает
A:
[[0.8 0.6]
[0.1 0. ]]
B1:
[[0.88888889 1. ]
[0.11111111 0. ]]
B2:
[[0.99227788 1. ]
[0.12403473 0. ]]
Я понимаю, как B1
вычисляется через order=1
, так что каждая запись в A
делитсяпо сумме элементов в его столбце. Например, 0.8
становится 0.8/(0.8+0.1) = 0.888
. Тем не менее, я просто не могу понять, как order=2
производит B2
, и не могу найти какую-либо документацию по этому поводу.