不需要使用神经网络,矩阵代数就足够了!
您的问题可以公式化为优化问题,即给定minimize f(T) = norm(y - T*x)
和y
的x
。如果您有足够的数据对(x,y)
,则可以求解T
。
另一种方法是使用矩阵的广义逆来求解传递矩阵T
,即T = Y*ginv(X)
。在这里,我将向您展示语言R
library(MASS)
Y <- matrix(1:36,nrow = 9)
X <- matrix(1:16,nrow = 4)
T <- Y %*% ginv(X)
其中
> X
[,1] [,2] [,3] [,4]
[1,] 1 5 9 13
[2,] 2 6 10 14
[3,] 3 7 11 15
[4,] 4 8 12 16
> Y
[,1] [,2] [,3] [,4]
[1,] 1 10 19 28
[2,] 2 11 20 29
[3,] 3 12 21 30
[4,] 4 13 22 31
[5,] 5 14 23 32
[6,] 6 15 24 33
[7,] 7 16 25 34
[8,] 8 17 26 35
[9,] 9 18 27 36
并且转移T
求解为
> T
[,1] [,2] [,3] [,4]
[1,] 1.95 1.025 0.1 -0.825
[2,] 1.65 0.925 0.2 -0.525
[3,] 1.35 0.825 0.3 -0.225
[4,] 1.05 0.725 0.4 0.075
[5,] 0.75 0.625 0.5 0.375
[6,] 0.45 0.525 0.6 0.675
[7,] 0.15 0.425 0.7 0.975
[8,] -0.15 0.325 0.8 1.275
[9,] -0.45 0.225 0.9 1.575
要验证获得的T
,可以使用
> norm(Y - T%*%X,"2")
[1] 1.178746e-13
接近0
,表示所获得的T
有效。