0

A 是一组实数。真的很困惑这条线的作用。分子看起来像它采用不包含最小值的 A 子集。分母似乎是范围。如何将结果子集除以范围?或者也许这不是分子正在做的事情?

A <- (A - min(A)) * (max(A) - min(A))^-1
4

1 回答 1

0

^-1 表示取矩阵逆而不是倒数

假设 A 是实数矩阵,则表达式可以分解如下:

let mna = min(A) : Scalar - the minimum value of A
let mxa = max(A) : Scalar - the maximum value of A
let N = (A-min(A)) = Array - Scalar - each element of A minus mna
let X = (A-max(A))  ... minus mxa

所以我们有 N*inverse(X)

...如果我戴上眼镜并正确阅读表达式而不是 A <- (A - min(A)) * (A - max(A))^-1

但是,由于表达式实际上是 A <- (A - min(A)) * (max(A) - min(A))^-1,因此解释有所不同。

N 的表达式是相同的(尽管我在括号中指出,形式的表达式 (array - scalar/conformable-array) 表示减法;它不是数组元素删除操作)。

但是, (max(A) - min(A)) 就是它的样子,A 的最大值减去它的最小值,在这种情况下 ^-1 确实意味着除法。

因此,该表达式返回 A,所有值都缩放到 0 (==min(A)) 和 1 (==max(A)) 之间。

表达式开头的 <- 是 Mathcad 的局部定义运算符(用于在 Mathcad“程序”中分配值),它只是将 A 的归一化值分配回 A。

于 2015-09-11T12:51:01.603 回答