我有一个时间序列的机器人与具有各种纹理的环境对象进行交互的力数据。我想使用时间序列数据来开发各种纹理的模型,以将纹理分为平滑,粗糙,中等等类别。为此,隐马尔可夫模型是否足够?我应该使用条件随机场吗?如果我决定分类为更多类别,并且每个类别之间的区别都非常微妙,那么在那种情况下,哪种选择是个好选择?强制数据是否足以捕获将纹理分类到这些类别所需的所有信息?

感谢您的答复:)

#1 楼

根据您的问题描述,HMM(生成模型)和CRF(区分模型)都将起作用。请参阅此讨论,以更深入地说明这两种方法:

生成性和判别性算法有什么区别?

建议:在选择算法之前,首先使用MATLAB图或类似图形仔细查看您的数值数据。如果信息是多维的(例如来自多个传感器的力值),则可能是某些尺寸(例如传感器读数)不包含有用的区分性信息的情况;在这种情况下,请使用主成分分析压缩数据,以便在训练和分类过程中拥有更紧凑的功能。

现在,关于您的问题: HMM可以用几个隐藏的变量/状态代表您的每个纹理类,从而捕获每个接触的内部时间演变。我们可以说HMM更好地为数据的“低级”(类内)动态建模。例如,在您的情况下,HMM将允许您显式地建模每个数据采集的三个不同阶段:(1)开始机器人与物体之间的接触; (2)接触的稳定部位; (3)接触结束并释放。即使对于相同的对象纹理,这些阶段在时间上可能具有不同的值,并且将它们分开以改善分类结果可能是有意义的。

另一方面,CRF更适合捕获“数据分布的“高级”(类间)关系,当时空变异性很高或属于不同类的两个样本之间的观察特征非常相似时,这有时很重要。

就我个人而言,我发现HMM更易于使用,我会从它们开始,但是您的里程可能会有所不同。


如果我决定分类为更多类别,并且每个类别之间的区别都非常微妙,那么在那种情况下哪种选择是个好选择?


在这种情况下,CRF可以是更健壮的选择(请参见上文)。


强制数据是否足以捕获将纹理分类到这些类别所需的所有信息?


添加视觉特征(对象外观),特别是如果使用高分辨率相机捕获时,可以帮助确定对象是否具有粗糙纹理。

评论


$ \ begingroup $
对不起,请稍后回复。您的评论非常有帮助。我已经实现了HMM,它们似乎运行良好。我没有使用PCA将数据转换为低维表示,而是使用了HMM,它们可以采用连续的数据/分布来避免丢失任何信息。但是由于无论如何我都将其用于分类,因此我认为使用区分性方法可能会产生更好的结果(但尚未看到并确认)。
$ \ endgroup $
–吉尔摩
13-10-4在16:50



$ \ begingroup $
很高兴知道HMM在为力传感器数据建模方面表现良好。我有兴趣进一步了解。
$ \ endgroup $
–乔瓦尼·萨波纳罗(Giovanni Saponaro)
14年1月14日在18:39