我有一个时间序列的数据,我将其映射到一个非排他性二进制特征的时间序列(在我的例子中,短时音频频谱图到音频的特征)。我将把这些类在一段时间内大致保持不变的集合称为“事件”。
例如,我的音频流可能包含单词“leave”,所以我的时间序列类可能包含
l-sound 00000000000011111111100000000000000000000000000000000000000000000
vowel 00000000000000000000011111111111111111110000000000000000000000000
fricative 00000000000000000000000000000000000000011111111111000000000000000
high 00000000000000000001111111111111111111000000000000000000000000000
noise 00011111010000000000000000000000000000000000000111111100000000000
这对应于 - 考虑到事件之间的转换可能是嘈杂的 - 事件序列
l-sound 00010000
vowel 00001000
fricative 00000100
high 00001000
noise 01000010
所有这些特征都是二元的而不是互斥的,并且每个(实现的)特征组合都对应一个标签,所以如果#恰好代表特征集{noise}、ifor{high, vowel}和ʎfor{l-sound, high}等,则该事件序列的列可能被给出为字符串_#_liv#_。
在这种压缩的、以事件为中心的字符串格式中,我拥有更多的目标数据,比我拥有的二进制特征向量的时间序列要多得多。因为从事件序列到时间序列的映射只是数据的有点嘈杂的拉伸,即使每个事件都有特征长度,我的直觉表明应该有一种更好、更确定的方式来使用这些数据,而不是seq2seq学习它内部结构。
- 我试图建立一个单独的计算图,将一组长度映射到 sigmoid 函数的差异,以获得近似区间特征函数(
0011110000等)的可微函数,希望优化器能够将边界移向实际范围。它看起来并不乐观。
鉴于我的模型目前生成时间序列数据,但我有很多事件序列数据,我怎样才能最好地使用我的事件序列数据来训练模型?