行列 A にその転置を乗算すると、対称正定行列が得られる (したがって、正の固有値が得られる) という数学的定理があります。ここで、中規模の乱数行列で対称性テストが失敗するのはなぜですか? 小さな行列 (20、20 など) では常に機能します。
import numpy as np
features = np.random.random((50,70))
autocovar = np.dot(np.transpose(features),features)
print((np.transpose(autocovar) == autocovar).all())
このコードを実行すると、常に「FALSE」になります。私は何を間違っていますか?PCAを実行するには自己共分散行列が必要ですが、これまでのところ複雑な固有値を取得しています...
ありがとう!