0
假设我想我正常化跨越这些代码来矩阵A:Python的numpy的总和(-1)
A_norm = (A/np.sqrt((A ** 2).sum(-1))[..., np.newaxis]).astype(np.float32)
我们在这里减去0均值,我想。我的问题是分母。我们正在平衡和总结一些东西的平方根,但我不明白。
具体来说,这是什么呢:
np.sqrt((A ** 2).sum(-1))[..., np.newaxis]
平方根。这个'[...,np.newaxis]'基本上保持了相同数量的dims,这个数量被求和减少了。替代方法是使用[keepdims' with summming](https://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.sum.html)。在省略号'''扩展最后一个昏暗,请参阅['这里'](http://stackoverflow.com/a/40383002/3293881)。关于省略号的更多信息:http://stackoverflow.com/questions/772124/what-does-the-python-ellipsis-object-do – Divakar
关于'keepdims'的最近问题,用示例:http://stackoverflow.com/questions/40927156/python中的keepdims的作用 – hpaulj
['np.newaxis'](https://docs.scipy.org/doc/numpy/reference/arrays.indexing.html#numpy.newaxis )是值得搞清楚的,尽管它很混乱。它基本上是Numpy对这个问题的回答,“我们如何将1级阵列(向量)转换为2级和3级和N级阵列(分别为矩阵状阵列,体积,N维体积)”。在Python中进行以下试验(IPython,Jupyter Notebook等):'np.random.rand(3)[:,np.newaxis]'和'np.random.rand(3,3)[:,:, np.newaxis]',用'...'替换颜色,用'None'替换'np.newaxis'。 –