标签: arrays algorithm optimization
对于给定的两个相等长度的数组A和B.A和B的长度大于1.两个数组都是浮点数,它们可以是负数和正数。
如何获得标量a,以获得最小的MSE(A,aB)。
MSE是均方误差。
a = argmin((sum_ {i = 0} ^ {N-1}(A_i-aB_i)^ 2)/ N)其中N是数组的长度。
显然,我们可以运行详尽的搜索来找到优化的a。
有没有更好的算法可以找到?
答案 0 :(得分:0)
试试这个(也证明它确实最小化):
这将为您提供O(N)解决方案,您只需计算2个求和值即可获得最佳a。
O(N)
a