如何解决如何标准化正在进行的累积总和的样本?
为简单起见,假设我们有一个函数 sin(x) 并用它计算了 -1 到 1 之间的 1000 个样本。我们可以绘制这些样本。现在在下一步中,我们要绘制 sin(x) 的积分,即 - cos(x) + C。现在我可以像这样计算现有样本的积分:
y[n] = x[n] + y[n-1]
因为它是一个累积总和,我们需要对其进行归一化以在 y 轴上获得介于 -1 和 1 之间的样本。
y = 2 * ( x - min(x) / max(x) - min(x) ) - 1
现在我们要为 sin(x) 计算接下来的 1000 个样本并再次计算积分。因为这是一个累积总和,我们将有一个新的最大值,这意味着我们需要对所有 2000 个样本进行归一化。
现在我的问题基本上是:
如何在不知道最大值和最小值的情况下对这种情况下的样本进行标准化? 如果我有一组具有新最大值/最小值的新样本,我如何防止再次标准化所有以前的样本?
解决方法
我找到了解决方案:)
我还想提一下:这是关于像正弦这样的周期函数,所以基本上最大值和最小值应该总是相同的,对吗?
在特殊情况下,情况并非如此:
如果您的样本不包含函数的完整周期(具有函数的全局最大值和最小值)。当您选择非常低的频率时可能会发生这种情况。
你能做什么:
-
简单地计算像 sin(x) 这样的函数的样本 频率为 1。它将包含函数的全局最大值和最小值 (重要的是 y 在 -1 和 1 之间变化,而不是 0 和 1!)。
-
然后用累积和计算积分。
-
获取样本的最大值和最小值
-
您可以放大或缩小:最大/频率、最小/频率
-
现在可用于对以任何其他频率计算的样本进行归一化。
一开始只需要计算一次。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。