为了测试一些分类器,我想生成一个包含3个信号的合成时间序列数据,以及一个单独的标签,它应该依赖于所有三个信号中的所有数据点,这些是我希望我的信号遵循的规则:
我尝试了很多方法,包括其中一种方法,让大家了解我在尝试做什么:
随着时间的推移,产生一个随机频率(在我的例子中,我使用了7 8 9 10之间的频率值)和一个随机相位的基本正弦信号,问题是找到这个频率,所以标签(y)取决于频率(如果频率大于8,y是1,否则y是0),然后我生成3个随机滤波器,并卷积这个基本信号3次,以生成我的3个信号,我在每一步中添加噪声。你知道吗
freq = np.random.choice([7, 8, 9, 10])
phase = np.random.rand() * 10
base = []
for i in range(data_size):
base.append(np.random.rand() + math.sin(phase + float(i/freq)))
for f in filters:
signal = np.convolve(base, f)
signal += np.random.rand(len(signal)) * 6
all_features.append(signal)
if freq > 8:
y = 0
else:
y = 1
这个数据的问题是,一个简单的BiLSTM模型在其上实现了大约100%的精度。 所以我的问题是,有什么办法可以做到这一点吗?你知道我可以用来生成这个的库吗?你知道吗
如果你能提供一个任何编程语言的例子,它会做,例如,我发现simstudy包在R中,我认为可以在这里使用,但是,我不知道如何在那里实现这一点。你知道吗
谢谢你的帮助。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐