Python Numpy One 热门区域

Python Numpy One Hot to Regions

制作这个 One Hot 编码矩阵的最佳方法是什么

array([[[1, 0, 0],
        [1, 0, 0],
        [0, 1, 0]],

       [[0, 0, 1],
        [0, 1, 0],
        [1, 0, 0]]])

作为

array([[0, 0, 1],
       [2, 1, 0]])

也就是说,如何解码One Hot数组?

沿 axis=2 -

使用 np.argmax
a.argmax(2)

样本运行-

In [186]: a
Out[186]: 
array([[[1, 0, 0],
        [1, 0, 0],
        [0, 1, 0]],

       [[0, 0, 1],
        [0, 1, 0],
        [1, 0, 0]]])

In [187]: a.argmax(2)
Out[187]: 
array([[0, 0, 1],
       [2, 1, 0]])