这是我正在尝试做的“非常简化”的示例,并且是机器学习的新手。

我有连续的数字数据输入作为输入。我想检测数据的特定变化,例如心跳监视器中的峰值。

machine-learning - 检测连续数据中的峰值-LMLPHP

我将如何使用机器学习来实现这一目标?

最佳答案

这取决于您所说的高峰。如果您将峰值提高10点或更多,则可以尝试以下方法:

import numpy as np
min_peak_diff = 10
arr = np.array([3,5,10,42,4,3,6,66,8,12,7,5])
ind = np.add(np.where(arr[1:] >= arr[:-1] + min_peak_diff), 1)
print('peak indexes:', ind)
print('peak values:', arr[ind])


结果:

peak indexes: [[3 7]]
peak values: [[42 66]]


但是,如果您真的想使用机器学习方法,可以看看:


关于此主题的scikit学习页面(有很多方法)https://scikit-learn.org/stable/modules/outlier_detection
Python离群值检测库https://github.com/yzhao062/pyod

关于machine-learning - 检测连续数据中的峰值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59477041/

10-12 20:09