【问题标题】:Sequence Pattern recognition with PybrainPybrain 的序列模式识别
【发布时间】:2023-03-24 05:17:01
【问题描述】:

我正在尝试使用循环神经网络对一系列连续数据进行分类。更具体地说,我有一个从传感器读取的序列(在时间上是连续的),我需要学习一种算法,查看读数变化的方式可以检测与此模式相关的状态。

例子:

时间步_1:1.4

时间 step_2:1

时间 step_3:0.8

状态 = 步行。 新序列:

时间步长1:0.4

时间步长2:0.3

时间步长 3:0.1

状态=坐着

我实际上有 12 个传感器,为方便起见,我只显示一个数字序列。 (数字不是真实的,我只是想传达这个想法)!

我正在尝试使用 Pybrain RNN 构建我的网络,但是,我找不到可以检测此类信息的数据集容器。我尝试使用 SequentialData 但经过一些测试后,我发现它学到的是数字序列中的下一个元素。这里是我如何构建我的数据集:

self.alldata = SequentialDataSet(ds.num_features, 1)
# Now add the samples to the data set.
idx = 1 
self.alldata.newSequence()
for sample in ds.all_moves:
  self.alldata.addSample(sample.get_features(), [ds.get_classes().index(sample.class_)])
  idx += 1
  if (idx%6 == 0): #I want every 6 consecutive readings at a time
    pdb.set_trace()
    self.alldata.newSequence()


self.tstdata, self.trndata = self.alldata.splitWithProportion(0.25)

关于如何以不同方式执行此操作的任何想法,Pybrain 是否处理这种分类 还是有问题?

【问题讨论】:

    标签: python machine-learning neural-network pybrain


    【解决方案1】:

    解决方案

    您可以实施以下策略:

    您可能应该有 12 个传感器输入加上一个额外的输入,它代表时间步 t-1 的分类。我通过只显示 4 个输入来简化绘图。

    【讨论】:

      猜你喜欢
      • 2023-03-17
      • 2012-07-29
      • 2019-05-11
      • 1970-01-01
      • 2016-08-10
      • 2011-06-18
      • 2012-09-17
      • 1970-01-01
      相关资源
      最近更新 更多