目前,我试图分析与MATLAB的大型数据集(40个000多个数据点)。这些数据集有很大程度的高频噪声,但幸运的是,与整体信号相比,噪声幅度相对较小。算法找到相关的数据的特定特性而设定
基本上,我希望做的是找到在哪个数据集“踢了”的地步。通过踢起来,我的意思是,它的梯度在一个小区域显着变化。然而,我分析的这些信号受到“漂移”的影响,其中在“启动”点之前信号斜率本质上可能是负的,中性的或正的,然而,“踢”之前和之后的图的形状起“点一般是一样的。
例如:一个 “踢” 点会看起来像这样:
[1.25 2.5 3.75 5 7.5 12 21 36 49 64]
显然这是一个大规模的简化版本,但数据将沿着一条直线如曲线(上面的前5个数据点),然后它将遵循更类似指数的曲线(从点6开始)。
所以我一直在寻找实现一种机器类型的学习算法,借此我可以告诉matlab在哪里“踢起来”点以及数据的“形状”,其中出现一个踢出点,以便将来它可以准确定位“踢出”点。
进出口比较新的Matlab和机器都学习(如机器学习,甚至要去关于解决我的问题的最佳方式),我不知道我应该开始。我希望有人能指出我正确的方向,无论是matlab代码示例和/或一些初学者理论与编码实现。
您是否在寻找潜在的信号的阶梯变化?否则,如果有噪音,那么您会在整个地方检测到“显着”的梯度变化。 – 2012-02-01 20:51:58