1、关于python中矩阵点乘(除)
只允许以下三种情况。
)1)如果两个矩阵的维数相同,则将对应的要素相乘
)2)矩阵乘以向量:
a:矩阵与行向量相乘。 mxn * 1*n格式)。 在这种情况下,行向量的长度必须等于矩阵的列数
b :矩阵和列向量的乘法运算(mxn * mx1形式)在这种情况下,矩阵的行数必须与列向量的行数相同
例如以下所示。
a=NP.array ([ 1,2 ]、[ 4,5 ]、[ 7,8 ] ) b=NP.array ([ 2,3 ] ) print ) a*b ),即,行向量的各元素乘以矩阵的相应列c
2 、softmax向量化实现
importnumpyasNP''(1) softmax(x ) x==softmax ) xc ) ' ' def soft_max(x ) :if(len ) x.shape )1) 3360 x ) if(len(denominator.shape )=1) : # )转换为n x 1格式的矩阵denominator=denominator.reshape ) ) denominator.shape(0 ) 1 ) x=x * denominator else : x=NP.exp (x-NP.max ) x ) ) denominator=1.0/np.sum(x ) x ) x=x.dot ) denomin
讨论交叉熵的好文章:https://blog.csdn.net/red _ stone1/article/details/80735068