Inicializando a matriz numpy do np.empty

Como os bits de sinal são determinados ao inicializar um ndarray a partir da memória vazia?

>>> np.random.randn(3,3)
array([[-0.35557367, -0.0561576 , -1.84722985],
       [ 0.89342124, -0.50871646,  1.31368413],
       [ 0.0062188 ,  1.62968789,  0.72367089]])
>>> np.empty((3,3))
array([[0.35557367, 0.0561576 , 1.84722985],
       [0.89342124, 0.50871646, 1.31368413],
       [0.0062188 , 1.62968789, 0.72367089]])

Esses valores flutuantes inicializados da memória vazia perderam seus sinais†. Por que é que?

†Nota: este resultado depende dos detalhes de implementação da reutilização de memória. A pergunta pergunta o que a implementação está fazendo.

questionAnswers(2)

yourAnswerToTheQuestion