np.concatena um tensor / matriz ND com uma matriz 1D

Eu tenho duas matrizes a & b

a.shape
(5, 4, 3)
array([[[ 0.        ,  0.        ,  0.        ],
        [ 0.        ,  0.        ,  0.        ],
        [ 0.        ,  0.        ,  0.        ],
        [ 0.10772717,  0.604584  ,  0.41664413]],

       [[ 0.        ,  0.        ,  0.        ],
        [ 0.        ,  0.        ,  0.        ],
        [ 0.10772717,  0.604584  ,  0.41664413],
        [ 0.95879616,  0.85575133,  0.46135877]],

       [[ 0.        ,  0.        ,  0.        ],
        [ 0.10772717,  0.604584  ,  0.41664413],
        [ 0.95879616,  0.85575133,  0.46135877],
        [ 0.70442301,  0.74126523,  0.88965603]],

       [[ 0.10772717,  0.604584  ,  0.41664413],
        [ 0.95879616,  0.85575133,  0.46135877],
        [ 0.70442301,  0.74126523,  0.88965603],
        [ 0.8039435 ,  0.62802183,  0.58885027]],

       [[ 0.95879616,  0.85575133,  0.46135877],
        [ 0.70442301,  0.74126523,  0.88965603],
        [ 0.8039435 ,  0.62802183,  0.58885027],
        [ 0.95848603,  0.72429311,  0.71461332]]])

e B

array([ 0.79212707,  0.66629398,  0.58676553], dtype=float32)
b.shape
(3,)

Eu quero obter matriz

ab.shape
(5,5,3)

Eu faço como abaixo primeiro

b = b.reshape(1,1,3)

então

b=np.concatenate((b, b,b, b, b), axis = 0)

E

ab=np.concatenate((a, b), axis = 1)
ab.shape
(5, 5, 3)

Eu obtenho o resultado certo, mas não é muito conveniente, especialmente na etapa

b=np.concatenate((b, b,b, b, b), axis = 0)

quando eu tiver que digitar várias vezes (o conjunto de dados real tem muitas dimensões). Existem maneiras mais rápidas de chegar a esse resultado?

questionAnswers(1)

yourAnswerToTheQuestion