matlab 输入矩阵为什么要转置

来源:百度知道 编辑:UC知道 时间:2024/05/30 07:18:19
看了很多BP神经网络的实例,为什么输入的矩阵都要进行转置才能继续进行呢

在matlab中对矩阵进行转置,一般是出于计算和显示需要。对于行数列数差别较大的矩阵,一般会对矩阵进行转置操作,最后再通过转置恢复原有计算结果。
另附,转置介绍:
设A为m×n阶矩阵(即m行n列),第i行j列的元素是a(i,j),通常记录:A=a(i,j)
定义A的转置为这样一个n×m阶矩阵B,满足B=a(j,i),即b(i,j)=a(j,i)(B的第i行第j列元素是A的第j行第i列元素),记A'=B。(有些书记为AT=B,这里T为A的上标)
直观来看,将A的所有元素绕着一条从第1行第1列元素出发的右下方45度的射线作镜面反转,即得到A的转置。运算法则为:
(A±B)'=A'±B'
(A×B)'=B'×A'
(A')'=A
(KA)'=KA'

那是因为有的地方需要的是m*n格式的矩阵,而你的矩阵是n*m的,所以必须转置否则会出错,提示矩阵的大小不符合。