【问题标题】:Speech Recognition using LPC and ANN in Matlab在 Matlab 中使用 LPC 和 ANN 进行语音识别
【发布时间】:2013-06-05 20:35:48
【问题描述】:

我有来自 11 个人的 4 个音素(a、e、o、u)的音频记录。我使用 10 个人的数据训练了一个 ANN,并使用另一组进行测试。我使用了记录的第一个周期(20ms)的 14 个 LPC 系数作为特征。

训练矩阵I 每个音素有 14 行 10 列。所以它是14 * 40。由于是有监督的分类问题,我构造了一个目标矩阵T,它是4*40。它包含 1 和 0,其中 1 表示 I 中的对应列来自该类。

测试数据矩阵包含 4 列 14 行,因为它仅包含来自一个人的 4 个音素。让我们称之为S

代码如下:

net = newff(I, T, 15);
net = init(net);
net.trainParam.epochs = 10000;
net.trainParam.goal = 0.01;
net = train(net, I, T);
y1 = sim(net, I);
y2 = sim(net, S)

即使我将训练数据作为测试数据(y1),结果也不好。

这里有什么问题?

【问题讨论】:

    标签: matlab neural-network speech-recognition


    【解决方案1】:

    我使用了记录的第一个周期(20ms)的 14 个 LPC 系数作为特征。

    那么除了前 20 毫秒之外,您是否忽略了几乎所有的声音数据?听起来不太对劲。您必须至少计算所有帧的平均值。

    这里有什么问题?

    您在不了解理论的情况下开始编码。可能您想先阅读一些介绍。至少this 最好是this

    要了解为什么 ANN 不起作用,请计算将 10 个特征映射到 4 个类别需要多少参数,然后计算每个参数有多少训练向量。考虑到对于每个参数,您至少需要 10 个样本进行初始估计。这意味着您的训练数据还不够。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      • 2019-05-05
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-25
      相关资源
      最近更新 更多